This is the mail archive of the gcc@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]

Re: Reload bug


  In message <jeyaeq4p4n.fsf@hawking.suse.de>you write:
[ ... ]

  > $ b=/cvs/test/i686-linux/egcs/gcc; $b/xgcc -B$b/ -O2 -fpic -S random.c -da
  > random.c: In function `Default_RandInt':
  > random.c:34: Internal compiler error in `change_address', at emit-rtl.c:151
  > 6
  > Please submit a full bug report.
  > See <URL:http://www.gnu.org/software/gcc/faq.html#bugreport> for instructio
  > ns.
  > 
[ ... ]
  > During global alloc register 31 is replaced by (mem:DI (symbol_ref)), but
  > a symbol_ref is not a valid memory operand due to PIC.  In other words,
  > register 31 is _not_ equivalent to what insn 256 claims.
Note, REG_EQUIV indicates that a pseudo is equivalent to a particular VALUE,
not whether or not the REG_EQUIV expression can be directly substituted into
the insn without additional work.

So insn 256 is fine.

I'll note this doesn't occur in the mainline tree, but I have no idea if that
is because the bug has actually been fixed or because we're just not triggering
the problem anymore.

jeff


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