This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Reload bug
- To: Andreas Schwab <schwab at suse dot de>
- Subject: Re: Reload bug
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Thu, 02 Sep 1999 01:23:34 -0600
- cc: gcc at gcc dot gnu dot org
- Reply-To: law at cygnus dot com
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