Put docs into versioned directory names; fixes trac #3532
[ghc-hetmet.git] / includes / rts / prof / LDV.h
index c51b106..77d873c 100644 (file)
@@ -1,9 +1,14 @@
 /* -----------------------------------------------------------------------------
  *
- * (c) The University of Glasgow, 2004
+ * (c) The University of Glasgow, 2009
  *
  * Lag/Drag/Void profiling.
  *
+ * Do not #include this file directly: #include "Rts.h" instead.
+ *
+ * To understand the structure of the RTS headers, see the wiki:
+ *   http://hackage.haskell.org/trac/ghc/wiki/Commentary/SourceTree/Includes
+ *
  * ---------------------------------------------------------------------------*/
 
 #ifndef RTS_PROF_LDV_H
  * because retainer profiling also expects LDVW(c) to be initialised
  * to zero.
  */
-#ifndef CMINUSMINUS
-#define LDV_RECORD_CREATE(c)   \
-  LDVW((c)) = ((StgWord)RTS_DEREF(era) << LDV_SHIFT) | LDV_STATE_CREATE
-#endif
 
 #ifdef CMINUSMINUS
+
 #define LDV_RECORD_DEAD_FILL_SLOP_DYNAMIC(c) \
   foreign "C" LDV_recordDead_FILL_SLOP_DYNAMIC(c "ptr")
+
 #else
+
+#define LDV_RECORD_CREATE(c)   \
+  LDVW((c)) = ((StgWord)RTS_DEREF(era) << LDV_SHIFT) | LDV_STATE_CREATE
+
+void LDV_recordDead_FILL_SLOP_DYNAMIC( StgClosure *p );
+
 #define LDV_RECORD_DEAD_FILL_SLOP_DYNAMIC(c) \
   LDV_recordDead_FILL_SLOP_DYNAMIC(c)
+
 #endif
 
 #else  /* !PROFILING */