LLVM
8.0.1
|
#include "llvm/IR/DataLayout.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Triple.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/GetElementPtrTypeIterator.h"
#include "llvm/IR/GlobalVariable.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <cstdlib>
#include <tuple>
#include <utility>
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. More... | |
static unsigned | getInt (StringRef R) |
Get an unsigned integer, including error checks. More... | |
static unsigned | inBytes (unsigned Bits) |
Convert bits into bytes. Assert if not a byte width multiple. More... | |
static unsigned | getAddrSpace (StringRef R) |
Variables | |
static const LayoutAlignElem | DefaultAlignments [] |
Definition at line 228 of file DataLayout.cpp.
References llvm::AGGREGATE_ALIGN, llvm::StringRef::empty(), llvm::FLOAT_ALIGN, llvm::StringRef::front(), getInt(), inBytes(), llvm::INTEGER_ALIGN, llvm::isPowerOf2_64(), llvm_unreachable, llvm::report_fatal_error(), Size, llvm::StringRef::size(), Split(), split(), llvm::StringRef::substr(), and llvm::VECTOR_ALIGN.
Referenced by getSmrdOpcode(), and llvm::SIInstrInfo::isStackAccess().
Get an unsigned integer, including error checks.
Definition at line 213 of file DataLayout.cpp.
References error, llvm::StringRef::getAsInteger(), and llvm::report_fatal_error().
Referenced by getAddrSpace(), llvm::PointerIntPair< void *, 1, bool, PointerUnionUIntTraits< const llvm::Value *, const llvm::PseudoSourceValue *> >::getInt(), llvm::UnderlyingObject::mayAlias(), and llvm::HexagonTargetLowering::shouldExpandAtomicRMWInIR().
Convert bits into bytes. Assert if not a byte width multiple.
Definition at line 222 of file DataLayout.cpp.
References llvm::report_fatal_error().
Referenced by getAddrSpace().
Checked version of split, to ensure mandatory subparts.
Definition at line 202 of file DataLayout.cpp.
References assert(), llvm::StringRef::empty(), llvm::report_fatal_error(), Split(), and llvm::StringRef::split().
Referenced by llvm::FileCheck::CheckInput(), llvm::createControlHeightReductionLegacyPass(), and getAddrSpace().
|
static |
Definition at line 165 of file DataLayout.cpp.