diff options
author | Sander de Smalen <sander.desmalen@arm.com> | 2019-10-28 09:49:48 +0000 |
---|---|---|
committer | Sander de Smalen <sander.desmalen@arm.com> | 2019-10-28 18:05:19 +0000 |
commit | 70f5aecedef9a6e347e425eb5b843bf797b95319 (patch) | |
tree | ec68306a2de8f8987227478bcff9511320310a2b /llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp | |
parent | 18824d25d8aa8727d9f64f8002f2533d57627bd5 (diff) | |
download | bcm5719-llvm-70f5aecedef9a6e347e425eb5b843bf797b95319.tar.gz bcm5719-llvm-70f5aecedef9a6e347e425eb5b843bf797b95319.zip |
Reland [AArch64][DebugInfo] Do not recompute CalleeSavedStackSize (Take 2)
Fixed up test/DebugInfo/MIR/Mips/live-debug-values-reg-copy.mir that
broke r375425.
Diffstat (limited to 'llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp')
-rw-r--r-- | llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp b/llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp index 9eeacc2584c..bc59be890c9 100644 --- a/llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp +++ b/llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp @@ -60,6 +60,19 @@ bool TargetFrameLowering::needsFrameIndexResolution( return MF.getFrameInfo().hasStackObjects(); } +void TargetFrameLowering::getCalleeSaves(const MachineFunction &MF, + BitVector &CalleeSaves) const { + const TargetRegisterInfo &TRI = *MF.getSubtarget().getRegisterInfo(); + CalleeSaves.resize(TRI.getNumRegs()); + + const MachineFrameInfo &MFI = MF.getFrameInfo(); + if (!MFI.isCalleeSavedInfoValid()) + return; + + for (const CalleeSavedInfo &Info : MFI.getCalleeSavedInfo()) + CalleeSaves.set(Info.getReg()); +} + void TargetFrameLowering::determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs, RegScavenger *RS) const { |