[GHC] #8971: Native Code Generator 7.8.1 RC2 is not as optimized as 7.6.3...
GHC
ghc-devs at haskell.org
Thu Apr 24 20:53:27 UTC 2014
#8971: Native Code Generator 7.8.1 RC2 is not as optimized as 7.6.3...
--------------------------------------------+------------------------------
Reporter: GordonBGood | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler (NCG) | Version: 7.8.1-rc2
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Runtime performance bug | Unknown/Multiple
Test Case: | Difficulty: Unknown
Blocking: | Blocked By:
| Related Tickets:
--------------------------------------------+------------------------------
Comment (by GordonBGood):
This bug has nothing to do with the difference between the LLVM and the
NCG compiler backends; it it well known that NCG isn't that efficient for
tight loops. For this bug use case code, NCG has never combined the
memory read, the 'and' operation, and the memory write into one
read/modify/write instruction whereas LLVM does, which explains the
difference between them.
This bug has to do with '''why the GHC version 7.8.1 NCG has taken a step
backward''' from the previous stable version 7.6.3 in performance due to
more register spills and reloads.
I only referred to LLVM as proof that the problem seems to be limited to
NCG as both NCG and LLVM will share the same C-- output (or at least I
think so???) yet NCG shows this step backwards whereas LLVM does not.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8971#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list