LLVM API Documentation
An 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 |
| int | getAlignment () const |
| Type * | getType () const |
| unsigned | getRelocationInfo () const |
| SectionKind | getSectionKind (const DataLayout *DL) const |
Public Attributes | |
| union { | |
| const Constant * ConstVal | |
| MachineConstantPoolValue * MachineCPVal | |
| } | Val |
| The constant itself. | |
| unsigned | Alignment |
An entry in a MachineConstantPool.
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.
Definition at line 76 of file MachineConstantPool.h.
| llvm::MachineConstantPoolEntry::MachineConstantPoolEntry | ( | const Constant * | V, |
| unsigned | A | ||
| ) | [inline] |
Definition at line 88 of file MachineConstantPool.h.
References Val.
| llvm::MachineConstantPoolEntry::MachineConstantPoolEntry | ( | MachineConstantPoolValue * | V, |
| unsigned | A | ||
| ) | [inline] |
Definition at line 92 of file MachineConstantPool.h.
| int llvm::MachineConstantPoolEntry::getAlignment | ( | ) | const [inline] |
Definition at line 105 of file MachineConstantPool.h.
References Alignment.
Referenced by llvm::AsmPrinter::EmitConstantPool().
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 839 of file MachineFunction.cpp.
References isMachineConstantPoolEntry(), and Val.
Referenced by getSectionKind().
| SectionKind MachineConstantPoolEntry::getSectionKind | ( | const DataLayout * | DL | ) | const |
Definition at line 846 of file MachineFunction.cpp.
References llvm::SectionKind::getMergeableConst(), llvm::SectionKind::getMergeableConst16(), llvm::SectionKind::getMergeableConst4(), llvm::SectionKind::getMergeableConst8(), llvm::SectionKind::getReadOnlyWithRel(), llvm::SectionKind::getReadOnlyWithRelLocal(), getRelocationInfo(), getType(), llvm::DataLayout::getTypeAllocSize(), and llvm_unreachable.
Referenced by llvm::AsmPrinter::EmitConstantPool(), and llvm::X86AsmPrinter::GetCPISymbol().
| Type * MachineConstantPoolEntry::getType | ( | ) | const |
Definition at line 832 of file MachineFunction.cpp.
References isMachineConstantPoolEntry(), and Val.
Referenced by llvm::AsmPrinter::EmitConstantPool(), llvm::X86AsmPrinter::EmitInstruction(), and getSectionKind().
| bool llvm::MachineConstantPoolEntry::isMachineConstantPoolEntry | ( | ) | const [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::X86AsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), llvm::X86AsmPrinter::GetCPISymbol(), getRelocationInfo(), getType(), and llvm::ARMBaseInstrInfo::produceSameValue().
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::X86AsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), llvm::X86AsmPrinter::GetCPISymbol(), and llvm::ARMBaseInstrInfo::produceSameValue().
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::X86AsmPrinter::EmitInstruction(), llvm::MipsAsmPrinter::EmitInstruction(), llvm::X86AsmPrinter::GetCPISymbol(), getRelocationInfo(), getType(), MachineConstantPoolEntry(), and llvm::ARMBaseInstrInfo::produceSameValue().