[multiple changes]
authorAndrew Pinski <pinskia@physics.uc.edu>
Thu, 22 Dec 2005 18:06:35 +0000 (18:06 +0000)
committerAndrew Pinski <pinskia@gcc.gnu.org>
Thu, 22 Dec 2005 18:06:35 +0000 (10:06 -0800)
2005-12-22  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/25513
        * gcc.c-torture/compile/pr25513.c: New test.
2005-12-22  Andrew Pinski <pinskia@physics.uc.edu>

        PR tree-opt/25513
        * tree-dfa.c (make_rename_temp): Set DECL_COMPLEX_GIMPLE_REG_P complex
        variables.

From-SVN: r108958

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/pr25513.c [new file with mode: 0644]
gcc/tree-dfa.c

index b264973f82c5a957cb33b09c88e5ee65ac4d6233..8004d01dcc444c381b592ce4cab9e3f3462cd0f5 100644 (file)
@@ -1,3 +1,9 @@
+2005-12-22  Andrew Pinski <pinskia@physics.uc.edu>
+
+       PR tree-opt/25513
+       * tree-dfa.c (make_rename_temp): Set DECL_COMPLEX_GIMPLE_REG_P complex
+       variables.
+
 2005-12-22  Zdenek Dvorak <dvorakz@suse.cz>
            Steven Bosscher <stevenb@suse.de>
 
index 089e08802be4bf9df8b8794547114b34cb40bc96..e829f8e21f2da920c102ac354cbb9f7b97fb739a 100644 (file)
@@ -1,3 +1,8 @@
+2005-12-22  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/25513
+       * gcc.c-torture/compile/pr25513.c: New test.
+
 2005-12-22  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
 
        PR c++/23333
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr25513.c b/gcc/testsuite/gcc.c-torture/compile/pr25513.c
new file mode 100644 (file)
index 0000000..d2aa591
--- /dev/null
@@ -0,0 +1,9 @@
+int f(void)
+{
+  static _Complex double t;
+  int i, j;
+  for(i = 0;i<2;i++)
+    for(j = 0;j<2;j++)
+      t = .5 * 1.0;
+  return t;
+}
index 5af9753d5c683b2bc582098f69d74f1133204a7c..f29602d27a31c75e2a7273caa10661a1737d5d86 100644 (file)
@@ -236,6 +236,10 @@ tree
 make_rename_temp (tree type, const char *prefix)
 {
   tree t = create_tmp_var (type, prefix);
+
+  if (TREE_CODE (type) == COMPLEX_TYPE)
+    DECL_COMPLEX_GIMPLE_REG_P (t) = 1;
+
   if (referenced_vars)
     {
       add_referenced_tmp_var (t);