diff --git a/amdgcn/lib/OVERRIDES_3.9 b/amdgcn/lib/OVERRIDES_3.9
index 4811cf0..cf58849 100644
--- a/amdgcn/lib/OVERRIDES_3.9
+++ b/amdgcn/lib/OVERRIDES_3.9
@@ -1,2 +1 @@
 cl_khr_int64_extended_atomics/minmax_helpers.ll
-workitem/get_num_groups.ll
diff --git a/amdgcn/lib/OVERRIDES_4.0 b/amdgcn/lib/OVERRIDES_4.0
index 4811cf0..cf58849 100644
--- a/amdgcn/lib/OVERRIDES_4.0
+++ b/amdgcn/lib/OVERRIDES_4.0
@@ -1,2 +1 @@
 cl_khr_int64_extended_atomics/minmax_helpers.ll
-workitem/get_num_groups.ll
diff --git a/amdgcn/lib/OVERRIDES_5.0 b/amdgcn/lib/OVERRIDES_5.0
index 4811cf0..cf58849 100644
--- a/amdgcn/lib/OVERRIDES_5.0
+++ b/amdgcn/lib/OVERRIDES_5.0
@@ -1,2 +1 @@
 cl_khr_int64_extended_atomics/minmax_helpers.ll
-workitem/get_num_groups.ll
diff --git a/amdgcn/lib/OVERRIDES_6.0 b/amdgcn/lib/OVERRIDES_6.0
index 4811cf0..cf58849 100644
--- a/amdgcn/lib/OVERRIDES_6.0
+++ b/amdgcn/lib/OVERRIDES_6.0
@@ -1,2 +1 @@
 cl_khr_int64_extended_atomics/minmax_helpers.ll
-workitem/get_num_groups.ll
diff --git a/amdgcn/lib/SOURCES b/amdgcn/lib/SOURCES
index 8242287..b235457 100644
--- a/amdgcn/lib/SOURCES
+++ b/amdgcn/lib/SOURCES
@@ -10,5 +10,5 @@
 workitem/get_global_size.cl
 workitem/get_local_id.cl
 workitem/get_local_size.cl
-workitem/get_num_groups.ll
+workitem/get_num_groups.cl
 workitem/get_work_dim.cl
diff --git a/amdgcn/lib/SOURCES_3.9 b/amdgcn/lib/SOURCES_3.9
index f4b800f..86a222e 100644
--- a/amdgcn/lib/SOURCES_3.9
+++ b/amdgcn/lib/SOURCES_3.9
@@ -1,3 +1,2 @@
 cl_khr_int64_extended_atomics/minmax_helpers.39.ll
 mem_fence/waitcnt.ll
-workitem/get_num_groups.39.ll
diff --git a/amdgcn/lib/SOURCES_4.0 b/amdgcn/lib/SOURCES_4.0
index 34f98fe..86a222e 100644
--- a/amdgcn/lib/SOURCES_4.0
+++ b/amdgcn/lib/SOURCES_4.0
@@ -1,3 +1,2 @@
 cl_khr_int64_extended_atomics/minmax_helpers.39.ll
 mem_fence/waitcnt.ll
-workitem/get_num_groups.40.ll
diff --git a/amdgcn/lib/SOURCES_5.0 b/amdgcn/lib/SOURCES_5.0
index ed28126..c97d406 100644
--- a/amdgcn/lib/SOURCES_5.0
+++ b/amdgcn/lib/SOURCES_5.0
@@ -1,2 +1 @@
 cl_khr_int64_extended_atomics/minmax_helpers.39.ll
-workitem/get_num_groups.40.ll
diff --git a/amdgcn/lib/SOURCES_6.0 b/amdgcn/lib/SOURCES_6.0
index ed28126..c97d406 100644
--- a/amdgcn/lib/SOURCES_6.0
+++ b/amdgcn/lib/SOURCES_6.0
@@ -1,2 +1 @@
 cl_khr_int64_extended_atomics/minmax_helpers.39.ll
-workitem/get_num_groups.40.ll
diff --git a/amdgcn/lib/workitem/get_num_groups.39.ll b/amdgcn/lib/workitem/get_num_groups.39.ll
deleted file mode 100644
index fc52fdc..0000000
--- a/amdgcn/lib/workitem/get_num_groups.39.ll
+++ /dev/null
@@ -1,20 +0,0 @@
-declare i32 @llvm.r600.read.ngroups.x() nounwind readnone
-declare i32 @llvm.r600.read.ngroups.y() nounwind readnone
-declare i32 @llvm.r600.read.ngroups.z() nounwind readnone
-
-target datalayout = "e-p:32:32-p1:64:64-p2:64:64-p3:32:32-p4:64:64-p5: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 i32 @get_num_groups(i32 %dim) nounwind readnone alwaysinline {
-  switch i32 %dim, label %default [i32 0, label %x_dim i32 1, label %y_dim i32 2, label %z_dim]
-x_dim:
-  %x = call i32 @llvm.r600.read.ngroups.x()
-  ret i32 %x
-y_dim:
-  %y = call i32 @llvm.r600.read.ngroups.y()
-  ret i32 %y
-z_dim:
-  %z = call i32 @llvm.r600.read.ngroups.z()
-  ret i32 %z
-default:
-  ret i32 1
-}
diff --git a/amdgcn/lib/workitem/get_num_groups.40.ll b/amdgcn/lib/workitem/get_num_groups.40.ll
deleted file mode 100644
index 12ec8ea..0000000
--- a/amdgcn/lib/workitem/get_num_groups.40.ll
+++ /dev/null
@@ -1,23 +0,0 @@
-declare i32 @llvm.r600.read.ngroups.x() nounwind readnone
-declare i32 @llvm.r600.read.ngroups.y() nounwind readnone
-declare i32 @llvm.r600.read.ngroups.z() nounwind readnone
-
-target datalayout = "e-p:32:32-p1:64:64-p2:64:64-p3:32:32-p4:64:64-p5: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 i64 @get_num_groups(i32 %dim) nounwind readnone alwaysinline {
-  switch i32 %dim, label %default [i32 0, label %x_dim i32 1, label %y_dim i32 2, label %z_dim]
-x_dim:
-  %x = call i32 @llvm.r600.read.ngroups.x()
-  %x.ext = zext i32 %x to i64
-  ret i64 %x.ext
-y_dim:
-  %y = call i32 @llvm.r600.read.ngroups.y()
-  %y.ext = zext i32 %y to i64
-  ret i64 %y.ext
-z_dim:
-  %z = call i32 @llvm.r600.read.ngroups.z()
-  %z.ext = zext i32 %z to i64
-  ret i64 %z.ext
-default:
-  ret i64 1
-}
diff --git a/amdgcn/lib/workitem/get_num_groups.cl b/amdgcn/lib/workitem/get_num_groups.cl
new file mode 100644
index 0000000..f921414
--- /dev/null
+++ b/amdgcn/lib/workitem/get_num_groups.cl
@@ -0,0 +1,15 @@
+#include <clc/clc.h>
+
+uint __clc_amdgcn_get_num_groups_x(void) __asm("llvm.r600.read.ngroups.x");
+uint __clc_amdgcn_get_num_groups_y(void) __asm("llvm.r600.read.ngroups.y");
+uint __clc_amdgcn_get_num_groups_z(void) __asm("llvm.r600.read.ngroups.z");
+
+_CLC_DEF size_t get_num_groups(uint dim)
+{
+	switch (dim) {
+	case 0: return __clc_amdgcn_get_num_groups_x();
+	case 1: return __clc_amdgcn_get_num_groups_y();
+	case 2: return __clc_amdgcn_get_num_groups_z();
+	default: return 1;
+	}
+}
diff --git a/amdgcn/lib/workitem/get_num_groups.ll b/amdgcn/lib/workitem/get_num_groups.ll
deleted file mode 100644
index a364bec..0000000
--- a/amdgcn/lib/workitem/get_num_groups.ll
+++ /dev/null
@@ -1,23 +0,0 @@
-declare i32 @llvm.r600.read.ngroups.x() nounwind readnone
-declare i32 @llvm.r600.read.ngroups.y() nounwind readnone
-declare i32 @llvm.r600.read.ngroups.z() nounwind readnone
-
-target datalayout = "e-p:64:64-p1:64:64-p2:32:32-p3:32:32-p4:64:64-p5:32:32-p6: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 i64 @get_num_groups(i32 %dim) nounwind readnone alwaysinline {
-  switch i32 %dim, label %default [i32 0, label %x_dim i32 1, label %y_dim i32 2, label %z_dim]
-x_dim:
-  %x = call i32 @llvm.r600.read.ngroups.x()
-  %x.ext = zext i32 %x to i64
-  ret i64 %x.ext
-y_dim:
-  %y = call i32 @llvm.r600.read.ngroups.y()
-  %y.ext = zext i32 %y to i64
-  ret i64 %y.ext
-z_dim:
-  %z = call i32 @llvm.r600.read.ngroups.z()
-  %z.ext = zext i32 %z to i64
-  ret i64 %z.ext
-default:
-  ret i64 1
-}
