LLVM 22.0.0git
llvm::ARMConstantPoolValue Class Reference

ARMConstantPoolValue - ARM specific constantpool value. More...

#include "Target/ARM/ARMConstantPoolValue.h"

Inheritance diagram for llvm::ARMConstantPoolValue:
[legend]

Public Member Functions

 ~ARMConstantPoolValue () override
ARMCP::ARMCPModifier getModifier () const
StringRef getModifierText () const
bool hasModifier () const
bool mustAddCurrentAddress () const
unsigned getLabelId () const
unsigned char getPCAdjustment () const
bool isGlobalValue () const
bool isExtSymbol () const
bool isBlockAddress () const
bool isLSDA () const
bool isMachineBasicBlock () const
bool isPromotedGlobal () const
int getExistingMachineCPValue (MachineConstantPool *CP, Align Alignment) override
void addSelectionDAGCSEId (FoldingSetNodeID &ID) override
virtual bool hasSameValue (ARMConstantPoolValue *ACPV)
 hasSameValue - Return true if this ARM constpool value can share the same constantpool entry as another ARM constpool value.
bool equals (const ARMConstantPoolValue *A) const
void print (raw_ostream &O) const override
 print - Implement operator<<
void print (raw_ostream *O) const
void dump () const
Public Member Functions inherited from llvm::MachineConstantPoolValue
 MachineConstantPoolValue (Type *ty)
virtual ~MachineConstantPoolValue ()=default
TypegetType () const
virtual unsigned getSizeInBytes (const DataLayout &DL) const

Protected Member Functions

 ARMConstantPoolValue (Type *Ty, unsigned id, ARMCP::ARMCPKind Kind, unsigned char PCAdj, ARMCP::ARMCPModifier Modifier, bool AddCurrentAddress)
 ARMConstantPoolValue (LLVMContext &C, unsigned id, ARMCP::ARMCPKind Kind, unsigned char PCAdj, ARMCP::ARMCPModifier Modifier, bool AddCurrentAddress)
template<typename Derived>
int getExistingMachineCPValueImpl (MachineConstantPool *CP, Align Alignment)

Detailed Description

ARMConstantPoolValue - ARM specific constantpool value.

This is used to represent PC-relative displacement between the address of the load instruction and the constant being loaded, i.e. (&GV-(LPIC+8)).

Definition at line 61 of file ARMConstantPoolValue.h.

Constructor & Destructor Documentation

◆ ARMConstantPoolValue() [1/2]

◆ ARMConstantPoolValue() [2/2]

ARMConstantPoolValue::ARMConstantPoolValue ( LLVMContext & C,
unsigned id,
ARMCP::ARMCPKind Kind,
unsigned char PCAdj,
ARMCP::ARMCPModifier Modifier,
bool AddCurrentAddress )
protected

◆ ~ARMConstantPoolValue()

ARMConstantPoolValue::~ARMConstantPoolValue ( )
overridedefault

Member Function Documentation

◆ addSelectionDAGCSEId()

◆ dump()

LLVM_DUMP_METHOD void ARMConstantPoolValue::dump ( ) const

Definition at line 102 of file ARMConstantPoolValue.cpp.

References llvm::errs(), and LLVM_DUMP_METHOD.

◆ equals()

◆ getExistingMachineCPValue()

int ARMConstantPoolValue::getExistingMachineCPValue ( MachineConstantPool * CP,
Align Alignment )
overridevirtual

Implements llvm::MachineConstantPoolValue.

Definition at line 75 of file ARMConstantPoolValue.cpp.

References llvm_unreachable.

◆ getExistingMachineCPValueImpl()

template<typename Derived>
int llvm::ARMConstantPoolValue::getExistingMachineCPValueImpl ( MachineConstantPool * CP,
Align Alignment )
inlineprotected

◆ getLabelId()

unsigned llvm::ARMConstantPoolValue::getLabelId ( ) const
inline

◆ getModifier()

ARMCP::ARMCPModifier llvm::ARMConstantPoolValue::getModifier ( ) const
inline

◆ getModifierText()

◆ getPCAdjustment()

unsigned char llvm::ARMConstantPoolValue::getPCAdjustment ( ) const
inline

◆ hasModifier()

bool llvm::ARMConstantPoolValue::hasModifier ( ) const
inline

Definition at line 100 of file ARMConstantPoolValue.h.

References llvm::ARMCP::no_modifier.

◆ hasSameValue()

bool ARMConstantPoolValue::hasSameValue ( ARMConstantPoolValue * ACPV)
virtual

◆ isBlockAddress()

bool llvm::ARMConstantPoolValue::isBlockAddress ( ) const
inline

◆ isExtSymbol()

bool llvm::ARMConstantPoolValue::isExtSymbol ( ) const
inline

◆ isGlobalValue()

bool llvm::ARMConstantPoolValue::isGlobalValue ( ) const
inline

◆ isLSDA()

bool llvm::ARMConstantPoolValue::isLSDA ( ) const
inline

◆ isMachineBasicBlock()

bool llvm::ARMConstantPoolValue::isMachineBasicBlock ( ) const
inline

◆ isPromotedGlobal()

bool llvm::ARMConstantPoolValue::isPromotedGlobal ( ) const
inline

◆ mustAddCurrentAddress()

bool llvm::ARMConstantPoolValue::mustAddCurrentAddress ( ) const
inline

◆ print() [1/2]

void ARMConstantPoolValue::print ( raw_ostream & O) const
overridevirtual

◆ print() [2/2]

void llvm::ARMConstantPoolValue::print ( raw_ostream * O) const
inline

Definition at line 130 of file ARMConstantPoolValue.h.

References print().

Referenced by print().


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