127 |
127 |
128 bool is_permanent(const void *p) const { // committed part |
128 bool is_permanent(const void *p) const { // committed part |
129 return perm_gen()->is_in(p); |
129 return perm_gen()->is_in(p); |
130 } |
130 } |
131 |
131 |
132 static bool is_in_young(oop *p); // reserved part |
132 inline bool is_in_young(oop p); // reserved part |
133 static bool is_in_old_or_perm(oop *p); // reserved part |
133 inline bool is_in_old_or_perm(oop p); // reserved part |
134 |
134 |
135 // Memory allocation. "gc_time_limit_was_exceeded" will |
135 // Memory allocation. "gc_time_limit_was_exceeded" will |
136 // be set to true if the adaptive size policy determine that |
136 // be set to true if the adaptive size policy determine that |
137 // an excessive amount of time is being spent doing collections |
137 // an excessive amount of time is being spent doing collections |
138 // and caused a NULL to be returned. If a NULL is not returned, |
138 // and caused a NULL to be returned. If a NULL is not returned, |
189 // via a TLAB up to the first subsequent safepoint. |
189 // via a TLAB up to the first subsequent safepoint. |
190 virtual bool can_elide_tlab_store_barriers() const { |
190 virtual bool can_elide_tlab_store_barriers() const { |
191 return true; |
191 return true; |
192 } |
192 } |
193 |
193 |
|
194 // Return true if we don't we need a store barrier for |
|
195 // initializing stores to an object at this address. |
|
196 virtual bool can_elide_initializing_store_barrier(oop new_obj); |
|
197 |
194 // Can a compiler elide a store barrier when it writes |
198 // Can a compiler elide a store barrier when it writes |
195 // a permanent oop into the heap? Applies when the compiler |
199 // a permanent oop into the heap? Applies when the compiler |
196 // is storing x to the heap, where x->is_perm() is true. |
200 // is storing x to the heap, where x->is_perm() is true. |
197 virtual bool can_elide_permanent_oop_store_barriers() const { |
201 virtual bool can_elide_permanent_oop_store_barriers() const { |
198 return true; |
202 return true; |