summaryrefslogtreecommitdiff
path: root/libclc/amdgpu
diff options
context:
space:
mode:
authorJan Vesely <jan.vesely@rutgers.edu>2017-11-10 22:16:25 +0000
committerJan Vesely <jan.vesely@rutgers.edu>2017-11-10 22:16:25 +0000
commit8dc6e98d4733456e54557d66d75c4691c195ac65 (patch)
tree1256e2b994571313425ad5e9218710ca5d152cdc /libclc/amdgpu
parentadc1eaedf85c8761f00f83fdd4c77717dc1b8927 (diff)
downloadllvm-8dc6e98d4733456e54557d66d75c4691c195ac65.tar.gz
amdgpu: Add workaround for unimplemented llvm.exp intrinsic
Reviewer: Jeroen Ketema Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 317935
Diffstat (limited to 'libclc/amdgpu')
-rw-r--r--libclc/amdgpu/lib/SOURCES1
-rw-r--r--libclc/amdgpu/lib/math/native_exp.cl5
-rw-r--r--libclc/amdgpu/lib/math/native_exp.inc3
3 files changed, 9 insertions, 0 deletions
diff --git a/libclc/amdgpu/lib/SOURCES b/libclc/amdgpu/lib/SOURCES
index 59d8b226acc4..20322ecf8448 100644
--- a/libclc/amdgpu/lib/SOURCES
+++ b/libclc/amdgpu/lib/SOURCES
@@ -1,3 +1,4 @@
+math/native_exp.cl
math/native_log.cl
math/native_log10.cl
math/nextafter.cl
diff --git a/libclc/amdgpu/lib/math/native_exp.cl b/libclc/amdgpu/lib/math/native_exp.cl
new file mode 100644
index 000000000000..71c9a2ea2fcc
--- /dev/null
+++ b/libclc/amdgpu/lib/math/native_exp.cl
@@ -0,0 +1,5 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <native_exp.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff --git a/libclc/amdgpu/lib/math/native_exp.inc b/libclc/amdgpu/lib/math/native_exp.inc
new file mode 100644
index 000000000000..c61ec0157aad
--- /dev/null
+++ b/libclc/amdgpu/lib/math/native_exp.inc
@@ -0,0 +1,3 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_exp(__CLC_GENTYPE val) {
+ return native_exp2(val * M_LOG2E_F);
+}