From 77850e96ddcb1c1c1be784569d9b18e1c3f96186 Mon Sep 17 00:00:00 2001 From: Matthew Fortune Date: Mon, 20 Feb 2017 12:07:14 +0000 Subject: [PATCH] Partial revert of r243782 to restore previous behavior gcc/ * lra-constraints.c (simplify_operand_subreg): Remove early return false. From-SVN: r245600 --- gcc/ChangeLog | 5 +++++ gcc/lra-constraints.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1823049..aa7bb84 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2017-02-20 Matthew Fortune + * lra-constraints.c (simplify_operand_subreg): Remove early + return false. + +2017-02-20 Matthew Fortune + PR target/78660 * lra-constraints.c (curr_insn_transform): Tighten condition for converting SUBREG reloads from OP_OUT to OP_INOUT. diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c index 18b3096..a7de40b 100644 --- a/gcc/lra-constraints.c +++ b/gcc/lra-constraints.c @@ -1600,7 +1600,8 @@ simplify_operand_subreg (int nop, machine_mode reg_mode) the memory. Typical case is when the index scale should correspond the memory. */ *curr_id->operand_loc[nop] = operand; - return false; + /* Do not return false here as the MEM_P (reg) will be processed + later in this function. */ } else if (REG_P (reg) && REGNO (reg) < FIRST_PSEUDO_REGISTER) { -- 2.7.4