aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog3
-rw-r--r--gcc/gcse.c3
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cc0e61c..beb3b97 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -5,6 +5,9 @@ Thu Oct 28 02:44:03 1999 Glen Nakamura <glen.nakamura@usa.net>
Thu Oct 28 02:15:22 1999 Jeffrey A Law (law@cygnus.com)
+ * gcse.c (delete_null_pointer_checks): Only record non-null info
+ for pseudos when examining stores.
+
* arm.md (adddi3, adddi_sesidi_di, adddi_sesidi_di): Add
splitters for these patterns. Use "#" for output templates.
(addsi3_carryin_shift): New pattern.
diff --git a/gcc/gcse.c b/gcc/gcse.c
index a40852d..30cb1b9 100644
--- a/gcc/gcse.c
+++ b/gcc/gcse.c
@@ -5076,7 +5076,8 @@ delete_null_pointer_checks (f)
not kill the nonnull property if it is derived from a MEM
appearing in a SET_DEST. */
if (GET_CODE (SET_DEST (set)) == MEM
- && GET_CODE (XEXP (SET_DEST (set), 0)) == REG)
+ && GET_CODE (XEXP (SET_DEST (set), 0)) == REG
+ && REGNO (XEXP (SET_SRC (set), 0)) >= FIRST_PSEUDO_REGISTER)
SET_BIT (nonnull_local[current_block],
REGNO (XEXP (SET_DEST (set), 0)));
}