< prev index next >

src/hotspot/share/gc/z/zBarrier.hpp

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2015, 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) 2015, 2019, 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.
*** 39,58 **** static const bool Finalizable = true; static const bool Publish = true; static const bool Overflow = false; template <ZBarrierFastPath fast_path, ZBarrierSlowPath slow_path> static oop barrier(volatile oop* p, oop o); template <ZBarrierFastPath fast_path, ZBarrierSlowPath slow_path> static oop weak_barrier(volatile oop* p, oop o); template <ZBarrierFastPath fast_path, ZBarrierSlowPath slow_path> static void root_barrier(oop* p, oop o); static bool is_null_fast_path(uintptr_t addr); static bool is_good_or_null_fast_path(uintptr_t addr); static bool is_weak_good_or_null_fast_path(uintptr_t addr); - static bool is_resurrection_blocked(volatile oop* p, oop* o); - static bool during_mark(); static bool during_relocate(); template <bool finalizable> static bool should_mark_through(uintptr_t addr); template <bool follow, bool finalizable, bool publish> static uintptr_t mark(uintptr_t addr); static uintptr_t remap(uintptr_t addr); --- 39,58 ---- static const bool Finalizable = true; static const bool Publish = true; static const bool Overflow = false; + static void self_heal(volatile oop* p, uintptr_t addr, uintptr_t heal_addr); + template <ZBarrierFastPath fast_path, ZBarrierSlowPath slow_path> static oop barrier(volatile oop* p, oop o); template <ZBarrierFastPath fast_path, ZBarrierSlowPath slow_path> static oop weak_barrier(volatile oop* p, oop o); template <ZBarrierFastPath fast_path, ZBarrierSlowPath slow_path> static void root_barrier(oop* p, oop o); static bool is_null_fast_path(uintptr_t addr); static bool is_good_or_null_fast_path(uintptr_t addr); static bool is_weak_good_or_null_fast_path(uintptr_t addr); static bool during_mark(); static bool during_relocate(); template <bool finalizable> static bool should_mark_through(uintptr_t addr); template <bool follow, bool finalizable, bool publish> static uintptr_t mark(uintptr_t addr); static uintptr_t remap(uintptr_t addr);
< prev index next >