src/hotspot/share/jfr/recorder/checkpoint/types/jfrTypeSet.cpp
changeset 50634 c349d409262a
parent 50113 caf115bb98ad
child 51444 3e5d28e6de32
equal deleted inserted replaced
50633:b8055b38b252 50634:c349d409262a
   236   const Klass* class_loader_klass = cld->class_loader_klass();
   236   const Klass* class_loader_klass = cld->class_loader_klass();
   237   if (class_loader_klass == NULL) {
   237   if (class_loader_klass == NULL) {
   238     // (primordial) boot class loader
   238     // (primordial) boot class loader
   239     writer->write(cld_id); // class loader instance id
   239     writer->write(cld_id); // class loader instance id
   240     writer->write((traceid)0);  // class loader type id (absence of)
   240     writer->write((traceid)0);  // class loader type id (absence of)
   241     writer->write((traceid)CREATE_SYMBOL_ID(1)); // 1 maps to synthetic name -> "boot"
   241     writer->write((traceid)CREATE_SYMBOL_ID(1)); // 1 maps to synthetic name -> "bootstrap"
   242   } else {
   242   } else {
   243     Symbol* symbol_name = cld->class_loader_name();
   243     Symbol* symbol_name = cld->name();
   244     const traceid symbol_name_id = symbol_name != NULL ? artifacts->mark(symbol_name) : 0;
   244     const traceid symbol_name_id = symbol_name != NULL ? artifacts->mark(symbol_name) : 0;
   245     writer->write(cld_id); // class loader instance id
   245     writer->write(cld_id); // class loader instance id
   246     writer->write(TRACE_ID(class_loader_klass)); // class loader type id
   246     writer->write(TRACE_ID(class_loader_klass)); // class loader type id
   247     writer->write(symbol_name_id == 0 ? (traceid)0 :
   247     writer->write(symbol_name_id == 0 ? (traceid)0 :
   248       (traceid)CREATE_SYMBOL_ID(symbol_name_id)); // class loader instance name
   248       (traceid)CREATE_SYMBOL_ID(symbol_name_id)); // class loader instance name
   439   if (class_loader_klass == NULL) {
   439   if (class_loader_klass == NULL) {
   440     // (primordial) boot class loader
   440     // (primordial) boot class loader
   441     CStringEntryPtr entry = this->_artifacts->map_cstring(0);
   441     CStringEntryPtr entry = this->_artifacts->map_cstring(0);
   442     assert(entry != NULL, "invariant");
   442     assert(entry != NULL, "invariant");
   443     assert(strncmp(entry->literal(),
   443     assert(strncmp(entry->literal(),
   444       boot_class_loader_name,
   444       BOOTSTRAP_LOADER_NAME,
   445       strlen(boot_class_loader_name)) == 0, "invariant");
   445       BOOTSTRAP_LOADER_NAME_LEN) == 0, "invariant");
   446     if (_unique_predicate(entry->id())) {
   446     if (_unique_predicate(entry->id())) {
   447       count += write__artifact__cstring__entry__(this->_writer, entry);
   447       count += write__artifact__cstring__entry__(this->_writer, entry);
   448     }
   448     }
   449   } else {
   449   } else {
   450     const Symbol* class_loader_name = cld->class_loader_name();
   450     const Symbol* class_loader_name = cld->name();
   451     if (class_loader_name != NULL) {
   451     if (class_loader_name != NULL) {
   452       SymbolEntryPtr entry = this->_artifacts->map_symbol(class_loader_name);
   452       SymbolEntryPtr entry = this->_artifacts->map_symbol(class_loader_name);
   453       assert(entry != NULL, "invariant");
   453       assert(entry != NULL, "invariant");
   454       if (_unique_predicate(entry->id())) {
   454       if (_unique_predicate(entry->id())) {
   455         count += write__artifact__symbol__entry__(this->_writer, entry);
   455         count += write__artifact__symbol__entry__(this->_writer, entry);