< 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 >