Fixed up some of the backend passes tests (and corrected the pass itself)
This commit is contained in:
parent
823aa92edc
commit
48018a0acf
|
@ -205,7 +205,7 @@ transformWaitFor = cOnlyPass "Transform wait for guards into wait until guards"
|
||||||
init ++ [A.Only m $ A.Input m tim
|
init ++ [A.Only m $ A.Input m tim
|
||||||
(A.InputTimerRead m (A.InVariable m var)),
|
(A.InputTimerRead m (A.InVariable m var)),
|
||||||
A.Only m $ A.Assign m [var] $ A.ExpressionList m
|
A.Only m $ A.Assign m [var] $ A.ExpressionList m
|
||||||
[addExprsInt (A.ExprVariable m var) e]])
|
[dyadicExprInt "PLUS" (A.ExprVariable m var) e]])
|
||||||
return $ A.Only m'' $ A.Alternative m cond tim (A.InputTimerAfter m' (A.ExprVariable m' var)) p
|
return $ A.Only m'' $ A.Alternative m cond tim (A.InputTimerAfter m' (A.ExprVariable m' var)) p
|
||||||
|
|
||||||
doWaitFor m a = return $ A.Only m a
|
doWaitFor m a = return $ A.Only m a
|
||||||
|
|
|
@ -75,7 +75,7 @@ testTransformWaitFor1 = TestCase $ testPass "testTransformWaitFor1" exp transfor
|
||||||
[
|
[
|
||||||
mOnlyP $ mGetTime var
|
mOnlyP $ mGetTime var
|
||||||
,mOnlyP $ mAssign [var] $ mExpressionList
|
,mOnlyP $ mAssign [var] $ mExpressionList
|
||||||
[mFunctionCall (occamDefaultOperator "PLUS" [A.Int, A.Int]) [evar, exprVariablePattern "t"]]
|
[mFunctionCall (A.Name m $ occamDefaultOperator "PLUS" [A.Int, A.Int]) [evar, exprVariablePattern "t"]]
|
||||||
,mOnlyP $ tag3 A.Alt DontCare True $ mOnlyA $ mWaitUntil evar (A.Skip m)
|
,mOnlyP $ tag3 A.Alt DontCare True $ mOnlyA $ mWaitUntil evar (A.Skip m)
|
||||||
]
|
]
|
||||||
varName = (tag2 A.Name DontCare $ Named "nowt" DontCare)
|
varName = (tag2 A.Name DontCare $ Named "nowt" DontCare)
|
||||||
|
@ -93,10 +93,10 @@ testTransformWaitFor2 = TestCase $ testPass "testTransformWaitFor2" exp transfor
|
||||||
mSeveralP
|
mSeveralP
|
||||||
[
|
[
|
||||||
mOnlyP $ mGetTime var0
|
mOnlyP $ mGetTime var0
|
||||||
,mOnlyP $ mAssign [var0] $ mExpressionList [mFunctionCall (occamDefaultOperator
|
,mOnlyP $ mAssign [var0] $ mExpressionList [mFunctionCall (A.Name m $ occamDefaultOperator
|
||||||
"PLUS" [A.Int, A.Int]) [evar0, exprVariablePattern "t0"]]
|
"PLUS" [A.Int, A.Int]) [evar0, exprVariablePattern "t0"]]
|
||||||
,mOnlyP $ mGetTime var1
|
,mOnlyP $ mGetTime var1
|
||||||
,mOnlyP $ mAssign [var1] $ mExpressionList [mFunctionCall (occamDefaultOperator
|
,mOnlyP $ mAssign [var1] $ mExpressionList [mFunctionCall (A.Name m $ occamDefaultOperator
|
||||||
"PLUS" [A.Int, A.Int]) [evar1, exprVariablePattern "t1"]]
|
"PLUS" [A.Int, A.Int]) [evar1, exprVariablePattern "t1"]]
|
||||||
,mOnlyP $ tag3 A.Alt DontCare True $ mSeveralA
|
,mOnlyP $ tag3 A.Alt DontCare True $ mSeveralA
|
||||||
[mOnlyA $ mWaitUntil evar0 (A.Skip m)
|
[mOnlyA $ mWaitUntil evar0 (A.Skip m)
|
||||||
|
@ -120,9 +120,9 @@ testTransformWaitFor3 = TestCase $ testPass "testTransformWaitFor3" exp transfor
|
||||||
[
|
[
|
||||||
mOnlyP $ mGetTime var
|
mOnlyP $ mGetTime var
|
||||||
,mOnlyP $ tag3 A.Assign DontCare [var] $ tag2 A.ExpressionList DontCare
|
,mOnlyP $ tag3 A.Assign DontCare [var] $ tag2 A.ExpressionList DontCare
|
||||||
[mFunctionCall (occamDefaultOperator "PLUS" [A.Int, A.Int])
|
[mFunctionCall (A.Name m $ occamDefaultOperator "PLUS" [A.Int, A.Int])
|
||||||
[evar
|
[evar
|
||||||
,mFunctionCall (occamDefaultOperator "PLUS" [A.Int, A.Int])
|
,mFunctionCall (A.Name m $ occamDefaultOperator "PLUS" [A.Int, A.Int])
|
||||||
[exprVariable "t0", exprVariable "t1"]]]
|
[exprVariable "t0", exprVariable "t1"]]]
|
||||||
,mOnlyP $ tag3 A.Alt DontCare True $ mOnlyA $ mWaitUntil evar (A.Skip m)
|
,mOnlyP $ tag3 A.Alt DontCare True $ mOnlyA $ mWaitUntil evar (A.Skip m)
|
||||||
]
|
]
|
||||||
|
@ -140,7 +140,7 @@ testTransformWaitFor4 = TestCase $ testPass "testTransformWaitFor4" exp transfor
|
||||||
[
|
[
|
||||||
mOnlyP $ mGetTime var
|
mOnlyP $ mGetTime var
|
||||||
,mOnlyP $ tag3 A.Assign DontCare [var] $ tag2 A.ExpressionList DontCare
|
,mOnlyP $ tag3 A.Assign DontCare [var] $ tag2 A.ExpressionList DontCare
|
||||||
[mFunctionCall (occamDefaultOperator "PLUS" [A.Int, A.Int]) [evar, exprVariablePattern "t"]]
|
[mFunctionCall (A.Name m $ occamDefaultOperator "PLUS" [A.Int, A.Int]) [evar, exprVariablePattern "t"]]
|
||||||
,mOnlyP $ tag3 A.Alt DontCare True $ mSeveralA
|
,mOnlyP $ tag3 A.Alt DontCare True $ mSeveralA
|
||||||
[mOnlyA $ mWaitUntil evar (A.Skip m)]
|
[mOnlyA $ mWaitUntil evar (A.Skip m)]
|
||||||
]
|
]
|
||||||
|
@ -160,10 +160,10 @@ testTransformWaitFor5 = TestCase $ testPass "testTransformWaitFor5" exp transfor
|
||||||
[
|
[
|
||||||
mOnlyP $ mGetTime var0
|
mOnlyP $ mGetTime var0
|
||||||
,mOnlyP $ tag3 A.Assign DontCare [var0] $ tag2 A.ExpressionList DontCare
|
,mOnlyP $ tag3 A.Assign DontCare [var0] $ tag2 A.ExpressionList DontCare
|
||||||
[mFunctionCall (occamDefaultOperator "PLUS" [A.Int, A.Int]) [evar0, exprVariablePattern "t"]]
|
[mFunctionCall (A.Name m $ occamDefaultOperator "PLUS" [A.Int, A.Int]) [evar0, exprVariablePattern "t"]]
|
||||||
,mOnlyP $ mGetTime var1
|
,mOnlyP $ mGetTime var1
|
||||||
,mOnlyP $ tag3 A.Assign DontCare [var1] $ tag2 A.ExpressionList DontCare
|
,mOnlyP $ tag3 A.Assign DontCare [var1] $ tag2 A.ExpressionList DontCare
|
||||||
[mFunctionCall (occamDefaultOperator "PLUS" [A.Int, A.Int]) [evar1, exprVariablePattern "t"]]
|
[mFunctionCall (A.Name m $ occamDefaultOperator "PLUS" [A.Int, A.Int]) [evar1, exprVariablePattern "t"]]
|
||||||
,mOnlyP $ tag3 A.Alt DontCare True $ mSeveralA
|
,mOnlyP $ tag3 A.Alt DontCare True $ mSeveralA
|
||||||
[mOnlyA $ mWaitUntil evar0 (A.Skip m)
|
[mOnlyA $ mWaitUntil evar0 (A.Skip m)
|
||||||
,mOnlyA $ mWaitUntil evar1 (A.Skip m)]
|
,mOnlyA $ mWaitUntil evar1 (A.Skip m)]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user