LLVM 22.0.0git
llvm::FunctionVarLocs Class Reference

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

#include "llvm/CodeGen/AssignmentTrackingAnalysis.h"

Public Member Functions

DILocalVariablegetDILocalVariable (const VarLocInfo *Loc) const
 Return the DILocalVariable for the location definition represented by ID.
DILocalVariablegetDILocalVariable (VariableID ID) const
 Return the DILocalVariable of the variable represented by ID.
const DebugVariablegetVariable (VariableID ID) const
 Return the DebugVariable represented by ID.
void print (raw_ostream &OS, const Function &Fn) const
iterators
const VarLocInfosingle_locs_begin () const
const VarLocInfosingle_locs_end () const
 One past the last single-location variable location definition.
const VarLocInfolocs_begin (const Instruction *Before) const
 First variable location definition that comes before Before.
const VarLocInfolocs_end (const Instruction *Before) const
 One past the last variable location definition that comes before Before.
void init (FunctionVarLocsBuilder &Builder)
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 257 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 210 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: