Proposal: provide cas and barriers symbols even without -threaded
Ryan Newton
rrnewton at gmail.com
Thu Jul 18 15:17:44 CEST 2013
The "atomic-primops" library depends on symbols such as store_load_barrier
and "cas", which are defined in SMP.h. Thus the result is that if the
program is linked WITHOUT "-threaded", the user gets a linker error about
undefined symbols.
The specific place it's used is in the 'foreign "C"' bits of this .cmm code:
https://github.com/rrnewton/haskell-lockfree-queue/blob/87e63b21b2a6c375e93c30b98c28c1d04f88781c/AtomicPrimops/cbits/primops.cmm
I'm trying to explore hacks that will enable me to pull in those functions
during compile time, without duplicating a whole bunch of code from the
RTS. But it's a fragile business.
It seems to me that some of these routines have general utility. In future
versions of GHC, could we consider linking in those routines irrespective
of "-threaded"?
-Ryan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20130718/18559da2/attachment.htm>
More information about the ghc-devs
mailing list