Fix endianness assumption in LRA.
authordavem <davem@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 16 Sep 2015 17:46:21 +0000 (17:46 +0000)
committerdavem <davem@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 16 Sep 2015 17:46:21 +0000 (17:46 +0000)
gcc/
* lra-constraints.c (simplify_operand_subreg): Do not assume that
lowpart of a SUBREG has offset zero.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227833 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/lra-constraints.c

index 49b8438..1fad636 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 cdb2695..fc8e43d 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);