re PR middle-end/18725 (another ICE on trivial invalid asm)
authorAndrew Pinski <pinskia@physics.uc.edu>
Mon, 29 Nov 2004 20:36:36 +0000 (20:36 +0000)
committerAndrew Pinski <pinskia@gcc.gnu.org>
Mon, 29 Nov 2004 20:36:36 +0000 (12:36 -0800)
2004-11-29  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/18725
        * gcc.dg/pr18725.c: New test.

2004-11-29  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/18725
        * tree-cfg.c (tree_node_can_be_shared): Error_mark_node can be
        shared always.

From-SVN: r91487

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr18725.c [new file with mode: 0644]
gcc/tree-cfg.c

index e124204..5433409 100644 (file)
@@ -1,3 +1,9 @@
+2004-11-29  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR middle-end/18725
+       * tree-cfg.c (tree_node_can_be_shared): Error_mark_node can be
+       shared always.
+
 2004-11-29  Diego Novillo  <dnovillo@redhat.com>
 
        PR tree-optimization/18712
index 4830621..a9faf59 100644 (file)
@@ -1,3 +1,8 @@
+2004-11-29  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR middle-end/18725
+       * gcc.dg/pr18725.c: New test.
+
 2004-11-29  Hans-Peter Nilsson  <hp@bitrange.com>
 
        PR target/18488
diff --git a/gcc/testsuite/gcc.dg/pr18725.c b/gcc/testsuite/gcc.dg/pr18725.c
new file mode 100644 (file)
index 0000000..0282d3b
--- /dev/null
@@ -0,0 +1,9 @@
+/* { dg-do compile } */
+/* { dg-options "" } */
+
+void
+f (void)
+{
+   int x = 1;
+   asm ("" : "" (x), "" (x)); /* { dg-error "output operand constraint lacks" } */
+}
index f206083..692e746 100644 (file)
@@ -3426,7 +3426,8 @@ tree_node_can_be_shared (tree t)
         gimple invariants if they overflowed.  */
       || CONSTANT_CLASS_P (t)
       || is_gimple_min_invariant (t)
-      || TREE_CODE (t) == SSA_NAME)
+      || TREE_CODE (t) == SSA_NAME
+      || t == error_node_mark)
     return true;
 
   if (TREE_CODE (t) == CASE_LABEL_EXPR)