From: simonmar Date: Tue, 6 Nov 2001 11:03:00 +0000 (+0000) Subject: [project @ 2001-11-06 11:03:00 by simonmar] X-Git-Tag: Approximately_9120_patches~636 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=0f865e98f063489b4c8ff6de0b80352e651ec723;p=ghc-hetmet.git [project @ 2001-11-06 11:03:00 by simonmar] Add a comment explaining the discount subtraction in mkSizeIs. --- diff --git a/ghc/compiler/coreSyn/CoreUnfold.lhs b/ghc/compiler/coreSyn/CoreUnfold.lhs index 2f5a643..457f9cf 100644 --- a/ghc/compiler/coreSyn/CoreUnfold.lhs +++ b/ghc/compiler/coreSyn/CoreUnfold.lhs @@ -353,6 +353,11 @@ data ExprSize = TooBig FastInt -- Size to subtract if result is scrutinised -- by a case expression +-- subtract the discount before deciding whether to bale out. eg. we +-- want to inline a large constructor application into a selector: +-- tup = (a_1, ..., a_99) +-- x = case tup of ... +-- mkSizeIs max n xs d | (n -# d) ># max = TooBig | otherwise = SizeIs n xs d