class StructLayout

Declaration

class StructLayout { /* full declaration omitted */ };

Description

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

Declared at: llvm/include/llvm/IR/DataLayout.h:585

Method Overview

Methods

llvm::Align getAlignment() const

Declared at: llvm/include/llvm/IR/DataLayout.h:597

unsigned int getElementContainingOffset(
    uint64_t Offset) const

Description

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

Declared at: llvm/include/llvm/IR/DataLayout.h:605

Parameters

uint64_t Offset

uint64_t getElementOffset(unsigned int Idx) const

Declared at: llvm/include/llvm/IR/DataLayout.h:607

Parameters

unsigned int Idx

uint64_t getElementOffsetInBits(
    unsigned int Idx) const

Declared at: llvm/include/llvm/IR/DataLayout.h:612

Parameters

unsigned int Idx

uint64_t getSizeInBits() const

Declared at: llvm/include/llvm/IR/DataLayout.h:595

uint64_t getSizeInBytes() const

Declared at: llvm/include/llvm/IR/DataLayout.h:593

bool hasPadding() const

Description

Returns whether the struct has padding or not between its fields. NB: Padding in nested element is not taken into account.

Declared at: llvm/include/llvm/IR/DataLayout.h:601