diff options
author | Aakanksha Patil <aakanksha555@gmail.com> | 2018-12-12 20:49:17 +0000 |
---|---|---|
committer | Aakanksha Patil <aakanksha555@gmail.com> | 2018-12-12 20:49:17 +0000 |
commit | 729309cc8956da3b105da0f5c42197c0f5792ef0 (patch) | |
tree | dd2fe140db6ee85cb65dc16d0f706fb71b0c18a1 /llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll | |
parent | 9b5fce1ce9af3b19101381bd0f9719f6ff35f709 (diff) | |
download | bcm5719-llvm-729309cc8956da3b105da0f5c42197c0f5792ef0.tar.gz bcm5719-llvm-729309cc8956da3b105da0f5c42197c0f5792ef0.zip |
[AMDGPU] Support for "uniform-work-group-size" attribute
Updated the annotate-kernel-features pass to support the propagation of uniform-work-group attribute from the kernel to the called functions. Once this pass is run, all kernels, even the ones which initially did not have the attribute, will be able to indicate weather or not they have uniform work group size depending on the value of the attribute.
Differential Revision: https://reviews.llvm.org/D50200
llvm-svn: 348971
Diffstat (limited to 'llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll')
-rw-r--r-- | llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll b/llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll new file mode 100644 index 00000000000..83761148043 --- /dev/null +++ b/llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll @@ -0,0 +1,24 @@ +; RUN: opt -S -mtriple=amdgcn-amd- -amdgpu-annotate-kernel-features %s | FileCheck %s + +; Test to verify if the attribute gets propagated across nested function calls + +; CHECK: define void @func1() #[[FUNC:[0-9]+]] { +define void @func1() #0 { + ret void +} + +; CHECK: define void @func2() #[[FUNC]] { +define void @func2() #1 { + call void @func1() + ret void +} + +; CHECK: define amdgpu_kernel void @kernel3() #[[FUNC:[0-9]+]] { +define amdgpu_kernel void @kernel3() #2 { + call void @func2() + ret void +} + +attributes #2 = { "uniform-work-group-size"="true" } + +; CHECK: attributes #[[FUNC]] = { "uniform-work-group-size"="true" } |