[project @ 2002-12-05 14:20:55 by stolz]
[ghc-hetmet.git] / ghc / includes / StgProf.h
index 7e7be34..f6af87f 100644 (file)
@@ -1,5 +1,5 @@
 /* -----------------------------------------------------------------------------
- * $Id: StgProf.h,v 1.12 2001/10/18 13:19:49 simonmar Exp $
+ * $Id: StgProf.h,v 1.16 2001/12/12 14:59:41 simonmar Exp $
  *
  * (c) The GHC Team, 1998
  *
@@ -20,7 +20,7 @@ typedef struct _CostCentre {
  
   /* used for accumulating costs at the end of the run... */
   unsigned long time_ticks;
-  unsigned long mem_alloc;
+  unsigned long long mem_alloc;
 
   char is_caf;
 
@@ -34,15 +34,16 @@ typedef struct _CostCentreStack {
   CostCentre *cc;
   struct _CostCentreStack *prevStack;
   struct _IndexTable *indexTable;
-  
-  unsigned long scc_count;
-    
+
+  unsigned int selected;
+
+  unsigned long long scc_count;
+
   unsigned long time_ticks;
-  unsigned long mem_alloc;
-  unsigned long mem_resid;
+  unsigned long long mem_alloc;
 
   unsigned long inherited_ticks;
-  unsigned long inherited_alloc;
+  unsigned long long inherited_alloc;
 
   CostCentre *root;
 } CostCentreStack;
@@ -181,10 +182,10 @@ extern CostCentreStack *CCS_LIST;         /* registered CCS list */
            cc                  : cc_ident,                     \
            prevStack           : NULL,                         \
            indexTable          : NULL,                         \
+            selected            : 0,                           \
            scc_count           : 0,                            \
            time_ticks          : 0,                            \
            mem_alloc           : 0,                            \
-           mem_resid           : 0,                            \
            inherited_ticks     : 0,                            \
            inherited_alloc     : 0,                            \
            root                : 0,                            \
@@ -197,8 +198,6 @@ extern CostCentreStack *CCS_LIST;         /* registered CCS list */
  * Time / Allocation Macros
  * ---------------------------------------------------------------------------*/
 
-#define CCS_TICK(ccs)  (ccs)->time_ticks++
-
 /* eliminate profiling overhead from allocation costs */
 #define CCS_ALLOC(ccs, size) (ccs)->mem_alloc += ((size)-sizeofW(StgProfHeader))
 
@@ -349,9 +348,6 @@ extern CostCentreStack *CCS_LIST;         /* registered CCS list */
 #define ENTER_CCS_PAP_CL(closure)  \
         ENTER_CCS_PAP((closure)->header.prof.ccs)
 
- /* temp EW */
-#define STATIC_CCS_REF(ccs) (ccs)
-
 /* -----------------------------------------------------------------------------
    When not profiling, these macros do nothing...
    -------------------------------------------------------------------------- */