LLVM 20.0.0git
|
This class is a data container for one entry in a MachineConstantPool. More...
#include "llvm/CodeGen/MachineConstantPool.h"
Public Member Functions | |
MachineConstantPoolEntry (const Constant *V, Align A) | |
MachineConstantPoolEntry (MachineConstantPoolValue *V, Align A) | |
bool | isMachineConstantPoolEntry () const |
isMachineConstantPoolEntry - Return true if the MachineConstantPoolEntry is indeed a target specific constantpool entry, not a wrapper over a Constant. | |
Align | getAlign () const |
unsigned | getSizeInBytes (const DataLayout &DL) const |
bool | needsRelocation () const |
This method classifies the entry according to whether or not it may generate a relocation entry. | |
SectionKind | getSectionKind (const DataLayout *DL) const |
Public Attributes | |
union { | |
const Constant * ConstVal | |
MachineConstantPoolValue * MachineCPVal | |
} | Val |
The constant itself. | |
Align | Alignment |
The required alignment for this entry. | |
bool | IsMachineConstantPoolEntry |
This class is a data container for one entry in a MachineConstantPool.
It contains a pointer to the value and an offset from the start of the constant pool. An entry in a MachineConstantPool
Definition at line 67 of file MachineConstantPool.h.
Definition at line 80 of file MachineConstantPool.h.
References Val.
|
inline |
Definition at line 85 of file MachineConstantPool.h.
References Val.
|
inline |
Definition at line 95 of file MachineConstantPool.h.
References Alignment.
Referenced by llvm::AsmPrinter::emitConstantPool().
SectionKind MachineConstantPoolEntry::getSectionKind | ( | const DataLayout * | DL | ) | const |
Definition at line 1399 of file MachineFunction.cpp.
References DL, llvm::SectionKind::getMergeableConst16(), llvm::SectionKind::getMergeableConst32(), llvm::SectionKind::getMergeableConst4(), llvm::SectionKind::getMergeableConst8(), llvm::SectionKind::getReadOnly(), llvm::SectionKind::getReadOnlyWithRel(), getSizeInBytes(), and needsRelocation().
Referenced by llvm::AsmPrinter::emitConstantPool(), and llvm::AsmPrinter::GetCPISymbol().
unsigned MachineConstantPoolEntry::getSizeInBytes | ( | const DataLayout & | DL | ) | const |
Definition at line 1386 of file MachineFunction.cpp.
References DL, isMachineConstantPoolEntry(), and Val.
Referenced by llvm::AsmPrinter::emitConstantPool(), and getSectionKind().
|
inline |
isMachineConstantPoolEntry - Return true if the MachineConstantPoolEntry is indeed a target specific constantpool entry, not a wrapper over a Constant.
Definition at line 93 of file MachineConstantPool.h.
References IsMachineConstantPoolEntry.
Referenced by llvm::AsmPrinter::emitConstantPool(), llvm::ARMAsmPrinter::emitInstruction(), llvm::MipsAsmPrinter::emitInstruction(), llvm::XtensaAsmPrinter::emitMachineConstantPoolEntry(), llvm::X86::getConstantFromPool(), llvm::AsmPrinter::GetCPISymbol(), getSizeInBytes(), needsRelocation(), and llvm::ARMBaseInstrInfo::produceSameValue().
bool MachineConstantPoolEntry::needsRelocation | ( | ) | const |
This method classifies the entry according to whether or not it may generate a relocation entry.
This must be conservative, so if it might codegen to a relocatable entry, it should say so.
Definition at line 1392 of file MachineFunction.cpp.
References isMachineConstantPoolEntry(), and Val.
Referenced by getSectionKind().
Align llvm::MachineConstantPoolEntry::Alignment |
The required alignment for this entry.
Definition at line 76 of file MachineConstantPool.h.
Referenced by getAlign(), and llvm::AsmPrinter::GetCPISymbol().
Definition at line 71 of file MachineConstantPool.h.
Referenced by llvm::AsmPrinter::emitConstantPool(), llvm::ARMAsmPrinter::emitInstruction(), llvm::MipsAsmPrinter::emitInstruction(), llvm::XtensaAsmPrinter::emitMachineConstantPoolEntry(), llvm::X86::getConstantFromPool(), llvm::AsmPrinter::GetCPISymbol(), and llvm::ARMBaseInstrInfo::produceSameValue().
bool llvm::MachineConstantPoolEntry::IsMachineConstantPoolEntry |
Definition at line 78 of file MachineConstantPool.h.
Referenced by isMachineConstantPoolEntry().
MachineConstantPoolValue* llvm::MachineConstantPoolEntry::MachineCPVal |
union { ... } llvm::MachineConstantPoolEntry::Val |
The constant itself.
Referenced by llvm::AsmPrinter::emitConstantPool(), llvm::ARMAsmPrinter::emitInstruction(), llvm::MipsAsmPrinter::emitInstruction(), llvm::XtensaAsmPrinter::emitMachineConstantPoolEntry(), llvm::X86::getConstantFromPool(), llvm::AsmPrinter::GetCPISymbol(), getSizeInBytes(), MachineConstantPoolEntry(), needsRelocation(), and llvm::ARMBaseInstrInfo::produceSameValue().