8 u32 return_address_count;
10 cell total_bitmap_size()
12 return return_address_count * (scrub_d_count + scrub_r_count + gc_root_count);
15 cell total_bitmap_bytes()
17 return ((total_bitmap_size() + 7) / 8);
20 u32 *return_addresses()
22 return (u32 *)((u8 *)this - return_address_count * sizeof(u32));
27 return (u8 *)return_addresses() - total_bitmap_bytes();
30 cell scrub_d_base(cell index)
32 return index * scrub_d_count;
35 cell scrub_r_base(cell index)
37 return return_address_count * scrub_d_count +
38 index * scrub_r_count;
41 cell spill_slot_base(cell index)
43 return return_address_count * scrub_d_count
44 + return_address_count * scrub_r_count
45 + index * gc_root_count;
48 int return_address_index(cell return_address);