"inplace/bin/ghc-stage1" -prof -H64m -O0 -fasm -dcore-lint -package-name ghc-6.13.20100801 -hide-all-packages -i -icompiler/basicTypes -icompiler/cmm -icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main -icompiler/nativeGen -icompiler/parser -icompiler/prelude -icompiler/profiling -icompiler/rename -icompiler/simplCore -icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils -icompiler/vectorise -icompiler/stage2/build -icompiler/stage2/build/autogen -Icompiler/stage2/build -Icompiler/stage2/build/autogen -Icompiler/../libffi/build/include -Icompiler/stage2 -Icompiler/../libraries/base/cbits -Icompiler/../libraries/base/include -Icompiler/. -Icompiler/parser -Icompiler/utils -optP-DGHCI -optP-include -optPcompiler/stage2/build/autogen/cabal_macros.h -package Cabal-1.9.2 -package array-0.3.0.0 -package base-4.3.0.0 -package bin-package-db-0.0.0.0 -package bytestring-0.9.1.7 -package containers-0.3.0.0 -package directory-1.0.1.2 -package filepath-1.2.0.0 -package hpc-0.5.0.5 -package old-time-1.0.0.5 -package process-1.0.1.3 -package template-haskell-2.4.0.0 -package unix-2.4.0.1 -Wall -fno-warn-name-shadowing -fno-warn-orphans -XCPP -XMagicHash -XUnboxedTuples -XPatternGuards -XForeignFunctionInterface -XEmptyDataDecls -XTypeSynonymInstances -XMultiParamTypeClasses -XFlexibleInstances -XRank2Types -XScopedTypeVariables -XDeriveDataTypeable -XRelaxedPolyRec -DGHCI_TABLES_NEXT_TO_CODE -auto-all -DSTAGE=2 -no-user-package-conf -rtsopts -O -fasm -dcore-lint -odir compiler/stage2/build -hidir compiler/stage2/build -stubdir compiler/stage2/build -hisuf p_hi -osuf p_o -hcsuf p_hc -c compiler/cmm/StackColor.hs -o compiler/stage2/build/StackColor.p_o *** Core Lint errors : in result of Float out(not lambdas, constants) *** : [RHS of ds_s1TX :: Data.Maybe.Maybe GHC.Types.Int] Recursive or top-level binder has strict demand info: ds_s1TX Binder's demand info: X *** Offending Program *** lvl_s1BA :: GHC.Types.Int [LclId, Str=DmdType m, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 2}] lvl_s1BA = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} GHC.Types.I# 2 lvl_s1Bz :: GHC.Types.Int [LclId, Str=DmdType m, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 2}] lvl_s1Bz = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} GHC.Types.I# 0 lvl_s1By :: GHC.Types.Int [LclId, Str=DmdType m, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 2}] lvl_s1By = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} GHC.Types.I# 0 lvl_s1Bw :: GHC.Types.Int [LclId, Str=DmdType m, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 2}] lvl_s1Bw = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} GHC.Types.I# 0 lvl_s1Bt :: GHC.Types.Int [LclId, Str=DmdType m, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 2}] lvl_s1Bt = __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} GHC.Types.I# 0 lvl_s1Bs :: StackPlacements.SlotClass -> (StackPlacements.SlotClass, GHC.Types.Int) [LclId, Arity=1, Str=DmdType Lm, Unf=Unf{Src=InlineRule, TopLvl=True, Arity=1, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=True) Tmpl= \ (c_a10Z [Dmd=Just L] :: StackPlacements.SlotClass) -> __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} (c_a10Z, lvl_s1Bt)}] lvl_s1Bs = \ (c_a10Z [Dmd=Just L] :: StackPlacements.SlotClass) -> __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} (c_a10Z, lvl_s1Bt) lvl_s1Bq :: forall b_a1yo. (GHC.Types.Char -> b_a1yo -> b_a1yo) -> b_a1yo -> b_a1yo [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=True, ConLike=True, Cheap=False, Expandable=False, Guidance=IF_ARGS [] 10 6}] lvl_s1Bq = \ (@ b_a1yo) -> __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} GHC.Base.unpackFoldrCString# @ b_a1yo "slot classes out of order" lvl_s1Bp :: [GHC.Types.Char] [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=False, ConLike=False, Cheap=False, Expandable=False, Guidance=IF_ARGS [] 3 0}] lvl_s1Bp = __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} lvl_s1Bq @ [GHC.Types.Char] (GHC.Types.: @ GHC.Types.Char) (GHC.Types.[] @ GHC.Types.Char) lvl_s1Bo :: (StackPlacements.SlotClass, GHC.Types.Int) [LclId, Str=DmdType b, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=False, ConLike=False, Cheap=True, Expandable=True, Guidance=NEVER}] lvl_s1Bo = __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} Panic.panic @ (StackPlacements.SlotClass, GHC.Types.Int) lvl_s1Bp $wa_s1Tj :: StackPlacements.SlotClass -> GHC.Types.Int -> StackPlacements.SlotClass -> GHC.Types.Int -> (# StackPlacements.SlotClass, GHC.Types.Int #) [LclId, Arity=4, Str=DmdType SLSL, Unf=Unf{Src=, TopLvl=True, Arity=4, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [16 0 10 0] 23 3}] $wa_s1Tj = \ (ww_s1SZ :: StackPlacements.SlotClass) (ww_s1T0 :: GHC.Types.Int) (ww_s1T4 :: StackPlacements.SlotClass) (ww_s1T5 :: GHC.Types.Int) -> case __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} case ww_s1SZ of _ { StackPlacements.SlotClass32 -> case ww_s1T4 of _ { StackPlacements.SlotClass32 -> (StackPlacements.SlotClass32, GHC.Base.$fOrdInt_$cmax ww_s1T0 ww_s1T5); StackPlacements.SlotClass64 -> lvl_s1Bo; StackPlacements.SlotClass128 -> lvl_s1Bo }; StackPlacements.SlotClass64 -> case ww_s1T4 of _ { __DEFAULT -> lvl_s1Bo; StackPlacements.SlotClass64 -> (StackPlacements.SlotClass64, GHC.Base.$fOrdInt_$cmax ww_s1T0 ww_s1T5) }; StackPlacements.SlotClass128 -> case ww_s1T4 of _ { __DEFAULT -> lvl_s1Bo; StackPlacements.SlotClass128 -> (StackPlacements.SlotClass128, GHC.Base.$fOrdInt_$cmax ww_s1T0 ww_s1T5) } } of _ { (ww_s1Tn, ww_s1To) -> (# ww_s1Tn, ww_s1To #) } lvl_s1Bn :: GHC.Integer.Type.Integer [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 2}] lvl_s1Bn = __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} GHC.Integer.Type.S# 1 lvl_s1Bm :: CmmSpillReload.DualLive [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=False, ConLike=False, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 0}] lvl_s1Bm = __scc {foldConflicts ghc-6.13.20100801:StackColor !} __scc {factzubot ghc-6.13.20100801:DFMonad} case CmmSpillReload.dualLiveLattice of _ { DFMonad.DataflowLattice _ ds2_a1u2 [Dmd=Just S] _ _ -> ds2_a1u2 } lvl_s1Bj :: CmmSpillReload.DualLive [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=False, ConLike=False, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 0}] lvl_s1Bj = __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor !} __scc {factzubot ghc-6.13.20100801:DFMonad} case CmmSpillReload.dualLiveLattice of _ { DFMonad.DataflowLattice _ ds2_a1u2 [Dmd=Just S] _ _ -> ds2_a1u2 } lvl_s1Bi :: CmmSpillReload.DualLive [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=False, ConLike=False, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 0}] lvl_s1Bi = __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor !} __scc {factzubot ghc-6.13.20100801:DFMonad} case CmmSpillReload.dualLiveLattice of _ { DFMonad.DataflowLattice _ ds2_a1u2 [Dmd=Just S] _ _ -> ds2_a1u2 } zero_s1B4 :: [(StackPlacements.SlotClass, GHC.Types.Int)] [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=False, ConLike=False, Cheap=False, Expandable=False, Guidance=IF_ARGS [] 3 0}] zero_s1B4 = __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} GHC.Base.map @ StackPlacements.SlotClass @ (StackPlacements.SlotClass, GHC.Types.Int) lvl_s1Bs StackPlacements.allSlotClasses lvl_s1Bv :: (GraphBase.Graph CmmExpr.LocalReg StackPlacements.SlotClass StackPlacements.StackPlacement, [(StackPlacements.SlotClass, GHC.Types.Int)]) [LclId, Str=DmdType m, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [] 1 3}] lvl_s1Bv = __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} (GraphBase.initGraph @ CmmExpr.LocalReg @ StackPlacements.SlotClass @ StackPlacements.StackPlacement, zero_s1B4) a_s1AZ [InlPrag=INLINE[0]] :: (StackPlacements.SlotClass, GHC.Types.Int) -> (StackPlacements.SlotClass, GHC.Types.Int) -> (StackPlacements.SlotClass, GHC.Types.Int) [LclId, Arity=2, Str=DmdType U(SL)U(SL)m, Unf=Unf{Src=Worker=$wa_s1Tj, TopLvl=True, Arity=2, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False) Tmpl= \ (w_s1SX [Occ=Once!] :: (StackPlacements.SlotClass, GHC.Types.Int)) (w_s1T2 [Occ=Once!] :: (StackPlacements.SlotClass, GHC.Types.Int)) -> case w_s1SX of _ { (ww_s1SZ [Occ=Once], ww_s1T0 [Occ=Once]) -> case w_s1T2 of _ { (ww_s1T4 [Occ=Once], ww_s1T5 [Occ=Once]) -> case $wa_s1Tj ww_s1SZ ww_s1T0 ww_s1T4 ww_s1T5 of _ { (# ww_s1Tn [Occ=Once], ww_s1To [Occ=Once] #) -> (ww_s1Tn, ww_s1To) } } }}] a_s1AZ = \ (w_s1SX :: (StackPlacements.SlotClass, GHC.Types.Int)) (w_s1T2 :: (StackPlacements.SlotClass, GHC.Types.Int)) -> case w_s1SX of _ { (ww_s1SZ, ww_s1T0) -> case w_s1T2 of _ { (ww_s1T4, ww_s1T5) -> case $wa_s1Tj ww_s1SZ ww_s1T0 ww_s1T4 ww_s1T5 of _ { (# ww_s1Tn, ww_s1To #) -> (ww_s1Tn, ww_s1To) } } } lit_s1AQ :: GHC.Types.Int [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=False, ConLike=False, Cheap=False, Expandable=False, Guidance=IF_ARGS [] 9 4}] lit_s1AQ = __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} case lvl_s1Bn of _ { GHC.Integer.Type.S# i_a1x5 [Dmd=Just L] -> GHC.Types.I# i_a1x5; GHC.Integer.Type.J# s_a1x9 [Dmd=Just L] d_a1xa [Dmd=Just L] -> case {__pkg_ccall_GC integer-gmp integer_cmm_integer2Intzh GHC.Prim.Int# -> GHC.Prim.ByteArray# -> GHC.Prim.Int#}_a1x8 s_a1x9 d_a1xa of ww_a1xc [Dmd=Just L] { __DEFAULT -> GHC.Types.I# ww_a1xc } } addReg_s1AU :: CmmExpr.LocalReg -> [(StackPlacements.SlotClass, GHC.Types.Int)] -> [(StackPlacements.SlotClass, GHC.Types.Int)] [LclId, Arity=2, Str=DmdType LS, Unf=Unf{Src=, TopLvl=True, Arity=2, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [6 0] 43 0}] addReg_s1AU = \ (reg_a16s [Dmd=Just L] :: CmmExpr.LocalReg) (counts_a16t :: [(StackPlacements.SlotClass, GHC.Types.Int)]) -> __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor !} GHC.Base.map @ (StackPlacements.SlotClass, GHC.Types.Int) @ (StackPlacements.SlotClass, GHC.Types.Int) (\ (ds_d1n5 :: (StackPlacements.SlotClass, GHC.Types.Int)) -> case ds_d1n5 of _ { (c_a16v [Dmd=Just L], n_a16w [Dmd=Just D(L)]) -> (c_a16v, case c_a16v of _ { StackPlacements.SlotClass32 -> case __scc {slotClass ghc-6.13.20100801:StackColor} case reg_a16s of _ { CmmExpr.LocalReg _ ty_a16z [Dmd=Just U(AS)] -> case __scc {typeWidth ghc-6.13.20100801:CmmExpr} case ty_a16z of _ { CmmExpr.CmmType _ w_a1nb [Dmd=Just S] -> w_a1nb } of _ { __DEFAULT -> StackPlacements.SlotClass32; CmmExpr.W64 -> StackPlacements.SlotClass64; CmmExpr.W80 -> StackPlacements.SlotClass64; CmmExpr.W128 -> StackPlacements.SlotClass128 } } of _ { StackPlacements.SlotClass32 -> GHC.Base.plusInt n_a16w lit_s1AQ; StackPlacements.SlotClass64 -> n_a16w; StackPlacements.SlotClass128 -> n_a16w }; StackPlacements.SlotClass64 -> case __scc {slotClass ghc-6.13.20100801:StackColor} case reg_a16s of _ { CmmExpr.LocalReg _ ty_a16z [Dmd=Just U(AS)] -> case __scc {typeWidth ghc-6.13.20100801:CmmExpr} case ty_a16z of _ { CmmExpr.CmmType _ w_a1nb [Dmd=Just S] -> w_a1nb } of _ { __DEFAULT -> StackPlacements.SlotClass32; CmmExpr.W64 -> StackPlacements.SlotClass64; CmmExpr.W80 -> StackPlacements.SlotClass64; CmmExpr.W128 -> StackPlacements.SlotClass128 } } of _ { __DEFAULT -> n_a16w; StackPlacements.SlotClass64 -> GHC.Base.plusInt n_a16w lit_s1AQ }; StackPlacements.SlotClass128 -> case __scc {slotClass ghc-6.13.20100801:StackColor} case reg_a16s of _ { CmmExpr.LocalReg _ ty_a16z [Dmd=Just U(AS)] -> case __scc {typeWidth ghc-6.13.20100801:CmmExpr} case ty_a16z of _ { CmmExpr.CmmType _ w_a1nb [Dmd=Just S] -> w_a1nb } of _ { __DEFAULT -> StackPlacements.SlotClass32; CmmExpr.W64 -> StackPlacements.SlotClass64; CmmExpr.W80 -> StackPlacements.SlotClass64; CmmExpr.W128 -> StackPlacements.SlotClass128 } } of _ { __DEFAULT -> n_a16w; StackPlacements.SlotClass128 -> GHC.Base.plusInt n_a16w lit_s1AQ } }) }) counts_a16t poly_postorder_dfs_s1Ay :: forall m_a1h1. ZipCfg.LGraph m_a1h1 ZipCfgCmmRep.Last -> [ZipCfg.Block m_a1h1 ZipCfgCmmRep.Last] [LclId, Str=DmdType, Unf=Unf{Src=, TopLvl=True, Arity=0, Value=False, ConLike=False, Cheap=False, Expandable=True, Guidance=IF_ARGS [] 2 0}] poly_postorder_dfs_s1Ay = \ (@ m_a1h1) -> __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor !} ZipCfg.postorder_dfs @ ZipCfgCmmRep.Last @ m_a1h1 ZipCfgCmmRep.$fLastNodeLast $sfold_edge_facts_b_s1Au :: forall a_a1h0 m_a1h1. (CmmSpillReload.DualLive -> a_a1h0 -> a_a1h0) -> ZipDataflow.BackwardTransfers m_a1h1 ZipCfgCmmRep.Last CmmSpillReload.DualLive -> ZipCfg.LGraph m_a1h1 ZipCfgCmmRep.Last -> (BlockId.BlockId -> CmmSpillReload.DualLive) -> a_a1h0 -> a_a1h0 [LclId, Arity=5, Str=DmdType LLLLL, Unf=Unf{Src=, TopLvl=True, Arity=5, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=NEVER}] $sfold_edge_facts_b_s1Au = \ (@ a_a1h0) (@ m_a1h1) (f_a10n [Dmd=Just L] :: CmmSpillReload.DualLive -> a_a1h0 -> a_a1h0) (comp_a10o [Dmd=Just L] :: ZipDataflow.BackwardTransfers m_a1h1 ZipCfgCmmRep.Last CmmSpillReload.DualLive) (graph_a10p [Dmd=Just L] :: ZipCfg.LGraph m_a1h1 ZipCfgCmmRep.Last) (env_a10q [Dmd=Just L] :: BlockId.BlockId -> CmmSpillReload.DualLive) (z_a10r [Dmd=Just L] :: a_a1h0) -> letrec { head_fold_s1TJ [Occ=LoopBreaker] :: ZipCfg.ZHead m_a1h1 -> CmmSpillReload.DualLive -> a_a1h0 -> a_a1h0 [LclId, Arity=3, Str=DmdType SLL] head_fold_s1TJ = \ (ds_d1lZ :: ZipCfg.ZHead m_a1h1) (out_a10D [Dmd=Just L] :: CmmSpillReload.DualLive) (z_a10E :: a_a1h0) -> __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor !} case ds_d1lZ of _ { ZipCfg.ZFirst id_a10F [Dmd=Just L] -> f_a10n ((__scc {btzufirstzuin ghc-6.13.20100801:ZipDataflow} case comp_a10o of _ { ZipDataflow.BackwardTransfers ds1_a1sC [Dmd=Just C(C(S))] _ _ -> ds1_a1sC }) id_a10F out_a10D) (f_a10n out_a10D z_a10E); ZipCfg.ZHead h_a10B [Dmd=Just S] m_a10C [Dmd=Just L] -> head_fold_s1TJ h_a10B ((__scc {btzumiddlezuin ghc-6.13.20100801:ZipDataflow} case comp_a10o of _ { ZipDataflow.BackwardTransfers _ ds2_a1sN [Dmd=Just C(C(S))] _ -> ds2_a1sN }) m_a10C out_a10D) (f_a10n out_a10D z_a10E) }; } in letrec { lgo_s1TL [Occ=LoopBreaker] :: a_a1h0 -> [ZipCfg.Block m_a1h1 ZipCfgCmmRep.Last] -> a_a1h0 [LclId, Arity=2, Str=DmdType LS] lgo_s1TL = \ (z_a1sW :: a_a1h0) (ds_a1sX :: [ZipCfg.Block m_a1h1 ZipCfgCmmRep.Last]) -> __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor !} case ds_a1sX of _ { [] -> z_a1sW; : x_a1t2 [Dmd=Just D(LL)] xs_a1t3 [Dmd=Just S] -> lgo_s1TL (case __scc {unzzip ghc-6.13.20100801:ZipCfg} case x_a1t2 of _ { ZipCfg.Block id_a1tv [Dmd=Just L] t_a1tw [Dmd=Just L] -> ZipCfg.ZBlock @ m_a1h1 @ ZipCfgCmmRep.Last (ZipCfg.ZFirst @ m_a1h1 id_a1tv) t_a1tw } of _ { ZipCfg.ZBlock ww_s1SG ww_s1SH -> case __scc {gotozuend ghc-6.13.20100801:ZipCfg} ZipCfg.ht_to_last @ m_a1h1 @ ZipCfgCmmRep.Last ww_s1SG ww_s1SH of _ { (ww_s1SK, ww_s1SL) -> head_fold_s1TJ ww_s1SK (case ww_s1SL of _ { ZipCfg.LastExit -> lvl_s1Bi; ZipCfg.LastOther l_a10A [Dmd=Just L] -> (__scc {btzulastzuin ghc-6.13.20100801:ZipDataflow} case comp_a10o of _ { ZipDataflow.BackwardTransfers _ _ ds3_a1uj [Dmd=Just C(C(S))] -> ds3_a1uj }) l_a10A env_a10q }) z_a1sW } }) xs_a1t3 }; } in __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor} lgo_s1TL z_a10r (poly_postorder_dfs_s1Ay @ m_a1h1 graph_a10p) lvl_s1Um :: GHC.Types.Int -> GHC.Types.Int [LclId, Arity=1, Str=DmdType Tb] lvl_s1Um = \ (n32_s1TV :: GHC.Types.Int) -> __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} n32_s1TV lvl_s1Un :: GHC.Types.Int -> GHC.Types.Int [LclId, Arity=1, Str=DmdType Tb] lvl_s1Un = \ (n32_s1TV :: GHC.Types.Int) -> __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} n32_s1TV StackColor.mkSizeOf :: StackColor.ClassCount -> StackPlacements.SlotClass -> GHC.Types.Int [LclIdX, Arity=1, Str=DmdType L, Unf=Unf{Src=, TopLvl=True, Arity=1, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [0] 35 6}] StackColor.mkSizeOf = \ (counts_a16A [Dmd=Just L] :: StackColor.ClassCount) -> let { ds_s1TN [Dmd=Just S] :: Data.Maybe.Maybe GHC.Types.Int [LclId, Str=DmdType] ds_s1TN = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} GHC.List.lookup @ StackPlacements.SlotClass @ GHC.Types.Int StackPlacements.$fEqSlotClass StackPlacements.SlotClass128 counts_a16A } in let { n128_s1TP [Dmd=Just D(L)] :: GHC.Types.Int [LclId, Str=DmdType] n128_s1TP = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} __scc {orElse ghc-6.13.20100801:Maybes} case ds_s1TN of _ { Data.Maybe.Nothing -> lvl_s1By; Data.Maybe.Just x_a1w2 [Dmd=Just S] -> x_a1w2 } } in let { n64_s1TT :: GHC.Types.Int [LclId, Str=DmdType] n64_s1TT = let { ds_s1TR [Dmd=Just S] :: Data.Maybe.Maybe GHC.Types.Int [LclId, Str=DmdType] ds_s1TR = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} GHC.List.lookup @ StackPlacements.SlotClass @ GHC.Types.Int StackPlacements.$fEqSlotClass StackPlacements.SlotClass64 counts_a16A } in __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} case __scc {orElse ghc-6.13.20100801:Maybes} case ds_s1TR of _ { Data.Maybe.Nothing -> lvl_s1Bz; Data.Maybe.Just x_a1w2 [Dmd=Just U(L)] -> x_a1w2 } of _ { GHC.Types.I# x_a1wW [Dmd=Just L] -> case lvl_s1BA of _ { GHC.Types.I# x_a1zu [Dmd=Just L] -> case n128_s1TP of _ { GHC.Types.I# y_a1zy [Dmd=Just L] -> GHC.Types.I# (GHC.Prim.+# x_a1wW (GHC.Prim.*# x_a1zu y_a1zy)) } } } } in letrec { ds_s1TX [Dmd=Just X] :: Data.Maybe.Maybe GHC.Types.Int [LclId, Str=DmdType] ds_s1TX = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} GHC.List.lookup @ StackPlacements.SlotClass @ GHC.Types.Int StackPlacements.$fEqSlotClass StackPlacements.SlotClass32 counts_a16A; n32_s1TV [Occ=LoopBreaker] :: GHC.Types.Int [LclId, Str=DmdType b] n32_s1TV = __scc {mkSizzeOf ghc-6.13.20100801:StackColor !} case __scc {orElse ghc-6.13.20100801:Maybes} case ds_s1TX of _ { Data.Maybe.Nothing -> lvl_s1Bw; Data.Maybe.Just x_a1w2 [Dmd=Just U(X)] -> x_a1w2 } of _ { GHC.Types.I# _ -> lvl_s1Um n32_s1TV }; } in \ (ds_d1lD :: StackPlacements.SlotClass) -> __scc {mkSizzeOf ghc-6.13.20100801:StackColor} case ds_d1lD of _ { StackPlacements.SlotClass32 -> lvl_s1Un n32_s1TV; StackPlacements.SlotClass64 -> n64_s1TT; StackPlacements.SlotClass128 -> n128_s1TP } StackColor.slotClass :: CmmExpr.LocalReg -> StackPlacements.SlotClass [LclIdX, Arity=1, Str=DmdType U(UU(AS)), Unf=Unf{Src=InlineRule, TopLvl=True, Arity=1, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False) Tmpl= \ (ds_d1lO :: CmmExpr.LocalReg) -> __scc {slotClass ghc-6.13.20100801:StackColor} case ds_d1lO of _ { CmmExpr.LocalReg _ ty_a16z [Dmd=Just U(AS)] -> case __scc {typeWidth ghc-6.13.20100801:CmmExpr} case ty_a16z of _ { CmmExpr.CmmType _ w_a1nb [Occ=Once, Dmd=Just S] -> w_a1nb } of _ { __DEFAULT -> StackPlacements.SlotClass32; CmmExpr.W64 -> StackPlacements.SlotClass64; CmmExpr.W80 -> StackPlacements.SlotClass64; CmmExpr.W128 -> StackPlacements.SlotClass128 } }}] StackColor.slotClass = \ (ds_d1lO :: CmmExpr.LocalReg) -> __scc {slotClass ghc-6.13.20100801:StackColor} case ds_d1lO of _ { CmmExpr.LocalReg _ ty_a16z [Dmd=Just U(AS)] -> case __scc {typeWidth ghc-6.13.20100801:CmmExpr} case ty_a16z of _ { CmmExpr.CmmType _ w_a1nb [Dmd=Just S] -> w_a1nb } of _ { __DEFAULT -> StackPlacements.SlotClass32; CmmExpr.W64 -> StackPlacements.SlotClass64; CmmExpr.W80 -> StackPlacements.SlotClass64; CmmExpr.W128 -> StackPlacements.SlotClass128 } } StackColor.graphAddConflictSet :: CmmExpr.RegSet -> StackColor.IGraph -> StackColor.IGraph [LclIdX, Arity=2, Str=DmdType SL, Unf=Unf{Src=, TopLvl=True, Arity=2, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [0 0] 5 0}] StackColor.graphAddConflictSet = \ (set_a16x :: CmmExpr.RegSet) (graph_a16y [Dmd=Just L] :: StackColor.IGraph) -> __scc {graphAddConflictSet ghc-6.13.20100801:StackColor} GraphOps.addConflicts @ CmmExpr.LocalReg @ StackPlacements.SlotClass @ StackPlacements.StackPlacement CmmExpr.$fUniquableLocalReg set_a16x StackColor.slotClass graph_a16y lvl_s1Bu [InlPrag=INLINE[0]] :: CmmExpr.RegSet -> (StackColor.IGraph, [(StackPlacements.SlotClass, GHC.Types.Int)]) -> (StackColor.IGraph, [(StackPlacements.SlotClass, GHC.Types.Int)]) [LclId, Arity=2, Str=DmdType LU(LL)m, Unf=Unf{Src=InlineRule, TopLvl=True, Arity=2, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False) Tmpl= \ (w_s1Tb :: CmmExpr.RegSet) (w_s1Tc [Occ=Once!] :: (StackColor.IGraph, [(StackPlacements.SlotClass, GHC.Types.Int)])) -> case w_s1Tc of _ { (ww_s1Te [Occ=Once], ww_s1Tf [Occ=Once]) -> (StackColor.graphAddConflictSet w_s1Tb ww_s1Te, GHC.List.zipWith @ (StackPlacements.SlotClass, GHC.Types.Int) @ (StackPlacements.SlotClass, GHC.Types.Int) @ (StackPlacements.SlotClass, GHC.Types.Int) a_s1AZ ((__scc {foldUniqSet ghc-6.13.20100801:UniqSet} UniqFM.foldUFM @ CmmExpr.LocalReg @ [(StackPlacements.SlotClass, GHC.Types.Int)]) addReg_s1AU zero_s1B4 w_s1Tb) ww_s1Tf) }}] lvl_s1Bu = \ (w_s1Tb :: CmmExpr.RegSet) (w_s1Tc :: (StackColor.IGraph, [(StackPlacements.SlotClass, GHC.Types.Int)])) -> case w_s1Tc of _ { (ww_s1Te, ww_s1Tf) -> (StackColor.graphAddConflictSet w_s1Tb ww_s1Te, GHC.List.zipWith @ (StackPlacements.SlotClass, GHC.Types.Int) @ (StackPlacements.SlotClass, GHC.Types.Int) @ (StackPlacements.SlotClass, GHC.Types.Int) a_s1AZ ((__scc {foldUniqSet ghc-6.13.20100801:UniqSet} UniqFM.foldUFM @ CmmExpr.LocalReg @ [(StackPlacements.SlotClass, GHC.Types.Int)]) addReg_s1AU zero_s1B4 w_s1Tb) ww_s1Tf) } StackColor.foldConflicts :: forall a_a10j. (CmmExpr.RegSet -> a_a10j -> a_a10j) -> a_a10j -> ZipCfg.LGraph ZipCfgCmmRep.Middle ZipCfgCmmRep.Last -> OptimizationFuel.FuelMonad a_a10j [LclIdX, Arity=3, Str=DmdType LLS(LL), Unf=Unf{Src=, TopLvl=True, Arity=3, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=NEVER}] StackColor.foldConflicts = \ (@ a_a1iH) (f_a10I [Dmd=Just L] :: CmmExpr.RegSet -> a_a1iH -> a_a1iH) (z_a10J [Dmd=Just L] :: a_a1iH) (g_a10K :: ZipCfg.LGraph ZipCfgCmmRep.Middle ZipCfgCmmRep.Last) -> __scc {foldConflicts ghc-6.13.20100801:StackColor} case g_a10K of wild_B1 [Dmd=Just L] { ZipCfg.LGraph entry_a10L [Dmd=Just L] ds_d1m2 [Dmd=Just L] -> let { lvl_s1U5 :: CmmSpillReload.DualLive -> a_a1iH -> a_a1iH [LclId, Arity=2, Str=DmdType LL] lvl_s1U5 = \ (dual_a10Q [Dmd=Just L] :: CmmSpillReload.DualLive) (z_a10R :: a_a1iH) -> f_a10I (__scc {onzustack ghc-6.13.20100801:CmmSpillReload} case dual_a10Q of _ { CmmSpillReload.DualLive ds1_a1vS [Dmd=Just S] _ -> ds1_a1vS }) z_a10R } in let { a_s1U1 [Dmd=Just L] :: OptimizationFuel.FuelState -> UniqSupply.UniqSM (BlockId.BlockEnv CmmSpillReload.DualLive, OptimizationFuel.FuelState) [LclId, Str=DmdType] a_s1U1 = CmmSpillReload.$wdualLiveness ((__scc {emptyBlockSet ghc-6.13.20100801:BlockId} __scc {emptyUniqSet ghc-6.13.20100801:UniqSet} __scc {emptyUFM ghc-6.13.20100801:UniqFM} Data.IntMap.Nil @ Unique.Unique) `cast` (trans (sym UniqFM.NTCo:UniqFM Unique.Unique) (sym BlockId.NTCo:BlockSet) :: Data.IntMap.IntMap Unique.Unique ~ BlockId.BlockSet)) entry_a10L ds_d1m2 } in let { lvl_s1U3 [Dmd=Just L] :: ZipDataflow.BackwardTransfers ZipCfgCmmRep.Middle ZipCfgCmmRep.Last CmmSpillReload.DualLive [LclId, Str=DmdType] lvl_s1U3 = case CmmSpillReload.$wdualLiveTransfers entry_a10L ((__scc {emptyBlockSet ghc-6.13.20100801:BlockId} __scc {emptyUniqSet ghc-6.13.20100801:UniqSet} __scc {emptyUFM ghc-6.13.20100801:UniqFM} Data.IntMap.Nil @ Unique.Unique) `cast` (trans (sym UniqFM.NTCo:UniqFM Unique.Unique) (sym BlockId.NTCo:BlockSet) :: Data.IntMap.IntMap Unique.Unique ~ BlockId.BlockSet)) of _ { (# ww_a1R0 [Dmd=Just L], ww_a1R1 [Dmd=Just L], ww_a1R2 [Dmd=Just L] #) -> ZipDataflow.BackwardTransfers @ ZipCfgCmmRep.Middle @ ZipCfgCmmRep.Last @ CmmSpillReload.DualLive ww_a1R0 ww_a1R1 ww_a1R2 } } in let { k_s1Ub :: BlockId.BlockEnv CmmSpillReload.DualLive -> OptimizationFuel.FuelMonad a_a1iH [LclId, Arity=1, Str=DmdType L] k_s1Ub = \ (env_a10M [Dmd=Just L] :: BlockId.BlockEnv CmmSpillReload.DualLive) -> let { a2_s1U9 [Dmd=Just L] :: a_a1iH [LclId, Str=DmdType] a2_s1U9 = $sfold_edge_facts_b_s1Au @ a_a1iH @ ZipCfgCmmRep.Middle lvl_s1U5 lvl_s1U3 g_a10K (\ (id_a10P :: BlockId.BlockId) -> let { ds_s1U7 [Dmd=Just S] :: Data.Maybe.Maybe CmmSpillReload.DualLive [LclId, Str=DmdType] ds_s1U7 = __scc {lookupBlockEnv ghc-6.13.20100801:BlockId} case id_a10P of _ { BlockId.BlockId id_a1w9 [Dmd=Just U(L)] -> BlockId.lookupBlockEnv1 @ CmmSpillReload.DualLive (env_a10M `cast` (BlockId.NTCo:BlockEnv CmmSpillReload.DualLive :: BlockId.BlockEnv CmmSpillReload.DualLive ~ UniqFM.UniqFM CmmSpillReload.DualLive)) id_a1w9 } } in __scc {orElse ghc-6.13.20100801:Maybes} case ds_s1U7 of _ { Data.Maybe.Nothing -> lvl_s1Bm; Data.Maybe.Just x_a1w2 [Dmd=Just S] -> x_a1w2 }) z_a10J } in (\ (s_a1vr :: OptimizationFuel.FuelState) (eta_a1vs :: UniqSupply.UniqSupply) -> ((a2_s1U9, s_a1vr), eta_a1vs)) `cast` (trans (OptimizationFuel.FuelState -> sym (UniqSupply.NTCo:UniqSM (a_a1iH, OptimizationFuel.FuelState))) (sym (OptimizationFuel.NTCo:FuelMonad a_a1iH)) :: (OptimizationFuel.FuelState -> UniqSupply.UniqSupply -> ((a_a1iH, OptimizationFuel.FuelState), UniqSupply.UniqSupply)) ~ OptimizationFuel.FuelMonad a_a1iH) } in (\ (s_a1vx :: OptimizationFuel.FuelState) -> let { ds1_s1Ud [Dmd=Just L] :: UniqSupply.UniqSM (BlockId.BlockEnv CmmSpillReload.DualLive, OptimizationFuel.FuelState) [LclId, Str=DmdType] ds1_s1Ud = a_s1U1 s_a1vx } in (\ (us_a1vz :: UniqSupply.UniqSupply) -> case (ds1_s1Ud `cast` (UniqSupply.NTCo:UniqSM (BlockId.BlockEnv CmmSpillReload.DualLive, OptimizationFuel.FuelState) :: UniqSupply.UniqSM (BlockId.BlockEnv CmmSpillReload.DualLive, OptimizationFuel.FuelState) ~ (UniqSupply.UniqSupply -> ((BlockId.BlockEnv CmmSpillReload.DualLive, OptimizationFuel.FuelState), UniqSupply.UniqSupply)))) us_a1vz of _ { (result_a1vC [Dmd=Just U(LL)], us'_a1vD [Dmd=Just L]) -> case result_a1vC of _ { (a2_a1vH [Dmd=Just L], s'_a1vI [Dmd=Just L]) -> let { ds11_s1Uf [Dmd=Just C(S)] :: UniqSupply.UniqSM (a_a1iH, OptimizationFuel.FuelState) [LclId, Str=DmdType] ds11_s1Uf = ((k_s1Ub a2_a1vH) `cast` (OptimizationFuel.NTCo:FuelMonad a_a1iH :: OptimizationFuel.FuelMonad a_a1iH ~ (OptimizationFuel.FuelState -> UniqSupply.UniqSM (a_a1iH, OptimizationFuel.FuelState)))) s'_a1vI } in ((__scc {unUSM ghc-6.13.20100801:UniqSupply} ds11_s1Uf) `cast` (UniqSupply.NTCo:UniqSM (a_a1iH, OptimizationFuel.FuelState) :: UniqSupply.UniqSM (a_a1iH, OptimizationFuel.FuelState) ~ (UniqSupply.UniqSupply -> ((a_a1iH, OptimizationFuel.FuelState), UniqSupply.UniqSupply)))) us'_a1vD } }) `cast` (sym (UniqSupply.NTCo:UniqSM (a_a1iH, OptimizationFuel.FuelState)) :: (UniqSupply.UniqSupply -> ((a_a1iH, OptimizationFuel.FuelState), UniqSupply.UniqSupply)) ~ UniqSupply.UniqSM (a_a1iH, OptimizationFuel.FuelState))) `cast` (sym (OptimizationFuel.NTCo:FuelMonad a_a1iH) :: (OptimizationFuel.FuelState -> UniqSupply.UniqSM (a_a1iH, OptimizationFuel.FuelState)) ~ OptimizationFuel.FuelMonad a_a1iH) } StackColor.buildIGraphAndCounts :: ZipCfg.LGraph ZipCfgCmmRep.Middle ZipCfgCmmRep.Last -> OptimizationFuel.FuelMonad (StackColor.IGraph, StackColor.ClassCount) [LclIdX, Arity=1, Str=DmdType S(LL), Unf=Unf{Src=, TopLvl=True, Arity=1, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=IF_ARGS [0] 4 0}] StackColor.buildIGraphAndCounts = \ (g_a10S :: ZipCfg.LGraph ZipCfgCmmRep.Middle ZipCfgCmmRep.Last) -> __scc {buildIGraphAndCounts ghc-6.13.20100801:StackColor} StackColor.foldConflicts @ (StackColor.IGraph, [(StackPlacements.SlotClass, GHC.Types.Int)]) lvl_s1Bu lvl_s1Bv g_a10S StackColor.fold_edge_facts_b :: forall l_a10k a_a10l m_a10m. ZipCfg.LastNode l_a10k => (CmmSpillReload.DualLive -> a_a10l -> a_a10l) -> ZipDataflow.BackwardTransfers m_a10m l_a10k CmmSpillReload.DualLive -> ZipCfg.LGraph m_a10m l_a10k -> (BlockId.BlockId -> CmmSpillReload.DualLive) -> a_a10l -> a_a10l [LclIdX, Arity=1, Str=DmdType L, Unf=Unf{Src=, TopLvl=True, Arity=1, Value=True, ConLike=True, Cheap=True, Expandable=True, Guidance=NEVER}, RULES: "SPEC StackColor.fold_edge_facts_b [ZipCfgCmmRep.Last]" [ALWAYS] forall {@ a_a1h0 @ m_a1h1 $dLastNode_s1Av :: ZipCfg.LastNode ZipCfgCmmRep.Last} StackColor.fold_edge_facts_b @ ZipCfgCmmRep.Last @ a_a1h0 @ m_a1h1 $dLastNode_s1Av = $sfold_edge_facts_b_s1Au @ a_a1h0 @ m_a1h1] StackColor.fold_edge_facts_b = \ (@ l_a1gZ) (@ a_a1h0) (@ m_a1h1) ($dLastNode_a1iC [Dmd=Just L] :: ZipCfg.LastNode l_a1gZ) -> let { postorder_dfs_s1Uh [Dmd=Just L] :: ZipCfg.LGraph m_a1h1 l_a1gZ -> [ZipCfg.Block m_a1h1 l_a1gZ] [LclId, Str=DmdType] postorder_dfs_s1Uh = __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor !} ZipCfg.postorder_dfs @ l_a1gZ @ m_a1h1 $dLastNode_a1iC } in \ (f_a10n [Dmd=Just L] :: CmmSpillReload.DualLive -> a_a1h0 -> a_a1h0) (comp_a10o [Dmd=Just L] :: ZipDataflow.BackwardTransfers m_a1h1 l_a1gZ CmmSpillReload.DualLive) (graph_a10p [Dmd=Just L] :: ZipCfg.LGraph m_a1h1 l_a1gZ) (env_a10q [Dmd=Just L] :: BlockId.BlockId -> CmmSpillReload.DualLive) (z_a10r [Dmd=Just L] :: a_a1h0) -> letrec { head_fold_s1Uj [Occ=LoopBreaker] :: ZipCfg.ZHead m_a1h1 -> CmmSpillReload.DualLive -> a_a1h0 -> a_a1h0 [LclId, Arity=3, Str=DmdType SLL] head_fold_s1Uj = \ (ds_d1lZ :: ZipCfg.ZHead m_a1h1) (out_a10D [Dmd=Just L] :: CmmSpillReload.DualLive) (z_a10E :: a_a1h0) -> __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor !} case ds_d1lZ of _ { ZipCfg.ZFirst id_a10F [Dmd=Just L] -> f_a10n ((__scc {btzufirstzuin ghc-6.13.20100801:ZipDataflow} case comp_a10o of _ { ZipDataflow.BackwardTransfers ds1_a1sC [Dmd=Just C(C(S))] _ _ -> ds1_a1sC }) id_a10F out_a10D) (f_a10n out_a10D z_a10E); ZipCfg.ZHead h_a10B [Dmd=Just S] m_a10C [Dmd=Just L] -> head_fold_s1Uj h_a10B ((__scc {btzumiddlezuin ghc-6.13.20100801:ZipDataflow} case comp_a10o of _ { ZipDataflow.BackwardTransfers _ ds2_a1sN [Dmd=Just C(C(S))] _ -> ds2_a1sN }) m_a10C out_a10D) (f_a10n out_a10D z_a10E) }; } in letrec { lgo_s1Ul [Occ=LoopBreaker] :: a_a1h0 -> [ZipCfg.Block m_a1h1 l_a1gZ] -> a_a1h0 [LclId, Arity=2, Str=DmdType LS] lgo_s1Ul = \ (z_a1sW :: a_a1h0) (ds_a1sX :: [ZipCfg.Block m_a1h1 l_a1gZ]) -> __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor !} case ds_a1sX of _ { [] -> z_a1sW; : x_a1t2 [Dmd=Just D(LL)] xs_a1t3 [Dmd=Just S] -> lgo_s1Ul (case __scc {unzzip ghc-6.13.20100801:ZipCfg} case x_a1t2 of _ { ZipCfg.Block id_a1tv [Dmd=Just L] t_a1tw [Dmd=Just L] -> ZipCfg.ZBlock @ m_a1h1 @ l_a1gZ (ZipCfg.ZFirst @ m_a1h1 id_a1tv) t_a1tw } of _ { ZipCfg.ZBlock ww_s1SO ww_s1SP -> case __scc {gotozuend ghc-6.13.20100801:ZipCfg} ZipCfg.ht_to_last @ m_a1h1 @ l_a1gZ ww_s1SO ww_s1SP of _ { (ww_s1SS, ww_s1ST) -> head_fold_s1Uj ww_s1SS (case ww_s1ST of _ { ZipCfg.LastExit -> lvl_s1Bj; ZipCfg.LastOther l_a10A [Dmd=Just L] -> (__scc {btzulastzuin ghc-6.13.20100801:ZipDataflow} case comp_a10o of _ { ZipDataflow.BackwardTransfers _ _ ds3_a1uj [Dmd=Just C(C(S))] -> ds3_a1uj }) l_a10A env_a10q }) z_a1sW } }) xs_a1t3 }; } in __scc {foldzuedgezufactszub ghc-6.13.20100801:StackColor} lgo_s1Ul z_a10r (postorder_dfs_s1Uh graph_a10p) *** End of Offense *** : Compilation had errors make[1]: *** [compiler/stage2/build/StackColor.p_o] Error 1 make: *** [all] Error 2