[Libclc-dev] [PATCH] Add exp10

Jeroen Ketema j.ketema at imperial.ac.uk
Wed Jun 25 03:16:36 PDT 2014


Thanks for the review. Committed.

Jeroen

On 24 Jun 2014, at 16:50, Tom Stellard <tom at stellard.net> wrote:

> On Tue, Jun 24, 2014 at 11:02:22AM +0100, Jeroen Ketema wrote:
>> 
>> Gentle nudge.
>> 
> 
> LGTM.
> 
>> Jeroen
>> 
>> On 13 Jun 2014, at 12:20, Jeroen Ketema <j.ketema at imperial.ac.uk> wrote:
>> 
>>> ---
>>> generic/include/clc/clc.h               |  2 ++
>>> generic/include/clc/math/exp10.h        |  9 +++++++++
>>> generic/include/clc/math/native_exp10.h |  1 +
>>> generic/lib/SOURCES                     |  1 +
>>> generic/lib/math/exp10.cl               |  8 ++++++++
>>> generic/lib/math/exp10.inc              | 10 ++++++++++
>>> 6 files changed, 31 insertions(+)
>>> create mode 100644 generic/include/clc/math/exp10.h
>>> create mode 100644 generic/include/clc/math/native_exp10.h
>>> create mode 100644 generic/lib/math/exp10.cl
>>> create mode 100644 generic/lib/math/exp10.inc
>>> 
>>> diff --git a/generic/include/clc/clc.h b/generic/include/clc/clc.h
>>> index f8c1853..a4859fc 100644
>>> --- a/generic/include/clc/clc.h
>>> +++ b/generic/include/clc/clc.h
>>> @@ -35,6 +35,7 @@
>>> #include <clc/math/cos.h>
>>> #include <clc/math/ceil.h>
>>> #include <clc/math/exp.h>
>>> +#include <clc/math/exp10.h>
>>> #include <clc/math/exp2.h>
>>> #include <clc/math/fabs.h>
>>> #include <clc/math/floor.h>
>>> @@ -56,6 +57,7 @@
>>> #include <clc/math/native_cos.h>
>>> #include <clc/math/native_divide.h>
>>> #include <clc/math/native_exp.h>
>>> +#include <clc/math/native_exp10.h>
>>> #include <clc/math/native_exp2.h>
>>> #include <clc/math/native_log.h>
>>> #include <clc/math/native_log2.h>
>>> diff --git a/generic/include/clc/math/exp10.h b/generic/include/clc/math/exp10.h
>>> new file mode 100644
>>> index 0000000..a1d426a
>>> --- /dev/null
>>> +++ b/generic/include/clc/math/exp10.h
>>> @@ -0,0 +1,9 @@
>>> +#undef exp10
>>> +
>>> +#define __CLC_BODY <clc/math/unary_decl.inc>
>>> +#define __CLC_FUNCTION exp10
>>> +
>>> +#include <clc/math/gentype.inc>
>>> +
>>> +#undef __CLC_BODY
>>> +#undef __CLC_FUNCTION
>>> diff --git a/generic/include/clc/math/native_exp10.h b/generic/include/clc/math/native_exp10.h
>>> new file mode 100644
>>> index 0000000..1156f58
>>> --- /dev/null
>>> +++ b/generic/include/clc/math/native_exp10.h
>>> @@ -0,0 +1 @@
>>> +#define native_exp10 exp10
>>> diff --git a/generic/lib/SOURCES b/generic/lib/SOURCES
>>> index a35542c..7dbcf2e 100644
>>> --- a/generic/lib/SOURCES
>>> +++ b/generic/lib/SOURCES
>>> @@ -28,6 +28,7 @@ integer/sub_sat_if.ll
>>> integer/sub_sat_impl.ll
>>> integer/upsample.cl
>>> math/exp.cl
>>> +math/exp10.cl
>>> math/fmax.cl
>>> math/fmin.cl
>>> math/hypot.cl
>>> diff --git a/generic/lib/math/exp10.cl b/generic/lib/math/exp10.cl
>>> new file mode 100644
>>> index 0000000..c8039cb
>>> --- /dev/null
>>> +++ b/generic/lib/math/exp10.cl
>>> @@ -0,0 +1,8 @@
>>> +#include <clc/clc.h>
>>> +
>>> +#ifdef cl_khr_fp64
>>> +#pragma OPENCL EXTENSION cl_khr_fp64 : enable
>>> +#endif
>>> +
>>> +#define __CLC_BODY <exp10.inc>
>>> +#include <clc/math/gentype.inc>
>>> diff --git a/generic/lib/math/exp10.inc b/generic/lib/math/exp10.inc
>>> new file mode 100644
>>> index 0000000..a592c19
>>> --- /dev/null
>>> +++ b/generic/lib/math/exp10.inc
>>> @@ -0,0 +1,10 @@
>>> +_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE exp10(__CLC_GENTYPE val) {
>>> +  // exp10(x) = exp2(x * log2(10))
>>> +#if __CLC_FPSIZE == 32
>>> +  return exp2(val * log2(10.0f));
>>> +#elif __CLC_FPSIZE == 64
>>> +  return exp2(val * log2(10.0));
>>> +#else
>>> +#error unknown _CLC_FPSIZE
>>> +#endif
>>> +}
>>> -- 
>>> 1.8.5.2 (Apple Git-48)
>>> 
>> 
>> 
>> _______________________________________________
>> Libclc-dev mailing list
>> Libclc-dev at pcc.me.uk
>> http://www.pcc.me.uk/cgi-bin/mailman/listinfo/libclc-dev





More information about the Libclc-dev mailing list