X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2FsimplCore%2FFloatIn.lhs;h=0e8edb5930b314921725f7fed3b80256061863d0;hb=28a464a75e14cece5db40f2765a29348273ff2d2;hp=ae6ce75dab59402497148cd7f97f0fb536c201e4;hpb=d1c1b7d0e7b94ede238845c91f58582bad3b3ef3;p=ghc-hetmet.git diff --git a/ghc/compiler/simplCore/FloatIn.lhs b/ghc/compiler/simplCore/FloatIn.lhs index ae6ce75..0e8edb5 100644 --- a/ghc/compiler/simplCore/FloatIn.lhs +++ b/ghc/compiler/simplCore/FloatIn.lhs @@ -18,7 +18,7 @@ module FloatIn ( floatInwards ) where import DynFlags ( DynFlags, DynFlag(..) ) import CoreSyn -import CoreUtils ( exprIsValue, exprIsDupable ) +import CoreUtils ( exprIsHNF, exprIsDupable ) import CoreLint ( showPass, endPass ) import CoreFVs ( CoreExprWithFVs, freeVars, freeVarsOf ) import Id ( isOneShotBndr ) @@ -355,7 +355,7 @@ noFloatIntoRhs (AnnLam b _) = not (is_one_shot b) -- boxing constructor into it, else we box it every time which is very bad -- news indeed. -noFloatIntoRhs rhs = exprIsValue (deAnnotate' rhs) -- We'd just float right back out again... +noFloatIntoRhs rhs = exprIsHNF (deAnnotate' rhs) -- We'd just float right back out again... is_one_shot b = isId b && isOneShotBndr b \end{code}