LLVM  4.0.0
Public Member Functions | Public Attributes | List of all members
llvm::MachineConstantPoolEntry Class Reference

This class is a data container for one entry in a MachineConstantPool. More...

#include <MachineConstantPool.h>

Collaboration diagram for llvm::MachineConstantPoolEntry:
[legend]

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
 
TypegetType () 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...
 

Detailed Description

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 68 of file MachineConstantPool.h.

Constructor & Destructor Documentation

llvm::MachineConstantPoolEntry::MachineConstantPoolEntry ( const Constant V,
unsigned  A 
)
inline

Definition at line 80 of file MachineConstantPool.h.

References Val.

llvm::MachineConstantPoolEntry::MachineConstantPoolEntry ( MachineConstantPoolValue V,
unsigned  A 
)
inline

Definition at line 84 of file MachineConstantPool.h.

References Alignment, and Val.

Member Function Documentation

int llvm::MachineConstantPoolEntry::getAlignment ( ) const
inline

Definition at line 97 of file MachineConstantPool.h.

References Alignment.

Referenced by llvm::AsmPrinter::EmitConstantPool().

SectionKind MachineConstantPoolEntry::getSectionKind ( const DataLayout DL) const
Type * MachineConstantPoolEntry::getType ( ) const
bool llvm::MachineConstantPoolEntry::isMachineConstantPoolEntry ( ) const
inline
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 1073 of file MachineFunction.cpp.

References isMachineConstantPoolEntry(), and Val.

Referenced by getSectionKind().

Member Data Documentation

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 78 of file MachineConstantPool.h.

Referenced by getAlignment(), llvm::X86AsmPrinter::GetCPISymbol(), isMachineConstantPoolEntry(), and MachineConstantPoolEntry().

const Constant* llvm::MachineConstantPoolEntry::ConstVal
MachineConstantPoolValue* llvm::MachineConstantPoolEntry::MachineCPVal
union { ... } llvm::MachineConstantPoolEntry::Val

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