From 15b49a6795e9fad4497940705987005278bf17a1 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Sat, 19 Jun 2021 14:33:30 -0400 Subject: [PATCH] agx: Count read registers as well Signed-off-by: Alyssa Rosenzweig Part-of: --- src/asahi/compiler/agx_register_allocate.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/asahi/compiler/agx_register_allocate.c b/src/asahi/compiler/agx_register_allocate.c index f110af35e3b..0977d2be2d5 100644 --- a/src/asahi/compiler/agx_register_allocate.c +++ b/src/asahi/compiler/agx_register_allocate.c @@ -30,6 +30,20 @@ * TODO: Handle phi nodes. */ +/** Returns number of registers read by an instruction. TODO: 16-bit */ +static unsigned +agx_read_registers(agx_instr *I, unsigned s) +{ + unsigned size = I->src[s].size == AGX_SIZE_32 ? 2 : 1; + + switch (I->op) { + case AGX_OPCODE_DEVICE_LOAD: + return 8; + default: + return size; + } +} + /** Returns number of registers written by an instruction */ static unsigned agx_write_registers(agx_instr *I, unsigned d)