Fixed up some of the backend passes tests (and corrected the pass itself)

This commit is contained in:
Neil Brown 2009-04-18 19:48:08 +00:00
parent 823aa92edc
commit 48018a0acf
2 changed files with 9 additions and 9 deletions

View File

@ -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

View File

@ -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)]