RTL problem with optimizations

Dale Johannesen dalej@apple.com
Wed Sep 15 19:42:00 GMT 2004


>
> I tried to find something about .web but I couldn't. I am wondering 
> why gcc replaces reg 48 with reg 75 and if there is a way to
> explain it not to do that :). Of course I can define pattern to match 
> such instruction, but this seems to me to be wrong.
> I have the same problem with -O4 optimizations. This problem does not 
> appear with other -Ox options.
>
> GCCINT does not say anything about .web, i.e. after which compilation 
> phase it is being generated.
> My questions are about this .web file , what it is ? and why compiler 
> decides to replace clobber register ?

See web.c.  Main entry point is web_main, you'll probably have to debug 
it and figure out what's
going on.  The code here

   /* Some instructions may use match_dup for their operands.  In case 
the
      operands are dead, we will assign them different pseudos, creating
      invalid instructions, so union all uses of the same operand for 
each
      insn.  */

looks like it is supposed to be handling your case.




More information about the Gcc mailing list