summaryrefslogtreecommitdiff
path: root/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp
diff options
context:
space:
mode:
authorDan Gohman <dan433584@gmail.com>2016-02-16 23:48:04 +0000
committerDan Gohman <dan433584@gmail.com>2016-02-16 23:48:04 +0000
commitf3e241c3c286d215726973cda69a690d690edf75 (patch)
treeb318641bbc8e8a1f24806a56e3bd3cc9a9bbc2ac /lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp
parent30d7b4334add9a5184d1323504cb4f80b66e30d9 (diff)
[WebAssembly] Implement __builtin_frame_address.
Differential Revision: http://reviews.llvm.org/D17307 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261032 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp')
-rw-r--r--lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp b/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp
index f38f635d822..76ea0d72f6d 100644
--- a/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp
+++ b/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp
@@ -108,11 +108,11 @@ bool WebAssemblyRegNumbering::runOnMachineFunction(MachineFunction &MF) {
}
}
// Allocate locals for used physical registers
- if (FrameInfo.getStackSize() > 0 || FrameInfo.adjustsStack()) {
+ bool HasFP = MF.getSubtarget().getFrameLowering()->hasFP(MF);
+ if (FrameInfo.getStackSize() > 0 || FrameInfo.adjustsStack() || HasFP) {
DEBUG(dbgs() << "PReg SP " << CurReg << "\n");
MFI.addPReg(WebAssembly::SP32, CurReg++);
}
- bool HasFP = MF.getSubtarget().getFrameLowering()->hasFP(MF);
if (HasFP) {
DEBUG(dbgs() << "PReg FP " << CurReg << "\n");
MFI.addPReg(WebAssembly::FP32, CurReg++);