diff options
Diffstat (limited to 'llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp')
-rw-r--r-- | llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp b/llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp index f7150f9..82e0c28 100644 --- a/llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp +++ b/llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp @@ -131,7 +131,6 @@ #include "llvm/CodeGen/TargetFrameLowering.h" #include "llvm/CodeGen/TargetInstrInfo.h" #include "llvm/CodeGen/TargetLowering.h" -#include "llvm/CodeGen/TargetPassConfig.h" #include "llvm/CodeGen/TargetRegisterInfo.h" #include "llvm/CodeGen/TargetSubtargetInfo.h" #include "llvm/Config/llvm-config.h" @@ -284,7 +283,7 @@ private: const TargetRegisterInfo *TRI; const TargetInstrInfo *TII; const TargetFrameLowering *TFI; - TargetPassConfig *TPC; + bool ShouldEmitDebugEntryValues; BitVector CalleeSavedRegs; LexicalScopes LS; VarLocSet::Allocator Alloc; @@ -1088,7 +1087,7 @@ private: void flushPendingLocs(VarLocInMBB &PendingInLocs, VarLocMap &VarLocIDs); bool ExtendRanges(MachineFunction &MF, MachineDominatorTree *DomTree, - TargetPassConfig *TPC, unsigned InputBBLimit, + bool ShouldEmitDebugEntryValues, unsigned InputBBLimit, unsigned InputDbgValLimit) override; public: @@ -1648,11 +1647,8 @@ void VarLocBasedLDV::transferRegisterDef(MachineInstr &MI, collectIDsForRegs(KillSet, DeadRegs, OpenRanges.getVarLocs(), VarLocIDs); OpenRanges.erase(KillSet, VarLocIDs, LocIndex::kUniversalLocation); - if (TPC) { - auto &TM = TPC->getTM<TargetMachine>(); - if (TM.Options.ShouldEmitDebugEntryValues()) - emitEntryValues(MI, OpenRanges, VarLocIDs, EntryValTransfers, KillSet); - } + if (ShouldEmitDebugEntryValues) + emitEntryValues(MI, OpenRanges, VarLocIDs, EntryValTransfers, KillSet); } void VarLocBasedLDV::transferWasmDef(MachineInstr &MI, @@ -2189,11 +2185,8 @@ void VarLocBasedLDV::recordEntryValue(const MachineInstr &MI, const DefinedRegsSet &DefinedRegs, OpenRangesSet &OpenRanges, VarLocMap &VarLocIDs) { - if (TPC) { - auto &TM = TPC->getTM<TargetMachine>(); - if (!TM.Options.ShouldEmitDebugEntryValues()) - return; - } + if (!ShouldEmitDebugEntryValues) + return; DebugVariable V(MI.getDebugVariable(), MI.getDebugExpression(), MI.getDebugLoc()->getInlinedAt()); @@ -2217,7 +2210,8 @@ void VarLocBasedLDV::recordEntryValue(const MachineInstr &MI, /// extend ranges across basic blocks. bool VarLocBasedLDV::ExtendRanges(MachineFunction &MF, MachineDominatorTree *DomTree, - TargetPassConfig *TPC, unsigned InputBBLimit, + bool ShouldEmitDebugEntryValues, + unsigned InputBBLimit, unsigned InputDbgValLimit) { (void)DomTree; LLVM_DEBUG(dbgs() << "\nDebug Range Extension: " << MF.getName() << "\n"); @@ -2235,7 +2229,8 @@ bool VarLocBasedLDV::ExtendRanges(MachineFunction &MF, TII = MF.getSubtarget().getInstrInfo(); TFI = MF.getSubtarget().getFrameLowering(); TFI->getCalleeSaves(MF, CalleeSavedRegs); - this->TPC = TPC; + this->ShouldEmitDebugEntryValues = ShouldEmitDebugEntryValues; + LS.initialize(MF); bool Changed = false; |