fix: store image arg size in kernel descriptor

- use arg size when patching bindless offset

Related-To: HSD-18042502539

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
This commit is contained in:
Mateusz Hoppe
2025-06-20 16:16:51 +00:00
committed by Compute-Runtime-Automation
parent e3fecb932a
commit b7580a3998
5 changed files with 5 additions and 2 deletions

View File

@@ -1320,6 +1320,7 @@ DecodeError populateKernelPayloadArgument(NEO::KernelDescriptor &dst, const Kern
dst.kernelAttributes.numArgsStateful++;
} else if (dst.payloadMappings.explicitArgs[src.argIndex].is<NEO::ArgDescriptor::argTImage>()) {
dst.payloadMappings.explicitArgs[src.argIndex].as<ArgDescImage>(false).bindless = src.offset;
dst.payloadMappings.explicitArgs[src.argIndex].as<ArgDescImage>(false).size = src.size;
dst.kernelAttributes.numArgsStateful++;
} else {
dst.payloadMappings.explicitArgs[src.argIndex].as<ArgDescSampler>(false).bindless = src.offset;

View File

@@ -105,6 +105,7 @@ struct ArgDescImage final {
CrossThreadDataOffset flatPitch = undefined<CrossThreadDataOffset>;
} metadataPayload;
NEOImageType imageType;
uint8_t size = undefined<uint8_t>;
};
struct ArgDescSampler final {