/* -----------------------------------------------------------------------------
*
- * (c) The GHC Team 1998-2006
+ * (c) The GHC Team 1998-2008
*
* Generational garbage collector: evacuation functions
*
*
* ---------------------------------------------------------------------------*/
+#ifndef SM_EVAC_H
+#define SM_EVAC_H
+
+#include "BeginPrivate.h"
+
// Use a register argument for evacuate, if available.
// Earlier, the regparm attribute was used whenever __GNUC__ >= 2, but this
// generated warnings on PPC. So the use is restricted further.
// registers EAX, EDX, and ECX instead of on the stack. Functions that
// take a variable number of arguments will continue to be passed all of
// their arguments on the stack.
-#if __GNUC__ >= 2 && (defined(x86_64_TARGET_ARCH) || defined(i386_TARGET_ARCH))
+#if __GNUC__ >= 2 && (defined(x86_64_HOST_ARCH) || defined(i386_HOST_ARCH))
#define REGPARM1 __attribute__((regparm(1)))
#else
#define REGPARM1
#endif
REGPARM1 void evacuate (StgClosure **p);
-REGPARM1 void evacuate0 (StgClosure **p);
+REGPARM1 void evacuate1 (StgClosure **p);
extern lnat thunk_selector_depth;
-#if defined(PROF_SPIN) && defined(THREADED_RTS)
-StgWord64 whitehole_spin;
-#endif
+#include "EndPrivate.h"
+
+#endif /* SM_EVAC_H */
+