LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
llvm::detail::PtrUseVisitorBase::PtrInfo Class Reference

This class provides information about the result of a visit. More...

#include <PtrUseVisitor.h>

Public Member Functions

 PtrInfo ()
 
void reset ()
 Reset the pointer info, clearing all state. More...
 
bool isAborted () const
 Did we abort the visit early? More...
 
bool isEscaped () const
 Is the pointer escaped at some point? More...
 
InstructiongetAbortingInst () const
 Get the instruction causing the visit to abort. More...
 
InstructiongetEscapingInst () const
 Get the instruction causing the pointer to escape. More...
 
void setAborted (Instruction *I=0)
 Mark the visit as aborted. Intended for use in a void return. More...
 
void setEscaped (Instruction *I=0)
 Mark the pointer as escaped. Intended for use in a void return. More...
 
void setEscapedAndAborted (Instruction *I=0)
 Mark the pointer as escaped, and the visit as aborted. Intended for use in a void return. More...
 

Detailed Description

This class provides information about the result of a visit.

After walking all the users (recursively) of a pointer, the basic infrastructure records some commonly useful information such as escape analysis and whether the visit completed or aborted early.

Definition at line 49 of file PtrUseVisitor.h.

Constructor & Destructor Documentation

llvm::detail::PtrUseVisitorBase::PtrInfo::PtrInfo ( )
inline

Definition at line 51 of file PtrUseVisitor.h.

Member Function Documentation

Instruction* llvm::detail::PtrUseVisitorBase::PtrInfo::getAbortingInst ( ) const
inline

Get the instruction causing the visit to abort.

Returns
a pointer to the instruction causing the abort if one is available; otherwise returns null.

Definition at line 70 of file PtrUseVisitor.h.

References llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits >::getPointer().

Instruction* llvm::detail::PtrUseVisitorBase::PtrInfo::getEscapingInst ( ) const
inline

Get the instruction causing the pointer to escape.

Returns
a pointer to the instruction which escapes the pointer if one is available; otherwise returns null.

Definition at line 75 of file PtrUseVisitor.h.

References llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits >::getPointer().

bool llvm::detail::PtrUseVisitorBase::PtrInfo::isAborted ( ) const
inline
bool llvm::detail::PtrUseVisitorBase::PtrInfo::isEscaped ( ) const
inline

Is the pointer escaped at some point?

Definition at line 65 of file PtrUseVisitor.h.

References llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits >::getInt().

void llvm::detail::PtrUseVisitorBase::PtrInfo::reset ( )
inline
void llvm::detail::PtrUseVisitorBase::PtrInfo::setAborted ( Instruction I = 0)
inline

Mark the visit as aborted. Intended for use in a void return.

Parameters
IThe instruction which caused the visit to abort, if available.

Definition at line 79 of file PtrUseVisitor.h.

References I, llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits >::setInt(), and llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits >::setPointer().

Referenced by setEscapedAndAborted().

void llvm::detail::PtrUseVisitorBase::PtrInfo::setEscaped ( Instruction I = 0)
inline
void llvm::detail::PtrUseVisitorBase::PtrInfo::setEscapedAndAborted ( Instruction I = 0)
inline

Mark the pointer as escaped, and the visit as aborted. Intended for use in a void return.

Parameters
IThe instruction which both escapes the pointer and aborts the visit, if available.

Definition at line 95 of file PtrUseVisitor.h.

References I, setAborted(), and setEscaped().


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