|
LLVM 22.0.0git
|
Helper class to build FunctionVarLocs, since that class isn't easy to modify. More...
Public Member Functions | |
| unsigned | getNumVariables () const |
| VariableID | insertVariable (DebugVariable V) |
Find or insert V and return the ID. | |
| const DebugVariable & | getVariable (VariableID ID) const |
Get a variable from its ID. | |
| const SmallVectorImpl< VarLocInfo > * | getWedge (VarLocInsertPt Before) const |
| Return ptr to wedge of defs or nullptr if no defs come just before /p Before. | |
| void | setWedge (VarLocInsertPt Before, SmallVector< VarLocInfo > &&Wedge) |
| Replace the defs that come just before /p Before with /p Wedge. | |
| void | addSingleLocVar (DebugVariable Var, DIExpression *Expr, DebugLoc DL, RawLocationWrapper R) |
| Add a def for a variable that is valid for its lifetime. | |
| void | addVarLoc (VarLocInsertPt Before, DebugVariable Var, DIExpression *Expr, DebugLoc DL, RawLocationWrapper R) |
| Add a def to the wedge of defs just before /p Before. | |
Helper class to build FunctionVarLocs, since that class isn't easy to modify.
TODO: There's not a great deal of value in the split, it could be worth merging the two classes.
Definition at line 100 of file AssignmentTrackingAnalysis.cpp.
|
inline |
Add a def for a variable that is valid for its lifetime.
Definition at line 137 of file AssignmentTrackingAnalysis.cpp.
References DL, llvm::VarLocInfo::DL, llvm::VarLocInfo::Expr, insertVariable(), llvm::VarLocInfo::Values, and llvm::VarLocInfo::VariableID.
Referenced by buildOverlapMapAndRecordDeclares().
|
inline |
Add a def to the wedge of defs just before /p Before.
Definition at line 148 of file AssignmentTrackingAnalysis.cpp.
References DL, llvm::VarLocInfo::DL, llvm::VarLocInfo::Expr, insertVariable(), llvm::VarLocInfo::Values, and llvm::VarLocInfo::VariableID.
|
inline |
Definition at line 110 of file AssignmentTrackingAnalysis.cpp.
Referenced by buildOverlapMapAndRecordDeclares().
|
inline |
Get a variable from its ID.
Definition at line 118 of file AssignmentTrackingAnalysis.cpp.
Referenced by removeRedundantDbgLocsUsingBackwardScan(), removeRedundantDbgLocsUsingForwardScan(), and removeUndefDbgLocsFromEntryBlock().
|
inline |
Return ptr to wedge of defs or nullptr if no defs come just before /p Before.
Definition at line 124 of file AssignmentTrackingAnalysis.cpp.
Referenced by removeRedundantDbgLocsUsingBackwardScan(), removeRedundantDbgLocsUsingForwardScan(), and removeUndefDbgLocsFromEntryBlock().
|
inline |
Find or insert V and return the ID.
Definition at line 113 of file AssignmentTrackingAnalysis.cpp.
Referenced by addSingleLocVar(), addVarLoc(), and buildOverlapMapAndRecordDeclares().
|
inline |
Replace the defs that come just before /p Before with /p Wedge.
Definition at line 132 of file AssignmentTrackingAnalysis.cpp.
Referenced by removeRedundantDbgLocsUsingBackwardScan(), removeRedundantDbgLocsUsingForwardScan(), and removeUndefDbgLocsFromEntryBlock().