From 1df2287fb66ff795abd86fe99b4ee14d413965d6 Mon Sep 17 00:00:00 2001 From: Vladimir Makarov Date: Mon, 16 Jun 2014 15:55:03 +0000 Subject: [PATCH] re PR rtl-optimization/61522 (ICE while building libgcc in LRA) 2014-06-16 Vladimir Makarov PR rtl-optimization/61522 * lra-assigns.c (assign_by_spills): Check null targetm.spill_class. From-SVN: r211711 --- gcc/ChangeLog | 6 ++++++ gcc/lra-assigns.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4c2a104a44e9..b74893a59ec9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-06-16 Vladimir Makarov + + PR rtl-optimization/61522 + * lra-assigns.c (assign_by_spills): Check null + targetm.spill_class. + 2014-06-16 Jan Hubicka Revert: diff --git a/gcc/lra-assigns.c b/gcc/lra-assigns.c index cea4c33b9aa9..83795bac49a3 100644 --- a/gcc/lra-assigns.c +++ b/gcc/lra-assigns.c @@ -1425,7 +1425,8 @@ assign_by_spills (void) enum reg_class rclass = lra_get_allocno_class (regno); enum reg_class spill_class; - if (lra_reg_info[regno].restore_regno < 0 + if (targetm.spill_class == NULL + || lra_reg_info[regno].restore_regno < 0 || ! bitmap_bit_p (&lra_inheritance_pseudos, regno) || (spill_class = ((enum reg_class) -- 2.47.3