On Wed, Nov 19, 2025 at 7:04 PM Florian Weimer <[email protected]> wrote: > This sentence (from APX spec rev.7) emphasizes the “Intel” vendor, > > and its primary goal was to address and explain compatibility concern > > for pre-enabling work based on APX spec v6. Prior to v7, APX included > > NCI_NDD_NF by default, but this feature has now been separated from > > basic APX and requires explicit checking CPUID bit. > > > > x86 ecosystem advisory group has aligned on APX so it may be possible > > for other x86 vendors to implement APX without NCI_NDD_NF and this still > > match with the APX spec. > > Well yes, but I doubt that the ecosystem will produce binaries > specialized for APX *without* NDD. It's fine to enumerate it > separately, but that doesn't have any immediate consequences. GCC makes > it rather hard to build for APX without NDD, for example. At least more > difficult than building for AVX-512F without AVX-512VL. > > I just don't think software vendors are enthusiastic about having to > create and support not one, but two builds for APX. If NDD is optional > in practice, it will not be possible to use it except for run-time > generated code and perhaps very targeted optimizations because that > single extra APX will just not use NDD. > > I feel like there has been a misunderstanding somewhere.
I totally agree and I think this addition to APX was very misguided, no matter who proposed it. However, for virtualization we probably should include this code no matter how much I dislike it, because having to add the bit later retroactively would be worse. Paolo
