diff options
author | Mike Blumenkrantz <michael.blumenkrantz@gmail.com> | 2023-04-07 11:23:26 -0400 |
---|---|---|
committer | Dylan Baker <dylan.c.baker@intel.com> | 2023-04-20 16:05:03 -0700 |
commit | 02d86e2fb0b15362482541ea6da9662f89b5fcd2 (patch) | |
tree | 79d1f621fc0bdba641dcf6d5eb89bb77e871d1f6 | |
parent | 1d2c0192cfe4d58b5a7042ec91ac6567ffefa96f (diff) | |
download | mesa-02d86e2fb0b15362482541ea6da9662f89b5fcd2.tar.gz |
lavapipe: don't double-inline ubo0
this was already handled above and causes negative indexing
cc: mesa-stable
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22363>
(cherry picked from commit 9f5bb8992f45091e05cc48587bb3ea5ca4086080)
Conflicts:
src/gallium/frontends/lavapipe/lvp_execute.c
-rw-r--r-- | .pick_status.json | 2 | ||||
-rw-r--r-- | src/gallium/frontends/lavapipe/lvp_execute.c | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/.pick_status.json b/.pick_status.json index 37c9178c4fa..9f609debc69 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -4944,7 +4944,7 @@ "description": "lavapipe: don't double-inline ubo0", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/gallium/frontends/lavapipe/lvp_execute.c b/src/gallium/frontends/lavapipe/lvp_execute.c index 239523e922f..39fe90f120c 100644 --- a/src/gallium/frontends/lavapipe/lvp_execute.c +++ b/src/gallium/frontends/lavapipe/lvp_execute.c @@ -313,6 +313,9 @@ update_inline_shader_state(struct rendering_state *state, enum pipe_shader_type if (constbuf_dirty) { struct pipe_box box = {0}; u_foreach_bit(slot, pipeline->inlines[stage].can_inline) { + /* this is already inlined above */ + if (slot == 0) + continue; unsigned count = pipeline->inlines[stage].count[slot]; struct pipe_constant_buffer *cbuf = &state->const_buffer[sh][slot - 1]; struct pipe_resource *pres = cbuf->buffer; |