OSDN Git Service

* gcse.c (delete_null_pointer_checks): Only record non-null info
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 28 Oct 1999 09:08:43 +0000 (09:08 +0000)
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 28 Oct 1999 09:08:43 +0000 (09:08 +0000)
        for pseudos when examining stores.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30231 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/gcse.c

index cc0e61c..beb3b97 100644 (file)
@@ -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.
index a40852d..30cb1b9 100644 (file)
@@ -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)));
        }