src/share/vm/code/nmethod.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File classload.08 Cdiff src/share/vm/code/nmethod.cpp

src/share/vm/code/nmethod.cpp

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 1997, 2015, 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) 1997, 2016, 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.
*** 46,55 **** --- 46,56 ---- #include "runtime/sweeper.hpp" #include "utilities/resourceHash.hpp" #include "utilities/dtrace.hpp" #include "utilities/events.hpp" #include "utilities/xmlstream.hpp" + #include "logging/log.hpp" #ifdef TARGET_ARCH_x86 # include "nativeInst_x86.hpp" #endif #ifdef TARGET_ARCH_sparc # include "nativeInst_sparc.hpp"
*** 1308,1324 **** assert(is_alive != NULL, "Should be non-NULL"); // A non-NULL is_alive closure indicates that this is being called during GC. flush_dependencies(is_alive); // Break cycle between nmethod & method ! if (TraceClassUnloading && WizardMode) { ! tty->print_cr("[Class unloading: Making nmethod " INTPTR_FORMAT ! " unloadable], Method*(" INTPTR_FORMAT "), cause(" INTPTR_FORMAT ")", p2i(this), p2i(_method), p2i(cause)); if (!Universe::heap()->is_gc_active()) ! cause->klass()->print(); } // Unlink the osr method, so we do not look this up again if (is_osr_method()) { invalidate_osr_method(); } --- 1309,1326 ---- assert(is_alive != NULL, "Should be non-NULL"); // A non-NULL is_alive closure indicates that this is being called during GC. flush_dependencies(is_alive); // Break cycle between nmethod & method ! if (log_is_enabled(Trace, classunload)) { ! outputStream* log = LogHandle(classunload)::trace_stream(); ! log->print_cr("making nmethod " INTPTR_FORMAT ! " unloadable, Method*(" INTPTR_FORMAT "), cause(" INTPTR_FORMAT ")", p2i(this), p2i(_method), p2i(cause)); if (!Universe::heap()->is_gc_active()) ! cause->klass()->print_on(log); } // Unlink the osr method, so we do not look this up again if (is_osr_method()) { invalidate_osr_method(); }
src/share/vm/code/nmethod.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File