[BACK]Return to alloc.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / gc

Diff for /OpenXM_contrib2/asir2000/gc/alloc.c between version 1.6 and 1.7

version 1.6, 2002/07/24 08:00:06 version 1.7, 2002/07/24 09:44:21
Line 93  extern signed_word GC_mem_found;  /* Number of reclaim
Line 93  extern signed_word GC_mem_found;  /* Number of reclaim
 GC_bool GC_dont_expand = 0;  GC_bool GC_dont_expand = 0;
   
 word GC_free_space_divisor = 3;  word GC_free_space_divisor = 3;
   word GC_free_space_numerator = 1;
   
 extern GC_bool GC_collection_in_progress();  extern GC_bool GC_collection_in_progress();
                 /* Collection is in progress, or was abandoned. */                  /* Collection is in progress, or was abandoned. */
Line 159  static word min_words_allocd()
Line 160  static word min_words_allocd()
                                    /* use a bit more of large empty heap */                                     /* use a bit more of large empty heap */
                                + total_root_size);                                 + total_root_size);
     if (TRUE_INCREMENTAL) {      if (TRUE_INCREMENTAL) {
         return scan_size / (2 * GC_free_space_divisor);          return scan_size * GC_free_space_numerator / (2 * GC_free_space_divisor);
     } else {      } else {
         return scan_size / GC_free_space_divisor;          return scan_size * GC_free_space_numerator / GC_free_space_divisor;
     }      }
 }  }
   
Line 463  GC_stop_func stop_func;
Line 464  GC_stop_func stop_func;
 #   if defined(CONDPRINT) && !defined(PRINTTIMES)  #   if defined(CONDPRINT) && !defined(PRINTTIMES)
         if (GC_print_stats) GET_TIME(start_time);          if (GC_print_stats) GET_TIME(start_time);
 #   endif  #   endif
       GC_timerstart();
     STOP_WORLD();      STOP_WORLD();
 #   ifdef CONDPRINT  #   ifdef CONDPRINT
       if (GC_print_stats) {        if (GC_print_stats) {
Line 495  GC_stop_func stop_func;
Line 497  GC_stop_func stop_func;
 #                   endif  #                   endif
                     GC_deficit = i; /* Give the mutator a chance. */                      GC_deficit = i; /* Give the mutator a chance. */
                     START_WORLD();                      START_WORLD();
                           GC_timerstop();
                     return(FALSE);                      return(FALSE);
             }              }
             if (GC_mark_some((ptr_t)(&dummy))) break;              if (GC_mark_some((ptr_t)(&dummy))) break;
Line 528  GC_stop_func stop_func;
Line 531  GC_stop_func stop_func;
         }          }
   
     START_WORLD();      START_WORLD();
       GC_timerstop();
 #   ifdef PRINTTIMES  #   ifdef PRINTTIMES
         GET_TIME(current_time);          GET_TIME(current_time);
         GC_printf1("World-stopped marking took %lu msecs\n",          GC_printf1("World-stopped marking took %lu msecs\n",
Line 608  void GC_finish_collection()
Line 612  void GC_finish_collection()
         GET_TIME(start_time);          GET_TIME(start_time);
         finalize_time = start_time;          finalize_time = start_time;
 #   endif  #   endif
           GC_timerstart();
   
 #   ifdef GATHERSTATS  #   ifdef GATHERSTATS
         GC_mem_found = 0;          GC_mem_found = 0;
Line 724  void GC_finish_collection()
Line 729  void GC_finish_collection()
                    MS_TIME_DIFF(finalize_time,start_time),                     MS_TIME_DIFF(finalize_time,start_time),
                    MS_TIME_DIFF(done_time,finalize_time));                     MS_TIME_DIFF(done_time,finalize_time));
 #   endif  #   endif
           GC_timerstop();
 }  }
   
 /* Externally callable routine to invoke full, stop-world collection */  /* Externally callable routine to invoke full, stop-world collection */

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>