From 6a61ff24ce4795b31cf063ef8252cd8cf047d835 Mon Sep 17 00:00:00 2001 From: simonm Date: Tue, 27 Apr 1999 15:23:29 +0000 Subject: [PATCH] [project @ 1999-04-27 15:23:29 by simonm] Mark PrimOp arguments as lazy. This stops the simplifier throwing away cases, and is consistent with the way applications work. We could probably do better by using the information from primOpStrictness. --- ghc/compiler/simplCore/OccurAnal.lhs | 1 + 1 file changed, 1 insertion(+) diff --git a/ghc/compiler/simplCore/OccurAnal.lhs b/ghc/compiler/simplCore/OccurAnal.lhs index 5b021f0..0025172 100644 --- a/ghc/compiler/simplCore/OccurAnal.lhs +++ b/ghc/compiler/simplCore/OccurAnal.lhs @@ -606,6 +606,7 @@ occAnal env (Con con args) -- arguments are just variables, or trivial expressions. final_arg_uds = case con of DataCon _ -> mapVarEnv markMany arg_uds + PrimOp _ -> mapVarEnv markLazy arg_uds other -> arg_uds in (final_arg_uds, Con con args') -- 1.7.10.4