Lines Matching refs:DataLayout

1 //===--------- llvm/DataLayout.h - Data size & alignment info ---*- C++ -*-===//
56 // FIXME: Currently the DataLayout string carries a "preferred alignment"
57 // for types. As the DataLayout is module/global, this should likely be
104 class DataLayout {
126 /// \brief The string representation used to create this DataLayout
134 return const_cast<DataLayout *>(this)->findPointerLowerBound(AddressSpace);
184 /// Constructs a DataLayout from a specification string. See reset().
185 explicit DataLayout(StringRef LayoutDescription) : LayoutMap(nullptr) {
190 explicit DataLayout(const Module *M);
194 DataLayout(const DataLayout &DL) : LayoutMap(nullptr) { *this = DL; }
196 DataLayout &operator=(const DataLayout &DL) {
208 bool operator==(const DataLayout &Other) const;
209 bool operator!=(const DataLayout &Other) const { return !(*this == Other); }
211 ~DataLayout(); // Not virtual, do not subclass this class
220 /// \brief Returns the string representation of the DataLayout.
223 /// constructor above. This should not be used to compare two DataLayout as
229 /// \brief Test if the DataLayout was constructed from an empty string.
465 inline DataLayout *unwrap(LLVMTargetDataRef P) {
466 return reinterpret_cast<DataLayout *>(P);
469 inline LLVMTargetDataRef wrap(const DataLayout *P) {
470 return reinterpret_cast<LLVMTargetDataRef>(const_cast<DataLayout *>(P));
474 /// based on the DataLayout structure.
506 friend class DataLayout; // Only DataLayout can create this class
507 StructLayout(StructType *ST, const DataLayout &DL);
512 inline uint64_t DataLayout::getTypeSizeInBits(Type *Ty) const {
548 llvm_unreachable("DataLayout::getTypeSizeInBits(): Unsupported type");