projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Transfer strictness and arity info when abstracting over type variables
[ghc-hetmet.git]
/
compiler
/
simplCore
/
FloatOut.lhs
diff --git
a/compiler/simplCore/FloatOut.lhs
b/compiler/simplCore/FloatOut.lhs
index
da59e91
..
4179774
100644
(file)
--- a/
compiler/simplCore/FloatOut.lhs
+++ b/
compiler/simplCore/FloatOut.lhs
@@
-10,7
+10,7
@@
-- The above warning supression flag is a temporary kludge.
-- While working on this module you are encouraged to remove it and fix
-- any warnings in the module. See
-- The above warning supression flag is a temporary kludge.
-- While working on this module you are encouraged to remove it and fix
-- any warnings in the module. See
--- http://hackage.haskell.org/trac/ghc/wiki/CodingStyle#Warnings
+-- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings
-- for details
module FloatOut ( floatOutwards ) where
-- for details
module FloatOut ( floatOutwards ) where
@@
-31,6
+31,7
@@
import SetLevels ( Level(..), LevelledExpr, LevelledBind,
import UniqSupply ( UniqSupply )
import List ( partition )
import Outputable
import UniqSupply ( UniqSupply )
import List ( partition )
import Outputable
+import FastString
\end{code}
-----------------
\end{code}
-----------------
@@
-321,7
+322,9
@@
floatExpr lvl (Note InlineMe expr) -- Other than SCCs
-- more efficient to test once here than to avoid putting
-- them into floating_defns (which would mean testing for
-- inlineCtxt at every let)
-- more efficient to test once here than to avoid putting
-- them into floating_defns (which would mean testing for
-- inlineCtxt at every let)
- (fs, [], Note InlineMe (install floating_defns expr')) } -- See notes in SetLevels
+ (fs, [], Note InlineMe (install floating_defns expr')) }
+ -- See Note [FloatOut inside INLINE] in SetLevels
+ -- I'm guessing that floating_dens should be empty
floatExpr lvl (Note note expr) -- Other than SCCs
= case (floatExpr lvl expr) of { (fs, floating_defns, expr') ->
floatExpr lvl (Note note expr) -- Other than SCCs
= case (floatExpr lvl expr) of { (fs, floating_defns, expr') ->