From c9b34e397c61aa6aec556189bfeac329dee052a6 Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Fri, 16 Feb 2018 08:20:32 +0000 Subject: [PATCH] re PR rtl-optimization/81443 (build/genrecog.o: virtual memory exhausted: Cannot allocate memory) PR rtl-optimization/81443 * rtlanal.c (num_sign_bit_copies1) : Do not propagate results from inner REGs to paradoxical SUBREGs. From-SVN: r257724 --- gcc/ChangeLog | 6 ++++++ gcc/rtlanal.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f97986b0e9a..16c9d9bb810 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2018-02-16 Eric Botcazou + + PR rtl-optimization/81443 + * rtlanal.c (num_sign_bit_copies1) : Do not propagate results + from inner REGs to paradoxical SUBREGs. + 2018-02-16 Richard Biener PR tree-optimization/84399 diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 89d586b7288..ac3662de3ce 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -5101,7 +5101,7 @@ num_sign_bit_copies1 (const_rtx x, scalar_int_mode mode, const_rtx known_x, if (WORD_REGISTER_OPERATIONS && load_extend_op (inner_mode) == SIGN_EXTEND && paradoxical_subreg_p (x) - && (MEM_P (SUBREG_REG (x)) || REG_P (SUBREG_REG (x)))) + && MEM_P (SUBREG_REG (x))) return cached_num_sign_bit_copies (SUBREG_REG (x), mode, known_x, known_mode, known_ret); } -- 2.30.2