From: Dave Airlie <airl...@redhat.com>

These need to be ordered as per shader enum ordering, I'll
rewrite this soon, but this is a bug fix.

Signed-off-by: Dave Airlie <airl...@redhat.com>
---
 src/amd/vulkan/radv_pipeline.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
index 8e71d59..4cd832a 100644
--- a/src/amd/vulkan/radv_pipeline.c
+++ b/src/amd/vulkan/radv_pipeline.c
@@ -1880,12 +1880,6 @@ static void calculate_ps_inputs(struct radv_pipeline 
*pipeline)
        outinfo = &vs->info.vs.outinfo;
 
        unsigned ps_offset = 0;
-       if (ps->info.fs.has_pcoord) {
-               unsigned val;
-               val = S_028644_PT_SPRITE_TEX(1) | S_028644_OFFSET(0x20);
-               pipeline->graphics.ps_input_cntl[ps_offset] = val;
-               ps_offset++;
-       }
 
        if (ps->info.fs.prim_id_input && (outinfo->prim_id_output != 
0xffffffff)) {
                unsigned vs_offset, flat_shade;
@@ -1907,6 +1901,13 @@ static void calculate_ps_inputs(struct radv_pipeline 
*pipeline)
                ++ps_offset;
        }
 
+       if (ps->info.fs.has_pcoord) {
+               unsigned val;
+               val = S_028644_PT_SPRITE_TEX(1) | S_028644_OFFSET(0x20);
+               pipeline->graphics.ps_input_cntl[ps_offset] = val;
+               ps_offset++;
+       }
+
        for (unsigned i = 0; i < 32 && (1u << i) <= ps->info.fs.input_mask; 
++i) {
                unsigned vs_offset, flat_shade;
                unsigned val;
-- 
2.7.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to