[GHC] #10375: arm: ghci hits an illegal instruction
GHC
ghc-devs at haskell.org
Sat Sep 19 09:51:09 UTC 2015
#10375: arm: ghci hits an illegal instruction
-------------------------------------+-------------------------------------
Reporter: erikd | Owner:
Type: bug | Status: new
Priority: high | Milestone: 7.10.3
Component: Runtime System | Version: 7.10.1
(Linker) |
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture: arm
Type of failure: GHCi crash | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Revisions:
-------------------------------------+-------------------------------------
Comment (by erikd):
On irc, @bgamari suggested that this problem may just be a failure to
flush the instruction caches. On inspecting the code and adding debug
printf statements, found that the instruction cache is indeed being
flushed.
Futhermore cache flushing on arm/linux only works if it was allocated
using `mmap()` with the `PROT_EXEC` flag set. I have also confirmed that
this is case.
Since this issue of a `SIGILL` in seemingly correct and valid code only
happens when I try to break on `watch $lr == 0x70000000` I'm going to
chalk this up to an GDB related Heisenburg-like interaction between GDB
and the debug target.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10375#comment:59>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list