commit c4e93c7406d515fb247f142d69dcf0b308b8f040
parent 509c198f3ffb2130e492465f74be59c4a5b551e9
Author: Nihal Jere <nihal@nihaljere.xyz>
Date: Thu, 20 Jan 2022 14:36:24 -0600
ir: add unconditional loop support
Diffstat:
1 file changed, 7 insertions(+), 0 deletions(-)
diff --git a/ir.c b/ir.c
@@ -327,6 +327,13 @@ genexpr(struct iproc *out, size_t expri, uint64_t *val)
}
return VT_EMPTY;
}
+ case EXPR_LOOP: {
+ size_t start = bumplabel(out);
+ LABEL(start);
+ genblock(out, &expr->d.loop.block);
+ STARTINS(IR_JUMP, start, VT_LABEL);
+ return VT_EMPTY;
+ }
default:
die("genexpr: expr kind");
}