That's the whole point of having a first-party API for common DSP and compute tasks; Accelerate uses NEON where it's available, uses SSE/AVX where it's available, used AltiVec where it was available, and will use $(FutureISAExtension) where its available. Most of the time, developers can just call the interfaces without worrying about the details at all.