P4 to Git Change 1331723 by lmoriche@lmoriche_opencl_dev on 2016/10/25 21:34:48

SWDEV-105604 - OpenCL program manager for LC on PAL
	- Set the global offsets hidden arguments.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palkernel.cpp#15 edit
这个提交包含在:
foreman
2016-10-25 21:41:52 -04:00
父节点 baf0aa9e4d
当前提交 948482f6a2
+11 -4
查看文件
@@ -1162,14 +1162,21 @@ HSAILKernel::loadArguments(
#if defined(WITH_LIGHTNING_COMPILER)
//!!!!!FIXME_lmoriche: fix the hidden args
size_t zero = 0;
WriteAqlArg(&aqlArgBuf, &zero, sizeof(zero));
WriteAqlArg(&aqlArgBuf, &zero, sizeof(zero));
WriteAqlArg(&aqlArgBuf, &zero, sizeof(zero));
size_t extraArgs[] = { 0, 0, 0, 0 };
// The HLC generates up to 3 additional arguments for the global offsets
for (uint i = 0; i < sizes.dimensions(); ++i) {
extraArgs[i] = sizes.offset()[i];
}
WriteAqlArg(&aqlArgBuf, &extraArgs[0], sizeof(size_t));
WriteAqlArg(&aqlArgBuf, &extraArgs[1], sizeof(size_t));
WriteAqlArg(&aqlArgBuf, &extraArgs[2], sizeof(size_t));
WriteAqlArg(&aqlArgBuf, &extraArgs[3], sizeof(size_t));
#endif // defined(WITH_LIGHTNING_COMPILER)
#if !defined(WITH_LIGHTNING_COMPILER)
// HSAIL kernarg segment size is rounded up to multiple of 16.
aqlArgBuf = amd::alignUp(aqlArgBuf, 16);
#endif // !defined(WITH_LIGHTNING_COMPILER)
assert((aqlArgBuf == (gpu.cb(0)->sysMemCopy() + argsBufferSize())) &&
"Size and the number of arguments don't match!");
hsa_kernel_dispatch_packet_t* hsaDisp =