[PATCH] D45342: [DebugInfo] Examine all uses of isDebugValue() for debug instructions.

Hsiangkai Wang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 5 17:13:48 PDT 2018


HsiangKai created this revision.
HsiangKai added reviewers: rnk, chenwj, aprantl, probinson.
Herald added subscribers: jrtc27, JDevlieghere, javed.absar, fedor.sergeev, kbarton, aheejin, eraman, jgravelle-google, sbc100, nhaehnle, nemanjai, sdardis, dylanmckay, jyknight, dschuff, arsenm, jfb, qcolombet, MatzeB.

Because we create a new kind of debug instruction, DBG_LABEL, we need to
check all passes which use isDebugValue() to check MachineInstr is debug
instruction or not. When expelling debug instructions, we should expel
both DBG_VALUE and DBG_LABEL. So, I create a new function,
isDebugInstr(), in MachineInstr to check whether the MachineInstr is
debug instruction or not.

This patch has no new test case. I have run regression test and there is
no difference in regression test.


Repository:
  rL LLVM

https://reviews.llvm.org/D45342

Files:
  include/llvm/CodeGen/MachineBasicBlock.h
  include/llvm/CodeGen/MachineInstrBuilder.h
  include/llvm/CodeGen/SlotIndexes.h
  lib/CodeGen/AggressiveAntiDepBreaker.cpp
  lib/CodeGen/AsmPrinter/AsmPrinter.cpp
  lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
  lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp
  lib/CodeGen/BranchFolding.cpp
  lib/CodeGen/BreakFalseDeps.cpp
  lib/CodeGen/CalcSpillWeights.cpp
  lib/CodeGen/CriticalAntiDepBreaker.cpp
  lib/CodeGen/EarlyIfConversion.cpp
  lib/CodeGen/ExecutionDomainFix.cpp
  lib/CodeGen/IfConversion.cpp
  lib/CodeGen/InlineSpiller.cpp
  lib/CodeGen/LiveIntervals.cpp
  lib/CodeGen/LiveRangeShrink.cpp
  lib/CodeGen/LiveVariables.cpp
  lib/CodeGen/LocalStackSlotAllocation.cpp
  lib/CodeGen/MachineBasicBlock.cpp
  lib/CodeGen/MachineCSE.cpp
  lib/CodeGen/MachineInstr.cpp
  lib/CodeGen/MachineScheduler.cpp
  lib/CodeGen/MachineSink.cpp
  lib/CodeGen/MachineTraceMetrics.cpp
  lib/CodeGen/MachineVerifier.cpp
  lib/CodeGen/PHIElimination.cpp
  lib/CodeGen/PeepholeOptimizer.cpp
  lib/CodeGen/ReachingDefAnalysis.cpp
  lib/CodeGen/RegAllocFast.cpp
  lib/CodeGen/RegisterCoalescer.cpp
  lib/CodeGen/RegisterPressure.cpp
  lib/CodeGen/RegisterScavenging.cpp
  lib/CodeGen/ScheduleDAGInstrs.cpp
  lib/CodeGen/SlotIndexes.cpp
  lib/CodeGen/SplitKit.cpp
  lib/CodeGen/StackColoring.cpp
  lib/CodeGen/StackSlotColoring.cpp
  lib/CodeGen/TwoAddressInstructionPass.cpp
  lib/Target/AArch64/AArch64ConditionalCompares.cpp
  lib/Target/AArch64/AArch64FrameLowering.cpp
  lib/Target/AArch64/AArch64InstrInfo.cpp
  lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
  lib/Target/AMDGPU/GCNHazardRecognizer.cpp
  lib/Target/AMDGPU/GCNIterativeScheduler.cpp
  lib/Target/AMDGPU/GCNRegPressure.cpp
  lib/Target/AMDGPU/GCNSchedStrategy.cpp
  lib/Target/AMDGPU/SIDebuggerInsertNops.cpp
  lib/Target/AMDGPU/SIInsertWaitcnts.cpp
  lib/Target/AMDGPU/SIMachineScheduler.cpp
  lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
  lib/Target/ARC/ARCInstrInfo.cpp
  lib/Target/ARM/ARMBaseInstrInfo.cpp
  lib/Target/ARM/ARMConstantIslandPass.cpp
  lib/Target/ARM/ARMHazardRecognizer.cpp
  lib/Target/ARM/ARMLoadStoreOptimizer.cpp
  lib/Target/ARM/Thumb2ITBlockPass.cpp
  lib/Target/ARM/Thumb2InstrInfo.cpp
  lib/Target/ARM/Thumb2SizeReduction.cpp
  lib/Target/ARM/ThumbRegisterInfo.cpp
  lib/Target/AVR/AVRInstrInfo.cpp
  lib/Target/BPF/BPFInstrInfo.cpp
  lib/Target/Hexagon/BitTracker.cpp
  lib/Target/Hexagon/HexagonAsmPrinter.cpp
  lib/Target/Hexagon/HexagonBlockRanges.cpp
  lib/Target/Hexagon/HexagonConstPropagation.cpp
  lib/Target/Hexagon/HexagonCopyToCombine.cpp
  lib/Target/Hexagon/HexagonEarlyIfConv.cpp
  lib/Target/Hexagon/HexagonGenMux.cpp
  lib/Target/Hexagon/HexagonInstrInfo.cpp
  lib/Target/Hexagon/HexagonNewValueJump.cpp
  lib/Target/Hexagon/HexagonSplitDouble.cpp
  lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
  lib/Target/Hexagon/RDFGraph.cpp
  lib/Target/Hexagon/RDFLiveness.cpp
  lib/Target/Lanai/LanaiDelaySlotFiller.cpp
  lib/Target/Lanai/LanaiInstrInfo.cpp
  lib/Target/Lanai/LanaiMemAluCombiner.cpp
  lib/Target/MSP430/MSP430InstrInfo.cpp
  lib/Target/Mips/MipsAsmPrinter.cpp
  lib/Target/Mips/MipsConstantIslandPass.cpp
  lib/Target/Mips/MipsDelaySlotFiller.cpp
  lib/Target/Mips/MipsInstrInfo.cpp
  lib/Target/Mips/MipsLongBranch.cpp
  lib/Target/PowerPC/PPCEarlyReturn.cpp
  lib/Target/PowerPC/PPCHazardRecognizers.cpp
  lib/Target/PowerPC/PPCMIPeephole.cpp
  lib/Target/PowerPC/PPCVSXSwapRemoval.cpp
  lib/Target/Sparc/DelaySlotFiller.cpp
  lib/Target/Sparc/SparcInstrInfo.cpp
  lib/Target/SystemZ/SystemZInstrInfo.cpp
  lib/Target/SystemZ/SystemZLongBranch.cpp
  lib/Target/SystemZ/SystemZMachineScheduler.cpp
  lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
  lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
  lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
  lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
  lib/Target/X86/X86CallFrameOptimization.cpp
  lib/Target/X86/X86CmovConversion.cpp
  lib/Target/X86/X86FloatingPoint.cpp
  lib/Target/X86/X86FrameLowering.cpp
  lib/Target/X86/X86ISelLowering.cpp
  lib/Target/X86/X86InstrInfo.cpp
  lib/Target/X86/X86PadShortFunction.cpp
  lib/Target/XCore/XCoreFrameLowering.cpp
  lib/Target/XCore/XCoreInstrInfo.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45342.141243.patch
Type: text/x-patch
Size: 84897 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180406/c008d864/attachment.bin>


More information about the llvm-commits mailing list