summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/lima/ir/pp/ppir.h
diff options
context:
space:
mode:
authorVasily Khoruzhick <anarsoul@gmail.com>2019-08-18 23:37:23 -0700
committerVasily Khoruzhick <anarsoul@gmail.com>2019-08-24 08:17:31 -0700
commit28d4b456a582c1388fc3dde45e98cc97389485dc (patch)
tree2095737304fb69d3387ab0e3bf718565c16cbfc0 /src/gallium/drivers/lima/ir/pp/ppir.h
parent1cdf585613da37f23d737ac4713af0484d4a30d7 (diff)
downloadmesa-28d4b456a582c1388fc3dde45e98cc97389485dc.tar.gz
lima/ppir: add control flow support
This commit adds support for nir_jump_instr, if and loop nir_cf_nodes. 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/ppir.h')
-rw-r--r--src/gallium/drivers/lima/ir/pp/ppir.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/lima/ir/pp/ppir.h b/src/gallium/drivers/lima/ir/pp/ppir.h
index db8087ede62..462cd93538a 100644
--- a/src/gallium/drivers/lima/ir/pp/ppir.h
+++ b/src/gallium/drivers/lima/ir/pp/ppir.h
@@ -369,6 +369,9 @@ typedef struct ppir_compiler {
int num_fills;
ppir_block *discard_block;
+ ppir_block *current_block;
+ ppir_block *loop_break_block;
+ ppir_block *loop_cont_block;
} ppir_compiler;
void *ppir_node_create(ppir_block *block, ppir_op op, int index, unsigned mask);
@@ -379,6 +382,7 @@ void ppir_node_print_prog(ppir_compiler *comp);
void ppir_node_replace_child(ppir_node *parent, ppir_node *old_child, ppir_node *new_child);
void ppir_node_replace_all_succ(ppir_node *dst, ppir_node *src);
void ppir_node_replace_pred(ppir_dep *dep, ppir_node *new_pred);
+ppir_dep *ppir_dep_for_pred(ppir_node *node, ppir_node *pred);
ppir_node *ppir_node_clone(ppir_block *block, ppir_node *node);
static inline bool ppir_node_is_root(ppir_node *node)