re PR rtl-optimization/55396 (-O2 -m32 -fno-omit-frame-pointer: internal compiler...
authorVladimir Makarov <vmakarov@redhat.com>
Tue, 20 Nov 2012 21:32:59 +0000 (21:32 +0000)
committerVladimir Makarov <vmakarov@gcc.gnu.org>
Tue, 20 Nov 2012 21:32:59 +0000 (21:32 +0000)
2012-11-20  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55396
* lra-constraints.c (get_reload_reg): Change class if it is
different from reg class.

From-SVN: r193678

gcc/ChangeLog
gcc/lra-constraints.c

index 513d0493fdee2610f0253b56ac078be464bfdce2..59982dfb1e6758d3dda291fffac758147476305b 100644 (file)
@@ -1,3 +1,9 @@
+2012-11-20  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR rtl-optimization/55396
+       * lra-constraints.c (get_reload_reg): Change class if it is
+       different from reg class.
+
 2012-11-20  Jakub Jelinek  <jakub@redhat.com>
 
        * vec.h (class vec_prefix): Change into struct.
index 9df7b97a34e0f8874ca7123deb3dbfd1aa334b77..63ef155bd45bb8c1b1377bc93868883f09f7a2f3 100644 (file)
@@ -425,7 +425,7 @@ get_reload_reg (enum op_type type, enum machine_mode mode, rtx original,
            fprintf (lra_dump_file, "    Reuse r%d for reload ", regno);
            print_value_slim (lra_dump_file, original, 1);
          }
-       if (rclass != new_class)
+       if (new_class != lra_get_allocno_class (regno))
          change_class (regno, new_class, ", change", false);
        if (lra_dump_file != NULL)
          fprintf (lra_dump_file, "\n");