< prev index next >

src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.cpp

Print this page




 124   if (super == NULL) {
 125     return;
 126   }
 127   if (IS_EVENT_KLASS(super)) {
 128     tag_as_jdk_jfr_event_sub(klass);
 129   }
 130 }
 131 
 132 void JfrTraceId::assign(const ModuleEntry* module) {
 133   assert(module != NULL, "invariant");
 134   module->set_trace_id(next_module_id());
 135 }
 136 
 137 void JfrTraceId::assign(const PackageEntry* package) {
 138   assert(package != NULL, "invariant");
 139   package->set_trace_id(next_package_id());
 140 }
 141 
 142 void JfrTraceId::assign(const ClassLoaderData* cld) {
 143   assert(cld != NULL, "invariant");
 144   if (cld->is_unsafe_anonymous()) {
 145     cld->set_trace_id(0);
 146     return;
 147   }
 148   cld->set_trace_id(next_class_loader_data_id());
 149 }
 150 
 151 traceid JfrTraceId::assign_thread_id() {
 152   return next_thread_id();
 153 }
 154 
 155 // used by CDS / APPCDS as part of "remove_unshareable_info"
 156 void JfrTraceId::remove(const Klass* k) {
 157   assert(k != NULL, "invariant");
 158   // Mask off and store the event flags.
 159   // This mechanism will retain the event specific flags
 160   // in the archive, allowing for event flag restoration
 161   // when renewing the traceid on klass revival.
 162   k->set_trace_id(EVENT_FLAGS_MASK(k));
 163 }
 164 




 124   if (super == NULL) {
 125     return;
 126   }
 127   if (IS_EVENT_KLASS(super)) {
 128     tag_as_jdk_jfr_event_sub(klass);
 129   }
 130 }
 131 
 132 void JfrTraceId::assign(const ModuleEntry* module) {
 133   assert(module != NULL, "invariant");
 134   module->set_trace_id(next_module_id());
 135 }
 136 
 137 void JfrTraceId::assign(const PackageEntry* package) {
 138   assert(package != NULL, "invariant");
 139   package->set_trace_id(next_package_id());
 140 }
 141 
 142 void JfrTraceId::assign(const ClassLoaderData* cld) {
 143   assert(cld != NULL, "invariant");
 144   if (cld->is_shortlived()) {
 145     cld->set_trace_id(0);
 146     return;
 147   }
 148   cld->set_trace_id(next_class_loader_data_id());
 149 }
 150 
 151 traceid JfrTraceId::assign_thread_id() {
 152   return next_thread_id();
 153 }
 154 
 155 // used by CDS / APPCDS as part of "remove_unshareable_info"
 156 void JfrTraceId::remove(const Klass* k) {
 157   assert(k != NULL, "invariant");
 158   // Mask off and store the event flags.
 159   // This mechanism will retain the event specific flags
 160   // in the archive, allowing for event flag restoration
 161   // when renewing the traceid on klass revival.
 162   k->set_trace_id(EVENT_FLAGS_MASK(k));
 163 }
 164 


< prev index next >