On Freitag, 10. Juli 2020 19:30:09 CEST Florian Weimer via Gcc wrote:
> glibc (or an alternative loader implementation) would search for
> libraries starting at level D, going back to level A, and finally the
> baseline implementation in the default library location.
>
> I expect that some distributions will also use these levels to set a
> baseline for the entire distribution (i.e., everything would be built to
> level A or maybe even level C), and these libraries would then be
> installed in the default location.
>
> I'll be glad if I can get any feedback on this proposal. I plan to turn
> it into a merge request for the x86-64 psABI document eventually.
>
Sounds good, though if I could dream I would also love a partial replacement
option. So that you could have a generic x86-64 binary that only had some AVX2
optimized replacement functions in a supplementary library.
Perhaps implemented by marked the library as a partial replacement, so the
dynamic linker would also load the base or lower libraries except for
functions already resolved.
You could also add a level E for the AVX512 instructions in ice lake and
above. The VBMI1/2 instructions would likely be useful for autovectorization
in GCC.
'Allan