From 72da47d48aef93cbdeb889c11f6ea00cd6f7db33 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Tue, 12 Sep 2023 09:12:57 -0400 Subject: [PATCH] Use standard for loops --- src/singeli/src/base.singeli | 24 ++---------------------- 1 file changed, 2 insertions(+), 22 deletions(-) diff --git a/src/singeli/src/base.singeli b/src/singeli/src/base.singeli index 2fddac94..06367618 100644 --- a/src/singeli/src/base.singeli +++ b/src/singeli/src/base.singeli @@ -1,5 +1,6 @@ include 'skin/c' include 'arch/c' +include 'util/for' include 'util/kind' def ux = u64 @@ -266,21 +267,7 @@ def tptr{l,s} = { # create "pointer" generator with given load & store definitio def r{i,x} = s{i,x} } -def unroll{vars,begin,end,iter & knum{begin} & knum{end}} = { - def f{i,l & i==l} = 0 - def f{i,l & i!=l} = { - iter{i, vars} - f{i+1, l} - } - f{begin,end} -} -def for{vars,begin,end,iter} = { - i:ux = begin - while (i < end) { - iter{i, vars} - ++i - } -} +def unroll = for_const def forNZ{vars,begin,end,iter} = { i:ux = begin assert{i!=end} @@ -289,13 +276,6 @@ def forNZ{vars,begin,end,iter} = { ++i } } -def for_backwards{vars,begin,end,iter} = { - i:ux = end - while (i > begin) { - --i - iter{i, vars} - } -} def forUnroll{exp,unr}{vars,begin,end,iter} = { i:ux = begin while ((i+unr) <= end) {