pan/midgard: Fix vertex texturing on early Midgard
We use a different set of texture registers, probably to save hardware. Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Tested-by: Andre Heider <a.heider@gmail.com>
This commit is contained in:
parent
3866d0776f
commit
29f5b00e6e
|
@ -441,6 +441,16 @@ allocate_registers(compiler_context *ctx, bool *spilled)
|
|||
|
||||
lcra_set_disjoint_class(l, REG_CLASS_TEXR, REG_CLASS_TEXW);
|
||||
|
||||
/* To save space on T720, we don't have real texture registers.
|
||||
* Instead, tex inputs reuse the load/store pipeline registers, and
|
||||
* tex outputs use work r0/r1. Note we still use TEXR/TEXW classes,
|
||||
* noting that this handles interferences and sizes correctly. */
|
||||
|
||||
if (ctx->gpu_id == 0x0720) {
|
||||
l->class_start[REG_CLASS_TEXR] = l->class_start[REG_CLASS_LDST];
|
||||
l->class_start[REG_CLASS_TEXW] = l->class_start[REG_CLASS_WORK];
|
||||
}
|
||||
|
||||
unsigned *found_class = calloc(sizeof(unsigned), ctx->temp_count);
|
||||
|
||||
mir_foreach_instr_global(ctx, ins) {
|
||||
|
|
Loading…
Reference in New Issue