[Libclc-dev] [PATCH 13/14] native_rsqrt: Switch implementation to 1 / native_sqrt

Jeroen Ketema via Libclc-dev libclc-dev at lists.llvm.org
Sun Nov 12 14:14:54 PST 2017


LGTM

Sorry for doing them all separately, but they’re all subtly different :-)

Jeroen

> On 4 Nov 2017, at 00:07, Jan Vesely via Libclc-dev <libclc-dev at lists.llvm.org> wrote:
> 
> Signed-off-by: Jan Vesely <jan.vesely at rutgers.edu>
> ---
> generic/include/clc/math/native_rsqrt.h | 10 +++++++++-
> generic/lib/SOURCES                     |  1 +
> generic/lib/math/native_rsqrt.cl        |  5 +++++
> generic/lib/math/native_rsqrt.inc       |  3 +++
> 4 files changed, 18 insertions(+), 1 deletion(-)
> create mode 100644 generic/lib/math/native_rsqrt.cl
> create mode 100644 generic/lib/math/native_rsqrt.inc
> 
> diff --git a/generic/include/clc/math/native_rsqrt.h b/generic/include/clc/math/native_rsqrt.h
> index eabc425..dbc8deb 100644
> --- a/generic/include/clc/math/native_rsqrt.h
> +++ b/generic/include/clc/math/native_rsqrt.h
> @@ -1 +1,9 @@
> -#define native_rsqrt rsqrt
> +#define __CLC_BODY <clc/math/unary_decl.inc>
> +#define __CLC_FUNCTION native_rsqrt
> +#define __FLOAT_ONLY
> +
> +#include <clc/math/gentype.inc>
> +
> +#undef __FLOAT_ONLY
> +#undef __CLC_BODY
> +#undef __CLC_FUNCTION
> diff --git a/generic/lib/SOURCES b/generic/lib/SOURCES
> index b5e8c92..296c93b 100644
> --- a/generic/lib/SOURCES
> +++ b/generic/lib/SOURCES
> @@ -126,6 +126,7 @@ math/native_exp2.cl
> math/native_log.cl
> math/native_log10.cl
> math/native_log2.cl
> +math/native_rsqrt.cl
> math/native_sin.cl
> math/native_sqrt.cl
> math/native_tan.cl
> diff --git a/generic/lib/math/native_rsqrt.cl b/generic/lib/math/native_rsqrt.cl
> new file mode 100644
> index 0000000..50bc905
> --- /dev/null
> +++ b/generic/lib/math/native_rsqrt.cl
> @@ -0,0 +1,5 @@
> +#include <clc/clc.h>
> +
> +#define __CLC_BODY <native_rsqrt.inc>
> +#define __FLOAT_ONLY
> +#include <clc/math/gentype.inc>
> diff --git a/generic/lib/math/native_rsqrt.inc b/generic/lib/math/native_rsqrt.inc
> new file mode 100644
> index 0000000..f108145
> --- /dev/null
> +++ b/generic/lib/math/native_rsqrt.inc
> @@ -0,0 +1,3 @@
> +_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_rsqrt(__CLC_GENTYPE val) {
> +  return 1.0f / native_sqrt(val);
> +}
> -- 
> 2.13.6
> 
> _______________________________________________
> Libclc-dev mailing list
> Libclc-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/libclc-dev



More information about the Libclc-dev mailing list