* Moved zebin related files to zebin directory.
* Moved zebin related code to Zebin namespace.
* Separated zeInfo from zebin elf.
* Seperated zeInfo decoding from zebin decoder.
* Refactored populateKernelPayloadArgument function.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
This commit adds support for parsing SHT_NOBITS zebin's ELF sections
(containing global/constant zero-initialized data).
- Correction: in CTNI path, do not add related symbol if surface has not
been allocated.
Related-To: NEO-7196
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Confirm the allocations used in an appendMemoryCopy operation
belong to the same context as the list.
Related-To: LOCI-1996
Resolves: NEO-6162
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
Confirm the allocations used in an appendMemoryCopy operation
belong to the same context as the list.
Related-To: LOCI-1996
Resolves: NEO-6162
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
This change replaces mechanism of patching global constants and
variables in kernel per relocation to patching them only once. This
would improve linking time performance for kernels with multiple global
symbols.
Signed-off-by: Luzynski, Sebastian Jozef <sebastian.jozef.luzynski@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>
On pre-Gen12 platform we use igfxdcd kernel module for debugging, which
does not support zebinary format.
- When platform is pre-Gen12 an and debugger is
attached, if binary format is zebin and it's not a builtin:
- If SPIR-V is available - force rebuild with zebin disabled
- Otherwise, return an error.
- Minor refactor: extend check for ir presence for each case of
rebuilt in OCL.
Related-To: NEO-7328
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Instead of just returning proper error code in case of exceeding
available Shared Local Memory size we also want to print error message
to make debugging easier.
Related-To: NEO-7280
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
With this change, module's data sections will be allocated in USM device
pool instead of SVM or USM shared.
Signed-off-by: Luzynski, Sebastian Jozef <sebastian.jozef.luzynski@intel.com>
Remove code duplication. Parsing zebin elf for relocations and symbols
is moved to decodeSingleDeviceBinary.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
With this change, module's data sections will be allocated in USM device pool
instead of SVM or USM shared.
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
Generated instructions writing to printf buffer require destination
address to be DWORD aligned. Because of that values of type BYTE (1B)
and SHORT (2B) need to be written as 4B value.
This change adds support for this. When trying to read value of type
BYTE or SHORT four bytes are actually read to be aligned with compiler
implementation.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>