diff --git a/src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp b/src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp index 32ef562cd60..68dc657d1b5 100644 --- a/src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp +++ b/src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp @@ -456,7 +456,7 @@ r600_lower_tess_io_impl(nir_builder *b, nir_instr *instr, enum mesa_prim prim_ty tf->src[0] = nir_src_for_ssa(addr_outer); nir_ssa_dest_init(&tf->instr, &tf->dest, tf->num_components, 32); nir_builder_instr_insert(b, &tf->instr); - if (ncomps < 4) { + if (ncomps < 4 && b->shader->info.stage != MESA_SHADER_TESS_EVAL) { auto undef = nir_ssa_undef(b, 1, 32); nir_ssa_def *srcs[4] = {undef, undef, undef, undef}; for (unsigned i = 0; i < ncomps; ++i)