[GHC] #9142: LLVM HEAD rejects aliases used by LLVM codegen

GHC ghc-devs at haskell.org
Thu May 29 13:05:34 UTC 2014


#9142: LLVM HEAD rejects aliases  used by LLVM codegen
-------------------------------------+------------------------------------
        Reporter:  bgamari           |            Owner:
            Type:  bug               |           Status:  new
        Priority:  high              |        Milestone:
       Component:  Compiler          |          Version:  7.8.2
      Resolution:                    |         Keywords:
Operating System:  Unknown/Multiple  |     Architecture:  Unknown/Multiple
 Type of failure:  None/Unknown      |       Difficulty:  Unknown
       Test Case:                    |       Blocked By:
        Blocking:  4213              |  Related Tickets:
-------------------------------------+------------------------------------

Comment (by scpmw):

 Function definitions aren't really the problem. Once we know the live
 global registers, we'd know their type (see `llvmFunTy`). We could
 /theoretically/ find these from a call in Cmm.

 However, I feel like this is the wrong approach anyway. Even if we could
 enumerate all offending Cmm constructs at this point, there is no telling
 whether we will have more problematic Cmm in the future. We don't want to
 get into a game of whack-a-mole just for a rather cosmetic feature like
 streaming. Bringing Stg into the fold would most likely to make that
 problem even worse.

 In my mind, we should wait for the LLVM situation to stabilize, then we'll
 implement either

 1. What we have right now, with possibly minor changes
 2. A step prepending aliases, if this is what LLVM likes better (unlikely,
 but I'll test it)
 3. A search-and-replace step where we first emit placeholders, then later
 fill in the types (your option 3)
 4. Remove streaming entirely (pretty much equivalent to your options 1 and
 2)

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


More information about the ghc-tickets mailing list