From 3b4b962c1524075d0578f3fbac8a9b7a13f36036 Mon Sep 17 00:00:00 2001 From: Gert Wollny Date: Fri, 30 Apr 2021 20:12:19 +0200 Subject: [PATCH] r600/sfn: Lower FS pos input w-transform in NIR Signed-off-by: Gert Wollny Part-of: --- src/gallium/drivers/r600/sfn/sfn_nir.cpp | 1 + src/gallium/drivers/r600/sfn/sfn_shader_fragment.cpp | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/gallium/drivers/r600/sfn/sfn_nir.cpp b/src/gallium/drivers/r600/sfn/sfn_nir.cpp index f1c6638..76310f9 100644 --- a/src/gallium/drivers/r600/sfn/sfn_nir.cpp +++ b/src/gallium/drivers/r600/sfn/sfn_nir.cpp @@ -892,6 +892,7 @@ int r600_shader_from_nir(struct r600_context *rctx, NIR_PASS_V(sel->nir, r600_vectorize_vs_inputs); if (sel->nir->info.stage == MESA_SHADER_FRAGMENT) { + NIR_PASS_V(sel->nir, nir_lower_fragcoord_wtrans); NIR_PASS_V(sel->nir, r600_lower_fs_out_to_vector); } diff --git a/src/gallium/drivers/r600/sfn/sfn_shader_fragment.cpp b/src/gallium/drivers/r600/sfn/sfn_shader_fragment.cpp index b13cb8a..9cb15d9 100644 --- a/src/gallium/drivers/r600/sfn/sfn_shader_fragment.cpp +++ b/src/gallium/drivers/r600/sfn/sfn_shader_fragment.cpp @@ -400,8 +400,6 @@ void FragmentShaderFromNir::emit_shader_start() auto v = new GPRValue(m_frag_pos_index, i); v->set_as_input(); auto reg = PValue(v); - if (i == 3) - emit_instruction(new AluInstruction(op1_recip_ieee, reg, reg, {alu_write, alu_last_instr})); m_frag_pos[i] = reg; } } -- 2.7.4