aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Makarov <vmakarov@redhat.com>2012-10-24 17:35:37 +0000
committerVladimir Makarov <vmakarov@redhat.com>2012-10-24 17:35:37 +0000
commit8bd539cc5b92becbe90a78cbbeec71d2768be79b (patch)
tree1c5dc926d74844df042207f722c873dc28f16355
parent97546ecb7dd19ec6fd0ef25cc32a6940838fb1ff (diff)
2012-10-24 Vladimir Makarov <vmakarov@redhat.com>
PR bootstrap/55049 * lra-constraints.c (extract_loc_address_regs): Pass top_p for ZERO_EXTEND operand. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@192771 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/lra-constraints.c6
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7211353de84..f19c1fc0bd9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2012-10-24 Vladimir Makarov <vmakarov@redhat.com>
+ PR bootstrap/55049
+ * lra-constraints.c (extract_loc_address_regs): Pass top_p for
+ ZERO_EXTEND operand.
+
+2012-10-24 Vladimir Makarov <vmakarov@redhat.com>
+
PR bootstrap/55048
* lra-constraints.c (update_ebb_live_info): Skip
non-NOTE_INSN_BASIC_BLOCK notes.
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c
index 1b56a0b4e54..4b357261bbe 100644
--- a/gcc/lra-constraints.c
+++ b/gcc/lra-constraints.c
@@ -515,6 +515,12 @@ extract_loc_address_regs (bool top_p, enum machine_mode mode, addr_space_t as,
case PC:
return;
+ case ZERO_EXTEND:
+ /* Pass TOP_P for displacement. */
+ extract_loc_address_regs (top_p, mode, as, &XEXP (*loc, 0), context_p,
+ code, index_code, modify_p, ad);
+ return;
+
case PLUS:
case LO_SUM:
/* When we have an address that is a sum, we must determine