From f38b40daf7eb0295d1a3541fb1ceb5844702133d Mon Sep 17 00:00:00 2001 From: Jan Vesely Date: Mon, 13 Nov 2017 18:28:56 +0000 Subject: [PATCH] native_divide: provide function implementation instead of macro Reviewer: Jeroen Ketema Signed-off-by: Jan Vesely llvm-svn: 318067 --- libclc/generic/include/clc/math/binary_decl_tt.inc | 1 + libclc/generic/include/clc/math/native_divide.h | 8 +++++++- libclc/generic/lib/SOURCES | 1 + libclc/generic/lib/math/native_divide.cl | 5 +++++ libclc/generic/lib/math/native_divide.inc | 3 +++ 5 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 libclc/generic/include/clc/math/binary_decl_tt.inc create mode 100644 libclc/generic/lib/math/native_divide.cl create mode 100644 libclc/generic/lib/math/native_divide.inc diff --git a/libclc/generic/include/clc/math/binary_decl_tt.inc b/libclc/generic/include/clc/math/binary_decl_tt.inc new file mode 100644 index 0000000..3166476 --- /dev/null +++ b/libclc/generic/include/clc/math/binary_decl_tt.inc @@ -0,0 +1 @@ +_CLC_OVERLOAD _CLC_DECL __CLC_GENTYPE __CLC_FUNCTION(__CLC_GENTYPE a, __CLC_GENTYPE b); diff --git a/libclc/generic/include/clc/math/native_divide.h b/libclc/generic/include/clc/math/native_divide.h index 5c52167..1bc6cf5 100644 --- a/libclc/generic/include/clc/math/native_divide.h +++ b/libclc/generic/include/clc/math/native_divide.h @@ -1 +1,7 @@ -#define native_divide(x, y) ((x) / (y)) +#define __CLC_BODY +#define __CLC_FUNCTION native_divide + +#include + +#undef __CLC_BODY +#undef __CLC_FUNCTION diff --git a/libclc/generic/lib/SOURCES b/libclc/generic/lib/SOURCES index 94ba4c0..355741c 100644 --- a/libclc/generic/lib/SOURCES +++ b/libclc/generic/lib/SOURCES @@ -120,6 +120,7 @@ math/logb.cl math/mad.cl math/modf.cl math/native_cos.cl +math/native_divide.cl math/native_exp.cl math/native_exp10.cl math/native_exp2.cl diff --git a/libclc/generic/lib/math/native_divide.cl b/libclc/generic/lib/math/native_divide.cl new file mode 100644 index 0000000..0f34366 --- /dev/null +++ b/libclc/generic/lib/math/native_divide.cl @@ -0,0 +1,5 @@ +#include + +#define __CLC_BODY +#define __FLOAT_ONLY +#include diff --git a/libclc/generic/lib/math/native_divide.inc b/libclc/generic/lib/math/native_divide.inc new file mode 100644 index 0000000..836c93d3 --- /dev/null +++ b/libclc/generic/lib/math/native_divide.inc @@ -0,0 +1,3 @@ +_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_divide(__CLC_GENTYPE x, __CLC_GENTYPE y) { + return x / y; +} -- 2.7.4