comparison src/share/vm/memory/barrierSet.inline.hpp @ 845:df6caf649ff7

6700789: G1: Enable use of compressed oops with G1 heaps Summary: Modifications to G1 so as to allow the use of compressed oops. Reviewed-by: apetrusenko, coleenp, jmasa, kvn, never, phh, tonyp
author ysr
date Tue, 14 Jul 2009 15:40:39 -0700
parents 1ee8caae33af
children 6aa7255741f3
comparison
equal deleted inserted replaced
839:bb18957ad21e 845:df6caf649ff7
21 * have any questions. 21 * have any questions.
22 * 22 *
23 */ 23 */
24 24
25 // Inline functions of BarrierSet, which de-virtualize certain 25 // Inline functions of BarrierSet, which de-virtualize certain
26 // performance-critical calls when when the barrier is the most common 26 // performance-critical calls when the barrier is the most common
27 // card-table kind. 27 // card-table kind.
28 28
29 void BarrierSet::write_ref_field_pre(void* field, oop new_val) { 29 template <class T> void BarrierSet::write_ref_field_pre(T* field, oop new_val) {
30 if (kind() == CardTableModRef) { 30 if (kind() == CardTableModRef) {
31 ((CardTableModRefBS*)this)->inline_write_ref_field_pre(field, new_val); 31 ((CardTableModRefBS*)this)->inline_write_ref_field_pre(field, new_val);
32 } else { 32 } else {
33 write_ref_field_pre_work(field, new_val); 33 write_ref_field_pre_work(field, new_val);
34 } 34 }