LLVM 22.0.0git
llvm::CSKYConstantPoolValue Class Reference

CSKYConstantPoolValue - CSKY specific constantpool value. More...

#include "Target/CSKY/CSKYConstantPoolValue.h"

Inheritance diagram for llvm::CSKYConstantPoolValue:
[legend]

Public Member Functions

const chargetModifierText () const
unsigned getPCAdjustment () const
bool mustAddCurrentAddress () const
CSKYCP::CSKYCPModifier getModifier () const
unsigned getLabelID () const
bool isGlobalValue () const
bool isExtSymbol () const
bool isBlockAddress () const
bool isMachineBasicBlock () const
bool isJT () const
bool isConstPool () const
int getExistingMachineCPValue (MachineConstantPool *CP, Align Alignment) override
void addSelectionDAGCSEId (FoldingSetNodeID &ID) override
void print (raw_ostream &O) const override
 print - Implement operator<<
bool equals (const CSKYConstantPoolValue *A) const
template<typename Derived>
int getExistingMachineCPValueImpl (MachineConstantPool *CP, Align Alignment)
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

 CSKYConstantPoolValue (Type *Ty, CSKYCP::CSKYCPKind Kind, unsigned PCAdjust, CSKYCP::CSKYCPModifier Modifier, bool AddCurrentAddress, unsigned ID=0)

Protected Attributes

CSKYCP::CSKYCPKind Kind
unsigned PCAdjust
CSKYCP::CSKYCPModifier Modifier
bool AddCurrentAddress
unsigned LabelId = 0

Detailed Description

CSKYConstantPoolValue - CSKY 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 46 of file CSKYConstantPoolValue.h.

Constructor & Destructor Documentation

◆ CSKYConstantPoolValue()

Member Function Documentation

◆ addSelectionDAGCSEId()

◆ equals()

◆ getExistingMachineCPValue()

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

Implements llvm::MachineConstantPoolValue.

Definition at line 57 of file CSKYConstantPoolValue.cpp.

References llvm_unreachable.

◆ getExistingMachineCPValueImpl()

◆ getLabelID()

unsigned llvm::CSKYConstantPoolValue::getLabelID ( ) const
inline

Definition at line 64 of file CSKYConstantPoolValue.h.

References LabelId.

Referenced by llvm::CSKYAsmPrinter::emitMachineConstantPoolValue().

◆ getModifier()

CSKYCP::CSKYCPModifier llvm::CSKYConstantPoolValue::getModifier ( ) const
inline

Definition at line 63 of file CSKYConstantPoolValue.h.

References Modifier.

Referenced by llvm::CSKYAsmPrinter::emitMachineConstantPoolValue().

◆ getModifierText()

◆ getPCAdjustment()

unsigned llvm::CSKYConstantPoolValue::getPCAdjustment ( ) const
inline

Definition at line 61 of file CSKYConstantPoolValue.h.

References PCAdjust.

Referenced by llvm::CSKYAsmPrinter::emitMachineConstantPoolValue().

◆ isBlockAddress()

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

◆ isConstPool()

bool llvm::CSKYConstantPoolValue::isConstPool ( ) const
inline

◆ isExtSymbol()

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

◆ isGlobalValue()

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

◆ isJT()

bool llvm::CSKYConstantPoolValue::isJT ( ) const
inline

◆ isMachineBasicBlock()

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

◆ mustAddCurrentAddress()

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

◆ print()

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

Member Data Documentation

◆ AddCurrentAddress

bool llvm::CSKYConstantPoolValue::AddCurrentAddress
protected

◆ Kind

◆ LabelId

unsigned llvm::CSKYConstantPoolValue::LabelId = 0
protected

Definition at line 53 of file CSKYConstantPoolValue.h.

Referenced by addSelectionDAGCSEId(), CSKYConstantPoolValue(), and getLabelID().

◆ Modifier

◆ PCAdjust


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