recog.c (verify_changes): Verify that changes[i].old is non-zero before applying...
authorJoern Rennecke <joern.rennecke@embecosm.com>
Fri, 30 Aug 2013 14:20:29 +0000 (14:20 +0000)
committerJoern Rennecke <amylaar@gcc.gnu.org>
Fri, 30 Aug 2013 14:20:29 +0000 (15:20 +0100)
        * recog.c (verify_changes): Verify that changes[i].old is non-zero
        before applying REG_P.

From-SVN: r202107

gcc/ChangeLog
gcc/recog.c

index b63c3201d298d08ebc980eb54c969c5b59576c59..6ca069bbf57aee487f63993757291205d209fb8d 100644 (file)
@@ -1,3 +1,8 @@
+2013-08-30  Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       * recog.c (verify_changes): Verify that changes[i].old is non-zero
+       before applying REG_P.
+
 2013-08-30  Jakub Jelinek  <jakub@redhat.com>
 
        PR tree-optimization/58277
index 2d44416892efa49f902ea2ab45c0f0debe35ce5e..690b20e4751dd2c5bcd839b322a89d22fc37f09a 100644 (file)
@@ -397,7 +397,10 @@ verify_changes (int num)
                                             MEM_ADDR_SPACE (object)))
            break;
        }
-      else if (REG_P (changes[i].old)
+      else if (/* changes[i].old might be zero, e.g. when putting a
+              REG_FRAME_RELATED_EXPR into a previously empty list.  */
+              changes[i].old
+              && REG_P (changes[i].old)
               && asm_noperands (PATTERN (object)) > 0
               && REG_EXPR (changes[i].old) != NULL_TREE
               && DECL_ASSEMBLER_NAME_SET_P (REG_EXPR (changes[i].old))