LLVM API Documentation
#include "llvm/IR/DataLayout.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/Triple.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/GetElementPtrTypeIterator.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/ManagedStatic.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/Mutex.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cstdlib>
Go to the source code of this file.
Functions | |
static std::pair< StringRef, StringRef > | split (StringRef Str, char Separator) |
Checked version of split, to ensure mandatory subparts. | |
static unsigned | getInt (StringRef R) |
Get an unsigned integer, including error checks. | |
static unsigned | inBytes (unsigned Bits) |
Convert bits into bytes. Assert if not a byte width multiple. | |
Variables | |
static const LayoutAlignElem | DefaultAlignments [] |
Get an unsigned integer, including error checks.
Definition at line 206 of file DataLayout.cpp.
References llvm::StringRef::getAsInteger(), and llvm::report_fatal_error().
Convert bits into bytes. Assert if not a byte width multiple.
Definition at line 215 of file DataLayout.cpp.
Checked version of split, to ensure mandatory subparts.
Definition at line 197 of file DataLayout.cpp.
References llvm::StringRef::empty(), Split(), and llvm::StringRef::split().
const LayoutAlignElem DefaultAlignments[] [static] |
{ { INTEGER_ALIGN, 1, 1, 1 }, { INTEGER_ALIGN, 8, 1, 1 }, { INTEGER_ALIGN, 16, 2, 2 }, { INTEGER_ALIGN, 32, 4, 4 }, { INTEGER_ALIGN, 64, 4, 8 }, { FLOAT_ALIGN, 16, 2, 2 }, { FLOAT_ALIGN, 32, 4, 4 }, { FLOAT_ALIGN, 64, 8, 8 }, { FLOAT_ALIGN, 128, 16, 16 }, { VECTOR_ALIGN, 64, 8, 8 }, { VECTOR_ALIGN, 128, 16, 16 }, { AGGREGATE_ALIGN, 0, 0, 8 } }
Definition at line 163 of file DataLayout.cpp.
Referenced by llvm::DataLayout::getStringRepresentation(), and llvm::DataLayout::reset().