From a1aba44ffa742e02b0b0cc555d8359d456402fc2 Mon Sep 17 00:00:00 2001 From: Jan Vesely Date: Thu, 18 Jan 2018 21:11:56 +0000 Subject: [PATCH] half_log2: Implement using log2 Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema Signed-off-by: Jan Vesely llvm-svn: 322895 --- libclc/generic/include/clc/clc.h | 1 + libclc/generic/include/clc/math/half_log2.h | 9 +++++++++ libclc/generic/lib/SOURCES | 1 + libclc/generic/lib/math/half_log2.cl | 6 ++++++ 4 files changed, 17 insertions(+) create mode 100644 libclc/generic/include/clc/math/half_log2.h create mode 100644 libclc/generic/lib/math/half_log2.cl diff --git a/libclc/generic/include/clc/clc.h b/libclc/generic/include/clc/clc.h index 33392e60d6bb..a52ed5d3d2b9 100644 --- a/libclc/generic/include/clc/clc.h +++ b/libclc/generic/include/clc/clc.h @@ -76,6 +76,7 @@ #include #include #include +#include #include #include #include diff --git a/libclc/generic/include/clc/math/half_log2.h b/libclc/generic/include/clc/math/half_log2.h new file mode 100644 index 000000000000..6a371ab46fd9 --- /dev/null +++ b/libclc/generic/include/clc/math/half_log2.h @@ -0,0 +1,9 @@ +#define __CLC_BODY +#define __CLC_FUNCTION half_log2 +#define __FLOAT_ONLY + +#include + +#undef __FLOAT_ONLY +#undef __CLC_BODY +#undef __CLC_FUNCTION diff --git a/libclc/generic/lib/SOURCES b/libclc/generic/lib/SOURCES index 2fcb59c175f1..11a4ca8e3d77 100644 --- a/libclc/generic/lib/SOURCES +++ b/libclc/generic/lib/SOURCES @@ -110,6 +110,7 @@ math/half_exp10.cl math/half_exp2.cl math/half_log.cl math/half_log10.cl +math/half_log2.cl math/half_rsqrt.cl math/half_sqrt.cl math/hypot.cl diff --git a/libclc/generic/lib/math/half_log2.cl b/libclc/generic/lib/math/half_log2.cl new file mode 100644 index 000000000000..d98a61158fb0 --- /dev/null +++ b/libclc/generic/lib/math/half_log2.cl @@ -0,0 +1,6 @@ +#include + +#define __CLC_FUNC log2 +#define __CLC_BODY +#define __FLOAT_ONLY +#include