LLVM  8.0.1
Macros | Functions
DbgEntityHistoryCalculator.cpp File Reference
#include "llvm/CodeGen/DbgEntityHistoryCalculator.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/TargetLowering.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/CodeGen/TargetSubtargetInfo.h"
#include "llvm/IR/DebugInfoMetadata.h"
#include "llvm/IR/DebugLoc.h"
#include "llvm/MC/MCRegisterInfo.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include <cassert>
#include <map>
#include <utility>
Include dependency graph for DbgEntityHistoryCalculator.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "dwarfdebug"
 

Functions

static unsigned isDescribedByReg (const MachineInstr &MI)
 
static void dropRegDescribedVar (RegDescribedVarsMap &RegVars, unsigned RegNo, InlinedEntity Var)
 
static void addRegDescribedVar (RegDescribedVarsMap &RegVars, unsigned RegNo, InlinedEntity Var)
 
static void clobberRegisterUses (RegDescribedVarsMap &RegVars, RegDescribedVarsMap::iterator I, DbgValueHistoryMap &HistMap, const MachineInstr &ClobberingInstr)
 
static void clobberRegisterUses (RegDescribedVarsMap &RegVars, unsigned RegNo, DbgValueHistoryMap &HistMap, const MachineInstr &ClobberingInstr)
 
static const MachineInstrgetFirstEpilogueInst (const MachineBasicBlock &MBB)
 
static void collectChangingRegs (const MachineFunction *MF, const TargetRegisterInfo *TRI, BitVector &Regs)
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "dwarfdebug"

Definition at line 32 of file DbgEntityHistoryCalculator.cpp.

Function Documentation

◆ addRegDescribedVar()

static void addRegDescribedVar ( RegDescribedVarsMap &  RegVars,
unsigned  RegNo,
InlinedEntity  Var 
)
static

Definition at line 109 of file DbgEntityHistoryCalculator.cpp.

References assert(), and llvm::is_contained().

Referenced by llvm::calculateDbgEntityHistory().

◆ clobberRegisterUses() [1/2]

static void clobberRegisterUses ( RegDescribedVarsMap &  RegVars,
RegDescribedVarsMap::iterator  I,
DbgValueHistoryMap HistMap,
const MachineInstr ClobberingInstr 
)
static

◆ clobberRegisterUses() [2/2]

static void clobberRegisterUses ( RegDescribedVarsMap &  RegVars,
unsigned  RegNo,
DbgValueHistoryMap HistMap,
const MachineInstr ClobberingInstr 
)
static

Definition at line 132 of file DbgEntityHistoryCalculator.cpp.

References clobberRegisterUses(), and I.

◆ collectChangingRegs()

static void collectChangingRegs ( const MachineFunction MF,
const TargetRegisterInfo TRI,
BitVector Regs 
)
static

◆ dropRegDescribedVar()

static void dropRegDescribedVar ( RegDescribedVarsMap &  RegVars,
unsigned  RegNo,
InlinedEntity  Var 
)
static

Definition at line 95 of file DbgEntityHistoryCalculator.cpp.

References assert(), llvm::find(), and I.

Referenced by llvm::calculateDbgEntityHistory().

◆ getFirstEpilogueInst()

static const MachineInstr* getFirstEpilogueInst ( const MachineBasicBlock MBB)
static

◆ isDescribedByReg()

static unsigned isDescribedByReg ( const MachineInstr MI)
static