|
clang
5.0.0
|
A scoped helper to set the current debug location to the specified location or preferred location of the specified Expr. More...
Public Member Functions | |
| ApplyDebugLocation (CodeGenFunction &CGF, SourceLocation TemporaryLocation) | |
| Set the location to the (valid) TemporaryLocation. More... | |
| ApplyDebugLocation (CodeGenFunction &CGF, const Expr *E) | |
| ApplyDebugLocation (CodeGenFunction &CGF, llvm::DebugLoc Loc) | |
| ApplyDebugLocation (ApplyDebugLocation &&Other) | |
| ~ApplyDebugLocation () | |
Static Public Member Functions | |
| static ApplyDebugLocation | CreateArtificial (CodeGenFunction &CGF) |
| Apply TemporaryLocation if it is valid. More... | |
| static ApplyDebugLocation | CreateDefaultArtificial (CodeGenFunction &CGF, SourceLocation TemporaryLocation) |
| Apply TemporaryLocation if it is valid. More... | |
| static ApplyDebugLocation | CreateEmpty (CodeGenFunction &CGF) |
| Set the IRBuilder to not attach debug locations. More... | |
A scoped helper to set the current debug location to the specified location or preferred location of the specified Expr.
Definition at line 617 of file CGDebugInfo.h.
| ApplyDebugLocation::ApplyDebugLocation | ( | CodeGenFunction & | CGF, |
| SourceLocation | TemporaryLocation | ||
| ) |
Set the location to the (valid) TemporaryLocation.
Definition at line 76 of file CGDebugInfo.cpp.
| ApplyDebugLocation::ApplyDebugLocation | ( | CodeGenFunction & | CGF, |
| const Expr * | E | ||
| ) |
Definition at line 114 of file CGDebugInfo.cpp.
References clang::Expr::getExprLoc().
| ApplyDebugLocation::ApplyDebugLocation | ( | CodeGenFunction & | CGF, |
| llvm::DebugLoc | Loc | ||
| ) |
Definition at line 119 of file CGDebugInfo.cpp.
References clang::CodeGen::CodeGenFunction::Builder, and clang::CodeGen::CodeGenFunction::getDebugInfo().
|
inline |
Definition at line 631 of file CGDebugInfo.h.
| ApplyDebugLocation::~ApplyDebugLocation | ( | ) |
Definition at line 130 of file CGDebugInfo.cpp.
References clang::CodeGen::CodeGenFunction::Builder.
|
inlinestatic |
Apply TemporaryLocation if it is valid.
Otherwise switch to an artificial debug location that has a valid scope, but no line information.
Artificial locations are useful when emitting compiler-generated helper functions that have no source location associated with them. The DWARF specification allows the compiler to use the special line number 0 to indicate code that can not be attributed to any source location. Note that passing an empty SourceLocation to CGDebugInfo::setLocation() will result in the last valid location being reused.
Definition at line 648 of file CGDebugInfo.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitFunctionInstrumentation(), clang::CodeGen::CodeGenFunction::GenerateCopyHelperFunction(), clang::CodeGen::CodeGenFunction::GenerateCXXGlobalDtorsFunc(), clang::CodeGen::CodeGenFunction::GenerateCXXGlobalInitFunc(), clang::CodeGen::CodeGenFunction::GenerateDestroyHelperFunction(), clang::CodeGen::CodeGenFunction::generateThunk(), and clang::CodeGen::CodeGenFunction::StartThunk().
|
inlinestatic |
Apply TemporaryLocation if it is valid.
Otherwise switch to an artificial debug location that has a valid scope, but no line information.
Definition at line 655 of file CGDebugInfo.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitAutoVarInit(), and clang::CodeGen::CodeGenFunction::EmitLandingPad().
|
inlinestatic |
Set the IRBuilder to not attach debug locations.
Note that passing an empty SourceLocation to CGDebugInfo::setLocation() will result in the last valid location being reused. Note that all instructions that do not have a location at the beginning of a function are counted towards to function prologue.
Definition at line 665 of file CGDebugInfo.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitIfStmt(), clang::CodeGen::CodeGenFunction::GenerateBlockFunction(), clang::CodeGen::CodeGenFunction::GenerateCopyHelperFunction(), clang::CodeGen::CodeGenFunction::GenerateCXXGlobalDtorsFunc(), clang::CodeGen::CodeGenFunction::GenerateCXXGlobalInitFunc(), clang::CodeGen::CodeGenFunction::GenerateDestroyHelperFunction(), and clang::CodeGen::CodeGenFunction::StartThunk().
1.8.6