OSDN Git Service

2005-12-22 Andrew Pinski <pinskia@physics.uc.edu>
authorpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 22 Dec 2005 18:06:35 +0000 (18:06 +0000)
committerpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 22 Dec 2005 18:06:35 +0000 (18:06 +0000)
        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.

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

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

index b264973..8004d01 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>
 
 2005-12-22  Zdenek Dvorak <dvorakz@suse.cz>
            Steven Bosscher <stevenb@suse.de>
 
index 089e088..e829f8e 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
 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 5af9753..f29602d 100644 (file)
@@ -236,6 +236,10 @@ tree
 make_rename_temp (tree type, const char *prefix)
 {
   tree t = create_tmp_var (type, prefix);
 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);
   if (referenced_vars)
     {
       add_referenced_tmp_var (t);