summaryrefslogtreecommitdiff
path: root/compiler/cbits/genSym.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix bootstrapping of GHC with earlier versionsPatrick Palka2013-09-041-0/+4
| | | | | | | | We can no longer use atomic_inc() in the stage1 compiler because its prototype was recently changed. Since the stage1 compiler is always single-threaded, only use atomic_inc() when THREADED_RTS is defined.
* genSym: atomic_inc() now takes two argumentsPatrick Palka2013-09-041-1/+1
|
* UniqSupply: make mkSplitUniqSupply thread-safePatrick Palka2013-08-261-1/+5
| | | | | | | | | | | | | unsafeInterleaveIO is used instead of unsafeDupableInterleaveIO because a mk_supply thunk that is simultaneously entered by two threads should evaluate to the same UniqSupply. The UniqSupply counter is now incremented atomically using the RTS's atomic_inc(). To mitigate the extra overhead of unsafeInterleaveIO in the single-threaded compiler, noDuplicate# is changed to exit early when n_capabilities == 1.
* Move the genSym stuff from rts into compilerIan Lynagh2013-05-171-0/+9
It's no longer used by Data.Unique, so there's no need to have it in rts any more.