Don't know if kernels will be initialized in the order needed to check
for indirect accesses in stack calls.
Remove now unused functionPointerWithIndirectAccessExists and reading
this value from zebin.
Related-To: NEO-12235
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
Current implementation only takes static slmInlineSize into account.
With this change we also include dynamic SLM passed as a kernel arguments.
Related-To: NEO-5761
Signed-off-by: Fabian Zwoliński <fabian.zwolinski@intel.com>
Update to use igc indirect detection v3. Fix for not detecting indirects
passed as implicit arguments.
Related-To: NEO-11396
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
rename private scratch space into scratch space slot 1 as it can be generic
Related-To: NEO-9944
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
rename private scratch space into scratch space slot 1 as it can be generic
Related-To: NEO-9944
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
Read indirect_stateless_count in module external functions.
If greater than 0, mark all kernels that have the has_stack_calls flag
set from this module as having indirect accesses.
Related-To: NEO-7712
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
Read indirect detection version intel compat notes from zebin.
This is to prepare for enabling indirect access optimization in AOT
built kernels.
Related-To: NEO-7712
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
Adds a per-kernel and per-device query to determine the
number of GRF registers that a kernel was compiled for.
This is an informal query for now, but may be added to
a formally supported extension in the future.
Related-To: NEO-9807
Signed-off-by: Ben Ashbaugh <ben.ashbaugh@intel.com>
Enabling on pvc after patch in igc.
Enabling only for JIT kernels because AOT could have been compiled with
IGC older than required.
Related-To: NEO-7712
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
- also use helper when checking that is simd1 to have same flow
Related-To: NEO-8087
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
- use calculateNumThreadsPerThreadGroup instead of getThreadsPerWG to
have same flow and proper values of threads per work groups
Related-To: NEO-8087
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
- use calculateNumThreadsPerThreadGroup instead of getThreadsPerWG to
have same flow and proper values of threads per work groups
Related-To: NEO-8087
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
- getGlobalBindlessHeapConfiguration() should be used to choose global
alloctor for SSH
- remove not needed and incorrect unit tests
- remove not needed branches
- bindless mode controls bindless compilation only
Related-To: NEO-7063
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
Change DEBUG_BREAK to UNRECOVERABLE macro in the case of offset greater
than 32 bit (4 GB). Such huge offsets are not supported.
Current implementation is able to hide issues leading to incorrect
behaviour (i.e. overwritting indirect data).
Related-To: NEO-7970
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>