diff options
author | Daniel Dunbar <daniel@zuster.org> | 2008-10-13 17:02:26 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2008-10-13 17:02:26 +0000 |
commit | 6b1da0ea19c12346192f5ea4d70872c13bfcc82a (patch) | |
tree | 6645c0664bcefa8289b6fc4e5b1a95f611d13dcd /lib/CodeGen/CodeGenTypes.h | |
parent | e2ed203b437c14de57a80d69b70164819d045d86 (diff) |
Lift out ABIInfo abstract base class.
- Currently still lives in CGCall.cpp but is intended to be the
target specific place for hooking ABI information.
- Select ABIInfo to use based on Target's prefix and pointer width.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57445 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CodeGenTypes.h')
-rw-r--r-- | lib/CodeGen/CodeGenTypes.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/CodeGen/CodeGenTypes.h b/lib/CodeGen/CodeGenTypes.h index 0c9ab7ef63..1c6019303c 100644 --- a/lib/CodeGen/CodeGenTypes.h +++ b/lib/CodeGen/CodeGenTypes.h @@ -30,6 +30,7 @@ namespace llvm { } namespace clang { + class ABIInfo; class ASTContext; class FieldDecl; class FunctionTypeProto; @@ -82,8 +83,8 @@ class CodeGenTypes { TargetInfo &Target; llvm::Module& TheModule; const llvm::TargetData& TheTargetData; + mutable const ABIInfo* TheABIInfo; - llvm::SmallVector<std::pair<const PointerLikeType *, llvm::OpaqueType *>, 8> PointersToResolve; @@ -131,6 +132,7 @@ public: const llvm::TargetData &getTargetData() const { return TheTargetData; } TargetInfo &getTarget() const { return Target; } ASTContext &getContext() const { return Context; } + const ABIInfo &getABIInfo() const; /// ConvertType - Convert type T into a llvm::Type. const llvm::Type *ConvertType(QualType T); |