radv/ac: move point coord after layer/viewport.
These need to be ordered as per shader enum ordering, I'll rewrite this soon, but this is a bug fix. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -1881,12 +1881,6 @@ static void calculate_ps_inputs(struct radv_pipeline *pipeline)
|
|||||||
outinfo = &vs->info.vs.outinfo;
|
outinfo = &vs->info.vs.outinfo;
|
||||||
|
|
||||||
unsigned ps_offset = 0;
|
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)) {
|
if (ps->info.fs.prim_id_input && (outinfo->prim_id_output != 0xffffffff)) {
|
||||||
unsigned vs_offset, flat_shade;
|
unsigned vs_offset, flat_shade;
|
||||||
@@ -1908,6 +1902,13 @@ static void calculate_ps_inputs(struct radv_pipeline *pipeline)
|
|||||||
++ps_offset;
|
++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) {
|
for (unsigned i = 0; i < 32 && (1u << i) <= ps->info.fs.input_mask; ++i) {
|
||||||
unsigned vs_offset, flat_shade;
|
unsigned vs_offset, flat_shade;
|
||||||
unsigned val;
|
unsigned val;
|
||||||
|
Reference in New Issue
Block a user