diff --git a/gibbon-compiler/src/Gibbon/Compiler.hs b/gibbon-compiler/src/Gibbon/Compiler.hs index 378d5dc80..17e9c987e 100644 --- a/gibbon-compiler/src/Gibbon/Compiler.hs +++ b/gibbon-compiler/src/Gibbon/Compiler.hs @@ -799,7 +799,7 @@ Also see Note [Adding dummy traversals] and Note [Adding random access nodes]. -- it adds regions to 'locs' in AppE and LetE which the -- typechecker doesn't know how to handle. l2' <- go "threadRegions" threadRegions l2' - l2' <- go "markTailCalls" markTailCalls l2' + l2' <- go "markTailCalls" markTailCalls l2' -- L2 -> L3 -- TODO: Compose L3.TcM with (ReaderT Config) l3 <- go "cursorize" cursorize l2' diff --git a/gibbon-compiler/src/Gibbon/Passes/MarkTailCalls.hs b/gibbon-compiler/src/Gibbon/Passes/MarkTailCalls.hs index 48ac1bc4b..8e2827af7 100644 --- a/gibbon-compiler/src/Gibbon/Passes/MarkTailCalls.hs +++ b/gibbon-compiler/src/Gibbon/Passes/MarkTailCalls.hs @@ -28,13 +28,13 @@ markTailCallsFn ddefs f@FunDef{funName, funArgs, funTy, funMeta, funBody} = do then let (ArrowTy2 locVars arrIns _arrEffs arrOut _locRets _isPar _) = funTy funTy' = (ArrowTy2 locVars arrIns _arrEffs arrOut _locRets _isPar TC) - in dbgTraceIt (sdoc (tailCallTy, funName, funTy')) dbgTraceIt "a" return $ FunDef funName funArgs funTy' funBody funMeta + in return $ FunDef funName funArgs funTy' funBody funMeta {-dbgTraceIt (sdoc (tailCallTy, funName, funTy')) dbgTraceIt "a"-} else if elem TMC tailCallTy then let (ArrowTy2 locVars arrIns _arrEffs arrOut _locRets _isPar _) = funTy funTy' = (ArrowTy2 locVars arrIns _arrEffs arrOut _locRets _isPar TMC) - in dbgTraceIt (sdoc (tailCallTy, funName, funTy')) dbgTraceIt "b" return $ FunDef funName funArgs funTy' funBody funMeta - else dbgTraceIt (sdoc (tailCallTy, funName, funTy)) dbgTraceIt "c" pure f + in return $ FunDef funName funArgs funTy' funBody funMeta {-dbgTraceIt (sdoc (tailCallTy, funName, funTy')) dbgTraceIt "b"-} + else pure f {-dbgTraceIt (sdoc (tailCallTy, funName, funTy)) dbgTraceIt "c"-} --dbgTraceIt (sdoc tailCallTy) pure f diff --git a/gibbon-compiler/src/Gibbon/Pretty.hs b/gibbon-compiler/src/Gibbon/Pretty.hs index 44defae28..35d91353c 100644 --- a/gibbon-compiler/src/Gibbon/Pretty.hs +++ b/gibbon-compiler/src/Gibbon/Pretty.hs @@ -322,7 +322,8 @@ instance Pretty ty2 => Pretty (ArrowTy2 ty2) where braces (text "locvars" <+> doc (locVars fnty) <> comma $$ text "effs: " <+> doc (arrEffs fnty) <> comma $$ text "locrets: " <+> doc (locRets fnty) <> comma $$ - text "parallel: " <+> doc (hasParallelism fnty)) + text "parallel: " <+> doc (hasParallelism fnty) $$ + text "tailrecursiontype: " <+> doc (tailRecType fnty)) -- Expressions