diff options
author | Vasily Khoruzhick <anarsoul@gmail.com> | 2019-08-18 23:03:57 -0700 |
---|---|---|
committer | Vasily Khoruzhick <anarsoul@gmail.com> | 2019-08-23 18:19:47 -0700 |
commit | 4e695489df70abdcbe8e9c1094e222695c181d59 (patch) | |
tree | 172d6a919b0aff952632227578be9eda74f567d5 /src/gallium/drivers/lima/ir/pp/node.c | |
parent | d11e1b790937f6b0cacbd00bc3ecddf8d0931453 (diff) | |
download | mesa-4e695489df70abdcbe8e9c1094e222695c181d59.tar.gz |
lima/ppir: add dummy op
We can get following from NIR:
(1) r1 = r2
(2) r2 = ssa1
Note that r2 is read before it's assigned, so there's no node for
it in comp->var_nodes. We need to create a dummy node in this case
which sole purpose is to hold ppir_dest with reg in it.
Tested-by: Andreas Baierl <ichgeh@imkreisrum.de>
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Reviewed-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Diffstat (limited to 'src/gallium/drivers/lima/ir/pp/node.c')
-rw-r--r-- | src/gallium/drivers/lima/ir/pp/node.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/lima/ir/pp/node.c b/src/gallium/drivers/lima/ir/pp/node.c index 1d4a0c91174..37dd65823fa 100644 --- a/src/gallium/drivers/lima/ir/pp/node.c +++ b/src/gallium/drivers/lima/ir/pp/node.c @@ -331,6 +331,12 @@ const ppir_op_info ppir_op_infos[] = { PPIR_INSTR_SLOT_BRANCH, PPIR_INSTR_SLOT_END }, }, + [ppir_op_dummy] = { + .name = "dummy", + .type = ppir_node_type_alu, + .slots = (int []) { + }, + }, }; void *ppir_node_create(ppir_block *block, ppir_op op, int index, unsigned mask) |