Improve debug output timing.
authorMatthijs Kooijman <m.kooijman@student.utwente.nl>
Sun, 21 Jun 2009 15:25:56 +0000 (17:25 +0200)
committerMatthijs Kooijman <m.kooijman@student.utwente.nl>
Sun, 21 Jun 2009 15:30:07 +0000 (17:30 +0200)
The Before: line is now really printed before the transform, so also when
the transform fails.

Normalize.hs

index 0d58d04a9d53c323494a046914047b0178b10eee..647168b4587df5f782fca4aef6e8ce998fcae508 100644 (file)
@@ -362,14 +362,15 @@ normalizeBind bndr = do
       case expr_maybe of 
         Just expr -> do
           -- Normalize this expression
+          trace ("Transforming " ++ (show bndr) ++ "\nBefore:\n\n" ++ showSDoc ( ppr expr ) ++ "\n") $ return ()
           expr' <- dotransforms transforms expr
-          let expr'' = trace ("Before:\n\n" ++ showSDoc ( ppr expr ) ++ "\n\nAfter:\n\n" ++ showSDoc ( ppr expr')) expr'
+          trace ("\nAfter:\n\n" ++ showSDoc ( ppr expr')) $ return ()
           -- And store the normalized version in the session
-          modA tsBindings (Map.insert bndr expr'')
+          modA tsBindings (Map.insert bndr expr')
           -- Find all vars used with a function type. All of these should be global
           -- binders (i.e., functions used), since any local binders with a function
           -- type should have been inlined already.
-          let used_funcs_set = CoreFVs.exprSomeFreeVars (\v -> (Type.isFunTy . snd . Type.splitForAllTys . Id.idType) v) expr''
+          let used_funcs_set = CoreFVs.exprSomeFreeVars (\v -> (Type.isFunTy . snd . Type.splitForAllTys . Id.idType) v) expr'
           let used_funcs = VarSet.varSetElems used_funcs_set
           -- Process each of the used functions recursively
           mapM normalizeBind used_funcs