Hello community,

here is the log from the commit of package libclc for openSUSE:Factory checked 
in at 2018-01-01 22:04:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libclc (Old)
 and      /work/SRC/openSUSE:Factory/.libclc.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libclc"

Mon Jan  1 22:04:24 2018 rev:8 rq:559673 version:0.2.0+git.20171127

Changes:
--------
--- /work/SRC/openSUSE:Factory/libclc/libclc.changes    2017-11-14 
14:09:27.316616843 +0100
+++ /work/SRC/openSUSE:Factory/.libclc.new/libclc.changes       2018-01-01 
22:04:35.485802428 +0100
@@ -1,0 +2,24 @@
+Sat Dec 23 08:24:44 UTC 2017 - [email protected]
+
+- Update to version 0.2.0+git.20171127:
+  * configure.py: Add gfx900 (Vega, Raven)
+  * math: Implement minmag
+  * math: Implement maxmag
+  * native_powr: Switch implementation to native_exp2 and native_log2
+  * native_divide: provide function implementation instead of macro
+  * native_recip: provide function implementation instead of macro
+  * native_rsqrt: Switch implementation to 1 / native_sqrt
+  * native_tan: Switch implementation to use native_sin/native_cos
+  * math: Use precomputed constant for log2(10.0)
+  * native_exp10: Switch implementation to llvm intrinsic
+  * native_sqrt: Switch implementation to llvm intrinsic
+  * native_sin: Switch implementation to llvm intrinsic
+  * native_cos: Switch implementation to llvm intrinsic
+  * native_exp2: Switch implementation to llvm intrinsic
+  * native_exp: Switch implementation to llvm intrinsic
+  * amdgpu: Add workaround for unimplemented llvm.exp intrinsic
+  * native_log10: Switch to generic native intrinsic inc file
+  * native_log: Switch to generic native intrinsic inc file
+  * native_log2: Switch to generic native intrinsic inc file
+
+-------------------------------------------------------------------

Old:
----
  libclc-0.2.0+git.20171102.tar.xz

New:
----
  libclc-0.2.0+git.20171127.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libclc.spec ++++++
--- /var/tmp/diff_new_pack.tI2tdz/_old  2018-01-01 22:04:36.029620695 +0100
+++ /var/tmp/diff_new_pack.tI2tdz/_new  2018-01-01 22:04:36.033619359 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           libclc
-Version:        0.2.0+git.20171102
+Version:        0.2.0+git.20171127
 Release:        0
 Summary:        OpenCL C programming language library
 License:        BSD-3-Clause OR MIT

++++++ _service ++++++
--- /var/tmp/diff_new_pack.tI2tdz/_old  2018-01-01 22:04:36.069607332 +0100
+++ /var/tmp/diff_new_pack.tI2tdz/_new  2018-01-01 22:04:36.069607332 +0100
@@ -4,7 +4,6 @@
     <param name="url">https://github.com/llvm-mirror/libclc.git</param>
     <param name="submodules">enable</param>
     <param name="changesgenerate">enable</param>
-    <param name="revision">f07a10170a91a461e5ea1579ccb025526a372b7a</param>
     <param name="versionformat">0.2.0+git.%cd</param>
   </service>
   <service name="recompress" mode="disabled">

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.tI2tdz/_old  2018-01-01 22:04:36.093599315 +0100
+++ /var/tmp/diff_new_pack.tI2tdz/_new  2018-01-01 22:04:36.093599315 +0100
@@ -1,6 +1,6 @@
 <servicedata>
   <service name="tar_scm">
     <param name="url">https://github.com/llvm-mirror/libclc.git</param>
-    <param 
name="changesrevision">f07a10170a91a461e5ea1579ccb025526a372b7a</param>
+    <param 
name="changesrevision">d6384415ab854c68777dd77451aa2bc0d959da99</param>
   </service>
 </servicedata>
\ No newline at end of file

++++++ libclc-0.2.0+git.20171102.tar.xz -> libclc-0.2.0+git.20171127.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libclc-0.2.0+git.20171102/amdgpu/lib/SOURCES 
new/libclc-0.2.0+git.20171127/amdgpu/lib/SOURCES
--- old/libclc-0.2.0+git.20171102/amdgpu/lib/SOURCES    2017-11-02 
20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/amdgpu/lib/SOURCES    2017-11-27 
12:14:06.000000000 +0100
@@ -1,3 +1,4 @@
+math/native_exp.cl
 math/native_log.cl
 math/native_log10.cl
 math/nextafter.cl
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/amdgpu/lib/math/native_exp.cl 
new/libclc-0.2.0+git.20171127/amdgpu/lib/math/native_exp.cl
--- old/libclc-0.2.0+git.20171102/amdgpu/lib/math/native_exp.cl 1970-01-01 
01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/amdgpu/lib/math/native_exp.cl 2017-11-27 
12:14:06.000000000 +0100
@@ -0,0 +1,5 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <native_exp.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/amdgpu/lib/math/native_exp.inc 
new/libclc-0.2.0+git.20171127/amdgpu/lib/math/native_exp.inc
--- old/libclc-0.2.0+git.20171102/amdgpu/lib/math/native_exp.inc        
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/amdgpu/lib/math/native_exp.inc        
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,3 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_exp(__CLC_GENTYPE val) {
+  return native_exp2(val * M_LOG2E_F);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libclc-0.2.0+git.20171102/configure.py 
new/libclc-0.2.0+git.20171127/configure.py
--- old/libclc-0.2.0+git.20171102/configure.py  2017-11-02 20:49:00.000000000 
+0100
+++ new/libclc-0.2.0+git.20171127/configure.py  2017-11-27 12:14:06.000000000 
+0100
@@ -100,9 +100,9 @@
                 {'gpu' : 'barts',   'aliases' : ['turks', 'caicos'] },
                 {'gpu' : 'cayman',  'aliases' : ['aruba']} ]},
   'amdgcn--': { 'devices' :
-                [{'gpu' : 'tahiti', 'aliases' : ['pitcairn', 'verde', 'oland', 
'hainan', 'bonaire', 'kabini', 'kaveri', 
'hawaii','mullins','tonga','carrizo','iceland','fiji','stoney','polaris10','polaris11']}
 ]},
+                [{'gpu' : 'tahiti', 'aliases' : ['pitcairn', 'verde', 'oland', 
'hainan', 'bonaire', 'kabini', 'kaveri', 'hawaii', 'mullins', 'tonga', 
'iceland', 'carrizo', 'fiji', 'stoney', 'polaris10', 'polaris11', 'gfx900']} ]},
   'amdgcn--amdhsa': { 'devices' :
-                      [{'gpu' : '', 'aliases' : ['bonaire', 'hawaii', 
'kabini', 'kaveri', 'mullins', 'carrizo', 'stoney', 'fiji', 'iceland', 
'tonga','polaris10','polaris11']} ]},
+                      [{'gpu' : '', 'aliases' : ['bonaire', 'kabini', 
'kaveri', 'hawaii', 'mullins', 'tonga', 'iceland', 'carrizo', 'fiji', 'stoney', 
'polaris10', 'polaris11', 'gfx900']} ]},
   'nvptx--'   : { 'devices' : [{'gpu' : '', 'aliases' : []} ]},
   'nvptx64--' : { 'devices' : [{'gpu' : '', 'aliases' : []} ]},
   'nvptx--nvidiacl'   : { 'devices' : [{'gpu' : '', 'aliases' : []} ]},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libclc-0.2.0+git.20171102/generic/include/clc/clc.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/clc.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/clc.h     2017-11-02 
20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/clc.h     2017-11-27 
12:14:06.000000000 +0100
@@ -83,6 +83,8 @@
 #include <clc/math/log2.h>
 #include <clc/math/logb.h>
 #include <clc/math/mad.h>
+#include <clc/math/maxmag.h>
+#include <clc/math/minmag.h>
 #include <clc/math/modf.h>
 #include <clc/math/nextafter.h>
 #include <clc/math/pow.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/float/definitions.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/float/definitions.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/float/definitions.h       
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/float/definitions.h       
2017-11-27 12:14:06.000000000 +0100
@@ -31,6 +31,10 @@
 #define M_SQRT2_F       0x1.6a09e6p+0f
 #define M_SQRT1_2_F     0x1.6a09e6p-1f
 
+#ifdef __CLC_INTERNAL
+#define M_LOG210_F      0x1.a934f0p+1f
+#endif
+
 #ifdef cl_khr_fp64
 
 #define HUGE_VAL        __builtin_huge_val()
@@ -59,6 +63,10 @@
 #define M_SQRT2         0x1.6a09e667f3bcdp+0
 #define M_SQRT1_2       0x1.6a09e667f3bcdp-1
 
+#ifdef __CLC_INTERNAL
+#define M_LOG210       0x1.a934f0979a371p+1
+#endif
+
 #endif
 
 #ifdef cl_khr_fp16
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/binary_decl_tt.inc 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/binary_decl_tt.inc
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/binary_decl_tt.inc   
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/binary_decl_tt.inc   
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1 @@
+_CLC_OVERLOAD _CLC_DECL __CLC_GENTYPE __CLC_FUNCTION(__CLC_GENTYPE a, 
__CLC_GENTYPE b);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/maxmag.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/maxmag.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/maxmag.h     
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/maxmag.h     
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,7 @@
+#define __CLC_BODY <clc/math/binary_decl_tt.inc>
+#define __CLC_FUNCTION maxmag
+
+#include <clc/math/gentype.inc>
+
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/minmag.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/minmag.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/minmag.h     
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/minmag.h     
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,7 @@
+#define __CLC_BODY <clc/math/binary_decl_tt.inc>
+#define __CLC_FUNCTION minmag
+
+#include <clc/math/gentype.inc>
+
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_cos.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_cos.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_cos.h 
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_cos.h 
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,9 @@
-#define native_cos cos
+#define __CLC_BODY <clc/math/unary_decl.inc>
+#define __CLC_FUNCTION native_cos
+#define __FLOAT_ONLY
+
+#include <clc/math/gentype.inc>
+
+#undef __FLOAT_ONLY
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_divide.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_divide.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_divide.h      
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_divide.h      
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,7 @@
-#define native_divide(x, y) ((x) / (y))
+#define __CLC_BODY <clc/math/binary_decl_tt.inc>
+#define __CLC_FUNCTION native_divide
+
+#include <clc/math/gentype.inc>
+
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_exp.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_exp.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_exp.h 
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_exp.h 
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,9 @@
-#define native_exp exp
+#define __CLC_BODY <clc/math/unary_decl.inc>
+#define __CLC_FUNCTION native_exp
+#define __FLOAT_ONLY
+
+#include <clc/math/gentype.inc>
+
+#undef __FLOAT_ONLY
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_exp10.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_exp10.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_exp10.h       
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_exp10.h       
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,9 @@
-#define native_exp10 exp10
+#define __CLC_BODY <clc/math/unary_decl.inc>
+#define __CLC_FUNCTION native_exp10
+#define __FLOAT_ONLY
+
+#include <clc/math/gentype.inc>
+
+#undef __FLOAT_ONLY
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_exp2.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_exp2.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_exp2.h        
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_exp2.h        
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,9 @@
-#define native_exp2 exp2
+#define __CLC_BODY <clc/math/unary_decl.inc>
+#define __CLC_FUNCTION native_exp2
+#define __FLOAT_ONLY
+
+#include <clc/math/gentype.inc>
+
+#undef __FLOAT_ONLY
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_powr.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_powr.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_powr.h        
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_powr.h        
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,7 @@
-#define native_powr pow
+#define __CLC_BODY <clc/math/binary_decl_tt.inc>
+#define __CLC_FUNCTION native_powr
+
+#include <clc/math/gentype.inc>
+
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_recip.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_recip.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_recip.h       
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_recip.h       
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,9 @@
-#define native_recip(x) ((1) / (x))
+#define __CLC_BODY <clc/math/unary_decl.inc>
+#define __CLC_FUNCTION native_recip
+#define __FLOAT_ONLY
+
+#include <clc/math/gentype.inc>
+
+#undef __FLOAT_ONLY
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_rsqrt.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_rsqrt.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_rsqrt.h       
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_rsqrt.h       
2017-11-27 12:14:06.000000000 +0100
@@ -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 -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_sin.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_sin.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_sin.h 
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_sin.h 
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,9 @@
-#define native_sin sin
+#define __CLC_BODY <clc/math/unary_decl.inc>
+#define __CLC_FUNCTION native_sin
+#define __FLOAT_ONLY
+
+#include <clc/math/gentype.inc>
+
+#undef __FLOAT_ONLY
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_sqrt.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_sqrt.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_sqrt.h        
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_sqrt.h        
2017-11-27 12:14:06.000000000 +0100
@@ -1 +1,9 @@
-#define native_sqrt sqrt
+#define __CLC_BODY <clc/math/unary_decl.inc>
+#define __CLC_FUNCTION native_sqrt
+#define __FLOAT_ONLY
+
+#include <clc/math/gentype.inc>
+
+#undef __FLOAT_ONLY
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_tan.h 
new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_tan.h
--- old/libclc-0.2.0+git.20171102/generic/include/clc/math/native_tan.h 
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/clc/math/native_tan.h 
2017-11-27 12:14:06.000000000 +0100
@@ -1,10 +1,9 @@
-//===-- generic/include/clc/math/native_tan.h 
-----------------------------===//
+#define __CLC_BODY <clc/math/unary_decl.inc>
+#define __CLC_FUNCTION native_tan
+#define __FLOAT_ONLY
 
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is dual licensed under both the University of Illinois Open Source
-// License and the MIT license. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-#define native_tan tan
+#include <clc/math/gentype.inc>
+
+#undef __FLOAT_ONLY
+#undef __CLC_BODY
+#undef __CLC_FUNCTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libclc-0.2.0+git.20171102/generic/include/utils.h 
new/libclc-0.2.0+git.20171127/generic/include/utils.h
--- old/libclc-0.2.0+git.20171102/generic/include/utils.h       1970-01-01 
01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/include/utils.h       2017-11-27 
12:14:06.000000000 +0100
@@ -0,0 +1,10 @@
+#ifndef __CLC_UTILS_H_
+#define __CLC_UTILS_H_
+
+#define __CLC_CONCAT(x, y) x ## y
+#define __CLC_XCONCAT(x, y) __CLC_CONCAT(x, y)
+
+#define __CLC_STR(x) #x
+#define __CLC_XSTR(x) __CLC_STR(x)
+
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libclc-0.2.0+git.20171102/generic/lib/SOURCES 
new/libclc-0.2.0+git.20171127/generic/lib/SOURCES
--- old/libclc-0.2.0+git.20171102/generic/lib/SOURCES   2017-11-02 
20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/SOURCES   2017-11-27 
12:14:06.000000000 +0100
@@ -118,10 +118,23 @@
 math/log2.cl
 math/logb.cl
 math/mad.cl
+math/maxmag.cl
+math/minmag.cl
 math/modf.cl
+math/native_cos.cl
+math/native_divide.cl
+math/native_exp.cl
+math/native_exp10.cl
+math/native_exp2.cl
 math/native_log.cl
 math/native_log10.cl
 math/native_log2.cl
+math/native_powr.cl
+math/native_recip.cl
+math/native_rsqrt.cl
+math/native_sin.cl
+math/native_sqrt.cl
+math/native_tan.cl
 math/tables.cl
 math/clc_nextafter.cl
 math/nextafter.cl
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libclc-0.2.0+git.20171102/generic/lib/math/exp10.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/exp10.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/exp10.inc    2017-11-02 
20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/exp10.inc    2017-11-27 
12:14:06.000000000 +0100
@@ -1,9 +1,9 @@
 _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));
+  return exp2(val * M_LOG210_F);
 #elif __CLC_FPSIZE == 64
-  return exp2(val * log2(10.0));
+  return exp2(val * M_LOG210);
 #else
 #error unknown _CLC_FPSIZE
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libclc-0.2.0+git.20171102/generic/lib/math/maxmag.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/maxmag.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/maxmag.cl    1970-01-01 
01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/maxmag.cl    2017-11-27 
12:14:06.000000000 +0100
@@ -0,0 +1,4 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <maxmag.inc>
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/maxmag.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/maxmag.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/maxmag.inc   1970-01-01 
01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/maxmag.inc   2017-11-27 
12:14:06.000000000 +0100
@@ -0,0 +1,4 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE maxmag(__CLC_GENTYPE x, __CLC_GENTYPE y) {
+  const __CLC_GENTYPE res = select(y, x, isgreater(fabs(x), fabs(y)));
+  return select(res, fmax(x, y), isnan(x) | isnan(y) | isequal(fabs(x), 
fabs(y)));
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libclc-0.2.0+git.20171102/generic/lib/math/minmag.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/minmag.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/minmag.cl    1970-01-01 
01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/minmag.cl    2017-11-27 
12:14:06.000000000 +0100
@@ -0,0 +1,4 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <minmag.inc>
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/minmag.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/minmag.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/minmag.inc   1970-01-01 
01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/minmag.inc   2017-11-27 
12:14:06.000000000 +0100
@@ -0,0 +1,4 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE minmag(__CLC_GENTYPE x, __CLC_GENTYPE y) {
+  const __CLC_GENTYPE res = select(y, x, isless(fabs(x), fabs(y)));
+  return select(res, fmin(x, y), isnan(x) | isnan(y) | isequal(fabs(x), 
fabs(y)));
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_cos.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_cos.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_cos.cl        
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_cos.cl        
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,7 @@
+#include <clc/clc.h>
+
+#define __CLC_NATIVE_INTRINSIC cos
+
+#define __CLC_BODY <native_unary_intrinsic.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_divide.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_divide.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_divide.cl     
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_divide.cl     
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,5 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <native_divide.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_divide.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_divide.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_divide.inc    
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_divide.inc    
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,3 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_divide(__CLC_GENTYPE x, 
__CLC_GENTYPE y) {
+  return x / y;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_exp.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_exp.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_exp.cl        
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_exp.cl        
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,7 @@
+#include <clc/clc.h>
+
+#define __CLC_NATIVE_INTRINSIC exp
+
+#define __CLC_BODY <native_unary_intrinsic.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_exp10.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_exp10.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_exp10.cl      
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_exp10.cl      
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,5 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <native_exp10.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_exp10.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_exp10.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_exp10.inc     
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_exp10.inc     
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,3 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_exp10(__CLC_GENTYPE val) {
+  return native_exp2(val * M_LOG210_F);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_exp2.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_exp2.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_exp2.cl       
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_exp2.cl       
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,7 @@
+#include <clc/clc.h>
+
+#define __CLC_NATIVE_INTRINSIC exp2
+
+#define __CLC_BODY <native_unary_intrinsic.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_log.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_log.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_log.cl        
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_log.cl        
2017-11-27 12:14:06.000000000 +0100
@@ -22,11 +22,8 @@
 
 #include <clc/clc.h>
 
-#define __CLC_FUNCTION __clc_native_log
-#define __CLC_INTRINSIC "llvm.log"
-#undef cl_khr_fp64
-#include <clc/math/unary_intrin.inc>
+#define __CLC_NATIVE_INTRINSIC log
 
-#define __CLC_BODY <native_log.inc>
+#define __CLC_BODY <native_unary_intrinsic.inc>
 #define __FLOAT_ONLY
 #include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_log.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_log.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_log.inc       
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_log.inc       
1970-01-01 01:00:00.000000000 +0100
@@ -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 native_log(__CLC_GENTYPE val) {
-  return __clc_native_log(val);
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_log10.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_log10.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_log10.cl      
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_log10.cl      
2017-11-27 12:14:06.000000000 +0100
@@ -1,10 +1,7 @@
 #include <clc/clc.h>
 
-#define __CLC_FUNCTION __clc_native_log10
-#define __CLC_INTRINSIC "llvm.log10"
-#undef cl_khr_fp64
-#include <clc/math/unary_intrin.inc>
+#define __CLC_NATIVE_INTRINSIC log10
 
-#define __CLC_BODY <native_log10.inc>
+#define __CLC_BODY <native_unary_intrinsic.inc>
 #define __FLOAT_ONLY
 #include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_log10.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_log10.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_log10.inc     
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_log10.inc     
1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
-_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_log10(__CLC_GENTYPE val) {
-  return __clc_native_log10(val);
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_log2.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_log2.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_log2.cl       
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_log2.cl       
2017-11-27 12:14:06.000000000 +0100
@@ -22,11 +22,7 @@
 
 #include <clc/clc.h>
 
-#define __CLC_FUNCTION __clc_native_log2
-#define __CLC_INTRINSIC "llvm.log2"
-#undef cl_khr_fp64
-#include <clc/math/unary_intrin.inc>
-
-#define __CLC_BODY <native_log2.inc>
+#define __CLC_NATIVE_INTRINSIC log2
+#define __CLC_BODY <native_unary_intrinsic.inc>
 #define __FLOAT_ONLY
 #include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_log2.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_log2.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_log2.inc      
2017-11-02 20:49:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_log2.inc      
1970-01-01 01:00:00.000000000 +0100
@@ -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 native_log2(__CLC_GENTYPE val) {
-  return __clc_native_log2(val);
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_powr.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_powr.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_powr.cl       
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_powr.cl       
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,5 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <native_powr.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_powr.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_powr.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_powr.inc      
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_powr.inc      
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,5 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_powr(__CLC_GENTYPE x, 
__CLC_GENTYPE y) {
+  // x^y == 2^{log2 x^y} == 2^{y * log2 x}
+  // for x < 0 propagate nan created by log2
+  return native_exp2(y * native_log2(x));
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_recip.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_recip.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_recip.cl      
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_recip.cl      
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,5 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <native_recip.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_recip.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_recip.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_recip.inc     
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_recip.inc     
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,3 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_recip(__CLC_GENTYPE val) {
+  return 1.0f / val;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_rsqrt.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_rsqrt.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_rsqrt.cl      
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_rsqrt.cl      
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,5 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <native_rsqrt.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_rsqrt.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_rsqrt.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_rsqrt.inc     
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_rsqrt.inc     
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,3 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_rsqrt(__CLC_GENTYPE val) {
+  return 1.0f / native_sqrt(val);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_sin.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_sin.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_sin.cl        
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_sin.cl        
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,7 @@
+#include <clc/clc.h>
+
+#define __CLC_NATIVE_INTRINSIC sin
+
+#define __CLC_BODY <native_unary_intrinsic.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_sqrt.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_sqrt.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_sqrt.cl       
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_sqrt.cl       
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,7 @@
+#include <clc/clc.h>
+
+#define __CLC_NATIVE_INTRINSIC sqrt
+
+#define __CLC_BODY <native_unary_intrinsic.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_tan.cl 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_tan.cl
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_tan.cl        
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_tan.cl        
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,5 @@
+#include <clc/clc.h>
+
+#define __CLC_BODY <native_tan.inc>
+#define __FLOAT_ONLY
+#include <clc/math/gentype.inc>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_tan.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_tan.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_tan.inc       
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_tan.inc       
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,3 @@
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE native_tan(__CLC_GENTYPE val) {
+  return native_sin(val) / native_cos(val);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libclc-0.2.0+git.20171102/generic/lib/math/native_unary_intrinsic.inc 
new/libclc-0.2.0+git.20171127/generic/lib/math/native_unary_intrinsic.inc
--- old/libclc-0.2.0+git.20171102/generic/lib/math/native_unary_intrinsic.inc   
1970-01-01 01:00:00.000000000 +0100
+++ new/libclc-0.2.0+git.20171127/generic/lib/math/native_unary_intrinsic.inc   
2017-11-27 12:14:06.000000000 +0100
@@ -0,0 +1,40 @@
+/*
+ * 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 <utils.h>
+
+#ifdef __CLC_SCALAR
+#define __CLC_FUNCTION __CLC_XCONCAT(__clc_native_, __CLC_NATIVE_INTRINSIC)
+#define __CLC_INTRINSIC "llvm." __CLC_XSTR(__CLC_NATIVE_INTRINSIC)
+
+#undef cl_khr_fp64
+#include <clc/math/unary_intrin.inc>
+
+#endif
+
+#define __CLC_FUNCTION __CLC_XCONCAT(native_, __CLC_NATIVE_INTRINSIC)
+
+_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __CLC_FUNCTION(__CLC_GENTYPE val) {
+  return __CLC_XCONCAT(__clc_native_, __CLC_NATIVE_INTRINSIC)(val);
+}
+
+#undef __CLC_FUNCTION


Reply via email to