Commit 9d5c9fb0 authored by Simon Marlow's avatar Simon Marlow

refactor: move unlockClosure() into SMPClosureOps() where it should be

parent fa4e32f8
......@@ -301,7 +301,7 @@
#include "ClosureTypes.h"
#include "StgFun.h"
#include "OSThreads.h"
#include "SMP.h"
#include "SMPClosureOps.h"
/*
* Need MachRegs, because some of the RTS code is conditionally
......
......@@ -16,14 +16,6 @@
* Unregisterised builds are ok, but only 1 CPU supported.
*/
#ifdef CMINUSMINUS
#define unlockClosure(ptr,info) \
prim %write_barrier() []; \
StgHeader_info(ptr) = info;
#else
#if defined(THREADED_RTS)
#if defined(TICKY_TICKY)
......@@ -203,6 +195,4 @@ xchg(StgPtr p, StgWord w)
#endif /* !THREADED_RTS */
#endif /* CMINUSMINUS */
#endif /* SMP_H */
......@@ -9,6 +9,14 @@
#ifndef SMPCLOSUREOPS_H
#define SMPCLOSUREOPS_H
#ifdef CMINUSMINUS
#define unlockClosure(ptr,info) \
prim %write_barrier() []; \
StgHeader_info(ptr) = info;
#else
EXTERN_INLINE StgInfoTable *lockClosure(StgClosure *p);
EXTERN_INLINE void unlockClosure(StgClosure *p, const StgInfoTable *info);
......@@ -65,4 +73,6 @@ EXTERN_INLINE void unlockTSO(StgTSO *tso);
EXTERN_INLINE void unlockTSO(StgTSO *tso)
{ unlockClosure((StgClosure*)tso, (const StgInfoTable *)&stg_TSO_info); }
#endif /* CMINUSMINUS */
#endif /* SMPCLOSUREOPS_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment