Mercurial > hg > graal-compiler
comparison src/share/vm/oops/klass.hpp @ 518:0af8b0718fc9
6692899: CMS: many vm.parallel_class_loading tests fail with assert "missing Printezis mark"
Summary: The CMS concurrent precleaning and concurrent marking phases should work around classes that are undergoing redefinition.
Reviewed-by: ysr, dcubed
author | jmasa |
---|---|
date | Sun, 11 Jan 2009 16:58:24 -0800 |
parents | 1ee8caae33af |
children | 0fbdb4381b99 98cb887364d3 |
comparison
equal
deleted
inserted
replaced
517:e9be0e04635a | 518:0af8b0718fc9 |
---|---|
604 layout_helper_is_typeArray(layout_helper()), | 604 layout_helper_is_typeArray(layout_helper()), |
605 oop_is_typeArray_slow()); } | 605 oop_is_typeArray_slow()); } |
606 #undef assert_same_query | 606 #undef assert_same_query |
607 | 607 |
608 // Unless overridden, oop is parsable if it has a klass pointer. | 608 // Unless overridden, oop is parsable if it has a klass pointer. |
609 // Parsability of an object is object specific. | |
609 virtual bool oop_is_parsable(oop obj) const { return true; } | 610 virtual bool oop_is_parsable(oop obj) const { return true; } |
611 | |
612 // Unless overridden, oop is safe for concurrent GC processing | |
613 // after its allocation is complete. The exception to | |
614 // this is the case where objects are changed after allocation. | |
615 // Class redefinition is one of the known exceptions. During | |
616 // class redefinition, an allocated class can changed in order | |
617 // order to create a merged class (the combiniation of the | |
618 // old class definition that has to be perserved and the new class | |
619 // definition which is being created. | |
620 virtual bool oop_is_conc_safe(oop obj) const { return true; } | |
610 | 621 |
611 // Access flags | 622 // Access flags |
612 AccessFlags access_flags() const { return _access_flags; } | 623 AccessFlags access_flags() const { return _access_flags; } |
613 void set_access_flags(AccessFlags flags) { _access_flags = flags; } | 624 void set_access_flags(AccessFlags flags) { _access_flags = flags; } |
614 | 625 |