LLVM  4.0.0
Macros | Typedefs | Functions | Variables
LiveDebugVariables.cpp File Reference
#include "LiveDebugVariables.h"
#include "llvm/ADT/IntervalMap.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/LiveIntervalAnalysis.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/VirtRegMap.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DebugInfo.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetRegisterInfo.h"
#include "llvm/Target/TargetSubtargetInfo.h"
#include <memory>
#include <utility>
Include dependency graph for LiveDebugVariables.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "livedebug"
 

Typedefs

typedef IntervalMap< SlotIndex,
unsigned, 4 > 
LocMap
 LocMap - Map of where a user value is live, and its location. More...
 

Functions

 STATISTIC (NumInsertedDebugValues,"Number of DBG_VALUEs inserted")
 
 INITIALIZE_PASS_BEGIN (LiveDebugVariables,"livedebugvars","Debug Variable Analysis", false, false) INITIALIZE_PASS_END(LiveDebugVariables
 
static void printDebugLoc (const DebugLoc &DL, raw_ostream &CommentOS, const LLVMContext &Ctx)
 
static void printExtendedName (raw_ostream &OS, const DILocalVariable *V, const DILocation *DL)
 
static void removeDebugValues (MachineFunction &mf)
 
static MachineBasicBlock::iterator findInsertLocation (MachineBasicBlock *MBB, SlotIndex Idx, LiveIntervals &LIS)
 findInsertLocation - Find an iterator for inserting a DBG_VALUE instruction. More...
 

Variables

static cl::opt< boolEnableLDV ("live-debug-variables", cl::init(true), cl::desc("Enable the live debug variables pass"), cl::Hidden)
 
 livedebugvars
 
Debug Variable Analysis
 
Debug Variable false
 

Macro Definition Documentation

#define DEBUG_TYPE   "livedebug"

Definition at line 48 of file LiveDebugVariables.cpp.

Typedef Documentation

LocMap - Map of where a user value is live, and its location.

Definition at line 76 of file LiveDebugVariables.cpp.

Function Documentation

static MachineBasicBlock::iterator findInsertLocation ( MachineBasicBlock MBB,
SlotIndex  Idx,
LiveIntervals LIS 
)
static
INITIALIZE_PASS_BEGIN ( LiveDebugVariables  ,
"livedebugvars"  ,
"Debug Variable Analysis ,
false  ,
false   
)
static void printDebugLoc ( const DebugLoc DL,
raw_ostream CommentOS,
const LLVMContext Ctx 
)
static
static void printExtendedName ( raw_ostream OS,
const DILocalVariable V,
const DILocation DL 
)
static
static void removeDebugValues ( MachineFunction mf)
static
STATISTIC ( NumInsertedDebugValues  ,
"Number of DBG_VALUEs inserted"   
)

Variable Documentation

Debug Variable Analysis

Definition at line 61 of file LiveDebugVariables.cpp.

cl::opt<bool> EnableLDV("live-debug-variables", cl::init(true), cl::desc("Enable the live debug variables pass"), cl::Hidden)
static
Debug Variable false

Definition at line 61 of file LiveDebugVariables.cpp.

livedebugvars

Definition at line 61 of file LiveDebugVariables.cpp.