x86_64 ghc on Mac OS
Simon Marlow
marlowsd at gmail.com
Fri Feb 27 10:50:39 EST 2009
Ben Lippmeier wrote:
>
> On 24/02/2009, at 12:18 PM, Daniel Peebles wrote:
>
>>> extern __thread gc_thread* gct
>>
>> Yeah, but from what I understand of the __thread for thread-local
>> storage, it seems rather ELF-specific. Attempting to compile code that
>> uses it on (my) Mac OS (i.e., MachO instead of ELF) results in a
>> "thread-local storage not supported for this target" error, which
>> according to
>> http://lists.apple.com/archives/xcode-users/2006/Jun/msg00551.html
>> is expected on Mac OS. Given the line of #ifdefs in that file, though,
>> I'm not sure how the thread-local storage works normally for Mac OS.
>
> :) It works on Mac OS usually because gct is stored in a pinned
> register. That won't work with a unregisterised build though. Sounds
> like a Catch-22, better ask Simon M.
If you have no __thread, then we either have to disable the parallel GC
(not possible without adding more #ifdefs right now), or just disable the
threaded RTS on this platform (possible by tweaking config.mk.in).
Cheers,
Simon
More information about the Cvs-ghc
mailing list