diff options
author | Vasily Khoruzhick <[email protected]> | 2020-01-25 11:40:37 -0800 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-01-28 01:45:29 +0000 |
commit | 4a0f62f1fcab5350d6173c843fd95089953431a0 (patch) | |
tree | 815a012ecd25dedfb47c54876d4fc46a200a204f /src/gallium/drivers | |
parent | 63af27bc7681c302eaf4527253ca25cc32b400ce (diff) |
lima: ppir: don't delete root ld_tex nodes without successors in current block
We don't clone ld_tex nodes into each block anymore, so ld_tex may have
successors in another block.
Fixes: c8554f849e41 ("lima/ppir: don't clone texture loads")
Reviewed-by: Erico Nunes <[email protected]>
Signed-off-by: Vasily Khoruzhick <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3564>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/lima/ir/pp/lower.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/src/gallium/drivers/lima/ir/pp/lower.c b/src/gallium/drivers/lima/ir/pp/lower.c index 8fbbcb5dbb5..034425c97a7 100644 --- a/src/gallium/drivers/lima/ir/pp/lower.c +++ b/src/gallium/drivers/lima/ir/pp/lower.c @@ -150,14 +150,9 @@ static bool ppir_lower_texture(ppir_block *block, ppir_node *node) { ppir_load_texture_node *load_tex = ppir_node_to_load_texture(node); ppir_dest *dest = ppir_node_get_dest(node); - - if (ppir_node_is_root(node) && dest->type == ppir_target_ssa) { - ppir_node_delete(node); - return true; - } - ppir_node *src_coords = ppir_node_get_src(node, 0)->node; ppir_load_node *load = NULL; + if (src_coords && ppir_node_has_single_src_succ(src_coords) && (src_coords->op == ppir_op_load_coords)) load = ppir_node_to_load(src_coords); |