equal
deleted
inserted
replaced
73 #include "runtime/orderAccess.hpp" |
73 #include "runtime/orderAccess.hpp" |
74 #include "runtime/thread.inline.hpp" |
74 #include "runtime/thread.inline.hpp" |
75 #include "services/classLoadingService.hpp" |
75 #include "services/classLoadingService.hpp" |
76 #include "services/threadService.hpp" |
76 #include "services/threadService.hpp" |
77 #include "utilities/dtrace.hpp" |
77 #include "utilities/dtrace.hpp" |
|
78 #include "utilities/events.hpp" |
78 #include "utilities/macros.hpp" |
79 #include "utilities/macros.hpp" |
79 #include "utilities/stringUtils.hpp" |
80 #include "utilities/stringUtils.hpp" |
80 #ifdef COMPILER1 |
81 #ifdef COMPILER1 |
81 #include "c1/c1_Compiler.hpp" |
82 #include "c1/c1_Compiler.hpp" |
82 #endif |
83 #endif |
2444 JvmtiExport::post_class_unload(ik); |
2445 JvmtiExport::post_class_unload(ik); |
2445 } |
2446 } |
2446 |
2447 |
2447 // notify ClassLoadingService of class unload |
2448 // notify ClassLoadingService of class unload |
2448 ClassLoadingService::notify_class_unloaded(ik); |
2449 ClassLoadingService::notify_class_unloaded(ik); |
|
2450 |
|
2451 if (log_is_enabled(Info, class, unload)) { |
|
2452 ResourceMark rm; |
|
2453 log_info(class, unload)("unloading class %s " INTPTR_FORMAT, ik->external_name(), p2i(ik)); |
|
2454 } |
|
2455 |
|
2456 Events::log_class_unloading(Thread::current(), ik); |
2449 |
2457 |
2450 #if INCLUDE_JFR |
2458 #if INCLUDE_JFR |
2451 assert(ik != NULL, "invariant"); |
2459 assert(ik != NULL, "invariant"); |
2452 EventClassUnload event; |
2460 EventClassUnload event; |
2453 event.set_unloadedClass(ik); |
2461 event.set_unloadedClass(ik); |