< prev index next >

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

Print this page
rev 53848 : 8219469: ZGC: Extract functions out from ZNMethodTable into new ZNMethod class

*** 1,7 **** /* ! * Copyright (c) 2017, 2018, 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) 2017, 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.
*** 22,42 **** */ #ifndef SHARE_GC_Z_ZNMETHODTABLE_HPP #define SHARE_GC_Z_ZNMETHODTABLE_HPP - #include "gc/z/zArray.hpp" - #include "gc/z/zGlobals.hpp" - #include "gc/z/zLock.hpp" - #include "gc/z/zNMethodTableEntry.hpp" #include "gc/z/zNMethodTableIteration.hpp" #include "memory/allocation.hpp" class nmethod; class ZNMethodClosure; ! class ZNMethodData; ! class ZNMethodDataOops; class ZWorkers; class ZNMethodTable : public AllStatic { private: static ZNMethodTableEntry* _table; --- 22,37 ---- */ #ifndef SHARE_GC_Z_ZNMETHODTABLE_HPP #define SHARE_GC_Z_ZNMETHODTABLE_HPP #include "gc/z/zNMethodTableIteration.hpp" #include "memory/allocation.hpp" class nmethod; class ZNMethodClosure; ! class ZNMethodTableEntry; class ZWorkers; class ZNMethodTable : public AllStatic { private: static ZNMethodTableEntry* _table;
*** 46,85 **** static ZNMethodTableIteration _iteration; static ZNMethodTableEntry* create(size_t size); static void destroy(ZNMethodTableEntry* table); - static void attach_gc_data(nmethod* nm); - static void detach_gc_data(nmethod* nm); - static size_t first_index(const nmethod* nm, size_t size); static size_t next_index(size_t prev_index, size_t size); - static void wait_until_iteration_done(); - static bool register_entry(ZNMethodTableEntry* table, size_t size, nmethod* nm); static void unregister_entry(ZNMethodTableEntry* table, size_t size, nmethod* nm); static void rebuild(size_t new_size); static void rebuild_if_needed(); - static void log_register(const nmethod* nm); - static void log_unregister(const nmethod* nm); - public: static size_t registered_nmethods(); static size_t unregistered_nmethods(); static void register_nmethod(nmethod* nm); static void unregister_nmethod(nmethod* nm); - static void disarm_nmethod(nmethod* nm); ! static ZReentrantLock* lock_for_nmethod(nmethod* nm); ! ! static void oops_do(OopClosure* cl); ! ! static void oops_do(nmethod* nm, OopClosure* cl); static void nmethods_do_begin(); static void nmethods_do_end(); static void nmethods_do(ZNMethodClosure* cl); --- 41,67 ---- static ZNMethodTableIteration _iteration; static ZNMethodTableEntry* create(size_t size); static void destroy(ZNMethodTableEntry* table); static size_t first_index(const nmethod* nm, size_t size); static size_t next_index(size_t prev_index, size_t size); static bool register_entry(ZNMethodTableEntry* table, size_t size, nmethod* nm); static void unregister_entry(ZNMethodTableEntry* table, size_t size, nmethod* nm); static void rebuild(size_t new_size); static void rebuild_if_needed(); public: static size_t registered_nmethods(); static size_t unregistered_nmethods(); static void register_nmethod(nmethod* nm); static void unregister_nmethod(nmethod* nm); ! static void wait_until_iteration_done(); static void nmethods_do_begin(); static void nmethods_do_end(); static void nmethods_do(ZNMethodClosure* cl);
< prev index next >