LLVM 22.0.0git
llvm::FixedStackPseudoSourceValue Class Reference

A specialized PseudoSourceValue for holding FixedStack values, which must include a frame index. More...

#include "llvm/CodeGen/PseudoSourceValue.h"

Inheritance diagram for llvm::FixedStackPseudoSourceValue:
[legend]

Public Member Functions

 FixedStackPseudoSourceValue (int FI, const TargetMachine &TM)
bool isConstant (const MachineFrameInfo *MFI) const override
 Test whether the memory pointed to by this PseudoSourceValue has a constant value.
bool isAliased (const MachineFrameInfo *MFI) const override
 Test whether the memory pointed to by this PseudoSourceValue may also be pointed to by an LLVM IR Value.
bool mayAlias (const MachineFrameInfo *) const override
 Return true if the memory pointed to by this PseudoSourceValue can ever alias an LLVM IR Value.
void printCustom (raw_ostream &OS) const override
 Implement printing for PseudoSourceValue.
int getFrameIndex () const
Public Member Functions inherited from llvm::PseudoSourceValue
 PseudoSourceValue (unsigned Kind, const TargetMachine &TM)
virtual ~PseudoSourceValue ()
unsigned kind () const
bool isStack () const
bool isGOT () const
bool isConstantPool () const
bool isJumpTable () const
unsigned getAddressSpace () const
unsigned getTargetCustom () const

Static Public Member Functions

static bool classof (const PseudoSourceValue *V)

Additional Inherited Members

Public Types inherited from llvm::PseudoSourceValue
enum  PSVKind : unsigned {
  Stack , GOT , JumpTable , ConstantPool ,
  FixedStack , GlobalValueCallEntry , ExternalSymbolCallEntry , TargetCustom
}

Detailed Description

A specialized PseudoSourceValue for holding FixedStack values, which must include a frame index.

Definition at line 92 of file PseudoSourceValue.h.

Constructor & Destructor Documentation

◆ FixedStackPseudoSourceValue()

llvm::FixedStackPseudoSourceValue::FixedStackPseudoSourceValue ( int FI,
const TargetMachine & TM )
inlineexplicit

Member Function Documentation

◆ classof()

bool llvm::FixedStackPseudoSourceValue::classof ( const PseudoSourceValue * V)
inlinestatic

◆ getFrameIndex()

int llvm::FixedStackPseudoSourceValue::getFrameIndex ( ) const
inline

Definition at line 111 of file PseudoSourceValue.h.

◆ isAliased()

bool FixedStackPseudoSourceValue::isAliased ( const MachineFrameInfo * ) const
overridevirtual

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

Reimplemented from llvm::PseudoSourceValue.

Definition at line 64 of file PseudoSourceValue.cpp.

References llvm::MachineFrameInfo::isAliasedObjectIndex().

◆ isConstant()

bool FixedStackPseudoSourceValue::isConstant ( const MachineFrameInfo * ) const
overridevirtual

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

Reimplemented from llvm::PseudoSourceValue.

Definition at line 59 of file PseudoSourceValue.cpp.

References llvm::MachineFrameInfo::isImmutableObjectIndex().

◆ mayAlias()

bool FixedStackPseudoSourceValue::mayAlias ( const MachineFrameInfo * ) const
overridevirtual

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

Reimplemented from llvm::PseudoSourceValue.

Definition at line 70 of file PseudoSourceValue.cpp.

References llvm::MachineFrameInfo::isSpillSlotObjectIndex().

◆ printCustom()

void FixedStackPseudoSourceValue::printCustom ( raw_ostream & O) const
overridevirtual

Implement printing for PseudoSourceValue.

This is called from Value::print or Value's operator<<.

Reimplemented from llvm::PseudoSourceValue.

Definition at line 77 of file PseudoSourceValue.cpp.


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