aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/aarch64/aarch64-ldp-fusion.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/aarch64/aarch64-ldp-fusion.cc')
-rw-r--r--gcc/config/aarch64/aarch64-ldp-fusion.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/aarch64/aarch64-ldp-fusion.cc b/gcc/config/aarch64/aarch64-ldp-fusion.cc
index 0bc225d..437f0ae 100644
--- a/gcc/config/aarch64/aarch64-ldp-fusion.cc
+++ b/gcc/config/aarch64/aarch64-ldp-fusion.cc
@@ -1722,11 +1722,11 @@ ldp_bb_info::fuse_pair (bool load_p,
adjust_amt *= -1;
rtx change_reg = XEXP (change_pat, !load_p);
- machine_mode mode_for_mem = GET_MODE (change_mem);
rtx effective_base = drop_writeback (base_mem);
- rtx new_mem = adjust_address_nv (effective_base,
- mode_for_mem,
- adjust_amt);
+ rtx adjusted_addr = plus_constant (Pmode,
+ XEXP (effective_base, 0),
+ adjust_amt);
+ rtx new_mem = replace_equiv_address_nv (change_mem, adjusted_addr);
rtx new_set = load_p
? gen_rtx_SET (change_reg, new_mem)
: gen_rtx_SET (new_mem, change_reg);