< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.hpp

Print this page
rev 57914 : 8238162: Shenandoah: Remove ShenandoahTaskTerminator wrapper

*** 1,7 **** /* ! * Copyright (c) 2018, 2019, Red Hat, Inc. 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) 2018, 2020, Red Hat, Inc. 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.
*** 24,33 **** --- 24,34 ---- #ifndef SHARE_GC_SHENANDOAH_SHENANDOAHTRAVERSALGC_HPP #define SHARE_GC_SHENANDOAH_SHENANDOAHTRAVERSALGC_HPP #include "memory/allocation.hpp" + #include "gc/shared/taskTerminator.hpp" #include "gc/shenandoah/shenandoahHeap.hpp" #include "gc/shenandoah/shenandoahHeapRegionSet.hpp" #include "gc/shenandoah/shenandoahTaskqueue.hpp" #include "runtime/thread.hpp"
*** 50,70 **** void final_traversal_collection(); template <class T, bool STRING_DEDUP, bool DEGEN, bool ATOMIC_UPDATE> inline void process_oop(T* p, Thread* thread, ShenandoahObjToScanQueue* queue, ShenandoahMarkingContext* const mark_context); ! bool check_and_handle_cancelled_gc(ShenandoahTaskTerminator* terminator, bool sts_yield); ShenandoahObjToScanQueueSet* task_queues(); ! void main_loop(uint worker_id, ShenandoahTaskTerminator* terminator, bool sts_yield); private: void prepare_regions(); template <class T> ! void main_loop_work(T* cl, jushort* live_data, uint worker_id, ShenandoahTaskTerminator* terminator, bool sts_yield); void preclean_weak_refs(); void weak_refs_work(); void weak_refs_work_doit(); --- 51,71 ---- void final_traversal_collection(); template <class T, bool STRING_DEDUP, bool DEGEN, bool ATOMIC_UPDATE> inline void process_oop(T* p, Thread* thread, ShenandoahObjToScanQueue* queue, ShenandoahMarkingContext* const mark_context); ! bool check_and_handle_cancelled_gc(TaskTerminator* terminator, bool sts_yield); ShenandoahObjToScanQueueSet* task_queues(); ! void main_loop(uint worker_id, TaskTerminator* terminator, bool sts_yield); private: void prepare_regions(); template <class T> ! void main_loop_work(T* cl, jushort* live_data, uint worker_id, TaskTerminator* terminator, bool sts_yield); void preclean_weak_refs(); void weak_refs_work(); void weak_refs_work_doit();
< prev index next >