aboutsummaryrefslogtreecommitdiff
path: root/backend/lib/Target/RISCV/RISCVSubtarget.cpp
diff options
context:
space:
mode:
authorRichard-Qin-X <richard.qin.001@gmail.com>2026-08-24 18:27:25 +0800
committerRichard-Qin-X <richard.qin.001@gmail.com>2026-08-24 18:27:25 +0800
commitf430936038432e90b2d70e08ac51620931651450 (patch)
tree741d8f94e2315180a6b0dd3fdbe8b25ab298548a /backend/lib/Target/RISCV/RISCVSubtarget.cpp
parent1b4601c1ac91a06091610e969e70bcd1cb014cc5 (diff)
downloadrcc-project-f430936038432e90b2d70e08ac51620931651450.tar.gz
rcc-project-f430936038432e90b2d70e08ac51620931651450.tar.xz
[RISCV] Match LLVM compressed stack frame lowering
Diffstat (limited to 'backend/lib/Target/RISCV/RISCVSubtarget.cpp')
-rw-r--r--backend/lib/Target/RISCV/RISCVSubtarget.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/backend/lib/Target/RISCV/RISCVSubtarget.cpp b/backend/lib/Target/RISCV/RISCVSubtarget.cpp
index 499219b..314aeb7 100644
--- a/backend/lib/Target/RISCV/RISCVSubtarget.cpp
+++ b/backend/lib/Target/RISCV/RISCVSubtarget.cpp
@@ -197,6 +197,7 @@ RISCVSubtarget::RISCVSubtarget(RISCVSubtargetFeatures Features, RelocationModel
CodeModel Code, RISCVABI ABI)
: Features(Features), Relocation(Relocation), Code(Code), ABI(ABI),
SchedulingHooks(createSchedulingHooks(Features)) {
+ FrameLoweringInfo = createFrameLowering(*this);
auto Model = createSchedulingModel(*SchedulingHooks);
if (!Model)
std::abort();
@@ -229,6 +230,10 @@ const RISCVRegisterBankInfo *RISCVSubtarget::getRegBankInfo() const {
return RegBankInfo.get();
}
+const TargetFrameLowering &RISCVSubtarget::frameLowering() const noexcept {
+ return *FrameLoweringInfo;
+}
+
const TargetSchedulingModel &RISCVSubtarget::schedulingModel() const noexcept {
return *SchedulingModel;
}