src/share/vm/memory/cardTableModRefBS.hpp

changeset 1696
0414c1049f15
parent 1375
8624da129f0b
child 1907
c18cbe5936b8
equal deleted inserted replaced
1695:8859772195c6 1696:0414c1049f15
337 bool is_card_claimed(size_t card_index) { 337 bool is_card_claimed(size_t card_index) {
338 jbyte val = _byte_map[card_index]; 338 jbyte val = _byte_map[card_index];
339 return (val & (clean_card_mask_val() | claimed_card_val())) == claimed_card_val(); 339 return (val & (clean_card_mask_val() | claimed_card_val())) == claimed_card_val();
340 } 340 }
341 341
342 void set_card_claimed(size_t card_index) {
343 jbyte val = _byte_map[card_index];
344 if (val == clean_card_val()) {
345 val = (jbyte)claimed_card_val();
346 } else {
347 val |= (jbyte)claimed_card_val();
348 }
349 _byte_map[card_index] = val;
350 }
351
342 bool claim_card(size_t card_index); 352 bool claim_card(size_t card_index);
343 353
344 bool is_card_clean(size_t card_index) { 354 bool is_card_clean(size_t card_index) {
345 return _byte_map[card_index] == clean_card_val(); 355 return _byte_map[card_index] == clean_card_val();
346 } 356 }

mercurial