From 7bf4c6c4d89f63af5b6a2be8e69cec7e8416dbaa Mon Sep 17 00:00:00 2001 From: "Ben.Lippmeier@anu.edu.au" Date: Mon, 3 Sep 2007 13:22:54 +0000 Subject: [PATCH] NCG space leak avoidance refactor --- compiler/nativeGen/AsmCodeGen.lhs | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/compiler/nativeGen/AsmCodeGen.lhs b/compiler/nativeGen/AsmCodeGen.lhs index ebff1f0..7b49f7a 100644 --- a/compiler/nativeGen/AsmCodeGen.lhs +++ b/compiler/nativeGen/AsmCodeGen.lhs @@ -197,9 +197,10 @@ cmmNativeGens dflags h us (cmm : cmms) impAcc profAcc else [] -- force evaulation of imports and lsPprNative to avoid space leak - seqString (showSDoc $ vcat $ map ppr imports) - `seq` lsPprNative - `seq` cmmNativeGens dflags h us' cmms + seqString (showSDoc $ vcat $ map ppr imports) `seq` return () + lsPprNative `seq` return () + + cmmNativeGens dflags h us' cmms (imports : impAcc) ((lsPprNative, colorStats, linearStats) : profAcc) @@ -311,10 +312,11 @@ cmmNativeGen dflags us cmm then Just regAllocStats else Nothing -- force evaluation of the Maybe to avoid space leak - mPprStats - `seq` return ( alloced, usAlloc - , mPprStats - , Nothing) + mPprStats `seq` return () + + return ( alloced, usAlloc + , mPprStats + , Nothing) else do -- do linear register allocation @@ -333,10 +335,11 @@ cmmNativeGen dflags us cmm then Just (catMaybes regAllocStats) else Nothing -- force evaluation of the Maybe to avoid space leak - mPprStats - `seq` return ( alloced, usAlloc - , Nothing - , mPprStats) + mPprStats `seq` return () + + return ( alloced, usAlloc + , Nothing + , mPprStats) ---- shortcut branches let shorted = -- 1.7.10.4