|
LLVM
3.7.0
|
This class is a data container for one entry in a MachineConstantPool. More...
#include <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 |
| unsigned | getRelocationInfo () const |
| getRelocationInfo - 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 76 of file MachineConstantPool.h.
Definition at line 88 of file MachineConstantPool.h.
References Val.
|
inline |
Definition at line 92 of file MachineConstantPool.h.
|
inline |
Definition at line 105 of file MachineConstantPool.h.
References Alignment.
Referenced by llvm::AsmPrinter::EmitConstantPool().
| unsigned MachineConstantPoolEntry::getRelocationInfo | ( | ) | const |
getRelocationInfo - 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. The return values are:
0: This constant pool entry is guaranteed to never have a relocation applied to it (because it holds a simple constant like '4'). 1: This entry has relocations, but the entries are guaranteed to be resolvable by the static linker, so the dynamic linker will never see them. 2: This entry may have arbitrary relocations.
Definition at line 805 of file MachineFunction.cpp.
References isMachineConstantPoolEntry(), and Val.
Referenced by getSectionKind().
| SectionKind MachineConstantPoolEntry::getSectionKind | ( | const DataLayout * | DL | ) | const |
Definition at line 812 of file MachineFunction.cpp.
References llvm::SectionKind::getMergeableConst16(), llvm::SectionKind::getMergeableConst4(), llvm::SectionKind::getMergeableConst8(), llvm::SectionKind::getReadOnly(), llvm::SectionKind::getReadOnlyWithRel(), llvm::SectionKind::getReadOnlyWithRelLocal(), getRelocationInfo(), getType(), llvm::DataLayout::getTypeAllocSize(), llvm::Constant::GlobalRelocations, Kind, llvm_unreachable, llvm::Constant::LocalRelocation, and llvm::Constant::NoRelocation.
Referenced by llvm::AsmPrinter::EmitConstantPool(), and llvm::X86AsmPrinter::GetCPISymbol().
| Type * MachineConstantPoolEntry::getType | ( | ) | const |
Definition at line 798 of file MachineFunction.cpp.
References isMachineConstantPoolEntry(), and Val.
Referenced by llvm::AsmPrinter::EmitConstantPool(), getConstantFromPool(), 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 101 of file MachineConstantPool.h.
References Alignment.
Referenced by llvm::AsmPrinter::EmitConstantPool(), llvm::ARMAsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), getConstantFromPool(), llvm::X86AsmPrinter::GetCPISymbol(), getRelocationInfo(), getType(), and llvm::ARMBaseInstrInfo::produceSameValue().
| 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 86 of file MachineConstantPool.h.
Referenced by getAlignment(), isMachineConstantPoolEntry(), and MachineConstantPoolEntry().
Definition at line 80 of file MachineConstantPool.h.
Referenced by llvm::AsmPrinter::EmitConstantPool(), llvm::ARMAsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), getConstantFromPool(), llvm::X86AsmPrinter::GetCPISymbol(), and llvm::ARMBaseInstrInfo::produceSameValue().
| MachineConstantPoolValue* llvm::MachineConstantPoolEntry::MachineCPVal |
Definition at line 81 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(), getConstantFromPool(), llvm::X86AsmPrinter::GetCPISymbol(), getRelocationInfo(), getType(), MachineConstantPoolEntry(), and llvm::ARMBaseInstrInfo::produceSameValue().
1.8.6