freedreno/a5xx: Don't set the VARYING flag for fragcoord-only programs.
As with a6xx (commitsbeb02a78
,5785bcc8
), the blob doesn't set this flag for a5xx when fragcoords are used but not proper varyings. See for example dEQP-GLES2.functional.shaders.builtin_variable.fragcoord_xyz. The hope was that this would clear up separate_shader fails/flakes like it helped with a6xx's flakes, but that didn't happen. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6464>
This commit is contained in:
parent
36bd3e9868
commit
15bdbf34c4
|
@ -489,7 +489,6 @@ fd5_program_emit(struct fd_context *ctx, struct fd_ringbuffer *ring,
|
|||
OUT_PKT4(ring, REG_A5XX_VPC_CNTL_0, 1);
|
||||
OUT_RING(ring, A5XX_VPC_CNTL_0_STRIDE_IN_VPC(l.max_loc) |
|
||||
COND(s[FS].v->total_in > 0, A5XX_VPC_CNTL_0_VARYING) |
|
||||
COND(s[FS].v->fragcoord_compmask != 0, A5XX_VPC_CNTL_0_VARYING) |
|
||||
0x10000); // XXX
|
||||
|
||||
fd5_context(ctx)->max_loc = l.max_loc;
|
||||
|
@ -524,7 +523,6 @@ fd5_program_emit(struct fd_context *ctx, struct fd_ringbuffer *ring,
|
|||
|
||||
OUT_PKT4(ring, REG_A5XX_SP_FS_CTRL_REG0, 1);
|
||||
OUT_RING(ring, COND(s[FS].v->total_in > 0, A5XX_SP_FS_CTRL_REG0_VARYING) |
|
||||
COND(s[FS].v->fragcoord_compmask != 0, A5XX_SP_FS_CTRL_REG0_VARYING) |
|
||||
0x40006 | /* XXX set pretty much everywhere */
|
||||
A5XX_SP_FS_CTRL_REG0_THREADSIZE(fssz) |
|
||||
A5XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT(s[FS].i->max_half_reg + 1) |
|
||||
|
|
Loading…
Reference in New Issue