diff options
| author | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2017-12-06 10:11:28 +0000 |
|---|---|---|
| committer | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2017-12-06 10:11:28 +0000 |
| commit | 3bb7eaf72eca331413a21743afa5b67cac50618b (patch) | |
| tree | 0055f970c86016394883c95a7eb2c13c9b1dec07 /clang/lib/CodeGen | |
| parent | 898eb34b49e7507a3cc5d9e5e56a8601c289bb4b (diff) | |
| download | bcm5719-llvm-3bb7eaf72eca331413a21743afa5b67cac50618b.tar.gz bcm5719-llvm-3bb7eaf72eca331413a21743afa5b67cac50618b.zip | |
[OpenCL] Fix layering violation by getOpenCLTypeAddrSpace
Commit 7ac28eb0a5 / r310911 ("[OpenCL] Allow targets to select address
space per type", 2017-08-15) made Basic depend on AST, introducing a
circular dependency. Break this dependency by adding the
OpenCLTypeKind enum in Basic and map from AST types to this enum in
ASTContext.
Differential Revision: https://reviews.llvm.org/D40838
llvm-svn: 319883
Diffstat (limited to 'clang/lib/CodeGen')
| -rw-r--r-- | clang/lib/CodeGen/CGOpenCLRuntime.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/CGOpenCLRuntime.cpp b/clang/lib/CodeGen/CGOpenCLRuntime.cpp index 4d637615d2c..d140e7f09e9 100644 --- a/clang/lib/CodeGen/CGOpenCLRuntime.cpp +++ b/clang/lib/CodeGen/CGOpenCLRuntime.cpp @@ -37,7 +37,7 @@ llvm::Type *CGOpenCLRuntime::convertOpenCLSpecificType(const Type *T) { llvm::LLVMContext& Ctx = CGM.getLLVMContext(); uint32_t AddrSpc = CGM.getContext().getTargetAddressSpace( - CGM.getTarget().getOpenCLTypeAddrSpace(T)); + CGM.getContext().getOpenCLTypeAddrSpace(T)); switch (cast<BuiltinType>(T)->getKind()) { default: llvm_unreachable("Unexpected opencl builtin type!"); @@ -68,7 +68,7 @@ llvm::Type *CGOpenCLRuntime::convertOpenCLSpecificType(const Type *T) { llvm::Type *CGOpenCLRuntime::getPipeType(const PipeType *T) { if (!PipeTy){ uint32_t PipeAddrSpc = CGM.getContext().getTargetAddressSpace( - CGM.getTarget().getOpenCLTypeAddrSpace(T)); + CGM.getContext().getOpenCLTypeAddrSpace(T)); PipeTy = llvm::PointerType::get(llvm::StructType::create( CGM.getLLVMContext(), "opencl.pipe_t"), PipeAddrSpc); } @@ -81,7 +81,7 @@ llvm::PointerType *CGOpenCLRuntime::getSamplerType(const Type *T) { SamplerTy = llvm::PointerType::get(llvm::StructType::create( CGM.getLLVMContext(), "opencl.sampler_t"), CGM.getContext().getTargetAddressSpace( - CGM.getTarget().getOpenCLTypeAddrSpace(T))); + CGM.getContext().getOpenCLTypeAddrSpace(T))); return SamplerTy; } |

