LLVM 24.0.0git
llvm::FunctionVarLocs Class Reference

Data structure describing the variable locations in a function. More...

#include "llvm/CodeGen/AssignmentTrackingAnalysis.h"

Public Member Functions

DILocalVariable * getDILocalVariable (const VarLocInfo *Loc) const
 Return the DILocalVariable for the location definition represented by ID.
DILocalVariable * getDILocalVariable (VariableID ID) const
 Return the DILocalVariable of the variable represented by ID.
const DebugVariable & getVariable (VariableID ID) const
 Return the DebugVariable represented by ID.
LLVM_ABI void print (raw_ostream &OS, const Function &Fn) const
iterators
const VarLocInfo * single_locs_begin () const
const VarLocInfo * single_locs_end () const
 One past the last single-location variable location definition.
const VarLocInfo * locs_begin (const Instruction *Before) const
 First variable location definition that comes before Before.
const VarLocInfo * locs_end (const Instruction *Before) const
 One past the last variable location definition that comes before Before.
LLVM_ABI void init (FunctionVarLocsBuilder &Builder)
LLVM_ABI void clear ()

Detailed Description

Data structure describing the variable locations in a function.

Used as the result of the AssignmentTrackingAnalysis pass. Essentially read-only outside of AssignmentTrackingAnalysis where it is built.

Definition at line 38 of file AssignmentTrackingAnalysis.h.

Member Function Documentation

◆ clear()

void FunctionVarLocs::clear ( )

Definition at line 247 of file AssignmentTrackingAnalysis.cpp.

◆ getDILocalVariable() [1/2]

DILocalVariable * llvm::FunctionVarLocs::getDILocalVariable ( const VarLocInfo * Loc) const
inline

Return the DILocalVariable for the location definition represented by ID.

Definition at line 55 of file AssignmentTrackingAnalysis.h.

References getDILocalVariable().

Referenced by getDILocalVariable(), and processSingleLocVars().

◆ getDILocalVariable() [2/2]

DILocalVariable * llvm::FunctionVarLocs::getDILocalVariable ( VariableID ID) const
inline

Return the DILocalVariable of the variable represented by ID.

Definition at line 60 of file AssignmentTrackingAnalysis.h.

References llvm::DebugVariable::getVariable(), and getVariable().

◆ getVariable()

const DebugVariable & llvm::FunctionVarLocs::getVariable ( VariableID ID) const
inline

Return the DebugVariable represented by ID.

Definition at line 64 of file AssignmentTrackingAnalysis.h.

Referenced by getDILocalVariable().

◆ init()

void FunctionVarLocs::init ( FunctionVarLocsBuilder & Builder)

Non-const methods used by AssignmentTrackingAnalysis (which invalidate analysis results if called incorrectly).

Definition at line 200 of file AssignmentTrackingAnalysis.cpp.

References assert(), llvm::cast(), llvm::filterDbgVars(), I, llvm::isa(), and P.

◆ locs_begin()

const VarLocInfo * llvm::FunctionVarLocs::locs_begin ( const Instruction * Before) const
inline

First variable location definition that comes before Before.

Definition at line 79 of file AssignmentTrackingAnalysis.h.

Referenced by print().

◆ locs_end()

const VarLocInfo * llvm::FunctionVarLocs::locs_end ( const Instruction * Before) const
inline

One past the last variable location definition that comes before Before.

Definition at line 87 of file AssignmentTrackingAnalysis.h.

Referenced by print().

◆ print()

void FunctionVarLocs::print ( raw_ostream & OS,
const Function & Fn ) const

◆ single_locs_begin()

const VarLocInfo * llvm::FunctionVarLocs::single_locs_begin ( ) const
inline

First single-location variable location definition.

Definition at line 71 of file AssignmentTrackingAnalysis.h.

Referenced by print(), and processSingleLocVars().

◆ single_locs_end()

const VarLocInfo * llvm::FunctionVarLocs::single_locs_end ( ) const
inline

One past the last single-location variable location definition.

Definition at line 73 of file AssignmentTrackingAnalysis.h.

Referenced by print(), and processSingleLocVars().


The documentation for this class was generated from the following files: