SYMBOL_REFs are Pmode.

Richard Henderson rth@cygnus.com
Fri Aug 4 18:39:00 GMT 2000


On Sat, Aug 05, 2000 at 12:12:05AM +0200, Jan Hubicka wrote:
> 	* i386.c (ix86_output_function_block_profiler,
> 	ix86_output_block_profiler): SYMBOL_REF is Pmode.
> 	* except.c (expand_eh_return): Likewise.

The first hunk is ok.

> *** except.c.old	Fri Aug  4 00:01:43 2000
> --- except.c	Fri Aug  4 19:54:42 2000
> *************** expand_eh_return ()
> *** 3126,3132 ****
>     if (GET_CODE (ra) == REG && REGNO (ra) >= FIRST_PSEUDO_REGISTER)
>       abort();
>   
> !   tmp = memory_address (Pmode, gen_rtx_LABEL_REF (Pmode, stub_start)); 
>   #ifdef RETURN_ADDR_OFFSET
>     tmp = plus_constant (tmp, -RETURN_ADDR_OFFSET);
>   #endif
> --- 3126,3132 ----
>     if (GET_CODE (ra) == REG && REGNO (ra) >= FIRST_PSEUDO_REGISTER)
>       abort();
>   
> !   tmp = memory_address (Pmode, gen_rtx_LABEL_REF (VOIDmode, stub_start)); 
>   #ifdef RETURN_ADDR_OFFSET
>     tmp = plus_constant (tmp, -RETURN_ADDR_OFFSET);
>   #endif

This hunk isn't.  One, it's not doing what the ChangeLog entry said
it did.  Second, if SYMBOL_REF is Pmode, surely LABEL_REF is as well.


r~


More information about the Gcc-patches mailing list