Skip to content

Commit 68290c0

Browse files
committed
JavaCL: un-deprecated + fixed CLContext.getKernelsDefaultByteOrder() ; return CLUserEvent from CLContext.createUserEvent();
1 parent 851d965 commit 68290c0

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

Core/src/main/velocity/com/nativelibs4java/opencl/CLContext.java

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -146,12 +146,12 @@ else if ("false".equals(prop) || "0".equals(env))
146146
* User events allow applications to enqueue commands that wait on a user event to finish before the command is executed by the device.
147147
* @since OpenCL 1.1
148148
*/
149-
public CLEvent createUserEvent() {
149+
public CLUserEvent createUserEvent() {
150150
try {
151151
#declareReusablePtrsAndPErr()
152152
long evt = CL.clCreateUserEvent(getEntity(), getPeer(pErr));
153153
#checkPErr()
154-
return CLEvent.createEvent(null, evt, true);
154+
return (CLUserEvent)CLEvent.createEvent(null, evt, true);
155155
} catch (Throwable th) {
156156
// TODO throw if supposed to handle OpenCL 1.1
157157
return null;
@@ -683,15 +683,21 @@ private <T> CLBuffer<T> createBuffer(PointerIO<T> io, Pointer<T> data, long byte
683683
return new CLBuffer<T>(this, byteCount, mem, retainBufferReference ? data : null, io);
684684
}
685685

686-
/**
687-
* @deprecated Use {@link CLContext#getByteOrder()}
688-
*/
689-
@Deprecated
690686
public ByteOrder getKernelsDefaultByteOrder() {
691-
return getByteOrder();
687+
if (kernelsDefaultByteOrder == null) {
688+
ByteOrder order = null;
689+
for (CLDevice device : getDevices()) {
690+
ByteOrder devOrder = device.getKernelsDefaultByteOrder();
691+
if (order != null && devOrder != order)
692+
return null;
693+
order = devOrder;
694+
}
695+
kernelsDefaultByteOrder = order;
696+
}
697+
return kernelsDefaultByteOrder;
692698
}
693699

694-
private volatile ByteOrder byteOrder;
700+
private volatile ByteOrder byteOrder, kernelsDefaultByteOrder;
695701

696702
/**
697703
* Get the endianness common to all devices of this context, or null if the devices have mismatching endiannesses.

0 commit comments

Comments
 (0)