35 const llvm::DataLayout &DL;
36 llvm::abi::TypeBuilder Builder;
38 llvm::DenseMap<QualType, const llvm::abi::Type *> TypeCache;
40 const llvm::abi::Type *convertTypeImpl(
QualType QT);
44 const llvm::abi::Type *convertRecordType(
const clang::RecordType *RT);
45 const llvm::abi::Type *convertEnumType(
const clang::EnumType *ET);
46 const llvm::abi::Type *convertComplexType(
const ComplexType *CT);
47 const llvm::abi::Type *
53 const llvm::abi::Type *createPointerTypeForPointee(
QualType PointeeType);
54 const llvm::abi::RecordType *convertCXXRecordType(
const CXXRecordDecl *RD);
62 uint64_t getPointerSize()
const;
63 uint64_t getPointerAlign()
const;
67 llvm::BumpPtrAllocator &Alloc)
68 : ASTCtx(Ctx), DL(DL), Builder(Alloc) {}
Defines the clang::ASTContext interface.
Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...