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: gcc corrections for better pie support


"Peter S. Mazinger" <ps.m@gmx.net> writes:
> On Tue, 9 Nov 2004, Zack Weinberg wrote:
>> 1) You still haven't broken it up far enough.  Your two ChangeLog
>>    lines describe separate logical changes.  I am not merely splitting
>>    hairs; I would like to approve the first part (the change from -D
>>    in specs to builtin_define), but I do not wish to approve the
>>    second part without consultation with the MIPS maintainers.
>
> left out the mips stuff

Thanks.

>> 2) This is not a proper ChangeLog entry.  Please read over the
>>    existing file and the GNU standards for writing ChangeLogs.  If it
>>    is still not clear what you are supposed to write, let us know.
>
> Well, I have read that and I have looked into the ChangeLog file itself, 
> also looked at other provided patches, but I do not know what you mean. 
> Please help me out w/ this. The only difference I can see is the missing 
> date (I left it out, because I can't know when it will be added)

The changelog entry you wrote was:

> 	* moves the strings fPIC|fpic|fPIE|fpie to builtin_define 
>  	__PIC__/__pic__ (alpha,arm,pa,sparc,sparc64 -linux)

A proper changelog entry for this change would be:

        * config/alpha/linux.h, config/arm/linux-elf.h, config/pa/pa-linux.h
        * config/sparc/linux.h, config/sparc/linux64.h
        (TARGET_OS_CPP_BUILTINS): Define __PIC__ and __pic__ if flag_pic.

        * config/arm/linux-gas.h (CPP_SPEC): Don't define __PIC__ or __pic__.
        * config/pa/pa/linux.h (CPP_SPEC): Likewise.
        * config/sparc/linux.h (CPP_SUBTARGET_SPEC): Likewise.
        * config/sparc/linux64.h (CPP_SUBTARGET_SPEC): Likewise.

Do you understand now?

>> 3) You absolutely must be working from CVS, not from a snapshot.  The
>>    tree changes much too fast to do anything else.
>
> it's the snapshot of today, so it applies now (and I don't know CVS 
> either ;-( )

Directions are at <http://gcc.gnu.org/cvs.html>.

>> > +%{fno-PIC|fno-pic:-U__PIC__ -U__pic__} %{pthread:-D_REENTRANT}"
>> 
>> This should not be necessary; giving -fno-PIC/-fno-pic should cause
>> flag_pic to be off, and thus the symbols will never get defined in the
>> first place.  If this is not so, then that is itself a bug that needs
>> fixing.
>
> on mips builtin_define __PIC__ and __pic__ are not ifdef'd by flag_pic 
> (probably because it's a PIC arch) so I think the disable logic won't work
> see gcc/config/mips/linux.h line 59/60.

Well, like I said, that is itself a bug, and you need to address the
problem there - best is to leave MIPS alone for now and consult with
the MIPS maintainers (see the MAINTAINERS file at top level of the
source tree for their names) how to straighten it all out.

zw


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