turnip: fix emit_textures for compute shaders
Signed-off-by: Jonathan Marek <jonathan@marek.ca> Reviewed-by: Eric Anholt <eric@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3104>
This commit is contained in:
parent
ed43d01dec
commit
c9b12c71d7
|
@ -2727,16 +2727,16 @@ tu6_emit_consts(struct tu_cmd_buffer *cmd,
|
|||
|
||||
static VkResult
|
||||
tu6_emit_textures(struct tu_cmd_buffer *cmd,
|
||||
const struct tu_pipeline *pipeline,
|
||||
struct tu_descriptor_state *descriptors_state,
|
||||
gl_shader_stage type,
|
||||
struct tu_cs_entry *entry,
|
||||
bool *needs_border)
|
||||
{
|
||||
struct tu_device *device = cmd->device;
|
||||
struct tu_cs *draw_state = &cmd->sub_cs;
|
||||
struct tu_descriptor_state *descriptors_state =
|
||||
&cmd->descriptors[VK_PIPELINE_BIND_POINT_GRAPHICS];
|
||||
const struct tu_program_descriptor_linkage *link =
|
||||
&cmd->state.pipeline->program.link[type];
|
||||
&pipeline->program.link[type];
|
||||
VkResult result;
|
||||
|
||||
if (link->texture_map.num == 0 && link->sampler_map.num == 0) {
|
||||
|
@ -3136,11 +3136,13 @@ tu6_bind_draw_states(struct tu_cmd_buffer *cmd,
|
|||
bool needs_border = false;
|
||||
struct tu_cs_entry vs_tex, fs_tex;
|
||||
|
||||
result = tu6_emit_textures(cmd, MESA_SHADER_VERTEX, &vs_tex, &needs_border);
|
||||
result = tu6_emit_textures(cmd, pipeline, descriptors_state,
|
||||
MESA_SHADER_VERTEX, &vs_tex, &needs_border);
|
||||
if (result != VK_SUCCESS)
|
||||
return result;
|
||||
|
||||
result = tu6_emit_textures(cmd, MESA_SHADER_FRAGMENT, &fs_tex, &needs_border);
|
||||
result = tu6_emit_textures(cmd, pipeline, descriptors_state,
|
||||
MESA_SHADER_FRAGMENT, &fs_tex, &needs_border);
|
||||
if (result != VK_SUCCESS)
|
||||
return result;
|
||||
|
||||
|
@ -3477,7 +3479,8 @@ tu_dispatch(struct tu_cmd_buffer *cmd,
|
|||
tu_emit_compute_driver_params(cs, pipeline, info);
|
||||
|
||||
bool needs_border;
|
||||
result = tu6_emit_textures(cmd, MESA_SHADER_COMPUTE, &ib, &needs_border);
|
||||
result = tu6_emit_textures(cmd, pipeline, descriptors_state,
|
||||
MESA_SHADER_COMPUTE, &ib, &needs_border);
|
||||
if (result != VK_SUCCESS) {
|
||||
cmd->record_result = result;
|
||||
return;
|
||||
|
|
Loading…
Reference in New Issue