LLVM API Documentation

Public Member Functions | Friends
llvm::DIVariable Class Reference

This is a wrapper for a variable (e.g. parameter, local, global etc). More...

#include <DebugInfo.h>

Inheritance diagram for llvm::DIVariable:
Inheritance graph
[legend]
Collaboration diagram for llvm::DIVariable:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 DIVariable (const MDNode *N=nullptr)
StringRef getName () const
unsigned getLineNumber () const
unsigned getArgNumber () const
DIScope getContext () const
DIFile getFile () const
DITypeRef getType () const
bool isArtificial () const
 Return true if this variable is marked as "artificial".
bool isObjectPointer () const
bool isIndirect () const
 Return true if this variable is represented as a pointer.
MDNodegetInlinedAt () const
 If this variable is inlined then return inline location.
bool Verify () const
bool isBlockByrefVariable (const DITypeIdentifierMap &Map) const
 Check if this is a "__block" variable (Apple Blocks).
bool isInlinedFnArgument (const Function *CurFn)
 Check if this is an inlined function argument.
unsigned getSizeInBits (const DITypeIdentifierMap &Map)
 Return the size reported by the variable's type.
void printExtendedName (raw_ostream &OS) const

Friends

class DIDescriptor

Detailed Description

This is a wrapper for a variable (e.g. parameter, local, global etc).

Definition at line 783 of file DebugInfo.h.


Constructor & Destructor Documentation

llvm::DIVariable::DIVariable ( const MDNode N = nullptr) [inline, explicit]

Definition at line 788 of file DebugInfo.h.

References N.


Member Function Documentation

Definition at line 795 of file DebugInfo.h.

Referenced by llvm::DwarfFile::addScopeVariable().

DIFile llvm::DIVariable::getFile ( ) const [inline]

Definition at line 798 of file DebugInfo.h.

If this variable is inlined then return inline location.

Definition at line 142 of file DebugInfo.cpp.

References DIVariableInlinedAtIndex, and getNodeField().

Referenced by llvm::MachineInstr::print().

Definition at line 791 of file DebugInfo.h.

Referenced by llvm::DwarfUnit::addSourceLine(), and llvm::MachineInstr::print().

Return true if this variable is marked as "artificial".

Definition at line 802 of file DebugInfo.h.

References llvm::DIDescriptor::FlagArtificial.

Referenced by llvm::DbgVariable::isArtificial().

Check if this is a "__block" variable (Apple Blocks).

Definition at line 821 of file DebugInfo.h.

References getType().

Referenced by llvm::DbgVariable::getType(), and llvm::DbgVariable::isBlockByrefVariable().

bool llvm::DIVariable::isIndirect ( ) const [inline]

Check if this is an inlined function argument.

Definition at line 722 of file DebugInfo.cpp.

References llvm::DISubprogram::describes().

Definition at line 806 of file DebugInfo.h.

References llvm::DIDescriptor::FlagObjectPointer.

Referenced by llvm::DbgVariable::isObjectPointer().


Friends And Related Function Documentation

friend class DIDescriptor [friend]

Definition at line 784 of file DebugInfo.h.


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