g1RemSet.inline.hpp revision 1625
1625N/A * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. 342N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 342N/A * This code is free software; you can redistribute it and/or modify it 342N/A * under the terms of the GNU General Public License version 2 only, as 342N/A * published by the Free Software Foundation. 342N/A * This code is distributed in the hope that it will be useful, but WITHOUT 342N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 342N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 342N/A * version 2 for more details (a copy is included in the LICENSE file that 342N/A * accompanied this code). 342N/A * You should have received a copy of the GNU General Public License version 342N/A * 2 along with this work; if not, write to the Free Software Foundation, 342N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 1472N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 342N/A // can't do because of races 342N/A // assert(obj == NULL || obj->is_oop(), "expected an oop"); 342N/A // Do the safe subset of is_oop 342N/A#
endif // CHECK_UNHANDLED_OOPS 342N/A // The test below could be optimized by applying a bit op to to and from. 616N/A // The _par_traversal_in_progress flag is true during the collection pause, 1625N/A // false during the evacuation failure handing. This should avoid a 1625N/A // potential loop if we were to add the card containing 'p' to the DCQS 1625N/A // that's used to regenerate the remembered sets for the collection set, 1625N/A // in the event of an evacuation failure, here. The UpdateRSImmediate 1625N/A // closure will eventally call this routine. 1625N/A // Deferred updates to the CSet are either discarded (in the normal case), 616N/A // or processed (if an evacuation failure occurs) at the end 616N/A // See HRInto_G1RemSet::cleanup_after_oops_into_collection_set_do().