LLVM API Documentation

Namespaces | Defines | Functions | Variables
Debug.h File Reference
#include "llvm/Support/raw_ostream.h"
Include dependency graph for Debug.h:

Go to the source code of this file.

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


Defines

#define DEBUG_WITH_TYPE(TYPE, X)
#define DEBUG(X)   DEBUG_WITH_TYPE(DEBUG_TYPE, X)

Functions

bool llvm::isCurrentDebugType (const char *Type)
void llvm::setCurrentDebugType (const char *Type)
raw_ostreamllvm::dbgs ()
 dbgs - Return a circular-buffered debug stream.

Variables

bool llvm::DebugFlag
bool llvm::EnableDebugBuffering = false

Define Documentation

#define DEBUG (   X)    DEBUG_WITH_TYPE(DEBUG_TYPE, X)

Definition at line 93 of file Debug.h.

Referenced by llvm::InstCombineWorklist::Add(), llvm::MipsTargetMachine::addAnalysisPasses(), addChainDependency(), llvm::ExecutionEngine::addGlobalMapping(), llvm::InstCombineWorklist::AddInitialGroup(), AddReachableCodeToWorklist(), llvm::DwarfUnit::addRegisterOpPiece(), llvm::DIEHash::addSLEB128(), llvm::BlockFrequencyInfoImplBase::addToDist(), llvm::DIEHash::addULEB128(), llvm::IVUsers::AddUsersImpl(), AdjustStackOffset(), llvm::AggressiveAntiDepBreaker::AggressiveAntiDepBreaker(), llvm::RegAllocBase::allocatePhysRegs(), llvm::AllocationOrder::AllocationOrder(), llvm::HexagonInstrInfo::AnalyzeBranch(), llvm::A57ChainingConstraint::apply(), llvm::LiveRegMatrix::assign(), llvm::CriticalAntiDepBreaker::BreakAntiDependencies(), llvm::AggressiveAntiDepBreaker::BreakAntiDependencies(), BreakUpSubtract(), BUCompareLatency(), llvm::SchedBoundary::bumpCycle(), llvm::SchedBoundary::bumpNode(), BURRSort(), llvm::LiveRangeEdit::calculateRegClassAndHint(), llvm::calculateSpillWeightsAndHints(), CanPropagatePredecessorsForPHIs(), llvm::RuntimeDyldCheckerImpl::check(), llvm::GenericScheduler::checkAcyclicLatency(), llvm::SchedBoundary::checkHazard(), clampStackAlignment(), collectInvolvedReg(), llvm::SCEVAddRecExpr::collectParametricTerms(), completeEphemeralValues(), llvm::ObjectSizeOffsetVisitor::compute(), llvm::SCEVAddRecExpr::computeAccessFunctions(), computeADRP(), llvm::ScheduleDAGMILive::computeCyclicCriticalPath(), llvm::LiveIntervals::computeDeadValues(), llvm::BlockFrequencyInfoImplBase::computeLoopScale(), computeOthers(), convertFloatingToInteger(), llvm::SchedBoundary::countResource(), createIrreducibleLoop(), DeleteInstructionInBlock(), llvm::SCEVAddRecExpr::delinearize(), llvm::DependenceAnalysis::depends(), llvm::BlockFrequencyInfoImplBase::distributeMass(), llvm::BlockFrequencyInfoImpl< BT >::doFunction(), llvm::InstCombiner::DoOneIteration(), llvm::ConstantUniqueMap< ConstantStruct >::dump(), llvm::DWARFContextInMemory::DWARFContextInMemory(), llvm::LiveRangeEdit::eliminateDeadDefs(), EliminateDeadSwitchCases(), llvm::XCoreRegisterInfo::eliminateFrameIndex(), llvm::MipsRegisterInfo::eliminateFrameIndex(), llvm::RuntimeDyldImpl::emitCommonSymbols(), llvm::PPCDispatchGroupSBHazardRecognizer::EmitInstruction(), llvm::ScoreboardHazardRecognizer::EmitInstruction(), llvm::RuntimeDyldImpl::emitSection(), llvm::SplitEditor::enterIntvAfter(), llvm::SplitEditor::enterIntvAtEnd(), llvm::SplitEditor::enterIntvBefore(), llvm::InstCombiner::EraseInstFromFunction(), EvaluateStaticConstructor(), llvm::ARMBaseInstrInfo::expandPostRAPseudo(), llvm::CodeExtractor::extractCodeRegion(), extractInteger(), extractVector(), llvm::SchedDFSImpl::finalize(), llvm::BlockFrequencyInfoImplBase::finalizeMetrics(), llvm::ScalarEvolution::findArrayDimensions(), llvm::SSAUpdaterImpl< UpdaterT >::FindAvailableVals(), findCallees(), findGCD(), findIrreducibleHeaders(), llvm::SchedBoundary::findMaxLatency(), llvm::RegScavenger::FindUnusedReg(), llvm::SplitEditor::finish(), llvm::ScheduleDAGInstrs::fixupKills(), FoldBlockIntoPredecessor(), llvm::FoldBranchToCommonDest(), llvm::InstCombiner::FoldShiftByConstant(), FoldTwoEntryPHINode(), llvm::ARMTargetLowering::functionArgumentNeedsConsecutiveRegisters(), llvm::FunctionLoweringInfo::getArgumentFrameIndex(), llvm::ScoreboardHazardRecognizer::getHazardType(), llvm::Mips16InstrInfo::getInlineAsmLength(), llvm::InlineCostAnalysis::getInlineCost(), GetLoadValueForLoad(), getNewAlignment(), getNewAlignmentDiff(), llvm::MemoryDependenceAnalysis::getNonLocalCallDependency(), llvm::SchedBoundary::getOtherResourceCount(), getPreStartForSignExtend(), llvm::DependenceAnalysis::getSplitIteration(), llvm::MachineSSAUpdater::GetValueInMiddleOfBlock(), llvm::SSAUpdater::GetValueInMiddleOfBlock(), hasOutsideLoopUser(), hasVRegCycleUse(), llvm::ExecutionEngine::InitializeMemory(), llvm::ScheduleDAGMILive::initRegPressure(), initVRegCycle(), InlineCallIfPossible(), insertCopy(), insertInteger(), llvm::InsertPreheaderForLoop(), insertUniqueBackedgeBlock(), insertVector(), llvm::MachineTraceMetrics::Ensemble::invalidate(), llvm::MachineTraceMetrics::invalidate(), isProfitableChain(), isStridedPtr(), KnuthDiv(), llvm::LazyCallGraph::LazyCallGraph(), llvm::SplitEditor::leaveIntvAfter(), llvm::SplitEditor::leaveIntvAtTop(), llvm::SplitEditor::leaveIntvBefore(), LinearizeExprTree(), LLVMSetLinkage(), llvm::RuntimeDyldImpl::loadObject(), llvm::HexagonTargetLowering::LowerCall(), llvm::TargetLowering::LowerCallTo(), llvm::AggressiveAntiDepBreaker::Observe(), OptimizeAwayTrappingUsesOfLoads(), OptimizeGlobalAddressOfMalloc(), llvm::optimizeGlobalCtorsList(), llvm::OptLevelChanger::OptLevelChanger(), llvm::SplitEditor::overlapIntv(), llvm::BlockFrequencyInfoImplBase::packageLoop(), llvm::cl::ParseCommandLineOptions(), performBitcastCombine(), performConcatVectorsCombine(), llvm::MipsSETargetLowering::PerformDAGCombine(), PerformHeapAllocSRoA(), llvm::R600SchedStrategy::pickNode(), llvm::ConvergingVLIWScheduler::pickNode(), llvm::GenericScheduler::pickNode(), llvm::PostGenericScheduler::pickNode(), llvm::GenericScheduler::pickNodeBidirectional(), llvm::ConvergingVLIWScheduler::pickNodeFromQueue(), llvm::GenericScheduler::pickNodeFromQueue(), llvm::PostGenericScheduler::pickNodeFromQueue(), llvm::RuntimeDyldMachO::populateIndirectSymbolPointersSection(), printReachingDef(), llvm::AArch64FrameLowering::processFunctionBeforeCalleeSavedScan(), llvm::RuntimeDyldELF::processRelocationRef(), ProfitableToMerge(), llvm::RandomNumberGenerator::RandomNumberGenerator(), reachedUsesToDefs(), llvm::RuntimeDyldImpl::reassignSectionAddress(), llvm::AArch64TargetLowering::ReconstructShuffle(), registerADRCandidate(), llvm::GenericScheduler::registerRoots(), llvm::PostGenericScheduler::registerRoots(), llvm::R600SchedStrategy::releaseBottomNode(), llvm::SchedBoundary::releasePending(), llvm::R600SchedStrategy::releaseTopNode(), llvm::MemoryDependenceAnalysis::removeInstruction(), llvm::LazyCallGraph::SCC::removeInterSCCEdge(), removeUseSoftFloat(), llvm::SlotIndexes::renumberIndexes(), llvm::InstCombiner::ReplaceInstUsesWith(), replaceSymbolicStrideSCEV(), ReplaceUsesOfWith(), llvm::GenericScheduler::reschedulePhysRegCopies(), llvm::VLIWResourceModel::reserveResources(), llvm::MipsTargetMachine::resetSubtarget(), llvm::SelectionDAGBuilder::resolveDanglingDebugInfo(), llvm::RuntimeDyldImpl::resolveExternalSymbols(), llvm::RuntimeDyldMachOX86_64::resolveRelocation(), llvm::RuntimeDyldMachOI386::resolveRelocation(), llvm::RuntimeDyldMachOARM::resolveRelocation(), llvm::RuntimeDyldMachOAArch64::resolveRelocation(), llvm::RuntimeDyldImpl::resolveRelocations(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), rewriteLoopExitBlock(), llvm::DAGTypeLegalizer::run(), llvm::Interpreter::run(), llvm::BranchProbabilityInfo::runOnFunction(), llvm::RGPassManager::runOnFunction(), llvm::MipsModuleDAGToDAGISel::runOnMachineFunction(), llvm::StackMapLiveness::runOnMachineFunction(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::LiveIntervals::runOnMachineFunction(), llvm::SlotIndexes::runOnMachineFunction(), llvm::MipsOs16::runOnModule(), llvm::Mips16HardFloat::runOnModule(), llvm::DebugIR::runOnModule(), llvm::Inliner::runOnSCC(), llvm::RegScavenger::scavengeRegister(), llvm::R600SchedStrategy::schedNode(), llvm::VLIWMachineScheduler::schedule(), llvm::ScheduleDAGMI::schedule(), llvm::ScheduleDAGMILive::schedule(), llvm::SchedDFSResult::scheduleTree(), llvm::ConvergingVLIWScheduler::SchedulingCost(), llvm::ScoreboardHazardRecognizer::ScoreboardHazardRecognizer(), llvm::SelectionDAGISel::SelectCodeCommon(), llvm::FastISel::selectIntrinsicCall(), llvm::SplitEditor::selectIntv(), separateNestedLoop(), llvm::StackMaps::serializeToStackMapSection(), llvm::BranchProbabilityInfo::setEdgeWeight(), llvm::GenericSchedulerBase::setPolicy(), llvm::ARMBaseRegisterInfo::shouldCoalesce(), llvm::LiveIntervals::shrinkToUses(), SimplifyBranchOnICmpChain(), SimplifyCondBranchToCondBranch(), SimplifyCondBranchToTwoReturns(), simplifyOneLoop(), SinkThenElseCodeToEnd(), llvm::LoopPass::skipOptnoneFunction(), llvm::FunctionPass::skipOptnoneFunction(), llvm::BasicBlockPass::skipOptnoneFunction(), llvm::InstCombiner::SliceUpIllegalIntegerPHI(), llvm::SparseSolver::Solve(), speculatePHINodeLoads(), speculateSelectInstLoads(), SpeculativelyExecuteBB(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::MachineBasicBlock::SplitCriticalEdge(), llvm::SplitEditor::splitLiveThroughBlock(), llvm::SplitEditor::splitRegInBlock(), llvm::SplitEditor::splitRegOutBlock(), SRAGlobal(), llvm::DbgValueHistoryMap::startInstrRange(), tracePick(), truncateIVUse(), llvm::GenericScheduler::tryCandidate(), tryLowerToSLI(), tryPromoteAllocaToVector(), TryToShrinkGlobalToBoolean(), llvm::TryToSimplifyUncondBranchFromEmptyBlock(), llvm::LiveRegMatrix::unassign(), llvm::UnrollLoop(), unwrapLoop(), llvm::LiveIntervals::HMEditor::updateAllRanges(), llvm::ScheduleDAGMILive::updatePressureDiffs(), llvm::ScheduleDAGMILive::updateScheduledPressure(), llvm::MipsSubtarget::useConstantIslands(), llvm::SplitEditor::useIntv(), verifyCTRBranch(), llvm::Interpreter::visitAllocaInst(), llvm::InstCombiner::visitAllocaInst(), llvm::ObjectSizeOffsetVisitor::visitInstruction(), llvm::ObjectSizeOffsetEvaluator::visitInstruction(), llvm::InstCombiner::visitSExt(), llvm::InstCombiner::visitTrunc(), llvm::InstCombiner::visitZExt(), llvm::MachObjectWriter::WriteObject(), and llvm::OptLevelChanger::~OptLevelChanger().

#define DEBUG_WITH_TYPE (   TYPE,
  X 
)
Value:
do { if (::llvm::DebugFlag && ::llvm::isCurrentDebugType(TYPE)) { X; } \
  } while (0)

DEBUG_WITH_TYPE macro - This macro should be used by passes to emit debug information. In the '-debug' option is specified on the commandline, and if this is a debug build, then the code specified as the option to the macro will be executed. Otherwise it will not be. Example:

DEBUG_WITH_TYPE("bitset", dbgs() << "Bitset contains: " << Bitset << "\n");

This will emit the debug information if -debug is present, and -debug-only is not specified, or is specified as "bitset".

Definition at line 63 of file Debug.h.

Referenced by llvm::MCAssembler::Finish(), llvm::object::MachORebaseEntry::moveNext(), llvm::object::MachOBindEntry::moveNext(), and llvm::SCEVExpander::replaceCongruentIVs().