diff options
author | Nikolay Haustov <Nikolay.Haustov@amd.com> | 2016-05-06 15:00:51 +0000 |
---|---|---|
committer | Nikolay Haustov <Nikolay.Haustov@amd.com> | 2016-05-06 15:00:51 +0000 |
commit | 1771948d72916e631d14c17c635a45b0bc9aa76d (patch) | |
tree | 49d75580fdd4bbe0afeeb8c48b16181bc9d33c2d | |
parent | 6eb050ea4ea1634c02c5996889a1384e335c05f4 (diff) | |
download | bcm5719-llvm-1771948d72916e631d14c17c635a45b0bc9aa76d.tar.gz bcm5719-llvm-1771948d72916e631d14c17c635a45b0bc9aa76d.zip |
Revert "AMDGPU/SI: Use amdgpu_kernel calling convention for OpenCL kernels."
This reverts commit f7053ec90d0fc56f0837e43c2c759e85b56c21a1.
It broke calling OpenCL kernel from another kernel.
llvm-svn: 268740
-rw-r--r-- | clang/lib/CodeGen/TargetInfo.cpp | 8 | ||||
-rw-r--r-- | clang/test/CodeGenOpenCL/amdgpu-calling-conv.cl | 12 | ||||
-rw-r--r-- | clang/test/CodeGenOpenCL/amdgpu-num-gpr-attr.cl | 8 |
3 files changed, 4 insertions, 24 deletions
diff --git a/clang/lib/CodeGen/TargetInfo.cpp b/clang/lib/CodeGen/TargetInfo.cpp index 4448057a37f..4ee85730497 100644 --- a/clang/lib/CodeGen/TargetInfo.cpp +++ b/clang/lib/CodeGen/TargetInfo.cpp @@ -6826,14 +6826,6 @@ void AMDGPUTargetCodeGenInfo::setTargetAttributes( if (!FD) return; - if (M.getLangOpts().OpenCL) { - if (FD->hasAttr<OpenCLKernelAttr>()) { - // Set amdgpu_kernel calling convention for OpenCL kernels. - llvm::Function *Fn = cast<llvm::Function>(GV); - Fn->setCallingConv(llvm::CallingConv::AMDGPU_KERNEL); - } - } - if (const auto Attr = FD->getAttr<AMDGPUNumVGPRAttr>()) { llvm::Function *F = cast<llvm::Function>(GV); uint32_t NumVGPR = Attr->getNumVGPR(); diff --git a/clang/test/CodeGenOpenCL/amdgpu-calling-conv.cl b/clang/test/CodeGenOpenCL/amdgpu-calling-conv.cl deleted file mode 100644 index 7da9d7f4d49..00000000000 --- a/clang/test/CodeGenOpenCL/amdgpu-calling-conv.cl +++ /dev/null @@ -1,12 +0,0 @@ -// REQUIRES: amdgpu-registered-target -// RUN: %clang_cc1 -triple amdgcn-unknown-unknown -S -emit-llvm -o - %s | FileCheck %s - -// CHECK: define amdgpu_kernel void @calling_conv_amdgpu_kernel() -kernel void calling_conv_amdgpu_kernel() -{ -} - -// CHECK: define void @calling_conv_none() -void calling_conv_none() -{ -} diff --git a/clang/test/CodeGenOpenCL/amdgpu-num-gpr-attr.cl b/clang/test/CodeGenOpenCL/amdgpu-num-gpr-attr.cl index 589d00d1eaa..d2ecc7a8c6b 100644 --- a/clang/test/CodeGenOpenCL/amdgpu-num-gpr-attr.cl +++ b/clang/test/CodeGenOpenCL/amdgpu-num-gpr-attr.cl @@ -5,23 +5,23 @@ __attribute__((amdgpu_num_vgpr(64))) // expected-no-diagnostics kernel void test_num_vgpr64() { -// CHECK: define amdgpu_kernel void @test_num_vgpr64() [[ATTR_VGPR64:#[0-9]+]] +// CHECK: define void @test_num_vgpr64() [[ATTR_VGPR64:#[0-9]+]] } __attribute__((amdgpu_num_sgpr(32))) // expected-no-diagnostics kernel void test_num_sgpr32() { -// CHECK: define amdgpu_kernel void @test_num_sgpr32() [[ATTR_SGPR32:#[0-9]+]] +// CHECK: define void @test_num_sgpr32() [[ATTR_SGPR32:#[0-9]+]] } __attribute__((amdgpu_num_vgpr(64), amdgpu_num_sgpr(32))) // expected-no-diagnostics kernel void test_num_vgpr64_sgpr32() { -// CHECK: define amdgpu_kernel void @test_num_vgpr64_sgpr32() [[ATTR_VGPR64_SGPR32:#[0-9]+]] +// CHECK: define void @test_num_vgpr64_sgpr32() [[ATTR_VGPR64_SGPR32:#[0-9]+]] } __attribute__((amdgpu_num_sgpr(20), amdgpu_num_vgpr(40))) // expected-no-diagnostics kernel void test_num_sgpr20_vgpr40() { -// CHECK: define amdgpu_kernel void @test_num_sgpr20_vgpr40() [[ATTR_SGPR20_VGPR40:#[0-9]+]] +// CHECK: define void @test_num_sgpr20_vgpr40() [[ATTR_SGPR20_VGPR40:#[0-9]+]] } __attribute__((amdgpu_num_vgpr(0))) // expected-no-diagnostics |