This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH, i386] Remove EBX usage from asm code


On Sat, Jan 17, 2015 at 7:36 PM, Rainer Orth
<ro@cebitec.uni-bielefeld.de> wrote:
> Uros Bizjak <ubizjak@gmail.com> writes:
>
>> On Sat, Jan 17, 2015 at 4:18 PM, Rainer Orth
>> <ro@cebitec.uni-bielefeld.de> wrote:
>>
>>>> The patch removes EBX usage from asm code used in libgcc/crtstuff.c
>>>> It is safe now, but potentially buggy when glibc is rebuild with GCC
>>>> 5.0 as EBX is not GOT register any more.
>>>>
>>>> x86 bootstrap, make check passed.
>>>>
>>>> Is it ok?
>>>>
>>>> Evgeny
>>>>
>>>> 2014-12-28  Evgeny Stupachenko  <evstupac@gmail.com>
>>>>
>>>>         * gnu-user.h (CRT_GET_RFIB_DATA): Remove EBX register usage.
>>>>         * config/i386/sysv4.h (CRT_GET_RFIB_DATA): Ditto.
>>>
>>> this patch broke Solaris 10/x86 bootstrap: when building amd64
>>> crtbegin.o, gas complains
>>
>> Looks like config.gcc error for Solaris x86, amd64 target should not
>> include i386/gnu-user.h but i386/gnu-user64.h
>
> The target is i386-pc-solaris2.10, which includes i386/sysv4.h.  Only
> the amd64 crtbegin.o is affected, the i386 one is fine.

Please split sysv4-common.h out of i386/sysv4.h, similar to how
i386/gnu-user.h and gnu-user-common.h are split.

Uros.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]