venus: sync protocol for accel struct indirect build encoding fix

ppMaxPrimitiveCounts also requires the same nested dynamic array special
treatment.

Fixes: 6bac77b75c ("venus: sync protocol for ray tracing support")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33995>
This commit is contained in:
Yiwei Zhang 2025-03-11 04:54:27 +00:00 committed by Marge Bot
parent 9fb149d4fe
commit 5badd0d101
2 changed files with 9 additions and 3 deletions

View file

@ -1,4 +1,4 @@
/* This file is generated by venus-protocol git-93f2cb1d. */
/* This file is generated by venus-protocol git-3800cbae. */
/*
* Copyright 2020 Google LLC

View file

@ -8237,7 +8237,10 @@ static inline size_t vn_sizeof_vkCmdBuildAccelerationStructuresIndirectKHR(VkCom
}
if (ppMaxPrimitiveCounts) {
cmd_size += vn_sizeof_array_size(infoCount);
cmd_size += vn_sizeof_uint32_t_array(*ppMaxPrimitiveCounts, infoCount);
for (uint32_t i = 0; i < infoCount; i++) {
cmd_size += vn_sizeof_array_size((pInfos ? pInfos[i].geometryCount : 0));
cmd_size += vn_sizeof_uint32_t_array(ppMaxPrimitiveCounts[i], (pInfos ? pInfos[i].geometryCount : 0));
}
} else {
cmd_size += vn_sizeof_array_size(0);
}
@ -8275,7 +8278,10 @@ static inline void vn_encode_vkCmdBuildAccelerationStructuresIndirectKHR(struct
}
if (ppMaxPrimitiveCounts) {
vn_encode_array_size(enc, infoCount);
vn_encode_uint32_t_array(enc, *ppMaxPrimitiveCounts, infoCount);
for (uint32_t i = 0; i < infoCount; i++) {
vn_encode_array_size(enc, (pInfos ? pInfos[i].geometryCount : 0));
vn_encode_uint32_t_array(enc, ppMaxPrimitiveCounts[i], (pInfos ? pInfos[i].geometryCount : 0));
}
} else {
vn_encode_array_size(enc, 0);
}