diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2016-09-16 22:43:31 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2016-09-16 22:43:31 +0000 |
commit | f19cf403c4d9fc3b97b26040c6a0afda81b1bbe2 (patch) | |
tree | 4ff26d0f81f3da3cfd75662bf274c9c95e71b704 /libclc | |
parent | e7ad23bad32014b579fbc07ef9bf0a52bd070ec0 (diff) | |
download | llvm-f19cf403c4d9fc3b97b26040c6a0afda81b1bbe2.zip llvm-f19cf403c4d9fc3b97b26040c6a0afda81b1bbe2.tar.gz llvm-f19cf403c4d9fc3b97b26040c6a0afda81b1bbe2.tar.bz2 |
amdgcn-amdhsa: Add get_num_groups implementation
llvm-svn: 281792
Diffstat (limited to 'libclc')
-rw-r--r-- | libclc/amdgcn-amdhsa/lib/OVERRIDES | 1 | ||||
-rw-r--r-- | libclc/amdgcn-amdhsa/lib/SOURCES | 1 | ||||
-rw-r--r-- | libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl | 12 |
3 files changed, 14 insertions, 0 deletions
diff --git a/libclc/amdgcn-amdhsa/lib/OVERRIDES b/libclc/amdgcn-amdhsa/lib/OVERRIDES index e69de29..c9bd69b 100644 --- a/libclc/amdgcn-amdhsa/lib/OVERRIDES +++ b/libclc/amdgcn-amdhsa/lib/OVERRIDES @@ -0,0 +1 @@ +workitem/get_num_groups.ll diff --git a/libclc/amdgcn-amdhsa/lib/SOURCES b/libclc/amdgcn-amdhsa/lib/SOURCES index 257942c0..7b7ea4a 100644 --- a/libclc/amdgcn-amdhsa/lib/SOURCES +++ b/libclc/amdgcn-amdhsa/lib/SOURCES @@ -1,2 +1,3 @@ workitem/get_global_size.ll workitem/get_local_size.ll +workitem/get_num_groups.cl diff --git a/libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl b/libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl new file mode 100644 index 0000000..946b526 --- /dev/null +++ b/libclc/amdgcn-amdhsa/lib/workitem/get_num_groups.cl @@ -0,0 +1,12 @@ + +#include <clc/clc.h> + +_CLC_DEF size_t get_num_groups(uint dim) { + size_t global_size = get_global_size(dim); + size_t local_size = get_local_size(dim); + size_t num_groups = global_size / local_size; + if (global_size % local_size != 0) { + num_groups++; + } + return num_groups; +} |