1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#include "Rts.h" static HsInt GenSymCounter = 0; HsInt genSym(void) { #if defined(THREADED_RTS) if (n_capabilities == 1) { return GenSymCounter++; } else { return atomic_inc((StgWord *)&GenSymCounter, 1); } #else return GenSymCounter++; #endif }