diff options
author | Richard Sandiford <richard@codesourcery.com> | 2006-10-25 05:49:43 +0000 |
---|---|---|
committer | David Daney <daney@gcc.gnu.org> | 2006-10-25 05:49:43 +0000 |
commit | 942d7821790f4341cfacc5b704f9344cc9c2efc9 (patch) | |
tree | 65baeb96b524898a2445a5c675a07615c9b818d7 /gcc | |
parent | 97977a91bb8745804deb94c7d08ec536bd2aebd9 (diff) | |
download | gcc-942d7821790f4341cfacc5b704f9344cc9c2efc9.zip gcc-942d7821790f4341cfacc5b704f9344cc9c2efc9.tar.gz gcc-942d7821790f4341cfacc5b704f9344cc9c2efc9.tar.bz2 |
re PR middle-end/29519 (Bad code on MIPS with -fnon-call-exceptions)
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/rtlanal.c | 12 |
2 files changed, 7 insertions, 11 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4edb906..829306c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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. diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 53e6d83..b0a8161 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -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))) |