20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "classfile/vmSymbols.hpp"
27 #include "memory/allocation.inline.hpp"
28 #include "memory/resourceArea.hpp"
29 #include "oops/markOop.hpp"
30 #include "oops/oop.inline.hpp"
31 #include "runtime/atomic.hpp"
32 #include "runtime/handles.inline.hpp"
33 #include "runtime/interfaceSupport.inline.hpp"
34 #include "runtime/mutexLocker.hpp"
35 #include "runtime/objectMonitor.hpp"
36 #include "runtime/objectMonitor.inline.hpp"
37 #include "runtime/orderAccess.inline.hpp"
38 #include "runtime/osThread.hpp"
39 #include "runtime/safepointMechanism.inline.hpp"
40 #include "runtime/stubRoutines.hpp"
41 #include "runtime/thread.inline.hpp"
42 #include "services/threadService.hpp"
43 #include "trace/tracing.hpp"
44 #include "trace/traceMacros.hpp"
45 #include "utilities/dtrace.hpp"
46 #include "utilities/macros.hpp"
47 #include "utilities/preserveException.hpp"
48
49 #ifdef DTRACE_ENABLED
50
51 // Only bother with this argument setup if dtrace is available
52 // TODO-FIXME: probes should not fire when caller is _blocked. assert() accordingly.
53
54
55 #define DTRACE_MONITOR_PROBE_COMMON(obj, thread) \
56 char* bytes = NULL; \
57 int len = 0; \
58 jlong jtid = SharedRuntime::get_java_tid(thread); \
59 Symbol* klassname = ((oop)obj)->klass()->name(); \
|
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "classfile/vmSymbols.hpp"
27 #include "memory/allocation.inline.hpp"
28 #include "memory/resourceArea.hpp"
29 #include "oops/markOop.hpp"
30 #include "oops/oop.inline.hpp"
31 #include "runtime/atomic.hpp"
32 #include "runtime/handles.inline.hpp"
33 #include "runtime/interfaceSupport.inline.hpp"
34 #include "runtime/mutexLocker.hpp"
35 #include "runtime/objectMonitor.hpp"
36 #include "runtime/objectMonitor.inline.hpp"
37 #include "runtime/orderAccess.inline.hpp"
38 #include "runtime/osThread.hpp"
39 #include "runtime/safepointMechanism.inline.hpp"
40 #include "runtime/sharedRuntime.hpp"
41 #include "runtime/stubRoutines.hpp"
42 #include "runtime/thread.inline.hpp"
43 #include "services/threadService.hpp"
44 #include "trace/tracing.hpp"
45 #include "trace/traceMacros.hpp"
46 #include "utilities/dtrace.hpp"
47 #include "utilities/macros.hpp"
48 #include "utilities/preserveException.hpp"
49
50 #ifdef DTRACE_ENABLED
51
52 // Only bother with this argument setup if dtrace is available
53 // TODO-FIXME: probes should not fire when caller is _blocked. assert() accordingly.
54
55
56 #define DTRACE_MONITOR_PROBE_COMMON(obj, thread) \
57 char* bytes = NULL; \
58 int len = 0; \
59 jlong jtid = SharedRuntime::get_java_tid(thread); \
60 Symbol* klassname = ((oop)obj)->klass()->name(); \
|