diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2011-06-21 18:54:39 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2011-06-21 18:54:39 +0000 |
| commit | 0de2faae4d2b44f8a397ffddf326760a4ef34860 (patch) | |
| tree | 0bb407896e185d18c73e871bd8e4f012e4fe5ff8 /clang/lib/CodeGen | |
| parent | 2e9e89aa3616b2018ef59af8c598e0fb2611354f (diff) | |
| download | bcm5719-llvm-0de2faae4d2b44f8a397ffddf326760a4ef34860.tar.gz bcm5719-llvm-0de2faae4d2b44f8a397ffddf326760a4ef34860.zip | |
IRgen: Add CGOptions to CGTypes.
llvm-svn: 133530
Diffstat (limited to 'clang/lib/CodeGen')
| -rw-r--r-- | clang/lib/CodeGen/CodeGenModule.cpp | 2 | ||||
| -rw-r--r-- | clang/lib/CodeGen/CodeGenTypes.cpp | 4 | ||||
| -rw-r--r-- | clang/lib/CodeGen/CodeGenTypes.h | 6 |
3 files changed, 8 insertions, 4 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.cpp b/clang/lib/CodeGen/CodeGenModule.cpp index 7f4546f0796..af29990da68 100644 --- a/clang/lib/CodeGen/CodeGenModule.cpp +++ b/clang/lib/CodeGen/CodeGenModule.cpp @@ -62,7 +62,7 @@ CodeGenModule::CodeGenModule(ASTContext &C, const CodeGenOptions &CGO, : Context(C), Features(C.getLangOptions()), CodeGenOpts(CGO), TheModule(M), TheTargetData(TD), TheTargetCodeGenInfo(0), Diags(diags), ABI(createCXXABI(*this)), - Types(C, M, TD, getTargetCodeGenInfo().getABIInfo(), ABI), + Types(C, M, TD, getTargetCodeGenInfo().getABIInfo(), ABI, CGO), TBAA(0), VTables(*this), Runtime(0), DebugInfo(0), ARCData(0), RRData(0), CFConstantStringClassRef(0), ConstantStringClassRef(0), diff --git a/clang/lib/CodeGen/CodeGenTypes.cpp b/clang/lib/CodeGen/CodeGenTypes.cpp index 4c1ae9b66d5..7826e6e780c 100644 --- a/clang/lib/CodeGen/CodeGenTypes.cpp +++ b/clang/lib/CodeGen/CodeGenTypes.cpp @@ -28,9 +28,9 @@ using namespace CodeGen; CodeGenTypes::CodeGenTypes(ASTContext &Ctx, llvm::Module& M, const llvm::TargetData &TD, const ABIInfo &Info, - CGCXXABI &CXXABI) + CGCXXABI &CXXABI, const CodeGenOptions &CGO) : Context(Ctx), Target(Ctx.Target), TheModule(M), TheTargetData(TD), - TheABIInfo(Info), TheCXXABI(CXXABI) { + TheABIInfo(Info), TheCXXABI(CXXABI), CodeGenOpts(CGO) { } CodeGenTypes::~CodeGenTypes() { diff --git a/clang/lib/CodeGen/CodeGenTypes.h b/clang/lib/CodeGen/CodeGenTypes.h index b4a9aea21f8..4a84dff6204 100644 --- a/clang/lib/CodeGen/CodeGenTypes.h +++ b/clang/lib/CodeGen/CodeGenTypes.h @@ -37,6 +37,7 @@ namespace clang { class CXXConstructorDecl; class CXXDestructorDecl; class CXXMethodDecl; + class CodeGenOptions; class FieldDecl; class FunctionProtoType; class ObjCInterfaceDecl; @@ -62,6 +63,7 @@ class CodeGenTypes { const llvm::TargetData& TheTargetData; const ABIInfo& TheABIInfo; CGCXXABI &TheCXXABI; + const CodeGenOptions &CodeGenOpts; llvm::SmallVector<std::pair<QualType, llvm::OpaqueType *>, 8> PointersToResolve; @@ -108,13 +110,15 @@ private: public: CodeGenTypes(ASTContext &Ctx, llvm::Module &M, const llvm::TargetData &TD, - const ABIInfo &Info, CGCXXABI &CXXABI); + const ABIInfo &Info, CGCXXABI &CXXABI, + const CodeGenOptions &Opts); ~CodeGenTypes(); const llvm::TargetData &getTargetData() const { return TheTargetData; } const TargetInfo &getTarget() const { return Target; } ASTContext &getContext() const { return Context; } const ABIInfo &getABIInfo() const { return TheABIInfo; } + const CodeGenOptions &getCodeGenOpts() const { return CodeGenOpts; } CGCXXABI &getCXXABI() const { return TheCXXABI; } llvm::LLVMContext &getLLVMContext() { return TheModule.getContext(); } |

