diff options
author | Connor Abbott <[email protected]> | 2020-03-18 18:06:41 +0100 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-04-09 15:56:55 +0000 |
commit | de7d90ef53d585ee3efd165df1bf38b20794b3e6 (patch) | |
tree | 1cb8bdb8d58ec02457e0c1f97170bdef3611dbf7 /src/freedreno/ir3/ir3.c | |
parent | c8b0f904398cdc30ffc67c162bc3f570bf887ed9 (diff) |
ir3: Plumb through support for a1.x
This will need to be used in some cases for the upcoming bindless
support, plus ldc.k instructions which push data from a UBO to const
registers.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4358>
Diffstat (limited to 'src/freedreno/ir3/ir3.c')
-rw-r--r-- | src/freedreno/ir3/ir3.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/freedreno/ir3/ir3.c b/src/freedreno/ir3/ir3.c index 7bdf8a39ba8..7af46055c02 100644 --- a/src/freedreno/ir3/ir3.c +++ b/src/freedreno/ir3/ir3.c @@ -1086,7 +1086,14 @@ ir3_instr_set_address(struct ir3_instruction *instr, debug_assert(instr->block == addr->block); instr->address = addr; - array_insert(ir, ir->indirects, instr); + debug_assert(reg_num(addr->regs[0]) == REG_A0); + unsigned comp = reg_comp(addr->regs[0]); + if (comp == 0) { + array_insert(ir, ir->a0_users, instr); + } else { + debug_assert(comp == 1); + array_insert(ir, ir->a1_users, instr); + } } } |