Provide minimalistic arg info metada when provided native binary is missing
kernels_misc_info section.
- For args passed by value and by pointer (-images/samplers), do not
specify type name - instead, return an opaque* type name with size.
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Add support for kernel payload arguments describing data const and
data global buffers in zeInfo.
Argument contains:
* Offset in cross thread data where buffer's address should be written to.
To be removed later. Relocations should be used instead.
* Index in binding table where corresponding Surface State should be present.
Required for bindful access to data buffers.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Previous implementation was missing crucial part.
When ray tracing global buffer argument is passed set
hasRTCalls to true.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Handle misaligned access when aplying debug relocations in zebin.
Debug relocations entries have offsets which are not of natural
alignment, and need to be specificialy handled.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Add support in zeInfo for "is_ptr" payload argument describing if field
of structure (argument passed by value) is a pointer.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Read intel_reqd_sub_group_size attribute and return it for
CL_KERNEL_COMPILE_SUB_GROUP_SIZE_INTEL getSubgroupInfo.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Pipe qualifier must be set (known) on kernel initialization in order
to properly chose kernel arg handler. A new attribute is_pipe has been
introduced; this commit adds support for it.
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Fix given scenarios in yaml parsings:
- Correct reading string containing multiple words separated by a
whitespace (space/tab) on token value retrieving
- Remove any unnecessary whitespaces from the end of a string on token
value retrieving
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
OpenCL expects args type names without additional information (type size).
- Use only the part up to the delimiter, without quotes
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
- Set initial value for ArgIndexT index in
KernelArgMiscInfoT struct
- Add check for arg index in extended metadata in order to avoid OOB
accesses
- Fix missing: populating ArgTypeTraits + refactor ULTs in order to
check it
- Add missing ULTs for Program::callPopulateZebinExtendedArgsMetadataOnce
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
This commit adds support for retrieving extended args metadata passed in
.kernel_misc_info zeInfo's section on clGetKernelArgInfo call.
Related-To: NEO-7372
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
This commit adds support for parsing new .kernel_arg_metadata zeInfo's section,
which will be parsed only on demand (it won't get parsed on initial
zeInfo parsing).
Usage of populated structs will be added in the next commit.
Implemented section's parsing, decoding & populating corresponding fields in
kernelDescriptor.
Related-To: NEO-7372
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Add support for newly added indirect statelss count check;
populate related field in kernelInfo.
- Move hasIndirectStatelessAccess check from KernelInfo to
KernelDescriptor.
Related-To: NEO-7428
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Add support for inline samplers in zebin.
Generate required SAMPLER_STATEs in DSH.
Resolves: NEO-7388
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Current implementation of getIntelGTNotes function causes
segfault in case empty owner name string would be passed.
This commit removes potential out-of-bound array access.
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
This commit adds support for 32 bit zebinary in NEO runtime and in
ocloc validate.
Resolves: NEO-7288
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>