[GHC] #8974: 64 bit windows executable built with ghc-7.9.20140405+LLVM segfaults

GHC ghc-devs at haskell.org
Tue Apr 22 19:08:14 UTC 2014


#8974: 64 bit windows executable built with ghc-7.9.20140405+LLVM segfaults
------------------------------------+----------------------------------
        Reporter:  awson            |            Owner:
            Type:  bug              |           Status:  new
        Priority:  high             |        Milestone:  7.8.3
       Component:  Compiler (LLVM)  |          Version:  7.9
      Resolution:                   |         Keywords:
Operating System:  Windows          |     Architecture:  x86_64 (amd64)
 Type of failure:  Runtime crash    |       Difficulty:  Unknown
       Test Case:                   |       Blocked By:
        Blocking:                   |  Related Tickets:
------------------------------------+----------------------------------

Comment (by awson):

 Ok. I've implemented the mangler based approach.

 For what I've tested so far it works.

 It's a bit ugly (UUID magic) and fragile (mangler searches and replaces
 crlf line ending dependent pattern) because I did not bother to elaborate
 trivial and boring details.

 The patch below consists of 2 orthogonal parts:
 - the first introduces `target datalayout` and `target triple` for 64-bit
 mingw32 LLVM, it is compatible with LLVM 3.4 and incompatible with current
 LLVM 3.5svn (`mingw32` was changed to `windows-gnu` in `target triple`).
 - the second essentially solves the problem, described in this ticket.

 I've implemented all platform-specific code to be selected in runtime (I
 believe, LLVM can choose a target dynamically, am I wrong?). And I've
 tested all on 64-bit GHC 7.9+ and MSYS2 built LLVM 3.4 *only*.

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


More information about the ghc-tickets mailing list