This commit adds support for querying global pointers via decorated
names passed in zeInfo.
Related-To: NEO-6734
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
This commit fixes generating localIDs in zebin.
With thix fix, Emit Local in compute walker will be set accordingly with
the size of local_id argtype (currently, Emit Local is set to Emit None,
which prevents generating local IDs).
Related-To: NEO-6089
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
This commit fixes generating localIDs in zebin.
With thix fix, Emit Local in compute walker will be set accordingly with
the size of local_id argtype (currently, Emit Local is set to Emit None,
which prevents generating local IDs).
Related-To: NEO-6089
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
This commit fixes setting usesStringMap flag for printf, taking into
account using indirect functions in legacy (non-zebinary) path. It also
adds new field to kernelDescriptor, specifying the binary type
(legacy/zebin).
Related-To: NEO-6604
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
This change prevents embedding identical SPIR-V section for each
target requested in fatbinary build. Instead of duplicating SPIR-V,
a new file called 'generic_ir' is added to AR archive. It contains
SPIR-V, which was used to build fatbinary. Build fallback in runtime
has been also adjusted - if 'generic_ir' file is defined in fatbinary
and there is no matching binary, then this generic SPIR-V is used to
rebuild for the requested target.
Additionally, MockOclocArgumentHelper::loadDataFromFile() was adjusted
to ensure null-termination of returned strings.
This change also removes possible undefined behavior, which was
related to reading names of files from AR archive. Previously,
if filename was shorter than requested target name, we tried to
read more memory than allowed.
Related-To: NEO-6490
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
- ELF type is EXEC
- Absolute GPU addresses in program headers as load addresses
- All relocations are applied (not only for debug info as before)
- Default section alignment for debug zebin is set to 4,
this fix the problem with .notes section parsing
Related-To: NEO-5571
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
When encoding ELF binary sort program headers by
virtual addresses incrementally.
This change is needed for compatibility with GDB.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Added test checking population of Kernel Descriptor with default
execution environment values.
Sorting.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Creates copy of zebinary with program headers containing
addresses of segments and applies debug relocations.
Related-To: NEO-6071
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
Add support for decoding required work group size and work gorup walk
order dimensions in zebin.
Related-To: NEO-6088
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
* remove Fedora 31 and 32 builds
Signed-off-by: Jacek Danecki <jacek.danecki@intel.com>
* Add builds on Fedora 33 and 34
Signed-off-by: Jacek Danecki <jacek.danecki@intel.com>
* Fix build with gcc11
Signed-off-by: Jacek Danecki <jacek.danecki@intel.com>
* Remove info about EOL'd distributions
Signed-off-by: Jacek Danecki <jacek.danecki@intel.com>
* clean after build
Signed-off-by: Jacek Danecki <jacek.danecki@intel.com>
Co-authored-by: Jacek Danecki <jacek.danecki@intel.com>
Add extraction of IntelGT note section in zebin decoder.
Add target validation based on intelGT notes in zebin decoder.
Add check in unpacking (unpackSingleDeviceBinary) for e_machine,
and validate target device accordingly.
Related-To: NEO-5658
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>