[GHC] #12808: For primitive (Addr#) operations, Loop Invariant Code Flow not lifted outside the loop...
GHC
ghc-devs at haskell.org
Tue Nov 8 09:05:31 UTC 2016
#12808: For primitive (Addr#) operations, Loop Invariant Code Flow not lifted
outside the loop...
-------------------------------------+-------------------------------------
Reporter: GordonBGood | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 8.2.1
Component: Compiler | Version: 8.0.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Runtime | Unknown/Multiple
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonpj):
As I understand it, these movements could not sensibly be hoisted at the
Core level, or could they? I'm failing to see how the code at the top
lines up with the Cmm you are showing. Maybe show STG code too, and say
how they match up? If we can do the floating in Core, that would be
better!
If the opportunity only gets exposed when we are in Cmm, I wonder if it's
worth our doing this in Cmm, or whether it's best left to LLVM?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12808#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list