Commit 4554663b authored by LiDongjin's avatar LiDongjin Committed by Craig Topper
Browse files

Recommit "[RISCV] Enable the LocalStackSlotAllocation pass support"



This includes a fix for the tramp3d failure from the llvm-testsuite
that caused the last revert. Hopefully the others failures were the
same issue.

Original commit message:
For RISC-V, load/store(exclude vector load/store) instructions only has a 12 bit immediate operand. If the offset is out-of-range, it must make use of a temp register to make up this offset. If between these offsets, they have a small(IsInt<12>) relative offset, LocalStackSlotAllocation pass can find a value as frame base register's value, and replace the origin offset with this register's value plus the relative offset.

Co-authored-by: default avatarluxufan <luxufan@iscas.ac.cn>
Co-authored-by: default avatarCraig Topper <craig.topper@sifive.com>

Differential Revision: https://reviews.llvm.org/D98101
parent 968f2c77
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment