diff options
author | Craig Topper <craig.topper@sifive.com> | 2023-12-05 10:30:01 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-05 10:30:01 -0800 |
commit | 3c5b42acd3e2022da40f6e4b50f5035279b8b93a (patch) | |
tree | bd9485ef58d98cb2dd25b1df7bb049f904130172 /llvm/unittests/Analysis/ValueTrackingTest.cpp | |
parent | 02f4b36ad5f2f97ff63259e38244da8fcd5a205e (diff) | |
download | llvm-3c5b42acd3e2022da40f6e4b50f5035279b8b93a.zip llvm-3c5b42acd3e2022da40f6e4b50f5035279b8b93a.tar.gz llvm-3c5b42acd3e2022da40f6e4b50f5035279b8b93a.tar.bz2 |
[RISCV] Allocate the varargs GPR save area as a single object. (#74354)
Previously we allocated one object for each GPR. We also allocated the
same offset twice, once to save for VASTART and then again for the first
register in the save loop.
This patch uses a single object for all the registers and shares this
with VASTART. This is more consistent with other targets like AArch64
and ARM.
I've removed the setValue(nullptr) from the memory operand now. Having a
single object makes me a lot more comfortable about alias analysis being
able to see what is going on. This led to the scheduling changes in
push-pop-popret.ll and vararg.ll.
Diffstat (limited to 'llvm/unittests/Analysis/ValueTrackingTest.cpp')
0 files changed, 0 insertions, 0 deletions