Fix endianness assumption in LRA.
authorDavid S. Miller <davem@davemloft.net>
Wed, 16 Sep 2015 17:46:21 +0000 (17:46 +0000)
committerDavid S. Miller <davem@gcc.gnu.org>
Wed, 16 Sep 2015 17:46:21 +0000 (10:46 -0700)
gcc/
* lra-constraints.c (simplify_operand_subreg): Do not assume that
lowpart of a SUBREG has offset zero.

From-SVN: r227833

gcc/ChangeLog
gcc/lra-constraints.c

index 49b84380490ba7028d38bc71856a6b981e811529..1fad63688e732ff2cd180c3dcedd2c59626adf01 100644 (file)
@@ -1,3 +1,8 @@
+2015-09-16  David S. Miller  <davem@davemloft.net>
+
+       * lra-constraints.c (simplify_operand_subreg): Do not assume that
+       lowpart of a SUBREG has offset zero.
+
 2015-09-16  Jeff Law  <law@redhat.com>
 
        PR tree-optimization/47679
index cdb2695acfa87875de079dc2ed19e21bff99d6fd..fc8e43d66d98ee998f8fac68fd5f98a52d780265 100644 (file)
@@ -1545,7 +1545,7 @@ simplify_operand_subreg (int nop, machine_mode reg_mode)
          bool insert_before, insert_after;
 
          PUT_MODE (new_reg, mode);
-          subreg = simplify_gen_subreg (innermode, new_reg, mode, 0);
+          subreg = gen_lowpart_SUBREG (innermode, new_reg);
          bitmap_set_bit (&lra_subreg_reload_pseudos, REGNO (new_reg));
 
          insert_before = (type != OP_OUT);