[commit: ghc] wip/T13056: Add performance test for #13056 (8aba3d4)

git at git.haskell.org git at git.haskell.org
Wed Jan 4 18:59:49 UTC 2017


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

On branch  : wip/T13056
Link       : http://ghc.haskell.org/trac/ghc/changeset/8aba3d4a3161ed93de04cd154774cdd016bee6ad/ghc

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

commit 8aba3d4a3161ed93de04cd154774cdd016bee6ad
Author: Ryan Scott <ryan.gl.scott at gmail.com>
Date:   Wed Jan 4 13:57:25 2017 -0500

    Add performance test for #13056
    
    This performance regression was fixed by commit
    517d03e41b4f5c144d1ad684539340421be2be2a (#12234). Let's add a performance test
    to ensure that it doesn't break again.


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

8aba3d4a3161ed93de04cd154774cdd016bee6ad
 testsuite/tests/perf/compiler/T13056.hs | 26 ++++++++++++++++++++++++++
 testsuite/tests/perf/compiler/all.T     | 10 ++++++++++
 2 files changed, 36 insertions(+)

diff --git a/testsuite/tests/perf/compiler/T13056.hs b/testsuite/tests/perf/compiler/T13056.hs
new file mode 100644
index 0000000..046e1b0
--- /dev/null
+++ b/testsuite/tests/perf/compiler/T13056.hs
@@ -0,0 +1,26 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveFunctor #-}
+{-# LANGUAGE DeriveFoldable #-}
+
+module Bug where
+import Data.Typeable
+import GHC.Generics
+import Data.Data
+
+data Condition v = Condition
+    deriving (Functor, Foldable)
+
+data CondTree v c a = CondNode
+    { condTreeData        :: a
+    , condTreeConstraints :: c
+    , condTreeComponents  :: [CondBranch v c a]
+    }
+    deriving (Functor, Foldable)
+
+data CondBranch v c a = CondBranch
+    { condBranchCondition :: Condition v
+    , condBranchIfTrue    :: CondTree v c a
+    , condBranchIfFalse   :: Maybe (CondTree v c a)
+    }
+    deriving (Functor, Foldable)
diff --git a/testsuite/tests/perf/compiler/all.T b/testsuite/tests/perf/compiler/all.T
index 2714e86..5d61ae3 100644
--- a/testsuite/tests/perf/compiler/all.T
+++ b/testsuite/tests/perf/compiler/all.T
@@ -898,3 +898,13 @@ test('T12234',
      ],
      compile,
      [''])
+
+test('T13056',
+     [ only_ways(['optasm']),
+       compiler_stats_num_field('bytes allocated',
+         [(wordsize(64), 1, 5),
+         # 2017-01-04    1 initial
+         ]),
+     ],
+     compile,
+     ['-O1'])



More information about the ghc-commits mailing list