diff options
| author | Tom Stellard <thomas.stellard@amd.com> | 2014-10-03 19:49:34 +0000 |
|---|---|---|
| committer | Tom Stellard <thomas.stellard@amd.com> | 2014-10-03 19:49:34 +0000 |
| commit | b5064f79efadaef7822be7427a30a6bd273a9d50 (patch) | |
| tree | ac534cbb11b933c8741dc3463f75ef293fe2d616 /libclc | |
| parent | 1356ac75d1e99d6f26d198a691f727b23e811c09 (diff) | |
| download | bcm5719-llvm-b5064f79efadaef7822be7427a30a6bd273a9d50.tar.gz bcm5719-llvm-b5064f79efadaef7822be7427a30a6bd273a9d50.zip | |
Implement wait_group_events builtin v2
This is a simple default implemetation which just calls barrier().
v2:
- Only call barrier() once.
llvm-svn: 219006
Diffstat (limited to 'libclc')
| -rw-r--r-- | libclc/generic/include/clc/async/wait_group_events.h | 1 | ||||
| -rw-r--r-- | libclc/generic/include/clc/clc.h | 1 | ||||
| -rw-r--r-- | libclc/generic/lib/SOURCES | 1 | ||||
| -rw-r--r-- | libclc/generic/lib/async/wait_group_events.cl | 5 |
4 files changed, 8 insertions, 0 deletions
diff --git a/libclc/generic/include/clc/async/wait_group_events.h b/libclc/generic/include/clc/async/wait_group_events.h new file mode 100644 index 00000000000..799efa0a791 --- /dev/null +++ b/libclc/generic/include/clc/async/wait_group_events.h @@ -0,0 +1 @@ +void wait_group_events(int num_events, event_t *event_list); diff --git a/libclc/generic/include/clc/clc.h b/libclc/generic/include/clc/clc.h index 972255bfe92..53f5b28d4fa 100644 --- a/libclc/generic/include/clc/clc.h +++ b/libclc/generic/include/clc/clc.h @@ -138,6 +138,7 @@ /* 6.11.10 Async Copy and Prefetch Functions */ #include <clc/async/prefetch.h> +#include <clc/async/wait_group_events.h> /* 6.11.11 Atomic Functions */ #include <clc/atomic/atomic_add.h> diff --git a/libclc/generic/lib/SOURCES b/libclc/generic/lib/SOURCES index dad283af112..175221110b8 100644 --- a/libclc/generic/lib/SOURCES +++ b/libclc/generic/lib/SOURCES @@ -1,4 +1,5 @@ async/prefetch.cl +async/wait_group_events.cl atomic/atomic_xchg.cl atomic/atomic_impl.ll cl_khr_global_int32_base_atomics/atom_add.cl diff --git a/libclc/generic/lib/async/wait_group_events.cl b/libclc/generic/lib/async/wait_group_events.cl new file mode 100644 index 00000000000..05c9d58db45 --- /dev/null +++ b/libclc/generic/lib/async/wait_group_events.cl @@ -0,0 +1,5 @@ +#include <clc/clc.h> + +_CLC_DEF void wait_group_events(int num_events, event_t *event_list) { + barrier(CLK_LOCAL_MEM_FENCE | CLK_GLOBAL_MEM_FENCE); +} |

