[cfe-commits] [libclc] r157615 - in /libclc/trunk/generic: include/clc/clc.h include/clc/geometric/dot.inc lib/geometric/dot.cl

Peter Collingbourne peter at pcc.me.uk
Tue May 29 06:35:45 PDT 2012


Author: pcc
Date: Tue May 29 08:35:45 2012
New Revision: 157615

URL: http://llvm.org/viewvc/llvm-project?rev=157615&view=rev
Log:
Add missing dot.h include.

Added:
    libclc/trunk/generic/include/clc/geometric/dot.inc
Modified:
    libclc/trunk/generic/include/clc/clc.h
    libclc/trunk/generic/lib/geometric/dot.cl

Modified: libclc/trunk/generic/include/clc/clc.h
URL: http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/include/clc/clc.h?rev=157615&r1=157614&r2=157615&view=diff
==============================================================================
--- libclc/trunk/generic/include/clc/clc.h (original)
+++ libclc/trunk/generic/include/clc/clc.h Tue May 29 08:35:45 2012
@@ -59,6 +59,7 @@
 
 /* 6.11.5 Geometric Functions */
 #include <clc/geometric/cross.h>
+#include <clc/geometric/dot.h>
 #include <clc/geometric/length.h>
 #include <clc/geometric/normalize.h>
 

Added: libclc/trunk/generic/include/clc/geometric/dot.inc
URL: http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/include/clc/geometric/dot.inc?rev=157615&view=auto
==============================================================================
--- libclc/trunk/generic/include/clc/geometric/dot.inc (added)
+++ libclc/trunk/generic/include/clc/geometric/dot.inc Tue May 29 08:35:45 2012
@@ -0,0 +1 @@
+_CLC_OVERLOAD _CLC_DECL FLOAT dot(FLOATN p0, FLOATN p1);

Modified: libclc/trunk/generic/lib/geometric/dot.cl
URL: http://llvm.org/viewvc/llvm-project/libclc/trunk/generic/lib/geometric/dot.cl?rev=157615&r1=157614&r2=157615&view=diff
==============================================================================
--- libclc/trunk/generic/lib/geometric/dot.cl (original)
+++ libclc/trunk/generic/lib/geometric/dot.cl Tue May 29 08:35:45 2012
@@ -15,3 +15,25 @@
 _CLC_OVERLOAD _CLC_DEF float dot(float4 p0, float4 p1) {
   return p0.x*p1.x + p0.y*p1.y + p0.z*p1.z + p0.w*p1.w;
 }
+
+#ifdef cl_khr_fp64
+
+#pragma OPENCL EXTENSION cl_khr_fp64 : enable
+
+_CLC_OVERLOAD _CLC_DEF double dot(double p0, double p1) {
+  return p0*p1;
+}
+
+_CLC_OVERLOAD _CLC_DEF double dot(double2 p0, double2 p1) {
+  return p0.x*p1.x + p0.y*p1.y;
+}
+
+_CLC_OVERLOAD _CLC_DEF double dot(double3 p0, double3 p1) {
+  return p0.x*p1.x + p0.y*p1.y + p0.z*p1.z;
+}
+
+_CLC_OVERLOAD _CLC_DEF double dot(double4 p0, double4 p1) {
+  return p0.x*p1.x + p0.y*p1.y + p0.z*p1.z + p0.w*p1.w;
+}
+
+#endif





More information about the cfe-commits mailing list