[project @ 2004-02-12 02:04:59 by mthomas]
[ghc-hetmet.git] / ghc / rts / FrontPanel.c
index 5f28103..477fce0 100644 (file)
@@ -1,5 +1,5 @@
 /* -----------------------------------------------------------------------------
- * $Id: FrontPanel.c,v 1.4 2001/01/19 11:08:05 simonmar Exp $
+ * $Id: FrontPanel.c,v 1.8 2003/06/24 08:49:55 stolz Exp $
  *
  * (c) The GHC Team 2000
  *
@@ -9,7 +9,8 @@
 
 #ifdef RTS_GTK_FRONTPANEL
 
-#define NON_POSIX_SOURCE
+/* Alas, not Posix. */
+/* #include "PosixSource.h" */
 
 #include "Rts.h"
 #include "RtsUtils.h"
@@ -396,6 +397,7 @@ updateFrontPanel( void )
                            block_width, block_height, blocks_per_line );
            }
            
+#if 0 /* Segfaults because bd appears to be bogus but != NULL. stolz, 2003-06-24 */
            /* color each block */
            for (; a <= LAST_BLOCK(m); (char *)a += BLOCK_SIZE) {
                bd = Bdescr((P_)a);
@@ -403,22 +405,12 @@ updateFrontPanel( void )
                if (bd->free == (void *)-1) {
                    colorBlock( a, &free_color, 
                                block_width, block_height, blocks_per_line );
-               } else if (bd->gen != NULL) {
-                   colorBlock( a, &gen_colors[bd->gen->no],
+               } else {
+                   colorBlock( a, &gen_colors[bd->gen_no],
                                block_width, block_height, blocks_per_line );
-               } else if (bd->link != NULL) {
-                   if (bd->link->free == (void *)-1) {
-                       colorBlock( a, &free_color, 
-                                   block_width, block_height, blocks_per_line );
-                       
-                   } else if (bd->link->gen != NULL) {
-                       colorBlock( a, &gen_colors[bd->link->gen->no],
-                                   block_width, block_height, blocks_per_line );
-                   } else {
-                       belch("block at %p: can't indentify", bd->start);
-                   }
                }
            }
+#endif
        }
 
        
@@ -615,7 +607,7 @@ residencyCensus( void )
                g == 0 && s == 0) continue;
 
            if (RtsFlags.GcFlags.generations == 1) {
-               bd = generations[g].steps[s].to_space;
+               bd = generations[g].steps[s].to_blocks;
            } else {
                bd = generations[g].steps[s].blocks;
            }
@@ -683,7 +675,7 @@ residencyCensus( void )
                        type = BlackHole;
                        break;
 
-                   case AP_UPD:
+                   case AP:
                        size = pap_sizeW((StgPAP *)p);
                        type = Thunk;
                        break;
@@ -714,6 +706,7 @@ residencyCensus( void )
                    case STABLE_NAME:
                    case MVAR:
                    case MUT_VAR:
+                   case MUT_CONS:
                    case IND_PERM:
                    case IND_OLDGEN_PERM:
                        size = sizeW_fromITBL(info);