std::string &Type, unsigned &LineNo, std::string &File,
std::string &Dir);
- /// isValidDebugInfoIntrinsic - Return true if SPI is a valid debug
- /// info intrinsic.
- bool isValidDebugInfoIntrinsic(DbgStopPointInst &SPI, unsigned OptLev);
-
- /// isValidDebugInfoIntrinsic - Return true if FSI is a valid debug
- /// info intrinsic.
- bool isValidDebugInfoIntrinsic(DbgFuncStartInst &FSI, unsigned OptLev);
-
- /// isValidDebugInfoIntrinsic - Return true if RSI is a valid debug
- /// info intrinsic.
- bool isValidDebugInfoIntrinsic(DbgRegionStartInst &RSI, unsigned OptLev);
-
- /// isValidDebugInfoIntrinsic - Return true if REI is a valid debug
- /// info intrinsic.
- bool isValidDebugInfoIntrinsic(DbgRegionEndInst &REI, unsigned OptLev);
-
- /// isValidDebugInfoIntrinsic - Return true if DI is a valid debug
- /// info intrinsic.
- bool isValidDebugInfoIntrinsic(DbgDeclareInst &DI, unsigned OptLev);
-
/// ExtractDebugLocation - Extract debug location information
/// from llvm.dbg.stoppoint intrinsic.
DebugLoc ExtractDebugLocation(DbgStopPointInst &SPI,
DICompositeType getDICompositeType(DIType T);
class DebugInfoFinder {
-
public:
/// processModule - Process entire module and collect debug info
/// anchors.
return true;
}
-/// isValidDebugInfoIntrinsic - Return true if SPI is a valid debug
-/// info intrinsic.
-bool llvm::isValidDebugInfoIntrinsic(DbgStopPointInst &SPI, unsigned OptLev) {
- return DIDescriptor::ValidDebugInfo(SPI.getContext(), OptLev);
-}
-
-/// isValidDebugInfoIntrinsic - Return true if FSI is a valid debug
-/// info intrinsic.
-bool llvm::isValidDebugInfoIntrinsic(DbgFuncStartInst &FSI, unsigned OptLev) {
- return DIDescriptor::ValidDebugInfo(FSI.getSubprogram(), OptLev);
-}
-
-/// isValidDebugInfoIntrinsic - Return true if RSI is a valid debug
-/// info intrinsic.
-bool llvm::isValidDebugInfoIntrinsic(DbgRegionStartInst &RSI, unsigned OptLev) {
- return DIDescriptor::ValidDebugInfo(RSI.getContext(), OptLev);
-}
-
-/// isValidDebugInfoIntrinsic - Return true if REI is a valid debug
-/// info intrinsic.
-bool llvm::isValidDebugInfoIntrinsic(DbgRegionEndInst &REI, unsigned OptLev) {
- return DIDescriptor::ValidDebugInfo(REI.getContext(), OptLev);
-}
-
-/// isValidDebugInfoIntrinsic - Return true if DI is a valid debug
-/// info intrinsic.
-bool llvm::isValidDebugInfoIntrinsic(DbgDeclareInst &DI, unsigned OptLev) {
- return DIDescriptor::ValidDebugInfo(DI.getVariable(), OptLev);
-}
-
/// ExtractDebugLocation - Extract debug location information
/// from llvm.dbg.stoppoint intrinsic.
DebugLoc llvm::ExtractDebugLocation(DbgStopPointInst &SPI,
return true;
case Intrinsic::dbg_declare: {
DbgDeclareInst *DI = cast<DbgDeclareInst>(I);
- if (!isValidDebugInfoIntrinsic(*DI, CodeGenOpt::None) || !DW
+ if (!DIDescriptor::ValidDebugInfo(DI->getVariable(), CodeGenOpt::None)||!DW
|| !DW->ShouldEmitDwarfDebug())
return true;
if (!DW)
return 0;
DbgDeclareInst &DI = cast<DbgDeclareInst>(I);
- if (!isValidDebugInfoIntrinsic(DI, CodeGenOpt::None))
+ if (!DIDescriptor::ValidDebugInfo(DI.getVariable(), CodeGenOpt::None))
return 0;
MDNode *Variable = DI.getVariable();