Patch for IA64 HP-UX (ILP32 mode), fix gcc.c-torture/compile/pr28489.c

Steve Ellcey sje@cup.hp.com
Tue Mar 20 16:52:00 GMT 2007


> On Wed, 2007-02-14 at 11:21 -0700, Steve Ellcey wrote:
> > 	* explow.c (convert_memory_address): Fold memory reference when
> > 	POINTERS_EXTEND_UNSIGNED < 0
> 
> Since it appears that both current users of POINTERS_EXTEND_UNSIGNED ==
> -1 are OK with this, and at least one benefits from it, I am willing to
> accept it.
> 
> However, I would ask that you fix the comment in convert_memory_address.
> With your patch, the code no longer matches the comment.  This gives you
> a chance to document what POINTERS_EXTEND_UNSIGNED really means here, in
> case we need to refine it later.
> -- 
> Jim Wilson, GNU Tools Support, http://www.specifix.com

Thanks for reviewing this, I will modify the comment to the following before
checking it in:

      /* For addition we can safely permute the conversion and addition
         operation if one operand is a constant and converting the constant
         does not change it or if one operand is a constant and we are
         using a ptr_extend instruction  (POINTERS_EXTEND_UNSIGNED < 0).
         We can always safely permute them if we are making the address
         narrower.  */

I will also work on a separate patch to make rtlanal.c and simplify-rtx.c
check POINTERS_EXTEND_UNSIGNED instead of HAVE_ptr_extend.

Steve Ellcey
sje@cup.hp.com



More information about the Gcc-patches mailing list