Mercurial > hg > graal-compiler
comparison src/share/vm/utilities/dtrace.hpp @ 4006:436b4a3231bf
7098194: integrate macosx-port changes
Summary: Integrate bsd-port/hotspot and macosx-port/hotspot changes as of 2011.09.29.
Reviewed-by: kvn, dholmes, never, phh
Contributed-by: Christos Zoulas <christos@zoulas.com>, Greg Lewis <glewis@eyesbeyond.com>, Kurt Miller <kurt@intricatesoftware.com>, Alexander Strange <astrange@apple.com>, Mike Swingler <swingler@apple.com>, Roger Hoover <rhoover@apple.com>, Victor Hernandez <vhernandez@apple.com>, Pratik Solanki <psolanki@apple.com>
author | dcubed |
---|---|
date | Thu, 13 Oct 2011 09:35:42 -0700 |
parents | f95d63e2154a |
children | 75982791ddb6 |
comparison
equal
deleted
inserted
replaced
4005:2ef3386478e6 | 4006:436b4a3231bf |
---|---|
23 */ | 23 */ |
24 | 24 |
25 #ifndef SHARE_VM_UTILITIES_DTRACE_HPP | 25 #ifndef SHARE_VM_UTILITIES_DTRACE_HPP |
26 #define SHARE_VM_UTILITIES_DTRACE_HPP | 26 #define SHARE_VM_UTILITIES_DTRACE_HPP |
27 | 27 |
28 #if defined(SOLARIS) && defined(DTRACE_ENABLED) | 28 #if defined(DTRACE_ENABLED) |
29 | 29 |
30 #include <sys/sdt.h> | 30 #include <sys/sdt.h> |
31 | 31 |
32 #define DTRACE_ONLY(x) x | 32 #define DTRACE_ONLY(x) x |
33 #define NOT_DTRACE(x) | 33 #define NOT_DTRACE(x) |
34 | 34 |
35 // Work around dtrace tail call bug 6672627 until it is fixed in solaris 10. | 35 // Work around dtrace tail call bug 6672627 until it is fixed in solaris 10. |
36 #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() \ | 36 #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() \ |
37 do { volatile size_t dtrace_workaround_tail_call_bug = 1; } while (0) | 37 do { volatile size_t dtrace_workaround_tail_call_bug = 1; } while (0) |
38 | 38 |
39 #else // ndef SOLARIS || ndef DTRACE_ENABLED | 39 #if defined(SOLARIS) |
40 #define USDT1 1 | |
41 #elif defined(__APPLE__) | |
42 #define USDT2 1 | |
43 #include <sys/types.h> | |
44 #include "dtracefiles/hotspot.h" | |
45 #include "dtracefiles/hotspot_jni.h" | |
46 #include "dtracefiles/hs_private.h" | |
47 #else | |
48 #error "dtrace enabled for unknown os" | |
49 #endif /* defined(SOLARIS) */ | |
50 | |
51 #else /* defined(DTRACE_ENABLED) */ | |
40 | 52 |
41 #define DTRACE_ONLY(x) | 53 #define DTRACE_ONLY(x) |
42 #define NOT_DTRACE(x) x | 54 #define NOT_DTRACE(x) x |
55 | |
56 #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() | |
57 | |
58 #ifndef USDT2 | |
43 | 59 |
44 #define DTRACE_PROBE(a,b) {;} | 60 #define DTRACE_PROBE(a,b) {;} |
45 #define DTRACE_PROBE1(a,b,c) {;} | 61 #define DTRACE_PROBE1(a,b,c) {;} |
46 #define DTRACE_PROBE2(a,b,c,d) {;} | 62 #define DTRACE_PROBE2(a,b,c,d) {;} |
47 #define DTRACE_PROBE3(a,b,c,d,e) {;} | 63 #define DTRACE_PROBE3(a,b,c,d,e) {;} |
48 #define DTRACE_PROBE4(a,b,c,d,e,f) {;} | 64 #define DTRACE_PROBE4(a,b,c,d,e,f) {;} |
49 #define DTRACE_PROBE5(a,b,c,d,e,f,g) {;} | 65 #define DTRACE_PROBE5(a,b,c,d,e,f,g) {;} |
50 | 66 |
51 #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() | 67 #else /* USDT2 */ |
52 | 68 |
53 #endif | 69 #include "dtrace_usdt2_disabled.hpp" |
70 #endif /* USDT2 */ | |
71 | |
72 #endif /* defined(DTRACE_ENABLED) */ | |
73 | |
74 #ifndef USDT2 | |
54 | 75 |
55 #define HS_DTRACE_PROBE_FN(provider,name)\ | 76 #define HS_DTRACE_PROBE_FN(provider,name)\ |
56 __dtrace_##provider##___##name | 77 __dtrace_##provider##___##name |
57 | 78 |
58 #define HS_DTRACE_PROBE_DECL_N(provider,name,args) \ | 79 #define HS_DTRACE_PROBE_DECL_N(provider,name,args) \ |
131 #define HS_DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9)\ | 152 #define HS_DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9)\ |
132 HS_DTRACE_PROBE_N(provider,name,((uintptr_t)a0,(uintptr_t)a1,(uintptr_t)a2,\ | 153 HS_DTRACE_PROBE_N(provider,name,((uintptr_t)a0,(uintptr_t)a1,(uintptr_t)a2,\ |
133 (uintptr_t)a3,(uintptr_t)a4,(uintptr_t)a5,(uintptr_t)a6,(uintptr_t)a7,\ | 154 (uintptr_t)a3,(uintptr_t)a4,(uintptr_t)a5,(uintptr_t)a6,(uintptr_t)a7,\ |
134 (uintptr_t)a8,(uintptr_t)a9)) | 155 (uintptr_t)a8,(uintptr_t)a9)) |
135 | 156 |
157 #endif /* !USDT2 */ | |
158 | |
136 #endif // SHARE_VM_UTILITIES_DTRACE_HPP | 159 #endif // SHARE_VM_UTILITIES_DTRACE_HPP |