This is the mail archive of the gcc-bugs@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: x86-64 bootstrap fails on mainline


> On Wed, May 29, 2002 at 12:10:20PM +0200, Jan Hubicka wrote:
> > Hmm, what do you mean by this?  The PC_REL addresses are used for many
> > things, for instance to address static variables, you mean that every
> > such memory reference should contain UNSPEC?  I think that would confuse
> > optimizers quite a bit.
> 
> Why?  If you wrap it in CONST, they think it's just another constant.

Hmm, I think there is problem even in non-PIC addressing.  For instance>
(synbol_ref)
is done as PC relative addressing just because it is one byte shorter
than non-relative way, but
(plus (symbol_ref) (reg))
is done in absolute way.  When compiler manages to simplify the plus
into CONST, it would be required to add the unspec as well.  That seems
nasty.
I think we can go with predicate function where the knowledge of what is
RIP relative is concentrated, like we have zext/sext_constant.

Honza
> 
> Anyway, I'm assuming the patch is good enough for now and should be
> checked in?
> 
> 
> r~


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