v3d: fix dirty bitset being too small to accept V3D_DIRTY_SSBO

Many of the `V3D_DIRTY_*` flags are above 32 bits, but for now the only
one used here is V3D_DIRTY_SSBO.

`shader->uniform_dirty_bits`, where `dirty` ends up, is already 64 bits.

Fixes: 45bb8f2957 ("broadcom: Add V3D 3.3 gallium driver called "vc5", for BCM7268.")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22019>
(cherry picked from commit a7c051b5ac)
This commit is contained in:
Eric Engestrom 2023-03-19 21:26:40 +00:00 committed by Dylan Baker
parent deebec40a0
commit 05de28d01b
2 changed files with 2 additions and 2 deletions

View file

@ -7384,7 +7384,7 @@
"description": "v3d: fix `dirty` bitset being too small to accept V3D_DIRTY_SSBO",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "45bb8f2957108056de10721d50259e2f8c5a4ddc"
},

View file

@ -450,7 +450,7 @@ v3d_write_uniforms(struct v3d_context *v3d, struct v3d_job *job,
void
v3d_set_shader_uniform_dirty_flags(struct v3d_compiled_shader *shader)
{
uint32_t dirty = 0;
uint64_t dirty = 0;
for (int i = 0; i < shader->prog_data.base->uniforms.count; i++) {
switch (shader->prog_data.base->uniforms.contents[i]) {