Skip to content

Commit 1178193

Browse files
committed
Update adapters to reflect the spec change.
1 parent 226dfa7 commit 1178193

File tree

2 files changed

+3
-6
lines changed

2 files changed

+3
-6
lines changed

source/adapters/cuda/kernel.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,8 @@ urKernelSetArgPointer(ur_kernel_handle_t hKernel, uint32_t argIndex,
282282
const ur_kernel_arg_pointer_properties_t *pProperties,
283283
const void *pArgValue) {
284284
std::ignore = pProperties;
285-
hKernel->setKernelArg(argIndex, sizeof(pArgValue), pArgValue);
285+
// setKernelArg is expecting a pointer to our argument
286+
hKernel->setKernelArg(argIndex, sizeof(pArgValue), &pArgValue);
286287
return UR_RESULT_SUCCESS;
287288
}
288289

source/adapters/opencl/kernel.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -358,13 +358,9 @@ UR_APIEXPORT ur_result_t UR_APICALL urKernelSetArgPointer(
358358
cl_ext::SetKernelArgMemPointerName, &FuncPtr));
359359

360360
if (FuncPtr) {
361-
/* OpenCL passes pointers by value not by reference. This means we need to
362-
* deref the arg to get the pointer value */
363-
auto PtrToPtr = reinterpret_cast<const intptr_t *>(pArgValue);
364-
auto DerefPtr = reinterpret_cast<void *>(*PtrToPtr);
365361
CL_RETURN_ON_FAILURE(FuncPtr(cl_adapter::cast<cl_kernel>(hKernel),
366362
cl_adapter::cast<cl_uint>(argIndex),
367-
DerefPtr));
363+
pArgValue));
368364
}
369365

370366
return UR_RESULT_SUCCESS;

0 commit comments

Comments
 (0)