summaryrefslogtreecommitdiffstats
path: root/libclc/generic
diff options
context:
space:
mode:
authorJan Vesely <jan.vesely@rutgers.edu>2018-01-18 21:11:35 +0000
committerJan Vesely <jan.vesely@rutgers.edu>2018-01-18 21:11:35 +0000
commita95db144610e601a72a443fbc88607f87ea0f900 (patch)
treee10ba6e3140791d8ce6d868fd05039b8874b5b70 /libclc/generic
parent55c3a321a8541016bd8a4305dbed6bbed49c0d95 (diff)
downloadbcm5719-llvm-a95db144610e601a72a443fbc88607f87ea0f900.tar.gz
bcm5719-llvm-a95db144610e601a72a443fbc88607f87ea0f900.zip
half_rsqrt: Cleanup implementation
Passes CTS on carrizo v2: Use full precision implementation Reviewer: Jeroen Ketema <j.ketema@xs4all.nl> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 322887
Diffstat (limited to 'libclc/generic')
-rw-r--r--libclc/generic/include/clc/math/half_rsqrt.h2
-rw-r--r--libclc/generic/lib/math/half_rsqrt.cl26
-rw-r--r--libclc/generic/lib/math/half_rsqrt.inc25
-rw-r--r--libclc/generic/lib/math/half_unary.inc9
4 files changed, 11 insertions, 51 deletions
diff --git a/libclc/generic/include/clc/math/half_rsqrt.h b/libclc/generic/include/clc/math/half_rsqrt.h
index 0c1f5088c0f..0bba7daa05d 100644
--- a/libclc/generic/include/clc/math/half_rsqrt.h
+++ b/libclc/generic/include/clc/math/half_rsqrt.h
@@ -20,8 +20,6 @@
* THE SOFTWARE.
*/
-#undef half_rsqrt
-
#define __CLC_BODY <clc/math/unary_decl.inc>
#define __CLC_FUNCTION half_rsqrt
#define __FLOAT_ONLY
diff --git a/libclc/generic/lib/math/half_rsqrt.cl b/libclc/generic/lib/math/half_rsqrt.cl
index 726f65c1dce..b02eb6196c3 100644
--- a/libclc/generic/lib/math/half_rsqrt.cl
+++ b/libclc/generic/lib/math/half_rsqrt.cl
@@ -1,28 +1,6 @@
-/*
- * Copyright (c) 2014,2015 Advanced Micro Devices, Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
#include <clc/clc.h>
-#define __CLC_BODY <half_rsqrt.inc>
+#define __CLC_FUNC rsqrt
+#define __CLC_BODY <half_unary.inc>
#define __FLOAT_ONLY
#include <clc/math/gentype.inc>
-#undef __FLOAT_ONLY
diff --git a/libclc/generic/lib/math/half_rsqrt.inc b/libclc/generic/lib/math/half_rsqrt.inc
deleted file mode 100644
index 33ce6c282d3..00000000000
--- a/libclc/generic/lib/math/half_rsqrt.inc
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright (c) 2014,2015 Advanced Micro Devices, Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE half_rsqrt(__CLC_GENTYPE val) {
- return rsqrt(val);
-}
diff --git a/libclc/generic/lib/math/half_unary.inc b/libclc/generic/lib/math/half_unary.inc
new file mode 100644
index 00000000000..a68f91a70be
--- /dev/null
+++ b/libclc/generic/lib/math/half_unary.inc
@@ -0,0 +1,9 @@
+#include <utils.h>
+
+#define __CLC_HALF_FUNC(x) __CLC_CONCAT(half_, x)
+
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __CLC_HALF_FUNC(__CLC_FUNC)(__CLC_GENTYPE val) {
+ return __CLC_FUNC(val);
+}
+
+#undef __CLC_HALF_FUNC
OpenPOWER on IntegriCloud