RFC: Enable multi-arch support for i386
Joseph Myers
joseph@codesourcery.com
Mon Aug 17 15:20:00 GMT 2015
On Mon, 17 Aug 2015, H.J. Lu wrote:
> On Mon, Aug 17, 2015 at 8:06 AM, Joseph Myers <joseph@codesourcery.com> wrote:
> > On Mon, 17 Aug 2015, H.J. Lu wrote:
> >
> >> Since _dl_x86_cpu_features is available for i386 now, we can
> >> move sysdeps/i386/i686/multiarch to sysdeps/i386/multiarch.
> >> That means to make multi-arch available for i486 and i586.
> >> Should I post a patch to do it?
> >
> > I think the principle of having it available there makes sense. However,
> > various files in sysdeps/i386/i686/multiarch include other files from ../
> > (i.e. i686 versions) or ../i486/ or ../i586/. So you'd need to make sure
> > such a change doesn't pessimize things or use unavailable instructions in
> > those fallback versions - the files should include the i686/ versions if
> > __i686__ is defined, etc., making sure to include the best version
> > applicable to the processor for which glibc is compiled (of course i486/
> > versions are always OK to use since i386 isn't supported any more).
>
> I will detect i586/i686 at run-time and select the best one for the hardware.
If, however, glibc is built for i686, then it's best to save on that
conditional and the extra i486 / i586 copy of the code, and just build in
the i686 version (whereas if it's built for i486 or i586, it's best to
have both).
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list