Changeset 13290


Ignore:
Timestamp:
Dec 10, 2009, 1:06:33 PM (10 years ago)
Author:
gz
Message:

forward termination lists in tenured populations

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/lisp-kernel/gc-common.c

    r13278 r13290  
    13981398        LispObj *base = ptr_from_lispobj(this);
    13991399        natural dnode = area_dnode(&base[3], tenured_low);
    1400         if ((dnode < tenured_dnodes) && (base[3] >= GCarealow)) {
    1401           set_bit(refbits, dnode);
     1400        if (dnode < tenured_dnodes) {
     1401          if (base[3] >= GCarealow) {
     1402            set_bit(refbits, dnode);
     1403          }
     1404          // might have set termination list to a new pointer
     1405          if ((base[2] >> population_termination_bit) && (base[4] >= GCarealow)) {
     1406            set_bit(refbits, dnode+1);
     1407          }
    14021408        }
    14031409        this = base[1];
Note: See TracChangeset for help on using the changeset viewer.