
#8951: genSym uses atomic_inc but doesn't link arm_atomic_spin_lock -------------------------------------+------------------------------------- Reporter: cjwatson | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.4 Component: Build | Version: 7.8.1-rc1 System | Keywords: Resolution: | Architecture: arm Operating System: Linux | Difficulty: Unknown Type of failure: Building | Blocked By: GHC failed | Related Tickets: Test Case: | Blocking: | Differential Revisions: | -------------------------------------+------------------------------------- Comment (by nomeata): More info: `genSym.c` is linked into libghcHS. It contains code that depends on `THREADED_RTS`, but that’s a bit fishy: There is only one `libghcHS` that needs to work with both threaded and non-threaded RTSs. This code in `compiler/ghc.mk` might be related: {{{ ifeq "$(GhcThreaded)" "YES" # We pass THREADED_RTS to the stage2 C files so that cbits/genSym.c will bring # the threaded version of atomic_inc() into scope. compiler_stage2_CONFIGURE_OPTS += --ghc-option=-optc-DTHREADED_RTS endif }}} So one thing I’m trying is to provide the stubs from `rts/OldARMAtomic.c` even in the unthreaded RTS. It will be dead code, but at least the linker will be happy. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8951#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler