src/share/vm/code/relocInfo.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File c1-coops Sdiff src/share/vm/code

src/share/vm/code/relocInfo.cpp

Print this page




1076     return #name;
1077 
1078   APPLY_TO_RELOCATIONS(EACH_CASE);
1079   #undef EACH_CASE
1080 
1081   case relocInfo::none:
1082     return "none";
1083   case relocInfo::data_prefix_tag:
1084     return "prefix";
1085   default:
1086     return "UNKNOWN RELOC TYPE";
1087   }
1088 }
1089 
1090 
1091 void RelocIterator::print_current() {
1092   if (!has_current()) {
1093     tty->print_cr("(no relocs)");
1094     return;
1095   }
1096   tty->print("relocInfo@" INTPTR_FORMAT " [type=%d(%s) addr=" INTPTR_FORMAT,
1097              _current, type(), reloc_type_string((relocInfo::relocType) type()), _addr);
1098   if (current()->format() != 0)
1099     tty->print(" format=%d", current()->format());
1100   if (datalen() == 1) {
1101     tty->print(" data=%d", data()[0]);
1102   } else if (datalen() > 0) {
1103     tty->print(" data={");
1104     for (int i = 0; i < datalen(); i++) {
1105       tty->print("%04x", data()[i] & 0xFFFF);
1106     }
1107     tty->print("}");
1108   }
1109   tty->print("]");
1110   switch (type()) {
1111   case relocInfo::oop_type:
1112     {
1113       oop_Relocation* r = oop_reloc();
1114       oop* oop_addr  = NULL;
1115       oop  raw_oop   = NULL;
1116       oop  oop_value = NULL;
1117       if (code() != NULL || r->oop_is_immediate()) {




1076     return #name;
1077 
1078   APPLY_TO_RELOCATIONS(EACH_CASE);
1079   #undef EACH_CASE
1080 
1081   case relocInfo::none:
1082     return "none";
1083   case relocInfo::data_prefix_tag:
1084     return "prefix";
1085   default:
1086     return "UNKNOWN RELOC TYPE";
1087   }
1088 }
1089 
1090 
1091 void RelocIterator::print_current() {
1092   if (!has_current()) {
1093     tty->print_cr("(no relocs)");
1094     return;
1095   }
1096   tty->print("relocInfo@" INTPTR_FORMAT " [type=%d(%s) addr=" INTPTR_FORMAT " offset=%d",
1097              _current, type(), reloc_type_string((relocInfo::relocType) type()), _addr, _current->addr_offset());
1098   if (current()->format() != 0)
1099     tty->print(" format=%d", current()->format());
1100   if (datalen() == 1) {
1101     tty->print(" data=%d", data()[0]);
1102   } else if (datalen() > 0) {
1103     tty->print(" data={");
1104     for (int i = 0; i < datalen(); i++) {
1105       tty->print("%04x", data()[i] & 0xFFFF);
1106     }
1107     tty->print("}");
1108   }
1109   tty->print("]");
1110   switch (type()) {
1111   case relocInfo::oop_type:
1112     {
1113       oop_Relocation* r = oop_reloc();
1114       oop* oop_addr  = NULL;
1115       oop  raw_oop   = NULL;
1116       oop  oop_value = NULL;
1117       if (code() != NULL || r->oop_is_immediate()) {


src/share/vm/code/relocInfo.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File