r300,i915g: Report no shader buffers or images on non-TCL HW.
We don't have the driver hooks to set the state, or to update draw's copy of the state at draw time. Reviewed-by: Adam Jackson <ajax@redhat.com> Fixes: d6fd7acf9b79 ("gallium: Fix leak of bound SSBOs at CSO context destruction.") Closes: #3990 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8530>
This commit is contained in:
@@ -121,6 +121,9 @@ i915_get_shader_param(struct pipe_screen *screen,
|
||||
return PIPE_MAX_SAMPLERS;
|
||||
else
|
||||
return 0;
|
||||
case PIPE_SHADER_CAP_MAX_SHADER_BUFFERS:
|
||||
case PIPE_SHADER_CAP_MAX_SHADER_IMAGES:
|
||||
return 0;
|
||||
default:
|
||||
return draw_get_shader_param(shader, cap);
|
||||
}
|
||||
|
||||
@@ -326,7 +326,13 @@ static int r300_get_shader_param(struct pipe_screen *pscreen,
|
||||
}
|
||||
|
||||
if (!r300screen->caps.has_tcl) {
|
||||
return draw_get_shader_param(shader, param);
|
||||
switch (param) {
|
||||
case PIPE_SHADER_CAP_MAX_SHADER_BUFFERS:
|
||||
case PIPE_SHADER_CAP_MAX_SHADER_IMAGES:
|
||||
return 0;
|
||||
default:
|
||||
return draw_get_shader_param(shader, param);
|
||||
}
|
||||
}
|
||||
|
||||
switch (param)
|
||||
|
||||
Reference in New Issue
Block a user