From 341e19df23701a75f32dd31c24575c85abe961c7 Mon Sep 17 00:00:00 2001 From: Vladimir Makarov Date: Tue, 20 Nov 2012 21:32:59 +0000 Subject: [PATCH] re PR rtl-optimization/55396 (-O2 -m32 -fno-omit-frame-pointer: internal compiler error: in check_rtl, at lra.c:2007) 2012-11-20 Vladimir Makarov PR rtl-optimization/55396 * lra-constraints.c (get_reload_reg): Change class if it is different from reg class. From-SVN: r193678 --- gcc/ChangeLog | 6 ++++++ gcc/lra-constraints.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 513d0493fde..59982dfb1e6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2012-11-20 Vladimir Makarov + + PR rtl-optimization/55396 + * lra-constraints.c (get_reload_reg): Change class if it is + different from reg class. + 2012-11-20 Jakub Jelinek * vec.h (class vec_prefix): Change into struct. diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c index 9df7b97a34e..63ef155bd45 100644 --- a/gcc/lra-constraints.c +++ b/gcc/lra-constraints.c @@ -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"); -- 2.30.2