P4 to Git Change 1079216 by emankov@em-hsa-amd on 2014/09/22 08:18:24
ECR #333753 - Compiler Lib/RT: Metadata related code refactor, annotation, minor fixes & additional checks + refactor if_aclQueryInfo() in order to simplify code and to avoid direct usage of aclMetadata struct members types + annotation on why we need to use deserializeCLMetadata on "serialized" (to NULL) pointers + erroneously forgotten RT_KERNEL_NAME was added to aclQueryType enum + OCLRTGetInfo, CLEnumCheck tests from ocltst oclcomplib was updated to use RT_KERNEL_NAME + testing of printf is added to OCLRTGetInfo + minor fixes and additional checks tests: pre check-in, ocltst -m oclcomplib Reviewers: Artem Tamazov, Brian Sumner, German Andryeyev Affected files ... ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#49 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#12 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#12 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#265 edit ... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#36 edit ... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/clSourceShaders.h#5 edit ... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/oclrtGetInfo.cpp#14 edit
This commit is contained in:
@@ -3612,25 +3612,26 @@ HSAILKernel::init(bool finalize)
|
||||
delete [] aclPrintfList;
|
||||
}
|
||||
|
||||
bool hasKernelEnqueue = false;
|
||||
size_t sizeOfDeviceEnqueue = sizeof(hasKernelEnqueue);
|
||||
aclMetadata md;
|
||||
md.enqueue_kernel = false;
|
||||
size_t sizeOfDeviceEnqueue = sizeof(md.enqueue_kernel);
|
||||
error = aclQueryInfo(dev().hsaCompiler(), prog().binaryElf(),
|
||||
RT_DEVICE_ENQUEUE, openClKernelName.c_str(),
|
||||
&hasKernelEnqueue, &sizeOfDeviceEnqueue);
|
||||
&md.enqueue_kernel, &sizeOfDeviceEnqueue);
|
||||
if (error != ACL_SUCCESS) {
|
||||
return false;
|
||||
}
|
||||
flags_.dynamicParallelism_ = hasKernelEnqueue;
|
||||
flags_.dynamicParallelism_ = md.enqueue_kernel;
|
||||
|
||||
int index = -1;
|
||||
size_t sizeOfIndex = sizeof(index);
|
||||
md.kernel_index = -1;
|
||||
size_t sizeOfIndex = sizeof(md.kernel_index);
|
||||
error = aclQueryInfo(dev().hsaCompiler(), prog().binaryElf(),
|
||||
RT_KERNEL_INDEX, openClKernelName.c_str(),
|
||||
&index, &sizeOfIndex);
|
||||
&md.kernel_index, &sizeOfIndex);
|
||||
if (error != ACL_SUCCESS) {
|
||||
return false;
|
||||
}
|
||||
index_ = static_cast<uint>(index);
|
||||
index_ = md.kernel_index;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user