< prev index next >

src/hotspot/share/gc/g1/g1FullGCMarker.inline.hpp

Print this page
rev 49289 : 8199735: Mark word updates need to use Access API

*** 1,7 **** /* ! * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 29,38 **** --- 29,39 ---- #include "gc/g1/g1ConcurrentMarkBitMap.inline.hpp" #include "gc/g1/g1FullGCMarker.hpp" #include "gc/g1/g1StringDedup.hpp" #include "gc/g1/g1StringDedupQueue.hpp" #include "gc/shared/preservedMarks.inline.hpp" + #include "oops/oop.inline.hpp" #include "utilities/debug.hpp" inline bool G1FullGCMarker::mark_object(oop obj) { // Not marking closed archive objects. if (G1ArchiveAllocator::is_closed_archive_object(obj)) {
*** 44,54 **** // Lost mark race. return false; } // Marked by us, preserve if needed. ! markOop mark = obj->mark(); if (mark->must_be_preserved(obj) && !G1ArchiveAllocator::is_open_archive_object(obj)) { preserved_stack()->push(obj, mark); } --- 45,55 ---- // Lost mark race. return false; } // Marked by us, preserve if needed. ! markOop mark = obj->mark_raw(); if (mark->must_be_preserved(obj) && !G1ArchiveAllocator::is_open_archive_object(obj)) { preserved_stack()->push(obj, mark); }
< prev index next >