[GHC] #11295: Figure out what LLVM passes are fruitful

GHC ghc-devs at haskell.org
Fri Aug 5 15:50:08 UTC 2016


#11295: Figure out what LLVM passes are fruitful
-------------------------------------+-------------------------------------
        Reporter:  bgamari           |                Owner:  bgamari
            Type:  task              |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler (LLVM)   |              Version:  7.10.3
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------
Description changed by angerman:

@@ -14,1 +14,1 @@
- try to reduce #3.
+ try to reduce 3.

New description:

 Builds using GHC's LLVM backend are currently substantially slower than
 GHC's own native code generator. There are a few possible reasons for
 this,

 1. the cost of forking processes and serializing/parsing LLVM's
 intermediate representation
 2. the cost of the more powerful optimizations responsible for LLVM's
 (hopefully) better code generation
 3. the cost of redundant optimizations overlapping effort already expended
 by GHC

 Given that some architecture (e.g. ARM) are only supported by LLVM and
 therefore suffer considerably at the hand of our slow builds, we should
 try to reduce 3.

--

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11295#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list