diff options
Diffstat (limited to 'testsuite/tests/simplCore/should_compile/T7785.stderr')
-rw-r--r-- | testsuite/tests/simplCore/should_compile/T7785.stderr | 603 |
1 files changed, 263 insertions, 340 deletions
diff --git a/testsuite/tests/simplCore/should_compile/T7785.stderr b/testsuite/tests/simplCore/should_compile/T7785.stderr index f2f819f89a..504fdc1677 100644 --- a/testsuite/tests/simplCore/should_compile/T7785.stderr +++ b/testsuite/tests/simplCore/should_compile/T7785.stderr @@ -1,408 +1,331 @@ - -==================== Specialise ==================== -Result size of Specialise - = {terms: 293, types: 99, coercions: 11, joins: 0/2} +==================== Common sub-expression ==================== +Result size of Common sub-expression + = {terms: 181, types: 89, coercions: 5, joins: 0/1} -- RHS size: {terms: 5, types: 10, coercions: 0, joins: 0/0} -$cmyfmap_aG0 +$cmyfmap_aG7 :: forall a b. (Domain [] a, Domain [] b) => (a -> b) -> [a] -> [b] [LclId, Arity=4, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, + Str=<A><A><U><SU>, + Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, - Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=True)}] -$cmyfmap_aG0 - = \ (@a_aG3) (@b_aG4) _ [Occ=Dead] _ [Occ=Dead] -> - map @a_aG3 @b_aG4 + Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=True) + Tmpl= \ (@a_aGa) + (@b_aGb) + _ [Occ=Dead] + _ [Occ=Dead] + (eta_B0 [Occ=Once1, OS=OneShot] :: a_aGa -> b_aGb) + (eta_B1 [Occ=Once1, OS=OneShot] :: [a_aGa]) -> + GHC.Base.build + @b_aGb + (\ (@b1_aHe) + (c_aHf [Occ=Once1, OS=OneShot] :: b_aGb -> b1_aHe -> b1_aHe) + (n_aHg [Occ=Once1, OS=OneShot] :: b1_aHe) -> + GHC.Base.foldr + @a_aGa + @b1_aHe + (GHC.Base.mapFB @b_aGb @b1_aHe @a_aGa c_aHf eta_B0) + n_aHg + eta_B1)}] +$cmyfmap_aG7 + = \ (@a_aGa) + (@b_aGb) + _ [Occ=Dead, Dmd=A] + _ [Occ=Dead, Dmd=A, OS=OneShot] -> + map @a_aGa @b_aGb -- RHS size: {terms: 1, types: 0, coercions: 3, joins: 0/0} -Foo.$fMyFunctor[] [InlPrag=CONLIKE] :: MyFunctor [] +Foo.$fMyFunctor[] [InlPrag=INLINE (sat-args=0)] :: MyFunctor [] [LclIdX[DFunId(nt)], Arity=4, - Unf=DFun: \ -> Foo.C:MyFunctor TYPE: [] $cmyfmap_aG0] + Str=<A><A><U><SU>, + Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True, + WorkFree=True, Expandable=True, + Guidance=ALWAYS_IF(arity=0,unsat_ok=False,boring_ok=True) + Tmpl= $cmyfmap_aG7 + `cast` (Sym (Foo.N:MyFunctor[0] <[]>_N) + :: (forall a b. + (Domain [] a, Domain [] b) => + (a -> b) -> [a] -> [b]) + ~R# MyFunctor [])}] Foo.$fMyFunctor[] - = $cmyfmap_aG0 + = $cmyfmap_aG7 `cast` (Sym (Foo.N:MyFunctor[0] <[]>_N) :: (forall a b. (Domain [] a, Domain [] b) => (a -> b) -> [a] -> [b]) ~R# MyFunctor []) --- RHS size: {terms: 114, types: 12, coercions: 0, joins: 0/1} -$sshared_sHu :: Domain [] Int => [Int] -> [Int] -[LclId, Arity=1] -$sshared_sHu - = \ (irred_azD :: Domain [] Int) -> - let { - f_sHt :: [Int] -> [Int] - [LclId] - f_sHt - = myfmap - @[] - Foo.$fMyFunctor[] - @Int - @Int - irred_azD - irred_azD - GHC.Num.$fNumInt_$cnegate } in - \ (x_X4N :: [Int]) -> - f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - (f_sHt - x_X4N)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +-- RHS size: {terms: 2, types: 2, coercions: 0, joins: 0/0} +$sshared_sHD :: [Int] -> [Int] +[LclId, + Arity=1, + Str=<SU>, + Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True, + WorkFree=True, Expandable=True, + Guidance=ALWAYS_IF(arity=0,unsat_ok=True,boring_ok=False) + Tmpl= map @Int @Int GHC.Num.$fNumInt_$cnegate}] +$sshared_sHD = map @Int @Int GHC.Num.$fNumInt_$cnegate --- RHS size: {terms: 116, types: 16, coercions: 0, joins: 0/1} +-- RHS size: {terms: 115, types: 15, coercions: 2, joins: 0/1} shared :: forall (f :: * -> *). (MyFunctor f, Domain f Int) => f Int -> f Int [LclIdX, Arity=2, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=NEVER}, + Str=<UC1(CS(CS(U)))><U>, RULES: "SPEC shared @[]" - forall ($dMyFunctor_sHr :: MyFunctor []). - shared @[] $dMyFunctor_sHr - = $sshared_sHu] + forall ($dMyFunctor_sHz :: MyFunctor []) + (irred_sHA :: Domain [] Int). + shared @[] $dMyFunctor_sHz irred_sHA + = $sshared_sHD] shared - = \ (@(f_azB :: * -> *)) - ($dMyFunctor_azC :: MyFunctor f_azB) - (irred_azD :: Domain f_azB Int) -> + = \ (@(f_ayh :: * -> *)) + ($dMyFunctor_ayi [Dmd=UC1(CS(CS(U)))] :: MyFunctor f_ayh) + (irred_ayj :: Domain f_ayh Int) -> let { - f_sHq :: f_azB Int -> f_azB Int + f_sHy :: f_ayh Int -> f_ayh Int [LclId] - f_sHq - = myfmap - @f_azB - $dMyFunctor_azC - @Int - @Int - irred_azD - irred_azD - GHC.Num.$fNumInt_$cnegate } in - \ (x_X4N :: f_azB Int) -> - f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq - (f_sHq + f_sHy + = ($dMyFunctor_ayi + `cast` (Foo.N:MyFunctor[0] <f_ayh>_N + :: MyFunctor f_ayh + ~R# (forall a b. + (Domain f_ayh a, Domain f_ayh b) => + (a -> b) -> f_ayh a -> f_ayh b))) + @Int @Int irred_ayj irred_ayj GHC.Num.$fNumInt_$cnegate } in + \ (x_X4N :: f_ayh Int) -> + f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy + (f_sHy x_X4N)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) --- RHS size: {terms: 8, types: 4, coercions: 4, joins: 0/0} +-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} +lvl_sHI :: Int +[LclId] +lvl_sHI = GHC.Types.I# 0# + +-- RHS size: {terms: 6, types: 5, coercions: 0, joins: 0/0} foo :: [Int] -> [Int] [LclIdX, Arity=1, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [0] 60 0}] + Str=<U>, + Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True, + WorkFree=True, Expandable=True, + Guidance=ALWAYS_IF(arity=1,unsat_ok=True,boring_ok=False) + Tmpl= \ (xs_awV [Occ=Once1] :: [Int]) -> + GHC.Base.build + @Int + (\ (@b1_aHe) + (c_aHf [Occ=Once1, OS=OneShot] :: Int -> b1_aHe -> b1_aHe) + (n_aHg [Occ=Once1, OS=OneShot] :: b1_aHe) -> + GHC.Base.foldr + @Int + @b1_aHe + (GHC.Base.mapFB @Int @b1_aHe @Int c_aHf GHC.Num.$fNumInt_$cnegate) + n_aHg + (GHC.Types.: @Int lvl_sHI xs_awV))}] foo - = \ (xs_axd :: [Int]) -> - shared - @[] - Foo.$fMyFunctor[] - (GHC.Classes.(%%) - `cast` (Sub (Sym (Foo.D:R:Domain[]a[0] <Int>_N)) - :: (() :: Constraint) ~R# Domain [] Int)) - (GHC.Types.: @Int (GHC.Types.I# 0#) xs_axd) + = \ (xs_awV :: [Int]) -> + map + @Int + @Int + GHC.Num.$fNumInt_$cnegate + (GHC.Types.: @Int lvl_sHI xs_awV) + +-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} +lvl_sHJ :: Int +[LclId] +lvl_sHJ = lvl_sHI --- RHS size: {terms: 8, types: 4, coercions: 4, joins: 0/0} +-- RHS size: {terms: 6, types: 5, coercions: 0, joins: 0/0} bar :: [Int] -> [Int] [LclIdX, Arity=1, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [0] 60 10}] + Str=<1U>, + Cpr=m2, + Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True, + WorkFree=True, Expandable=True, + Guidance=ALWAYS_IF(arity=1,unsat_ok=True,boring_ok=False) + Tmpl= \ (xs_awW [Occ=Once1] :: [Int]) -> + GHC.Types.: + @Int + lvl_sHI + (GHC.Base.build + @Int + (\ (@b1_aHe) + (c_aHf [Occ=Once1, OS=OneShot] :: Int -> b1_aHe -> b1_aHe) + (n_aHg [Occ=Once1, OS=OneShot] :: b1_aHe) -> + GHC.Base.foldr + @Int + @b1_aHe + (GHC.Base.mapFB @Int @b1_aHe @Int c_aHf GHC.Num.$fNumInt_$cnegate) + n_aHg + xs_awW))}] bar - = \ (xs_axe :: [Int]) -> + = \ (xs_awW :: [Int]) -> GHC.Types.: - @Int - (GHC.Types.I# 0#) - (shared - @[] - Foo.$fMyFunctor[] - (GHC.Classes.(%%) - `cast` (Sub (Sym (Foo.D:R:Domain[]a[0] <Int>_N)) - :: (() :: Constraint) ~R# Domain [] Int)) - xs_axe) + @Int lvl_sHI (map @Int @Int GHC.Num.$fNumInt_$cnegate xs_awW) -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} -$trModule_sHj :: GHC.Prim.Addr# -[LclId, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 0}] -$trModule_sHj = "main"# +$trModule_sHr :: GHC.Prim.Addr# +[LclId] +$trModule_sHr = "main"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} -$trModule_sHk :: GHC.Types.TrName -[LclId, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}] -$trModule_sHk = GHC.Types.TrNameS $trModule_sHj +$trModule_sHs :: GHC.Types.TrName +[LclId] +$trModule_sHs = GHC.Types.TrNameS $trModule_sHr -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} -$trModule_sHl :: GHC.Prim.Addr# -[LclId, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 0}] -$trModule_sHl = "Foo"# +$trModule_sHt :: GHC.Prim.Addr# +[LclId] +$trModule_sHt = "Foo"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} -$trModule_sHm :: GHC.Types.TrName -[LclId, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}] -$trModule_sHm = GHC.Types.TrNameS $trModule_sHl +$trModule_sHu :: GHC.Types.TrName +[LclId] +$trModule_sHu = GHC.Types.TrNameS $trModule_sHt -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0} Foo.$trModule :: GHC.Types.Module -[LclIdX, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}] -Foo.$trModule = GHC.Types.Module $trModule_sHk $trModule_sHm +[LclIdX] +Foo.$trModule = GHC.Types.Module $trModule_sHs $trModule_sHu -- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0} -$krep_aGA [InlPrag=[~]] :: GHC.Types.KindRep -[LclId, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}] -$krep_aGA +$krep_aGF [InlPrag=[~]] :: GHC.Types.KindRep +[LclId] +$krep_aGF = GHC.Types.KindRepTyConApp GHC.Types.$tcConstraint (GHC.Types.[] @GHC.Types.KindRep) -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0} -$krep_aGz [InlPrag=[~]] :: GHC.Types.KindRep -[LclId, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}] -$krep_aGz = GHC.Types.KindRepFun GHC.Types.krep$*Arr* $krep_aGA +$krep_aGE [InlPrag=[~]] :: GHC.Types.KindRep +[LclId] +$krep_aGE = GHC.Types.KindRepFun GHC.Types.krep$*Arr* $krep_aGF -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} -$tcMyFunctor_sHn :: GHC.Prim.Addr# -[LclId, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 40 0}] -$tcMyFunctor_sHn = "MyFunctor"# +$tcMyFunctor_sHv :: GHC.Prim.Addr# +[LclId] +$tcMyFunctor_sHv = "MyFunctor"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} -$tcMyFunctor_sHo :: GHC.Types.TrName -[LclId, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}] -$tcMyFunctor_sHo = GHC.Types.TrNameS $tcMyFunctor_sHn +$tcMyFunctor_sHw :: GHC.Types.TrName +[LclId] +$tcMyFunctor_sHw = GHC.Types.TrNameS $tcMyFunctor_sHv -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0} Foo.$tcMyFunctor :: GHC.Types.TyCon -[LclIdX, - Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, - WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}] +[LclIdX] Foo.$tcMyFunctor = GHC.Types.TyCon - 12837160846121910345##64 - 787075802864859973##64 + 12837160846121910345## + 787075802864859973## Foo.$trModule - $tcMyFunctor_sHo + $tcMyFunctor_sHw 0# - $krep_aGz - - - + $krep_aGE |