re PR middle-end/29519 (Bad code on MIPS with -fnon-call-exceptions)
authorRichard Sandiford <richard@codesourcery.com>
Wed, 25 Oct 2006 05:49:43 +0000 (05:49 +0000)
committerDavid Daney <daney@gcc.gnu.org>
Wed, 25 Oct 2006 05:49:43 +0000 (05:49 +0000)
PR middle-end/29519
* rtlanal.c (nonzero_address_p):  Remove check for values wrapping.

Co-Authored-By: David Daney <ddaney@avtrex.com>
From-SVN: r118023

gcc/ChangeLog
gcc/rtlanal.c

index 4edb9060d501235cac130daac15e9cc7d2ae65fe..829306c861d8cb0d73162de6f4f30b5753c9c8b5 100644 (file)
@@ -1,3 +1,9 @@
+2006-10-24  Richard Sandiford  <richard@codesourcery.com>
+           David Daney  <ddaney@avtrex.com>
+
+       PR middle-end/29519
+       * rtlanal.c (nonzero_address_p):  Remove check for values wrapping.
+
 2006-10-25  Ben Elliston  <bje@au.ibm.com>
 
        * doc/extend.texi (Variable Attributes): Typo fix.
index 53e6d83d1b8ab03d635c438cccc0e9539ce5bcf9..b0a816106d43a898a3b5cd3c46eaf10701bfc266 100644 (file)
@@ -368,17 +368,7 @@ nonzero_address_p (rtx x)
 
     case PLUS:
       if (GET_CODE (XEXP (x, 1)) == CONST_INT)
-       {
-         /* Pointers aren't allowed to wrap.  If we've got a register
-            that is known to be a pointer, and a positive offset, then
-            the composite can't be zero.  */
-         if (INTVAL (XEXP (x, 1)) > 0
-             && REG_P (XEXP (x, 0))
-             && REG_POINTER (XEXP (x, 0)))
-           return true;
-
-         return nonzero_address_p (XEXP (x, 0));
-       }
+        return nonzero_address_p (XEXP (x, 0));
       /* Handle PIC references.  */
       else if (XEXP (x, 0) == pic_offset_table_rtx
               && CONSTANT_P (XEXP (x, 1)))