mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-04 12:50:25 +01:00
panvk: Allocate stack for each thread
Rather than a single stack for all threads to share -- that can't work! :-) We use the same helper that the GLES driver does. Fixes anything using scratch or spilling, including: dEQP-VK.glsl.indexing.varying_array.vec3_static_write_dynamic_read Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16283>
This commit is contained in:
parent
7a7403f6aa
commit
86d32eed38
2 changed files with 5 additions and 1 deletions
|
|
@ -17,6 +17,7 @@ include = [
|
|||
"dEQP-VK.glsl.builtin.precision.frexp.*",
|
||||
"dEQP-VK.glsl.builtin.precision.ldexp.*",
|
||||
"dEQP-VK.glsl.builtin_var.*",
|
||||
"dEQP-VK.glsl.indexing.varying_array.*",
|
||||
"dEQP-VK.glsl.conversions.*",
|
||||
"dEQP-VK.glsl.derivate.*.constant.*",
|
||||
"dEQP-VK.glsl.derivate.*.linear.*",
|
||||
|
|
|
|||
|
|
@ -165,8 +165,11 @@ panvk_per_arch(cmd_close_batch)(struct panvk_cmd_buffer *cmdbuf)
|
|||
}
|
||||
|
||||
if (batch->tlsinfo.tls.size) {
|
||||
unsigned size = panfrost_get_total_stack_size(batch->tlsinfo.tls.size,
|
||||
pdev->thread_tls_alloc,
|
||||
pdev->core_count);
|
||||
batch->tlsinfo.tls.ptr =
|
||||
pan_pool_alloc_aligned(&cmdbuf->tls_pool.base, batch->tlsinfo.tls.size, 4096).gpu;
|
||||
pan_pool_alloc_aligned(&cmdbuf->tls_pool.base, size, 4096).gpu;
|
||||
}
|
||||
|
||||
if (batch->tlsinfo.wls.size) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue