hotspot/src/share/vm/memory/blockOffsetTable.cpp
changeset 1374 4c24294029a9
parent 1 489c9b5090e2
child 5402 c51fd0c1d005
equal deleted inserted replaced
615:570062d730b2 1374:4c24294029a9
   182   assert(start_card > _array->index_for(_bottom), "Cannot be first card");
   182   assert(start_card > _array->index_for(_bottom), "Cannot be first card");
   183   assert(_array->offset_array(start_card-1) <= N_words,
   183   assert(_array->offset_array(start_card-1) <= N_words,
   184     "Offset card has an unexpected value");
   184     "Offset card has an unexpected value");
   185   size_t start_card_for_region = start_card;
   185   size_t start_card_for_region = start_card;
   186   u_char offset = max_jubyte;
   186   u_char offset = max_jubyte;
   187   for (int i = 0; i <= N_powers-1; i++) {
   187   for (int i = 0; i < N_powers; i++) {
   188     // -1 so that the the card with the actual offset is counted.  Another -1
   188     // -1 so that the the card with the actual offset is counted.  Another -1
   189     // so that the reach ends in this region and not at the start
   189     // so that the reach ends in this region and not at the start
   190     // of the next.
   190     // of the next.
   191     size_t reach = start_card - 1 + (power_to_cards_back(i+1) - 1);
   191     size_t reach = start_card - 1 + (power_to_cards_back(i+1) - 1);
   192     offset = N_words + i;
   192     offset = N_words + i;