mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-10 07:08:04 +08:00
Adding support for get_image_num_mip_levels
* patch token decoding * crossthread data patching * additionally, fixing nasty ODR violation in VA tests (note : ODR = One Definition Rule) Change-Id: I9803ed599826c97359349d2b8fa0d86e46cb33ea
This commit is contained in:
committed by
sys_ocldev
parent
f6a9e3f6f3
commit
614b69a3bf
@@ -1235,6 +1235,7 @@ cl_int Kernel::setArgImageWithMipLevel(uint32_t argIndex,
|
||||
patch<uint32_t, cl_channel_type>(imageFormat.image_channel_data_type, crossThreadData, kernelArgInfo.offsetChannelDataType);
|
||||
patch<uint32_t, cl_channel_order>(imageFormat.image_channel_order, crossThreadData, kernelArgInfo.offsetChannelOrder);
|
||||
patch<uint32_t, uint32_t>(kernelArgInfo.offsetHeap, crossThreadData, kernelArgInfo.offsetObjectId);
|
||||
patch<uint32_t, cl_uint>(imageDesc.num_mip_levels, crossThreadData, kernelArgInfo.offsetNumMipLevels);
|
||||
|
||||
retVal = CL_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -67,6 +67,7 @@ struct KernelArgInfo {
|
||||
uint32_t offsetVmeSearchPathType = undefinedOffset;
|
||||
uint32_t offsetObjectId = undefinedOffset;
|
||||
uint32_t offsetBufferOffset = undefinedOffset;
|
||||
uint32_t offsetNumMipLevels = undefinedOffset;
|
||||
|
||||
bool needPatch = false;
|
||||
bool isTransformable = false;
|
||||
|
||||
@@ -430,6 +430,11 @@ cl_int Program::parsePatchList(KernelInfo &kernelInfo) {
|
||||
break;
|
||||
|
||||
case DATA_PARAMETER_IMAGE_NUM_MIP_LEVELS:
|
||||
DBG_LOG(LogPatchTokens, "\n .Type", "IMAGE_NUM_MIP_LEVELS");
|
||||
kernelInfo.resizeKernelArgInfoAndRegisterParameter(argNum);
|
||||
kernelInfo.kernelArgInfo[argNum].offsetNumMipLevels = pDataParameterBuffer->Offset;
|
||||
DEBUG_BREAK_IF(pDataParameterBuffer->DataSize != sizeof(uint32_t));
|
||||
break;
|
||||
case DATA_PARAMETER_IMAGE_SRGB_CHANNEL_ORDER:
|
||||
case DATA_PARAMETER_STAGE_IN_GRID_ORIGIN:
|
||||
case DATA_PARAMETER_STAGE_IN_GRID_SIZE:
|
||||
|
||||
Reference in New Issue
Block a user