LLVM API Documentation

Public Member Functions | Static Public Member Functions
llvm::PseudoSourceValue Class Reference

#include <PseudoSourceValue.h>

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

List of all members.

Public Member Functions

 PseudoSourceValue (enum ValueTy Subclass=PseudoSourceValueVal)
virtual bool isConstant (const MachineFrameInfo *) const
virtual bool isAliased (const MachineFrameInfo *) const
virtual bool mayAlias (const MachineFrameInfo *) const

Static Public Member Functions

static bool classof (const Value *V)
static const PseudoSourceValuegetFixedStack (int FI)
static const PseudoSourceValuegetStack ()
static const PseudoSourceValuegetGOT ()
static const PseudoSourceValuegetConstantPool ()
static const PseudoSourceValuegetJumpTable ()

Detailed Description

PseudoSourceValue - Special value supplied for machine level alias analysis. It indicates that a memory access references the functions stack frame (e.g., a spill slot), below the stack frame (e.g., argument space), or constant pool.

Definition at line 27 of file PseudoSourceValue.h.


Constructor & Destructor Documentation

PseudoSourceValue::PseudoSourceValue ( enum ValueTy  Subclass = PseudoSourceValueVal) [explicit]

Definition at line 65 of file PseudoSourceValue.cpp.


Member Function Documentation

static bool llvm::PseudoSourceValue::classof ( const Value V) [inline, static]

classof - Methods for support type inquiry through isa, cast, and dyn_cast:

Reimplemented in llvm::FixedStackPseudoSourceValue.

Definition at line 53 of file PseudoSourceValue.h.

References llvm::Value::FixedStackPseudoSourceValueVal, llvm::Value::getValueID(), and llvm::Value::PseudoSourceValueVal.

const PseudoSourceValue * PseudoSourceValue::getConstantPool ( ) [static]

A pseudo source value referencing the constant pool. Since constant pools are constant, this doesn't need to identify a specific constant pool entry.

Definition at line 51 of file PseudoSourceValue.cpp.

Referenced by isAliased(), isConstant(), and mayAlias().

const PseudoSourceValue * PseudoSourceValue::getFixedStack ( int  FI) [static]

A pseudo source value referencing a fixed stack frame entry, e.g., a spill slot.

Definition at line 73 of file PseudoSourceValue.cpp.

Referenced by llvm::addFrameReference(), llvm::HexagonInstrInfo::loadRegFromStackSlot(), and llvm::HexagonInstrInfo::storeRegToStackSlot().

const PseudoSourceValue * PseudoSourceValue::getGOT ( ) [static]

A pseudo source value referencing the global offset table (or something the like).

Definition at line 47 of file PseudoSourceValue.cpp.

Referenced by isAliased(), isConstant(), and mayAlias().

const PseudoSourceValue * PseudoSourceValue::getJumpTable ( ) [static]

A pseudo source value referencing a jump table. Since jump tables are constant, this doesn't need to identify a specific jump table.

Definition at line 49 of file PseudoSourceValue.cpp.

Referenced by isAliased(), isConstant(), and mayAlias().

const PseudoSourceValue * PseudoSourceValue::getStack ( ) [static]

A pseudo source value referencing the area below the stack frame of a function, e.g., the argument space.

Definition at line 45 of file PseudoSourceValue.cpp.

Referenced by isAliased(), and isConstant().

bool PseudoSourceValue::isAliased ( const MachineFrameInfo MFI) const [virtual]

isAliased - Test whether the memory pointed to by this PseudoSourceValue may also be pointed to by an LLVM IR Value.

Reimplemented in llvm::FixedStackPseudoSourceValue.

Definition at line 92 of file PseudoSourceValue.cpp.

References getConstantPool(), getGOT(), getJumpTable(), getStack(), and llvm_unreachable.

bool PseudoSourceValue::isConstant ( const MachineFrameInfo ) const [virtual]

isConstant - Test whether the memory pointed to by this PseudoSourceValue has a constant value.

Reimplemented in llvm::FixedStackPseudoSourceValue.

Definition at line 82 of file PseudoSourceValue.cpp.

References getConstantPool(), getGOT(), getJumpTable(), getStack(), and llvm_unreachable.

bool PseudoSourceValue::mayAlias ( const MachineFrameInfo MFI) const [virtual]

mayAlias - Return true if the memory pointed to by this PseudoSourceValue can ever alias a LLVM IR Value.

Reimplemented in llvm::FixedStackPseudoSourceValue.

Definition at line 101 of file PseudoSourceValue.cpp.

References getConstantPool(), getGOT(), and getJumpTable().


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