LLVM  4.0.0
Public Member Functions | Friends | List of all members
llvm::StructLayout Class Reference

Used to lazily calculate structure layout information for a target machine, based on the DataLayout structure. More...

#include <DataLayout.h>

Public Member Functions

uint64_t getSizeInBytes () const
 
uint64_t getSizeInBits () const
 
unsigned getAlignment () const
 
bool hasPadding () const
 Returns whether the struct has padding or not between its fields. More...
 
unsigned getElementContainingOffset (uint64_t Offset) const
 Given a valid byte offset into the structure, returns the structure index that contains it. More...
 
uint64_t getElementOffset (unsigned Idx) const
 
uint64_t getElementOffsetInBits (unsigned Idx) const
 

Friends

class DataLayout
 

Detailed Description

Used to lazily calculate structure layout information for a target machine, based on the DataLayout structure.

Definition at line 496 of file DataLayout.h.

Member Function Documentation

unsigned llvm::StructLayout::getAlignment ( ) const
inline

Definition at line 507 of file DataLayout.h.

unsigned StructLayout::getElementContainingOffset ( uint64_t  Offset) const

Given a valid byte offset into the structure, returns the structure index that contains it.

getElementContainingOffset - Given a valid offset into the structure, return the structure index that contains it.

Definition at line 79 of file DataLayout.cpp.

References assert(), and SI.

Referenced by getNaturalGEPRecursively(), getTypePartition(), and stripAggregateTypeWrapping().

uint64_t llvm::StructLayout::getElementOffset ( unsigned  Idx) const
inline
uint64_t llvm::StructLayout::getElementOffsetInBits ( unsigned  Idx) const
inline

Definition at line 522 of file DataLayout.h.

References getElementOffset().

uint64_t llvm::StructLayout::getSizeInBits ( ) const
inline

Definition at line 505 of file DataLayout.h.

Referenced by llvm::DataLayout::getTypeSizeInBits().

uint64_t llvm::StructLayout::getSizeInBytes ( ) const
inline
bool llvm::StructLayout::hasPadding ( ) const
inline

Returns whether the struct has padding or not between its fields.

NB: Padding in nested element is not taken into account.

Definition at line 511 of file DataLayout.h.

Friends And Related Function Documentation

friend class DataLayout
friend

Definition at line 527 of file DataLayout.h.


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