summaryrefslogtreecommitdiff
path: root/ir.h
diff options
context:
space:
mode:
authorWormHeamer2025-08-04 23:05:46 -0400
committerWormHeamer2025-08-04 23:05:46 -0400
commita4eca17c4156863108cd9bec7834bbb1681c0bf7 (patch)
treec979e040bdf40277800972acc0f0f35824a774d0 /ir.h
parent88b01f43312eeceba87a1378be5cd63bb11f167f (diff)
NODE_KEEP macro
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);