aboutsummaryrefslogtreecommitdiff
path: root/ld/ldexp.c
diff options
context:
space:
mode:
authorMichael Clark <michaeljclark@mac.com>2017-04-27 16:08:46 +1200
committerPalmer Dabbelt <palmer@dabbelt.com>2017-05-02 15:19:07 -0700
commit43e379d74c994fe431368b5f25f778bf601a2981 (patch)
treec35649586f7b5caa472a2c5a6e55079cae3e8372 /ld/ldexp.c
parent763a5fa4f330d6d3859c94a69ba1fcab09330cf9 (diff)
downloadbinutils-43e379d74c994fe431368b5f25f778bf601a2981.zip
binutils-43e379d74c994fe431368b5f25f778bf601a2981.tar.gz
binutils-43e379d74c994fe431368b5f25f778bf601a2981.tar.bz2
RISC-V: Change CALL macro to use ra as the temporary address register
e.g. 1: auipc ra, %pcrel_hi(symbol) jalr ra, %pcrel_lo(1b)(ra) The use of ra instead of t1 for address construction provides an opportunity for a microarchitecture to elide the write of the destination address, and instead read the target address as an immediate spread across the fused auipc+jalr pair. The link register ra in the jalr overwrites the target address temporary. 2017-05-01 Michael Clark <michaeljclark@mac.com> * riscv-opc.c (riscv_opcodes) <call>: Use RA not T1 as a temporary register.
Diffstat (limited to 'ld/ldexp.c')
0 files changed, 0 insertions, 0 deletions