LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
llvm::LayoutAlignElem Struct Reference

#include <DataLayout.h>

Collaboration diagram for llvm::LayoutAlignElem:
Collaboration graph
[legend]

Public Member Functions

bool operator== (const LayoutAlignElem &rhs) const
 Equality predicate. More...
 

Static Public Member Functions

static LayoutAlignElem get (AlignTypeEnum align_type, unsigned abi_align, unsigned pref_align, uint32_t bit_width)
 Initializer. More...
 

Public Attributes

unsigned AlignType: 8
 Alignment type (AlignTypeEnum) More...
 
unsigned TypeBitWidth: 24
 Type bit width. More...
 
unsigned ABIAlign: 16
 ABI alignment for this type/bitw. More...
 
unsigned PrefAlign: 16
 Pref. alignment for this type/bitw. More...
 

Detailed Description

Layout alignment element.

Stores the alignment data associated with a given alignment type (integer, vector, float) and type bit width.

Note
The unusual order of elements in the structure attempts to reduce padding and make the structure slightly more cache friendly.

Definition at line 59 of file DataLayout.h.

Member Function Documentation

LayoutAlignElem LayoutAlignElem::get ( AlignTypeEnum  align_type,
unsigned  abi_align,
unsigned  pref_align,
uint32_t  bit_width 
)
static

Initializer.

Definition at line 101 of file DataLayout.cpp.

References ABIAlign, AlignType, PrefAlign, and TypeBitWidth.

bool LayoutAlignElem::operator== ( const LayoutAlignElem rhs) const

Equality predicate.

Definition at line 113 of file DataLayout.cpp.

References ABIAlign, AlignType, PrefAlign, and TypeBitWidth.

Member Data Documentation

unsigned llvm::LayoutAlignElem::ABIAlign

ABI alignment for this type/bitw.

Definition at line 62 of file DataLayout.h.

Referenced by get(), llvm::DataLayout::getStringRepresentation(), and operator==().

unsigned llvm::LayoutAlignElem::AlignType

Alignment type (AlignTypeEnum)

Definition at line 60 of file DataLayout.h.

Referenced by get(), llvm::DataLayout::getStringRepresentation(), and operator==().

unsigned llvm::LayoutAlignElem::PrefAlign

Pref. alignment for this type/bitw.

Definition at line 63 of file DataLayout.h.

Referenced by get(), llvm::DataLayout::getStringRepresentation(), and operator==().

unsigned llvm::LayoutAlignElem::TypeBitWidth

Type bit width.

Definition at line 61 of file DataLayout.h.

Referenced by get(), llvm::DataLayout::getStringRepresentation(), and operator==().


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