[GHC] #13576: Runtime crashes on arm64 (iOS)

GHC ghc-devs at haskell.org
Thu Apr 20 04:41:48 UTC 2017


#13576: Runtime crashes on arm64 (iOS)
----------------------------------+-------------------------------
        Reporter:  jp.rider63     |                Owner:  (none)
            Type:  bug            |               Status:  new
        Priority:  high           |            Milestone:  8.4.1
       Component:  Compiler       |              Version:
      Resolution:                 |             Keywords:
Operating System:  MacOS X        |         Architecture:  aarch64
 Type of failure:  Runtime crash  |            Test Case:
      Blocked By:                 |             Blocking:
 Related Tickets:                 |  Differential Rev(s):
       Wiki Page:                 |
----------------------------------+-------------------------------

Comment (by angerman):

 Does this happen when applying https://phabricator.haskell.org/D3290 prior
 to building the cross compiler, as well?

 {{{
      82 static void
      83 checkClosureShallow( const StgClosure* p )
      84 {
      85     const StgClosure *q;
      86
      87     q = UNTAG_CONST_CLOSURE(p);
      88     ASSERT(LOOKS_LIKE_CLOSURE_PTR(q));
      89 }
      90
 }}}

 The crash indicates that q doesn't look like a closure. One of the cases
 where this happens is `-dead_strip`. However as noted in the ticket,
 dead_strip is disabled.  This is basically a shot in the dark, e.g. if the
 addition of dead_strip prevention markers retains the symbol.

 could you try to see if `nm` lists different symbols for the crashing and
 the not crashing binary?

 `nm -j` should list the symbols without the address. `sort` should
 straighten them and `diff` could potentially be helpful.

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


More information about the ghc-tickets mailing list