Added the intrinsic CAUSEERROR

This commit is contained in:
Neil Brown 2009-04-03 15:14:24 +00:00
parent 471c3a1ef5
commit b9cbcf0902
2 changed files with 2 additions and 0 deletions

View File

@ -2086,6 +2086,7 @@ cgenProcCall n as
cgenIntrinsicProc :: Meta -> String -> [A.Actual] -> CGen ()
cgenIntrinsicProc m "ASSERT" [A.ActualExpression e] = call genAssert m e
cgenIntrinsicProc _ "RESCHEDULE" [] = call genReschedule
cgenIntrinsicProc m "CAUSEERROR" [] = call genStop m "CAUSEERROR"
cgenIntrinsicProc m s as = case lookup s intrinsicProcs of
Just amtns -> do tell ["occam_", [if c == '.' then '_' else c | c <- s], "(wptr,"]
when (s == "RESIZE.MOBILE.ARRAY.1D") $

View File

@ -128,6 +128,7 @@ simpleFloatIntrinsics = concatMap double $
intrinsicProcs :: [(String, [(A.AbbrevMode, A.Type, String)])]
intrinsicProcs =
[ ("ASSERT", [(A.ValAbbrev, A.Bool, "value")])
, ("CAUSEERROR", [])
, ("RESCHEDULE", [])
] ++ concat [
(zip ["INT" ++ suffix ++ "TOSTRING", "HEX" ++ suffix ++ "TOSTRING"] $ repeat