8229258: Rework markOop and markOopDesc into a simpler mark word value carrier

Reviewed-by: rkennke, coleenp, kbarrett, dcubed
This commit is contained in:
Stefan Karlsson 2019-08-06 10:48:21 +02:00
parent f075a3278b
commit ae5615c614
132 changed files with 1215 additions and 1236 deletions

View file

@ -105,14 +105,14 @@ bool oopDesc::is_oop(oop obj, bool ignore_mark_word) {
return false;
}
// Header verification: the mark is typically non-NULL. If we're
// at a safepoint, it must not be null.
// Header verification: the mark is typically non-zero. If we're
// at a safepoint, it must not be zero.
// Outside of a safepoint, the header could be changing (for example,
// another thread could be inflating a lock on this object).
if (ignore_mark_word) {
return true;
}
if (obj->mark_raw() != NULL) {
if (obj->mark_raw().value() != 0) {
return true;
}
return !SafepointSynchronize::is_at_safepoint();