summaryrefslogtreecommitdiff
path: root/ir.h
diff options
context:
space:
mode:
Diffstat (limited to 'ir.h')
-rw-r--r--ir.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/ir.h b/ir.h
index 799a0e0..681f3ae 100644
--- a/ir.h
+++ b/ir.h
@@ -107,6 +107,11 @@ typedef struct {
Scope scope;
} Proc;
+#define NODE_KEEP(p, n, ...)\
+ do { Node *keep_node = n;\
+ node_add_out(p, keep_node, p->keepalive); __VA_ARGS__;\
+ node_del_out(keep_node, p->keepalive); } while(0)
+
void node_kill(Node *n, Proc *p);
void node_die(Node *n, Proc *p);
void node_del_out(Node *n, Node *p);