59 Atomic::inc(&thread_id_counter); |
59 Atomic::inc(&thread_id_counter); |
60 return (traceid) thread_id_counter; |
60 return (traceid) thread_id_counter; |
61 #endif |
61 #endif |
62 } |
62 } |
63 |
63 |
64 // XXX |
|
65 // static traceid next_package_id() { |
|
66 // static volatile traceid package_id_counter = 1; |
|
67 // return atomic_inc(&package_id_counter) << TRACE_ID_SHIFT; |
|
68 // } |
|
69 |
|
70 static traceid next_class_loader_data_id() { |
64 static traceid next_class_loader_data_id() { |
71 static volatile traceid cld_id_counter = 1; |
65 static volatile traceid cld_id_counter = 1; |
72 return atomic_inc(&cld_id_counter) << TRACE_ID_SHIFT; |
66 return atomic_inc(&cld_id_counter) << TRACE_ID_SHIFT; |
73 } |
67 } |
74 |
68 |
101 } |
95 } |
102 if (IS_EVENT_KLASS(super)) { |
96 if (IS_EVENT_KLASS(super)) { |
103 tag_as_jdk_jfr_event_sub(klass); |
97 tag_as_jdk_jfr_event_sub(klass); |
104 } |
98 } |
105 } |
99 } |
106 |
|
107 // XXX |
|
108 // void JfrTraceId::assign(const PackageEntry* package) { |
|
109 // assert(package != NULL, "invariant"); |
|
110 // package->set_trace_id(next_package_id()); |
|
111 // } |
|
112 |
100 |
113 void JfrTraceId::assign(const ClassLoaderData* cld) { |
101 void JfrTraceId::assign(const ClassLoaderData* cld) { |
114 assert(cld != NULL, "invariant"); |
102 assert(cld != NULL, "invariant"); |
115 if (cld->is_anonymous()) { |
103 if (cld->is_anonymous()) { |
116 cld->set_trace_id(0); |
104 cld->set_trace_id(0); |