ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/OpenCL/OpenCL.xs
(Generate patch)

Comparing OpenCL/OpenCL.xs (file contents):
Revision 1.44 by root, Mon Apr 23 13:50:12 2012 UTC vs.
Revision 1.46 by root, Tue Apr 24 12:23:56 2012 UTC

13// in addition, you cannot test for this in any future-proof way. 13// in addition, you cannot test for this in any future-proof way.
14// each time a new opencl version comes out, you need to make a new 14// each time a new opencl version comes out, you need to make a new
15// release. 15// release.
16#define CL_USE_DEPRECATED_OPENCL_1_2_APIS /* just guessing, you stupid idiots */ 16#define CL_USE_DEPRECATED_OPENCL_1_2_APIS /* just guessing, you stupid idiots */
17 17
18#ifndef PREFER_1_! 18#ifndef PREFER_1_1
19 #define PREFER_1_1 1 19 #define PREFER_1_1 1
20#endif 20#endif
21 21
22#if PREFER_1_1 22#if PREFER_1_1
23 #define CL_USE_DEPRECATED_OPENCL_1_1_APIS 23 #define CL_USE_DEPRECATED_OPENCL_1_1_APIS
1258void 1258void
1259enqueue_marker (OpenCL::Queue self, ...) 1259enqueue_marker (OpenCL::Queue self, ...)
1260 PPCODE: 1260 PPCODE:
1261 cl_event ev = 0; 1261 cl_event ev = 0;
1262 EVENT_LIST (1, items - 1); 1262 EVENT_LIST (1, items - 1);
1263#if PREFER_1_1
1263#if CL_VERSION_1_2 1264#if CL_VERSION_1_2
1265 if (event_list_count)
1264 NEED_SUCCESS (EnqueueMarkerWithWaitList, (self, event_list_count, event_list_ptr, GIMME_V != G_VOID ? &ev : 0)); 1266 NEED_SUCCESS (EnqueueMarkerWithWaitList, (self, event_list_count, event_list_ptr, GIMME_V != G_VOID ? &ev : 0));
1267 else
1268 NEED_SUCCESS (EnqueueMarker, (self, GIMME_V != G_VOID ? &ev : 0));
1265#else 1269#else
1266 if (event_list_count) 1270 if (event_list_count)
1267 croak ("OpenCL::Queue->enqueue_marker does not support a wait list in OpenCL 1.1 - upgrade to 1.2"); 1271 croak ("OpenCL::Queue->enqueue_marker does not support a wait list in OpenCL 1.1 - upgrade to 1.2");
1268 NEED_SUCCESS (EnqueueMarker, (self, GIMME_V != G_VOID ? &ev : 0)); 1272 NEED_SUCCESS (EnqueueMarker, (self, GIMME_V != G_VOID ? &ev : 0));
1269#endif 1273#endif
1274#else
1275 NEED_SUCCESS (EnqueueMarkerWithWaitList, (self, event_list_count, event_list_ptr, GIMME_V != G_VOID ? &ev : 0));
1276#endif
1270 if (ev) 1277 if (ev)
1271 XPUSH_NEW_OBJ ("OpenCL::Event", ev); 1278 XPUSH_NEW_OBJ ("OpenCL::Event", ev);
1272 1279
1273void 1280void
1274enqueue_barrier (OpenCL::Queue self, ...) 1281enqueue_barrier (OpenCL::Queue self, ...)
1275 PPCODE: 1282 PPCODE:
1276 cl_event ev = 0; 1283 cl_event ev = 0;
1277 EVENT_LIST (1, items - 1); 1284 EVENT_LIST (1, items - 1);
1285#if PREFER_1_1
1278#if CL_VERSION_1_2 1286#if CL_VERSION_1_2
1287 if (event_list_count || GIMME_V != G_VOID)
1279 NEED_SUCCESS (EnqueueBarrierWithWaitList, (self, event_list_count, event_list_ptr, &ev)); 1288 NEED_SUCCESS (EnqueueBarrierWithWaitList, (self, event_list_count, event_list_ptr, GIMME_V != G_VOID ? &ev : 0));
1289 else
1290 NEED_SUCCESS (EnqueueBarrier, (self));
1280#else 1291#else
1281 if (event_list_count) 1292 if (event_list_count)
1282 croak ("OpenCL::Queue->enqueue_barrier does not support a wait list in OpenCL 1.1 - upgrade to 1.2"); 1293 croak ("OpenCL::Queue->enqueue_barrier does not support a wait list in OpenCL 1.1 - upgrade to 1.2");
1283 if (GIMME_V != G_VOID) 1294 if (GIMME_V != G_VOID)
1284 croak ("OpenCL::Queue->enqueue_barrier does not return an event object in OpenCL 1.1 - upgrade to 1.2"); 1295 croak ("OpenCL::Queue->enqueue_barrier does not return an event object in OpenCL 1.1 - upgrade to 1.2");
1285 NEED_SUCCESS (EnqueueBarrier, (self)); 1296 NEED_SUCCESS (EnqueueBarrier, (self));
1297#endif
1298#else
1299 NEED_SUCCESS (EnqueueBarrierWithWaitList, (self, event_list_count, event_list_ptr, GIMME_V != G_VOID ? &ev : 0));
1286#endif 1300#endif
1287 if (ev) 1301 if (ev)
1288 XPUSH_NEW_OBJ ("OpenCL::Event", ev); 1302 XPUSH_NEW_OBJ ("OpenCL::Event", ev);
1289 1303
1290void 1304void

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines