[commit: ghc] wip/T16039: prepare for floating fix (c536a48)

git at git.haskell.org git at git.haskell.org
Thu Dec 27 17:01:50 UTC 2018


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/T16039
Link       : http://ghc.haskell.org/trac/ghc/changeset/c536a4879889f3f394ab44d4ba3285d9e9793057/ghc

>---------------------------------------------------------------

commit c536a4879889f3f394ab44d4ba3285d9e9793057
Author: Gabor Greif <ggreif at gmail.com>
Date:   Sun Dec 9 22:47:30 2018 +0100

    prepare for floating fix


>---------------------------------------------------------------

c536a4879889f3f394ab44d4ba3285d9e9793057
 compiler/simplCore/FloatOut.hs | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/compiler/simplCore/FloatOut.hs b/compiler/simplCore/FloatOut.hs
index 0aa4854..4a1ab68 100644
--- a/compiler/simplCore/FloatOut.hs
+++ b/compiler/simplCore/FloatOut.hs
@@ -32,6 +32,8 @@ import Type
 import qualified Data.IntMap as M
 
 import Data.List        ( partition )
+import Unique (hasKey)
+import PrelNames (noinlineIdKey)
 
 #include "HsVersions.h"
 
@@ -396,6 +398,11 @@ floatExpr (Type ty) = (zeroStats, emptyFloats, Type ty)
 floatExpr (Coercion co) = (zeroStats, emptyFloats, Coercion co)
 floatExpr (Lit lit) = (zeroStats, emptyFloats, Lit lit)
 
+floatExpr (App (App (Var v) _) e)
+                    | v `hasKey` noinlineIdKey
+                    , pprTrace "floatExpr" (ppr e) False
+                    = undefined
+
 floatExpr (App e a)
   = case (atJoinCeiling $ floatExpr  e) of { (fse, floats_e, e') ->
     case (atJoinCeiling $ floatExpr  a) of { (fsa, floats_a, a') ->



More information about the ghc-commits mailing list