diff options
author | Ben Gamari <ben@smart-cactus.org> | 2018-08-01 06:42:19 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-08-01 06:54:23 -0400 |
commit | 1df50a0f61f320428f2e6dd07b3c9ce49c4acd31 (patch) | |
tree | 07b9441b6f64d129ed183a69516fa3392ea86a93 /testsuite/tests | |
parent | 9bd48643c917f8e38a0ddca0b6ac1777bbf66f99 (diff) | |
download | haskell-1df50a0f61f320428f2e6dd07b3c9ce49c4acd31.tar.gz |
Revert "Don't inline functions with RULES too early"
This commit causes significant performance regressions:
```
bytes allocated value is too high:
Expected T9872d(normal) bytes allocated: 578498120 +/-5%
Lower bound T9872d(normal) bytes allocated: 549573214
Upper bound T9872d(normal) bytes allocated: 607423026
Actual T9872d(normal) bytes allocated: 677179968
Deviation T9872d(normal) bytes allocated: 17.1 %
bytes allocated value is too high:
Expected T9872c(normal) bytes allocated: 3096670112 +/-5%
Lower bound T9872c(normal) bytes allocated: 2941836606
Upper bound T9872c(normal) bytes allocated: 3251503618
Actual T9872c(normal) bytes allocated: 3601872536
Deviation T9872c(normal) bytes allocated: 16.3 %
bytes allocated value is too high:
Expected T9872b(normal) bytes allocated: 3730686224 +/-5%
Lower bound T9872b(normal) bytes allocated: 3544151912
Upper bound T9872b(normal) bytes allocated: 3917220536
Actual T9872b(normal) bytes allocated: 4374298272
Deviation T9872b(normal) bytes allocated: 17.3 %
bytes allocated value is too high:
Expected T9872a(normal) bytes allocated: 2729927408 +/-5%
Lower bound T9872a(normal) bytes allocated: 2593431037
Upper bound T9872a(normal) bytes allocated: 2866423779
Actual T9872a(normal) bytes allocated: 3225788896
Deviation T9872a(normal) bytes allocated: 18.2 %
```
It's not clear that this was intentional so I'm going to revert for now.
This reverts commit 2110738b280543698407924a16ac92b6d804dc36.
Diffstat (limited to 'testsuite/tests')
4 files changed, 0 insertions, 32 deletions
diff --git a/testsuite/tests/simplCore/should_compile/T15445.hs b/testsuite/tests/simplCore/should_compile/T15445.hs deleted file mode 100644 index 36bf61dbbb..0000000000 --- a/testsuite/tests/simplCore/should_compile/T15445.hs +++ /dev/null @@ -1,8 +0,0 @@ -module T15445 where - -import T15445a - - -foo :: IO () -foo = do { print (plusTwoRec [1..10 :: Int]) - ; print (plusTwoRec' [1..20 :: Int]) } diff --git a/testsuite/tests/simplCore/should_compile/T15445.stderr b/testsuite/tests/simplCore/should_compile/T15445.stderr deleted file mode 100644 index d5deac5a59..0000000000 --- a/testsuite/tests/simplCore/should_compile/T15445.stderr +++ /dev/null @@ -1,13 +0,0 @@ -Rule fired: Class op + (BUILTIN) -Rule fired: Class op fromInteger (BUILTIN) -Rule fired: integerToInt (BUILTIN) -Rule fired: SPEC plusTwoRec (T15445a) -Rule fired: SPEC $fShow[] (GHC.Show) -Rule fired: Class op >> (BUILTIN) -Rule fired: Class op show (BUILTIN) -Rule fired: SPEC plusTwoRec (T15445a) -Rule fired: Class op enumFromTo (BUILTIN) -Rule fired: Class op show (BUILTIN) -Rule fired: Class op enumFromTo (BUILTIN) -Rule fired: eftIntList (GHC.Enum) -Rule fired: eftIntList (GHC.Enum) diff --git a/testsuite/tests/simplCore/should_compile/T15445a.hs b/testsuite/tests/simplCore/should_compile/T15445a.hs deleted file mode 100644 index 02e5baceb5..0000000000 --- a/testsuite/tests/simplCore/should_compile/T15445a.hs +++ /dev/null @@ -1,10 +0,0 @@ -module T15445a where - -{-# SPECIALIZE plusTwoRec :: [Int] -> [Int] #-} -plusTwoRec :: Num a => [a] -> [a] -plusTwoRec [] = [] -plusTwoRec (x:xs) = x+2:plusTwoRec xs - -plusTwoRec' :: Num a => [a] -> [a] -plusTwoRec' [] = [] -plusTwoRec' (x:xs) = x+2:plusTwoRec' xs diff --git a/testsuite/tests/simplCore/should_compile/all.T b/testsuite/tests/simplCore/should_compile/all.T index 1275012bf4..d4eaf196df 100644 --- a/testsuite/tests/simplCore/should_compile/all.T +++ b/testsuite/tests/simplCore/should_compile/all.T @@ -317,4 +317,3 @@ test('T15005', normal, compile, ['-O']) test('T15056', [extra_files(['T15056a.hs']), omit_ways(['profasm'])], multimod_compile, ['T15056', '-O -v0 -ddump-rule-firings']) test('T15186', normal, multimod_compile, ['T15186', '-v0']) test('T15453', normal, compile, ['-dcore-lint -O1']) -test('T15445', normal, multimod_compile, ['T15445', '-v0 -O -ddump-rule-firings']) |