diff options
author | Craig Topper <craig.topper@sifive.com> | 2022-10-04 09:15:13 -0700 |
---|---|---|
committer | Craig Topper <craig.topper@sifive.com> | 2022-10-04 09:32:27 -0700 |
commit | a38fb90b19d278d666c6cbf79ad23aea20f88fbd (patch) | |
tree | c7a91be1f7b2c2d2d5c91afed597ee9fc5c626c0 /llvm/tools/llvm-objdump/llvm-objdump.cpp | |
parent | 2734968e325b701110147098539a0a98d1c2878b (diff) | |
download | llvm-a38fb90b19d278d666c6cbf79ad23aea20f88fbd.zip llvm-a38fb90b19d278d666c6cbf79ad23aea20f88fbd.tar.gz llvm-a38fb90b19d278d666c6cbf79ad23aea20f88fbd.tar.bz2 |
[RISCV] Refactor and improve eliminateFrameIndex.
There are few changes mixed in here.
-Try to reuse the destination register from ADDI instead of always
creating a virtual register. This way we lean on the register
scavenger in fewer case.
-Explicitly reuse the primary virtual register when possible. There's
still a case where both getVLENFactoredAmount and handling large
fixed offsets can both create a secondary virtual register.
-Combine similar BuildMI calls by manipulating the Register variables.
There are still a couple early outs for ADDI, but overall I tried to
arrange the code into steps.
Reviewed By: reames
Differential Revision: https://reviews.llvm.org/D135009
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
0 files changed, 0 insertions, 0 deletions