diff options
author | Bill Schmidt <wschmidt@linux.ibm.com> | 2020-08-28 11:47:01 -0500 |
---|---|---|
committer | Bill Schmidt <wschmidt@linux.ibm.com> | 2020-08-28 11:47:01 -0500 |
commit | 26c24398d3615aef43e599f87911c1ecc3bd2841 (patch) | |
tree | 55e19d5b3ff6a3f123a536337c30f41a57d98cc4 /gcc | |
parent | 1c1e41b06509c60c054792839618fad094ba17d1 (diff) | |
download | gcc-26c24398d3615aef43e599f87911c1ecc3bd2841.zip gcc-26c24398d3615aef43e599f87911c1ecc3bd2841.tar.gz gcc-26c24398d3615aef43e599f87911c1ecc3bd2841.tar.bz2 |
rs6000: r12 copy cleanup
Remove unnecessary tests before copying function address to r12.
2020-08-28 Bill Schmidt <wschmidt@linux.ibm.com>
gcc/
* config/rs6000/rs6000.c (rs6000_call_aix): Remove test for r12.
(rs6000_sibcall_aix): Likewise.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 0954527..ca5b71e 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -24725,8 +24725,7 @@ rs6000_call_aix (rtx value, rtx func_desc, rtx tlsarg, rtx cookie) /* A function pointer in the ELFv2 ABI is just a plain address, but the ABI requires it to be loaded into r12 before the call. */ func_addr = gen_rtx_REG (Pmode, 12); - if (!rtx_equal_p (func_addr, func)) - emit_move_insn (func_addr, func); + emit_move_insn (func_addr, func); abi_reg = func_addr; /* Indirect calls via CTR are strongly preferred over indirect calls via LR, so move the address there. Needed to mark @@ -24846,8 +24845,7 @@ rs6000_sibcall_aix (rtx value, rtx func_desc, rtx tlsarg, rtx cookie) if (GET_CODE (func_desc) != SYMBOL_REF && DEFAULT_ABI == ABI_ELFv2) { r12 = gen_rtx_REG (Pmode, 12); - if (!rtx_equal_p (r12, func_desc)) - emit_move_insn (r12, func_desc); + emit_move_insn (r12, func_desc); func_addr = gen_rtx_REG (Pmode, CTR_REGNO); emit_move_insn (func_addr, r12); } |