diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2018-01-03 10:48:26 +0000 |
---|---|---|
committer | Simon Peyton Jones <simonpj@microsoft.com> | 2018-01-03 11:26:20 +0000 |
commit | bd438b2d67ec8f5d8ac8472f13b3175b569951b9 (patch) | |
tree | 341778b90b4544430393898d3bdfc93ce08601bd /testsuite/tests/roles | |
parent | 9e5535ca667e060ce1431d42cdfc3a13ae080a88 (diff) | |
download | haskell-bd438b2d67ec8f5d8ac8472f13b3175b569951b9.tar.gz |
Get evaluated-ness right in the back end
See Trac #14626, comment:4. We want to maintain evaluted-ness
info on Ids into the code generateor for two reasons
(see Note [Preserve evaluated-ness in CorePrep] in CorePrep)
- DataToTag magic
- Potentially using it in the codegen (this is Gabor's
current work)
But it was all being done very inconsistently, and actually
outright wrong -- the DataToTag magic hasn't been working for
years.
This patch tidies it all up, with Notes to match.
Diffstat (limited to 'testsuite/tests/roles')
-rw-r--r-- | testsuite/tests/roles/should_compile/Roles13.stderr | 52 |
1 files changed, 26 insertions, 26 deletions
diff --git a/testsuite/tests/roles/should_compile/Roles13.stderr b/testsuite/tests/roles/should_compile/Roles13.stderr index 414ef801d5..67ff4035c3 100644 --- a/testsuite/tests/roles/should_compile/Roles13.stderr +++ b/testsuite/tests/roles/should_compile/Roles13.stderr @@ -5,12 +5,12 @@ Result size of Tidy Core -- RHS size: {terms: 2, types: 2, coercions: 0, joins: 0/0} convert1 :: Wrap Age -> Wrap Age -[GblId, Arity=1, Caf=NoCafRefs] +[GblId, Arity=1, Caf=NoCafRefs, Unf=OtherCon []] convert1 = \ (ds :: Wrap Age) -> ds -- RHS size: {terms: 1, types: 0, coercions: 5, joins: 0/0} convert :: Wrap Age -> Int -[GblId, Arity=1, Caf=NoCafRefs] +[GblId, Arity=1, Caf=NoCafRefs, Unf=OtherCon []] convert = convert1 `cast` (<Wrap Age>_R ->_R Roles13.N:Wrap[0] (Roles13.N:Age[0]) @@ -18,54 +18,54 @@ convert -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} $trModule1 :: GHC.Prim.Addr# -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $trModule1 = "main"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} $trModule2 :: GHC.Types.TrName -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $trModule2 = GHC.Types.TrNameS $trModule1 -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} $trModule3 :: GHC.Prim.Addr# -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $trModule3 = "Roles13"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} $trModule4 :: GHC.Types.TrName -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $trModule4 = GHC.Types.TrNameS $trModule3 -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0} Roles13.$trModule :: GHC.Types.Module -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] Roles13.$trModule = GHC.Types.Module $trModule2 $trModule4 -- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0} $krep :: GHC.Types.KindRep -[GblId] +[GblId, Unf=OtherCon []] $krep = GHC.Types.KindRepTyConApp GHC.Types.$tcInt (GHC.Types.[] @ GHC.Types.KindRep) -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} $krep1 :: GHC.Types.KindRep -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $krep1 = GHC.Types.KindRepVar 0# -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} $tcAge1 :: GHC.Prim.Addr# -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $tcAge1 = "Age"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} $tcAge2 :: GHC.Types.TrName -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $tcAge2 = GHC.Types.TrNameS $tcAge1 -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0} Roles13.$tcAge :: GHC.Types.TyCon -[GblId] +[GblId, Unf=OtherCon []] Roles13.$tcAge = GHC.Types.TyCon 3456257068627873222## @@ -77,29 +77,29 @@ Roles13.$tcAge -- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0} $krep2 :: GHC.Types.KindRep -[GblId] +[GblId, Unf=OtherCon []] $krep2 = GHC.Types.KindRepTyConApp Roles13.$tcAge (GHC.Types.[] @ GHC.Types.KindRep) -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0} $krep3 :: GHC.Types.KindRep -[GblId] +[GblId, Unf=OtherCon []] $krep3 = GHC.Types.KindRepFun $krep $krep2 -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} $tc'MkAge1 :: GHC.Prim.Addr# -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $tc'MkAge1 = "'MkAge"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} $tc'MkAge2 :: GHC.Types.TrName -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $tc'MkAge2 = GHC.Types.TrNameS $tc'MkAge1 -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0} Roles13.$tc'MkAge :: GHC.Types.TyCon -[GblId] +[GblId, Unf=OtherCon []] Roles13.$tc'MkAge = GHC.Types.TyCon 18264039750958872441## @@ -111,17 +111,17 @@ Roles13.$tc'MkAge -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} $tcWrap1 :: GHC.Prim.Addr# -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $tcWrap1 = "Wrap"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} $tcWrap2 :: GHC.Types.TrName -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $tcWrap2 = GHC.Types.TrNameS $tcWrap1 -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0} Roles13.$tcWrap :: GHC.Types.TyCon -[GblId] +[GblId, Unf=OtherCon []] Roles13.$tcWrap = GHC.Types.TyCon 13773534096961634492## @@ -133,34 +133,34 @@ Roles13.$tcWrap -- RHS size: {terms: 3, types: 2, coercions: 0, joins: 0/0} $krep4 :: [GHC.Types.KindRep] -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $krep4 = GHC.Types.: @ GHC.Types.KindRep $krep1 (GHC.Types.[] @ GHC.Types.KindRep) -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0} $krep5 :: GHC.Types.KindRep -[GblId] +[GblId, Unf=OtherCon []] $krep5 = GHC.Types.KindRepTyConApp Roles13.$tcWrap $krep4 -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0} $krep6 :: GHC.Types.KindRep -[GblId] +[GblId, Unf=OtherCon []] $krep6 = GHC.Types.KindRepFun $krep1 $krep5 -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} $tc'MkWrap1 :: GHC.Prim.Addr# -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $tc'MkWrap1 = "'MkWrap"# -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} $tc'MkWrap2 :: GHC.Types.TrName -[GblId, Caf=NoCafRefs] +[GblId, Caf=NoCafRefs, Unf=OtherCon []] $tc'MkWrap2 = GHC.Types.TrNameS $tc'MkWrap1 -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0} Roles13.$tc'MkWrap :: GHC.Types.TyCon -[GblId] +[GblId, Unf=OtherCon []] Roles13.$tc'MkWrap = GHC.Types.TyCon 15580677875333883466## |