equal
deleted
inserted
replaced
3257 } |
3257 } |
3258 |
3258 |
3259 if (use_ReduceInitialCardMarks() |
3259 if (use_ReduceInitialCardMarks() |
3260 && obj == just_allocated_object(control())) { |
3260 && obj == just_allocated_object(control())) { |
3261 // We can skip marks on a freshly-allocated object in Eden. |
3261 // We can skip marks on a freshly-allocated object in Eden. |
3262 // Keep this code in sync with maybe_defer_card_mark() in runtime.cpp. |
3262 // Keep this code in sync with new_store_pre_barrier() in runtime.cpp. |
3263 // That routine informs GC to take appropriate compensating steps |
3263 // That routine informs GC to take appropriate compensating steps, |
3264 // so as to make this card-mark elision safe. |
3264 // upon a slow-path allocation, so as to make this card-mark |
|
3265 // elision safe. |
3265 return; |
3266 return; |
3266 } |
3267 } |
3267 |
3268 |
3268 if (!use_precise) { |
3269 if (!use_precise) { |
3269 // All card marks for a (non-array) instance are in one place: |
3270 // All card marks for a (non-array) instance are in one place: |