46d3b81e18
SWDEV-79695 - HSAIL Metadata Workgroup Size Hint and Vec Type Hint added to HSAIL
HSAIL does not handle kernel attributes for work_group_size_hint or vec_type_hint.
Adding these two kernel attributes to metadata requires multiple changes:
HSAIL: Added parsing functions to HSAILParseMetadata.cpp, and similar files
Properly translates to .hsail files as 'wsh' and 'vth'
MDParser: Flex scanner now reads new hsail metadata, 'wsh' and 'vth'
Acl_metadata: added the two new metadata
Uint32_t wsh[3]; // Added case: RT_WORK_GROUP_SIZE_HINT
Char *vth; // Added case: RT_VEC_TYPE_HINT
Since vth is std::string, it was required to serialize, and then de-serialize for aclMetadata
TODO: Runtime changes required for the use of these two metadata:
Runtime's gpukernel.cpp requires 4 new aclQueries during HSAILKernel::Init
Runtime changes are showing issues when testing
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#79 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDInterface.h#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDParser.l#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDTypes.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/lex.yy.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/metadata.cpp#10 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#24 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#19 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernel.h#13 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#38 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILModuleInfo.cpp#16 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILParseMetadata.cpp#14 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLAssumptionCheck.cpp#45 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#49 edit
[ROCm/clr commit: 86b7046dde]