diff -r 9f75dc382445 -r 4e325f8b50ce src/hotspot/share/gc/z/zDriver.hpp --- a/src/hotspot/share/gc/z/zDriver.hpp Tue Jan 29 10:23:38 2019 +0100 +++ b/src/hotspot/share/gc/z/zDriver.hpp Tue Jan 29 10:23:38 2019 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved. + * 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 @@ -28,18 +28,31 @@ #include "gc/shared/gcCause.hpp" #include "gc/z/zMessagePort.hpp" -class ZOperationClosure; +class VM_ZOperation; class ZDriver : public ConcurrentGCThread { private: ZMessagePort _gc_cycle_port; ZRendezvousPort _gc_locker_port; - bool vm_operation(ZOperationClosure* cl); + template bool pause(); - GCCause::Cause start_gc_cycle(); - void run_gc_cycle(GCCause::Cause cause); - void end_gc_cycle(); + void pause_mark_start(); + void concurrent_mark(); + bool pause_mark_end(); + void concurrent_mark_continue(); + void concurrent_process_non_strong_references(); + void concurrent_reset_relocation_set(); + void concurrent_destroy_detached_pages(); + void pause_verify(); + void concurrent_select_relocation_set(); + void concurrent_prepare_relocation_set(); + void pause_relocate_start(); + void concurrent_relocate(); + + void check_out_of_memory(); + + void gc(GCCause::Cause cause); protected: virtual void run_service();