diff options
author | Luke Maurer <maurerl@cs.uoregon.edu> | 2017-02-01 11:56:01 -0500 |
---|---|---|
committer | David Feuer <David.Feuer@gmail.com> | 2017-02-01 13:44:52 -0500 |
commit | 8d5cf8bf584fd4849917c29d82dcf46ee75dd035 (patch) | |
tree | 9d1b012562fd7ec1d1089b7d87e061884ba71f1c /testsuite/tests/simplCore/should_compile/T3717.stderr | |
parent | 4fa439e3ee2822f893bd364a6cbfe410a0c1e29f (diff) | |
download | haskell-8d5cf8bf584fd4849917c29d82dcf46ee75dd035.tar.gz |
Join points
This major patch implements Join Points, as described in
https://ghc.haskell.org/trac/ghc/wiki/SequentCore. You have
to read that page, and especially the paper it links to, to
understand what's going on; but it is very cool.
It's Luke Maurer's work, but done in close collaboration with Simon PJ.
This Phab is a squash-merge of wip/join-points branch of
http://github.com/lukemaurer/ghc. There are many, many interdependent
changes.
Reviewers: goldfire, mpickering, bgamari, simonmar, dfeuer, austin
Subscribers: simonpj, dfeuer, mpickering, Mikolaj, thomie
Differential Revision: https://phabricator.haskell.org/D2853
Diffstat (limited to 'testsuite/tests/simplCore/should_compile/T3717.stderr')
-rw-r--r-- | testsuite/tests/simplCore/should_compile/T3717.stderr | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/testsuite/tests/simplCore/should_compile/T3717.stderr b/testsuite/tests/simplCore/should_compile/T3717.stderr index f9adeb28da..9bcc4f31ac 100644 --- a/testsuite/tests/simplCore/should_compile/T3717.stderr +++ b/testsuite/tests/simplCore/should_compile/T3717.stderr @@ -1,8 +1,9 @@ ==================== Tidy Core ==================== -Result size of Tidy Core = {terms: 36, types: 15, coercions: 0} +Result size of Tidy Core + = {terms: 36, types: 15, coercions: 0, joins: 0/0} --- RHS size: {terms: 1, types: 0, coercions: 0} +-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} T3717.$trModule4 :: GHC.Prim.Addr# [GblId, Caf=NoCafRefs, @@ -10,7 +11,7 @@ T3717.$trModule4 :: GHC.Prim.Addr# WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 0}] T3717.$trModule4 = "main"# --- RHS size: {terms: 2, types: 0, coercions: 0} +-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} T3717.$trModule3 :: GHC.Types.TrName [GblId, Caf=NoCafRefs, @@ -19,7 +20,7 @@ T3717.$trModule3 :: GHC.Types.TrName WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 20}] T3717.$trModule3 = GHC.Types.TrNameS T3717.$trModule4 --- RHS size: {terms: 1, types: 0, coercions: 0} +-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} T3717.$trModule2 :: GHC.Prim.Addr# [GblId, Caf=NoCafRefs, @@ -27,7 +28,7 @@ T3717.$trModule2 :: GHC.Prim.Addr# WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 0}] T3717.$trModule2 = "T3717"# --- RHS size: {terms: 2, types: 0, coercions: 0} +-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0} T3717.$trModule1 :: GHC.Types.TrName [GblId, Caf=NoCafRefs, @@ -36,7 +37,7 @@ T3717.$trModule1 :: GHC.Types.TrName WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 20}] T3717.$trModule1 = GHC.Types.TrNameS T3717.$trModule2 --- RHS size: {terms: 3, types: 0, coercions: 0} +-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0} T3717.$trModule :: GHC.Types.Module [GblId, Caf=NoCafRefs, @@ -47,7 +48,7 @@ T3717.$trModule = GHC.Types.Module T3717.$trModule3 T3717.$trModule1 Rec { --- RHS size: {terms: 10, types: 2, coercions: 0} +-- RHS size: {terms: 10, types: 2, coercions: 0, joins: 0/0} T3717.$wfoo [InlPrag=[0], Occ=LoopBreaker] :: GHC.Prim.Int# -> GHC.Prim.Int# [GblId, Arity=1, Caf=NoCafRefs, Str=<S,1*U>] @@ -59,7 +60,7 @@ T3717.$wfoo = } end Rec } --- RHS size: {terms: 10, types: 4, coercions: 0} +-- RHS size: {terms: 10, types: 4, coercions: 0, joins: 0/0} foo [InlPrag=INLINE[0]] :: Int -> Int [GblId, Arity=1, |