freedreno/a6xx: Implement early preamble

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27462>
This commit is contained in:
Connor Abbott
2023-03-16 21:01:02 +01:00
committed by Marge Bot
parent 53ba1613ec
commit 0a4afef6ea
@@ -132,6 +132,7 @@ fd6_emit_shader(struct fd_context *ctx, struct fd_ringbuffer *ring,
.fullregfootprint = so->info.max_reg + 1,
.branchstack = ir3_shader_branchstack_hw(so),
.mergedregs = so->mergedregs,
.earlypreamble = so->info.early_preamble,
));
break;
case MESA_SHADER_TESS_CTRL:
@@ -139,6 +140,7 @@ fd6_emit_shader(struct fd_context *ctx, struct fd_ringbuffer *ring,
.halfregfootprint = so->info.max_half_reg + 1,
.fullregfootprint = so->info.max_reg + 1,
.branchstack = ir3_shader_branchstack_hw(so),
.earlypreamble = so->info.early_preamble,
));
break;
case MESA_SHADER_TESS_EVAL:
@@ -146,6 +148,7 @@ fd6_emit_shader(struct fd_context *ctx, struct fd_ringbuffer *ring,
.halfregfootprint = so->info.max_half_reg + 1,
.fullregfootprint = so->info.max_reg + 1,
.branchstack = ir3_shader_branchstack_hw(so),
.earlypreamble = so->info.early_preamble,
));
break;
case MESA_SHADER_GEOMETRY:
@@ -153,6 +156,7 @@ fd6_emit_shader(struct fd_context *ctx, struct fd_ringbuffer *ring,
.halfregfootprint = so->info.max_half_reg + 1,
.fullregfootprint = so->info.max_reg + 1,
.branchstack = ir3_shader_branchstack_hw(so),
.earlypreamble = so->info.early_preamble,
));
break;
case MESA_SHADER_FRAGMENT:
@@ -166,6 +170,7 @@ fd6_emit_shader(struct fd_context *ctx, struct fd_ringbuffer *ring,
/* unknown bit, seems unnecessary */
.unk24 = true,
.pixlodenable = so->need_pixlod,
.earlypreamble = so->info.early_preamble,
.mergedregs = so->mergedregs,
));
break;
@@ -176,6 +181,7 @@ fd6_emit_shader(struct fd_context *ctx, struct fd_ringbuffer *ring,
.fullregfootprint = so->info.max_reg + 1,
.branchstack = ir3_shader_branchstack_hw(so),
.threadsize = thrsz,
.earlypreamble = so->info.early_preamble,
.mergedregs = so->mergedregs,
));
break;