diff options
author | Jan Vesely <jan.vesely@rutgers.edu> | 2014-10-15 15:08:06 +0000 |
---|---|---|
committer | Jan Vesely <jan.vesely@rutgers.edu> | 2014-10-15 15:08:06 +0000 |
commit | 260827caa2cc6845670f8270a9bebd157b267991 (patch) | |
tree | 901bc72e55098832185c8adb35f0b442ab0be0c9 /libclc/r600 | |
parent | 8513d6234d00cae96811fb07fc71e8000839b7ba (diff) | |
download | llvm-260827caa2cc6845670f8270a9bebd157b267991.zip llvm-260827caa2cc6845670f8270a9bebd157b267991.tar.gz llvm-260827caa2cc6845670f8270a9bebd157b267991.tar.bz2 |
r600: Use llvm intrinsic to read work dimension information
v2: Fix function declaration
Add range metadata to r600 implementation
v3: change prefix to AMDGPU
Reviewed-by: Tom Stellard <tom@stellard.net>
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
llvm-svn: 219793
Diffstat (limited to 'libclc/r600')
-rw-r--r-- | libclc/r600/lib/SOURCES | 1 | ||||
-rw-r--r-- | libclc/r600/lib/workitem/get_work_dim.ll | 8 |
2 files changed, 9 insertions, 0 deletions
diff --git a/libclc/r600/lib/SOURCES b/libclc/r600/lib/SOURCES index ba56605..ef23d83 100644 --- a/libclc/r600/lib/SOURCES +++ b/libclc/r600/lib/SOURCES @@ -5,5 +5,6 @@ workitem/get_group_id.ll workitem/get_local_size.ll workitem/get_local_id.ll workitem/get_global_size.ll +workitem/get_work_dim.ll synchronization/barrier.cl synchronization/barrier_impl.ll diff --git a/libclc/r600/lib/workitem/get_work_dim.ll b/libclc/r600/lib/workitem/get_work_dim.ll new file mode 100644 index 0000000..b02ef74 --- /dev/null +++ b/libclc/r600/lib/workitem/get_work_dim.ll @@ -0,0 +1,8 @@ +declare i32 @llvm.AMDGPU.read.workdim() nounwind readnone + +define i32 @get_work_dim() nounwind readnone alwaysinline { + %x = call i32 @llvm.AMDGPU.read.workdim() nounwind readnone , !range !0 + ret i32 %x +} + +!0 = metadata !{ i8 1, i8 2, i8 3 } |