mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-24 14:20:17 +00:00
r600: Convert barrier to clc
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewer: Aaron Watry llvm-svn: 346078
This commit is contained in:
parent
35b7ac4c30
commit
2d32cd1585
@ -1 +0,0 @@
|
||||
synchronization/barrier_impl.ll
|
@ -1 +0,0 @@
|
||||
synchronization/barrier_impl.ll
|
@ -1 +0,0 @@
|
||||
synchronization/barrier_impl.ll
|
@ -1 +0,0 @@
|
||||
synchronization/barrier_impl.ll
|
@ -1,6 +1,6 @@
|
||||
math/fmax.cl
|
||||
math/fmin.cl
|
||||
synchronization/barrier_impl.ll
|
||||
synchronization/barrier.cl
|
||||
workitem/get_global_offset.cl
|
||||
workitem/get_group_id.cl
|
||||
workitem/get_global_size.cl
|
||||
|
@ -13,4 +13,3 @@ image/write_imagef.cl
|
||||
image/write_imagei.cl
|
||||
image/write_imageui.cl
|
||||
image/write_image_impl.ll
|
||||
synchronization/barrier_impl.39.ll
|
||||
|
@ -1 +0,0 @@
|
||||
synchronization/barrier_impl.39.ll
|
@ -1 +0,0 @@
|
||||
synchronization/barrier_impl.39.ll
|
@ -1 +0,0 @@
|
||||
synchronization/barrier_impl.39.ll
|
9
libclc/r600/lib/synchronization/barrier.cl
Normal file
9
libclc/r600/lib/synchronization/barrier.cl
Normal file
@ -0,0 +1,9 @@
|
||||
#include <clc/clc.h>
|
||||
|
||||
_CLC_DEF void __clc_r600_barrier(void) __asm("llvm.r600.group.barrier");
|
||||
|
||||
_CLC_DEF void barrier(uint flags)
|
||||
{
|
||||
// We should call mem_fence here, but that is not implemented for r600 yet
|
||||
__clc_r600_barrier();
|
||||
}
|
@ -1,13 +0,0 @@
|
||||
declare void @llvm.r600.group.barrier() #0
|
||||
|
||||
target datalayout = "e-p:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64"
|
||||
|
||||
define void @barrier(i32 %flags) #1 {
|
||||
entry:
|
||||
; We should call mem_fence here, but that is not implemented for r600 yet
|
||||
tail call void @llvm.r600.group.barrier()
|
||||
ret void
|
||||
}
|
||||
|
||||
attributes #0 = { nounwind convergent }
|
||||
attributes #1 = { nounwind convergent alwaysinline }
|
@ -1,13 +0,0 @@
|
||||
declare void @llvm.r600.group.barrier() #0
|
||||
|
||||
target datalayout = "e-p:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64-S32-A5"
|
||||
|
||||
define void @barrier(i32 %flags) #1 {
|
||||
entry:
|
||||
; We should call mem_fence here, but that is not implemented for r600 yet
|
||||
tail call void @llvm.r600.group.barrier()
|
||||
ret void
|
||||
}
|
||||
|
||||
attributes #0 = { nounwind convergent }
|
||||
attributes #1 = { nounwind convergent alwaysinline }
|
Loading…
Reference in New Issue
Block a user