283 |
283 |
284 // *** Barrier set functions. |
284 // *** Barrier set functions. |
285 |
285 |
286 bool has_write_ref_pre_barrier() { return false; } |
286 bool has_write_ref_pre_barrier() { return false; } |
287 |
287 |
288 inline bool write_ref_needs_barrier(void* field, oop new_val) { |
|
289 // Note that this assumes the perm gen is the highest generation |
|
290 // in the address space |
|
291 return new_val != NULL && !new_val->is_perm(); |
|
292 } |
|
293 |
|
294 // Record a reference update. Note that these versions are precise! |
288 // Record a reference update. Note that these versions are precise! |
295 // The scanning code has to handle the fact that the write barrier may be |
289 // The scanning code has to handle the fact that the write barrier may be |
296 // either precise or imprecise. We make non-virtual inline variants of |
290 // either precise or imprecise. We make non-virtual inline variants of |
297 // these functions here for performance. |
291 // these functions here for performance. |
298 protected: |
292 protected: |