2006-03-21 Andrew Pinski <pinskia@physics.uc.edu>
authorpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 21 Mar 2006 18:58:50 +0000 (18:58 +0000)
committerpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 21 Mar 2006 18:58:50 +0000 (18:58 +0000)
        PR tree-opt/26781
        * tree-ssa-pre.c (create_component_ref_by_pieces):
        Handle STRING_CST.
2006-03-21  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/26781
        * gcc.c-torture/compile/pr26781-1.c: New test.
        * gcc.c-torture/compile/pr26781-2.c: New test.

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

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/pr26781-1.c [new file with mode: 0644]
gcc/testsuite/gcc.c-torture/compile/pr26781-2.c [new file with mode: 0644]
gcc/tree-ssa-pre.c

index 58504cf..cc64df9 100644 (file)
@@ -1,3 +1,9 @@
+2006-03-21  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/26781
+       * tree-ssa-pre.c (create_component_ref_by_pieces):
+       Handle STRING_CST.
+
 2006-03-21  Jakub Jelinek  <jakub@redhat.com>
 
        PR c++/26690
index 2c983ad..eafe67c 100644 (file)
@@ -1,3 +1,9 @@
+2006-03-21  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/26781
+       * gcc.c-torture/compile/pr26781-1.c: New test.
+       * gcc.c-torture/compile/pr26781-2.c: New test.
+
 2006-03-21  Jakub Jelinek  <jakub@redhat.com>
 
        PR c++/26690
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr26781-1.c b/gcc/testsuite/gcc.c-torture/compile/pr26781-1.c
new file mode 100644 (file)
index 0000000..028919e
--- /dev/null
@@ -0,0 +1,11 @@
+void zconfdump(void)
+{
+  char *p, *p2;
+  for (p2 = p; p2; )
+    {
+      char __a0, __a1, __a2;
+      __a0 = ((__const char *) ("\"\\"))[0];
+      if (__a0)
+        return;
+    }
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr26781-2.c b/gcc/testsuite/gcc.c-torture/compile/pr26781-2.c
new file mode 100644 (file)
index 0000000..47168fd
--- /dev/null
@@ -0,0 +1,11 @@
+void zconfdump(__SIZE_TYPE__ i)
+{
+  for (;;)
+    {
+      char __a0;
+      __a0 = ("\"\\")[i];
+      if (__a0)
+        return;
+    }
+}
+
index eea38c3..e925621 100644 (file)
@@ -2246,6 +2246,7 @@ create_component_ref_by_pieces (basic_block block, tree expr, tree stmts)
     case PARM_DECL:
     case RESULT_DECL:
     case SSA_NAME:
+    case STRING_CST:
       return genop;
     default:
       gcc_unreachable ();