|
99 | 99 | #include "llvm/CodeGen/TargetFrameLowering.h" |
100 | 100 | #include "llvm/CodeGen/TargetInstrInfo.h" |
101 | 101 | #include "llvm/CodeGen/TargetLowering.h" |
102 | | -#include "llvm/CodeGen/TargetPassConfig.h" |
103 | 102 | #include "llvm/CodeGen/TargetRegisterInfo.h" |
104 | 103 | #include "llvm/CodeGen/TargetSubtargetInfo.h" |
105 | 104 | #include "llvm/Config/llvm-config.h" |
@@ -270,12 +269,12 @@ class TransferTracker { |
270 | 269 | TransferTracker(const TargetInstrInfo *TII, MLocTracker *MTracker, |
271 | 270 | MachineFunction &MF, const DebugVariableMap &DVMap, |
272 | 271 | const TargetRegisterInfo &TRI, |
273 | | - const BitVector &CalleeSavedRegs, const TargetPassConfig &TPC) |
| 272 | + const BitVector &CalleeSavedRegs, |
| 273 | + bool ShouldEmitDebugEntryValues) |
274 | 274 | : TII(TII), MTracker(MTracker), MF(MF), DVMap(DVMap), TRI(TRI), |
275 | 275 | CalleeSavedRegs(CalleeSavedRegs) { |
276 | 276 | TLI = MF.getSubtarget().getTargetLowering(); |
277 | | - auto &TM = TPC.getTM<TargetMachine>(); |
278 | | - ShouldEmitDebugEntryValues = TM.Options.ShouldEmitDebugEntryValues(); |
| 277 | + this->ShouldEmitDebugEntryValues = ShouldEmitDebugEntryValues; |
279 | 278 | } |
280 | 279 |
|
281 | 280 | bool isCalleeSaved(LocIdx L) const { |
@@ -3547,9 +3546,9 @@ bool InstrRefBasedLDV::depthFirstVLocAndEmit( |
3547 | 3546 | const ScopeToVarsT &ScopeToVars, ScopeToAssignBlocksT &ScopeToAssignBlocks, |
3548 | 3547 | LiveInsT &Output, FuncValueTable &MOutLocs, FuncValueTable &MInLocs, |
3549 | 3548 | SmallVectorImpl<VLocTracker> &AllTheVLocs, MachineFunction &MF, |
3550 | | - const TargetPassConfig &TPC) { |
3551 | | - TTracker = |
3552 | | - new TransferTracker(TII, MTracker, MF, DVMap, *TRI, CalleeSavedRegs, TPC); |
| 3549 | + bool ShouldEmitDebugEntryValues) { |
| 3550 | + TTracker = new TransferTracker(TII, MTracker, MF, DVMap, *TRI, |
| 3551 | + CalleeSavedRegs, ShouldEmitDebugEntryValues); |
3553 | 3552 | unsigned NumLocs = MTracker->getNumLocs(); |
3554 | 3553 | VTracker = nullptr; |
3555 | 3554 |
|
@@ -3692,15 +3691,14 @@ bool InstrRefBasedLDV::emitTransfers() { |
3692 | 3691 | /// extend ranges across basic blocks. |
3693 | 3692 | bool InstrRefBasedLDV::ExtendRanges(MachineFunction &MF, |
3694 | 3693 | MachineDominatorTree *DomTree, |
3695 | | - TargetPassConfig *TPC, |
| 3694 | + bool ShouldEmitDebugEntryValues, |
3696 | 3695 | unsigned InputBBLimit, |
3697 | 3696 | unsigned InputDbgValLimit) { |
3698 | 3697 | // No subprogram means this function contains no debuginfo. |
3699 | 3698 | if (!MF.getFunction().getSubprogram()) |
3700 | 3699 | return false; |
3701 | 3700 |
|
3702 | 3701 | LLVM_DEBUG(dbgs() << "\nDebug Range Extension\n"); |
3703 | | - this->TPC = TPC; |
3704 | 3702 |
|
3705 | 3703 | this->DomTree = DomTree; |
3706 | 3704 | TRI = MF.getSubtarget().getRegisterInfo(); |
@@ -3841,7 +3839,7 @@ bool InstrRefBasedLDV::ExtendRanges(MachineFunction &MF, |
3841 | 3839 | // the "else" block of this condition. |
3842 | 3840 | Changed = depthFirstVLocAndEmit( |
3843 | 3841 | MaxNumBlocks, ScopeToDILocation, ScopeToVars, ScopeToAssignBlocks, |
3844 | | - SavedLiveIns, MOutLocs, MInLocs, vlocs, MF, *TPC); |
| 3842 | + SavedLiveIns, MOutLocs, MInLocs, vlocs, MF, ShouldEmitDebugEntryValues); |
3845 | 3843 | } |
3846 | 3844 |
|
3847 | 3845 | delete MTracker; |
|
0 commit comments