diff options
Diffstat (limited to 'testsuite/tests/perf/should_run')
-rw-r--r-- | testsuite/tests/perf/should_run/T149_A.hs | 2 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/T149_B.hs | 2 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/T2902_A.hs | 2 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/T2902_B.hs | 2 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/T5113.hs | 2 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/T9203.hs | 9 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/T9203.stdout | 1 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/T9339.hs | 4 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/T9339.stdout | 1 | ||||
-rw-r--r-- | testsuite/tests/perf/should_run/all.T | 65 |
10 files changed, 71 insertions, 19 deletions
diff --git a/testsuite/tests/perf/should_run/T149_A.hs b/testsuite/tests/perf/should_run/T149_A.hs index dc24f4c13c..22ec276ebc 100644 --- a/testsuite/tests/perf/should_run/T149_A.hs +++ b/testsuite/tests/perf/should_run/T149_A.hs @@ -2,7 +2,7 @@ module Main (main) where -- See Trac #149 --- Curently (with GHC 7.0) the CSE works, just, +-- Currently (with GHC 7.0) the CSE works, just, -- but it's delicate. diff --git a/testsuite/tests/perf/should_run/T149_B.hs b/testsuite/tests/perf/should_run/T149_B.hs index ef5b9c56bb..514fd16a9c 100644 --- a/testsuite/tests/perf/should_run/T149_B.hs +++ b/testsuite/tests/perf/should_run/T149_B.hs @@ -2,7 +2,7 @@ module Main (main) where -- See Trac #149 --- Curently (with GHC 7.0) the CSE works, just, +-- Currently (with GHC 7.0) the CSE works, just, -- but it's delicate. diff --git a/testsuite/tests/perf/should_run/T2902_A.hs b/testsuite/tests/perf/should_run/T2902_A.hs index c0939104f3..cb2cec990c 100644 --- a/testsuite/tests/perf/should_run/T2902_A.hs +++ b/testsuite/tests/perf/should_run/T2902_A.hs @@ -1,5 +1,5 @@ -{-# LANGUAGE UnicodeSyntax #-} +{-# LANGUAGE UnicodeSyntax, FlexibleContexts #-} module Main (main) where diff --git a/testsuite/tests/perf/should_run/T2902_B.hs b/testsuite/tests/perf/should_run/T2902_B.hs index c6558c625b..65cb1a6a90 100644 --- a/testsuite/tests/perf/should_run/T2902_B.hs +++ b/testsuite/tests/perf/should_run/T2902_B.hs @@ -1,5 +1,5 @@ -{-# LANGUAGE UnicodeSyntax #-} +{-# LANGUAGE UnicodeSyntax, FlexibleContexts #-} module Main (main) where diff --git a/testsuite/tests/perf/should_run/T5113.hs b/testsuite/tests/perf/should_run/T5113.hs index e87bcb6cad..6ad6750aab 100644 --- a/testsuite/tests/perf/should_run/T5113.hs +++ b/testsuite/tests/perf/should_run/T5113.hs @@ -1,4 +1,4 @@ -{-# LANGUAGE BangPatterns #-} +{-# LANGUAGE BangPatterns, FlexibleContexts #-} module Main where import Data.Array.Base (unsafeRead, unsafeWrite) diff --git a/testsuite/tests/perf/should_run/T9203.hs b/testsuite/tests/perf/should_run/T9203.hs new file mode 100644 index 0000000000..500fd8c98e --- /dev/null +++ b/testsuite/tests/perf/should_run/T9203.hs @@ -0,0 +1,9 @@ +module Main where + +import Data.Typeable + +f :: Typeable a => Int -> a -> TypeRep +f 0 a = typeOf a +f n a = f (n-1) [a] + +main = print (f 50000 () == f 50001 ()) diff --git a/testsuite/tests/perf/should_run/T9203.stdout b/testsuite/tests/perf/should_run/T9203.stdout new file mode 100644 index 0000000000..bc59c12aa1 --- /dev/null +++ b/testsuite/tests/perf/should_run/T9203.stdout @@ -0,0 +1 @@ +False diff --git a/testsuite/tests/perf/should_run/T9339.hs b/testsuite/tests/perf/should_run/T9339.hs new file mode 100644 index 0000000000..96f5f7201a --- /dev/null +++ b/testsuite/tests/perf/should_run/T9339.hs @@ -0,0 +1,4 @@ +-- Tests that `last` successfully fuses. + +main :: IO () +main = print $ last $ filter odd $ [1::Int ..10000000] diff --git a/testsuite/tests/perf/should_run/T9339.stdout b/testsuite/tests/perf/should_run/T9339.stdout new file mode 100644 index 0000000000..e161ae3694 --- /dev/null +++ b/testsuite/tests/perf/should_run/T9339.stdout @@ -0,0 +1 @@ +9999999 diff --git a/testsuite/tests/perf/should_run/all.T b/testsuite/tests/perf/should_run/all.T index 1e1b6ccba8..8b8547eae9 100644 --- a/testsuite/tests/perf/should_run/all.T +++ b/testsuite/tests/perf/should_run/all.T @@ -6,8 +6,9 @@ test('T3586', [stats_num_field('peak_megabytes_allocated', (17, 1)), # expected value: 17 (amd64/Linux) - stats_num_field('bytes allocated', (16835544, 5)), - # expected value: 16835544 (amd64/Linux) + stats_num_field('bytes allocated', (16102024, 5)), + # prev: 16835544 (amd64/Linux) + # 2014-07-17: 16102024 (amd64/Linux), general round of updates only_ways(['normal']) ], compile_and_run, @@ -60,7 +61,10 @@ test('T876', [(wordsize(64), 63216 , 5), # 2013-02-14: 1263712 (x86_64/Linux) # 2014-02-10: 63216 (x86_64/Linux), call arity analysis - (wordsize(32), 663712, 5)]), + (wordsize(32), 53024, 5) ]), + # some date: 663712 (Windows, 64-bit machine) + # 2014-04-04: 56820 (Windows, 64-bit machine) + # 2014-06-29: 53024 (x86_64/Linux) only_ways(['normal']), extra_run_opts('10000') ], @@ -87,9 +91,10 @@ test('T3738', # expected value: 1 (amd64/Linux) stats_num_field('bytes allocated', [(wordsize(32), 45648, 5), - # expected value: 45648 (x86/Linux) + # expected value: 50520 (x86/Linux) (wordsize(64), 49400, 5)]), - # expected value: 49400 (amd64/Linux) + # prev: 49400 (amd64/Linux) + # 2014-07-17: 50520 (amd64/Linux) general round of updates only_ways(['normal']) ], compile_and_run, @@ -151,8 +156,9 @@ test('T5205', [stats_num_field('bytes allocated', [(wordsize(32), 47088, 5), # expected value: 47088 (x86/Darwin) - (wordsize(64), 51320, 5)]), + (wordsize(64), 52600, 5)]), # expected value: 51320 (amd64/Linux) + # 2014-07-17: 52600 (amd64/Linux) general round of updates only_ways(['normal', 'optasm']) ], compile_and_run, @@ -250,8 +256,9 @@ test('Conversions', # 2013-02-10: 77472 (x86/OSX) # 2013-02-10: 79276 (x86/Windows) # 2014-01-13: 76768 (x86/Linux) due to #8647 - (wordsize(64), 110632, 5)]), + (wordsize(64), 107544, 5)]), # 2012-12-18: 109608 (amd64/OS X) + # 2014-07-17: 107544 (amd64/Linux) only_ways(['normal']) ], @@ -289,7 +296,9 @@ test('T7797', test('T7954', [stats_num_field('bytes allocated', - [(wordsize(32), 1380051408, 10), + [(wordsize(32), 920045264, 10), + # some date: 1380051408 (64-bit Windows machine) + # 2014-04-04: 920045264 (64-bit Windows machine) (wordsize(64), 1680051336, 10)]), # 2014-02-10: 1680051336 (x86_64/Linux), call arity analysis only_ways(['normal']) @@ -307,7 +316,8 @@ test('T7850', test('T5949', [stats_num_field('bytes allocated', - [ (wordsize(64), 201008, 10)]), + [ (wordsize(32), 116020, 10), + (wordsize(64), 201008, 10)]), # previously, it was >400000 bytes only_ways(['normal'])], compile_and_run, @@ -315,7 +325,9 @@ test('T5949', test('T4267', [stats_num_field('bytes allocated', - [ (wordsize(64), 40992, 10)]), + [ (wordsize(32), 36012, 10) + # 32-bit value close to 64 bit; c.f. T7619 + , (wordsize(64), 40992, 10) ]), # previously, it was >170000 bytes # 2014-01-17: 130000 # 2014-02-10: 40992 (x86_64/Linux), call arity analysis @@ -325,7 +337,10 @@ test('T4267', test('T7619', [stats_num_field('bytes allocated', - [ (wordsize(64), 40992, 10)]), + [ (wordsize(32), 36012, 10) + # 32-bit close to 64-bit value; most of this very + # small number is standard start-up boilerplate I think + , (wordsize(64), 40992, 10) ]), # previously, it was >400000 bytes only_ways(['normal'])], compile_and_run, @@ -333,21 +348,43 @@ test('T7619', test('InlineArrayAlloc', [stats_num_field('bytes allocated', - [ (wordsize(64), 1600040960, 5)]), + [ (wordsize(32), 800040960, 5) + , (wordsize(64), 1600040960, 5) ]), only_ways(['normal'])], compile_and_run, ['-O2']) test('InlineByteArrayAlloc', [stats_num_field('bytes allocated', - [ (wordsize(64), 1440040960, 5)]), + [ (wordsize(32), 1360036012, 5) + , (wordsize(64), 1440040960, 5) ]), + # 32 and 64 bit not so different, because + # we are allocating *byte* arrays only_ways(['normal'])], compile_and_run, ['-O2']) test('InlineCloneArrayAlloc', [stats_num_field('bytes allocated', - [ (wordsize(64), 1600041120, 5)]), + [ (wordsize(32), 800041120, 5) + , (wordsize(64), 1600041120, 5) ]), + only_ways(['normal'])], + compile_and_run, + ['-O2']) + +test('T9203', + [stats_num_field('bytes allocated', + [ (wordsize(32), 50000000, 5) + , (wordsize(64), 95747304, 5) ]), + only_ways(['normal'])], + compile_and_run, + ['-O2']) + +test('T9339', + [stats_num_field('bytes allocated', + [ (wordsize(64), 80050760, 5) ]), + # w/o fusing last: 320005080 + # 2014-07-22: 80050760 only_ways(['normal'])], compile_and_run, ['-O2']) |