diff options
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_nir_uniforms.cpp | 4 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_program.c | 5 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_wm.c | 3 |
3 files changed, 7 insertions, 5 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_nir_uniforms.cpp b/src/mesa/drivers/dri/i965/brw_nir_uniforms.cpp index 66cdc1a10b6..256fdd8fc79 100644 --- a/src/mesa/drivers/dri/i965/brw_nir_uniforms.cpp +++ b/src/mesa/drivers/dri/i965/brw_nir_uniforms.cpp @@ -109,10 +109,6 @@ brw_setup_image_uniform_values(gl_shader_stage stage, image_idx, offsetof(brw_image_param, swizzling), 2); param += BRW_IMAGE_PARAM_SIZE; - - brw_mark_surface_used( - stage_prog_data, - stage_prog_data->binding_table.image_start + image_idx); } } diff --git a/src/mesa/drivers/dri/i965/brw_program.c b/src/mesa/drivers/dri/i965/brw_program.c index 78dc4709e05..c01143decd0 100644 --- a/src/mesa/drivers/dri/i965/brw_program.c +++ b/src/mesa/drivers/dri/i965/brw_program.c @@ -896,7 +896,10 @@ brw_assign_common_binding_table_offsets(const struct gen_device_info *devinfo, stage_prog_data->binding_table.plane_start[2] = next_binding_table_offset; next_binding_table_offset += num_textures; - /* prog_data->base.binding_table.size will be set by brw_mark_surface_used. */ + /* Set the binding table size. Some callers may append new entries + * and increase this accordingly. + */ + stage_prog_data->binding_table.size_bytes = next_binding_table_offset * 4; assert(next_binding_table_offset <= BRW_MAX_SURFACES); return next_binding_table_offset; diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index 536e47638e6..7bbb6166344 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -63,6 +63,9 @@ assign_fs_binding_table_offsets(const struct gen_device_info *devinfo, next_binding_table_offset; next_binding_table_offset += key->nr_color_regions; } + + /* Update the binding table size */ + prog_data->base.binding_table.size_bytes = next_binding_table_offset * 4; } static void |