#5549: ~100% performance regression in HEAD compared to ghc6.12, ~22% compared
to
7.0.4
---------------------------------------+------------------------------------
Reporter: tomaszw | Owner:
Type: bug | Status: new
Priority: high | Milestone: 7.4.1
Component: Compiler | Version: 7.3
Keywords: performance regression | Testcase:
Blockedby: | Difficulty:
Os: Linux | Blocking:
Architecture: x86 | Failure: Runtime performance bug
---------------------------------------+------------------------------------
Comment(by simonpj@…):
commit ca380cd19530fad4860e42844e42a473188e0013
{{{
Author: Simon Peyton Jones <[email protected]>
Date: Fri Oct 21 17:53:30 2011 +0100
Recover proper sharing for Integer literals
Trac #5549 showed a loss of performance for GHC 7.4.
What was happening was that an integer literal was being
allocated each time around a loop, rather than being
floated to top level and shared.
Two fixes
* Make the float-out pass float literals that are non-trivial
* Make the inliner *not* treat Integer literals as size-zero
compiler/basicTypes/Literal.lhs | 30 +++++++++++++++++-------------
compiler/coreSyn/CoreUnfold.lhs | 14 +++++++++++++-
compiler/coreSyn/PprCore.lhs | 13 ++++++-------
compiler/simplCore/SetLevels.lhs | 14 +++++++++++++-
4 files changed, 49 insertions(+), 22 deletions(-)
}}}
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5549#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs