LLVM
8.0.1
|
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, unsigned A) | |
MachineConstantPoolEntry (MachineConstantPoolValue *V, unsigned A) | |
bool | isMachineConstantPoolEntry () const |
isMachineConstantPoolEntry - Return true if the MachineConstantPoolEntry is indeed a target specific constantpool entry, not a wrapper over a Constant. More... | |
int | getAlignment () const |
Type * | getType () const |
bool | needsRelocation () const |
This method classifies the entry according to whether or not it may generate a relocation entry. More... | |
SectionKind | getSectionKind (const DataLayout *DL) const |
Public Attributes | |
union { | |
const Constant * ConstVal | |
MachineConstantPoolValue * MachineCPVal | |
} | Val |
The constant itself. More... | |
unsigned | Alignment |
The required alignment for this entry. More... | |
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 79 of file MachineConstantPool.h.
|
inline |
Definition at line 84 of file MachineConstantPool.h.
|
inline |
Definition at line 97 of file MachineConstantPool.h.
References llvm::MachineConstantPoolValue::getType().
Referenced by llvm::AsmPrinter::EmitConstantPool().
SectionKind MachineConstantPoolEntry::getSectionKind | ( | const DataLayout * | DL | ) | const |
Definition at line 926 of file MachineFunction.cpp.
References llvm::SectionKind::getMergeableConst16(), llvm::SectionKind::getMergeableConst32(), llvm::SectionKind::getMergeableConst4(), llvm::SectionKind::getMergeableConst8(), llvm::SectionKind::getReadOnly(), llvm::SectionKind::getReadOnlyWithRel(), getType(), and llvm::DataLayout::getTypeAllocSize().
Referenced by llvm::AsmPrinter::EmitConstantPool(), and llvm::AsmPrinter::GetCPISymbol().
Type * MachineConstantPoolEntry::getType | ( | ) | const |
Definition at line 913 of file MachineFunction.cpp.
Referenced by llvm::AsmPrinter::EmitConstantPool(), and getConstantFromPool().
|
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.
Referenced by llvm::AsmPrinter::EmitConstantPool(), llvm::ARMAsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), llvm::ARMAsmPrinter::EmitJumpTableTBInst(), getConstantFromPool(), llvm::AsmPrinter::GetCPISymbol(), 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 919 of file MachineFunction.cpp.
unsigned llvm::MachineConstantPoolEntry::Alignment |
The required alignment for this entry.
The top bit is set when Val is a target specific MachineConstantPoolValue.
Definition at line 77 of file MachineConstantPool.h.
Referenced by llvm::AsmPrinter::GetCPISymbol().
Definition at line 71 of file MachineConstantPool.h.
Referenced by llvm::AsmPrinter::EmitConstantPool(), llvm::ARMAsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), llvm::ARMAsmPrinter::EmitJumpTableTBInst(), getConstantFromPool(), llvm::AsmPrinter::GetCPISymbol(), and llvm::ARMBaseInstrInfo::produceSameValue().
MachineConstantPoolValue* llvm::MachineConstantPoolEntry::MachineCPVal |
Definition at line 72 of file MachineConstantPool.h.
Referenced by llvm::AsmPrinter::EmitConstantPool(), llvm::ARMAsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), and llvm::ARMBaseInstrInfo::produceSameValue().
union { ... } llvm::MachineConstantPoolEntry::Val |
The constant itself.
Referenced by llvm::AsmPrinter::EmitConstantPool(), llvm::ARMAsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), llvm::ARMAsmPrinter::EmitJumpTableTBInst(), getConstantFromPool(), llvm::AsmPrinter::GetCPISymbol(), and llvm::ARMBaseInstrInfo::produceSameValue().