diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2021-11-19 20:06:13 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2021-11-19 20:06:13 +0000 |
| commit | c0981da47d5696fe36474fcf86b4ce03ae3ff818 (patch) | |
| tree | f42add1021b9f2ac6a69ac7cf6c4499962739a45 /llvm/lib/CodeGen/RegisterScavenging.cpp | |
| parent | 344a3780b2e33f6ca763666c380202b18aab72a3 (diff) | |
Diffstat (limited to 'llvm/lib/CodeGen/RegisterScavenging.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/RegisterScavenging.cpp | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/llvm/lib/CodeGen/RegisterScavenging.cpp b/llvm/lib/CodeGen/RegisterScavenging.cpp index e35cf7aa6958..c0a07ec4c91d 100644 --- a/llvm/lib/CodeGen/RegisterScavenging.cpp +++ b/llvm/lib/CodeGen/RegisterScavenging.cpp @@ -495,21 +495,20 @@ RegScavenger::spill(Register Reg, const TargetRegisterClass &RC, int SPAdj, // Spill the scavenged register before \p Before. int FI = Scavenged[SI].FrameIndex; if (FI < FIB || FI >= FIE) { - std::string Msg = std::string("Error while trying to spill ") + - TRI->getName(Reg) + " from class " + TRI->getRegClassName(&RC) + - ": Cannot scavenge register without an emergency spill slot!"; - report_fatal_error(Msg.c_str()); + report_fatal_error(Twine("Error while trying to spill ") + + TRI->getName(Reg) + " from class " + + TRI->getRegClassName(&RC) + + ": Cannot scavenge register without an emergency " + "spill slot!"); } - TII->storeRegToStackSlot(*MBB, Before, Reg, true, Scavenged[SI].FrameIndex, - &RC, TRI); + TII->storeRegToStackSlot(*MBB, Before, Reg, true, FI, &RC, TRI); MachineBasicBlock::iterator II = std::prev(Before); unsigned FIOperandNum = getFrameIndexOperandNum(*II); TRI->eliminateFrameIndex(II, SPAdj, FIOperandNum, this); // Restore the scavenged register before its use (or first terminator). - TII->loadRegFromStackSlot(*MBB, UseMI, Reg, Scavenged[SI].FrameIndex, - &RC, TRI); + TII->loadRegFromStackSlot(*MBB, UseMI, Reg, FI, &RC, TRI); II = std::prev(UseMI); FIOperandNum = getFrameIndexOperandNum(*II); |
