2157 for (int i = 0; i < localvariable_table_length(); i++) { 2158 int bci = table[i].start_bci; 2159 int len = table[i].length; 2160 const char* name = constants()->printable_name_at(table[i].name_cp_index); 2161 const char* desc = constants()->printable_name_at(table[i].descriptor_cp_index); 2162 int slot = table[i].slot; 2163 st->print_cr(" - %s %s bci=%d len=%d slot=%d", desc, name, bci, len, slot); 2164 } 2165 } 2166 } 2167 if (code() != NULL) { 2168 st->print (" - compiled code: "); 2169 code()->print_value_on(st); 2170 } 2171 if (is_native()) { 2172 st->print_cr(" - native function: " INTPTR_FORMAT, p2i(native_function())); 2173 st->print_cr(" - signature handler: " INTPTR_FORMAT, p2i(signature_handler())); 2174 } 2175 } 2176 2177 #endif //PRODUCT 2178 2179 void Method::print_value_on(outputStream* st) const { 2180 assert(is_method(), "must be method"); 2181 st->print("%s", internal_name()); 2182 print_address_on(st); 2183 st->print(" "); 2184 name()->print_value_on(st); 2185 st->print(" "); 2186 signature()->print_value_on(st); 2187 st->print(" in "); 2188 method_holder()->print_value_on(st); 2189 if (WizardMode) st->print("#%d", _vtable_index); 2190 if (WizardMode) st->print("[%d,%d]", size_of_parameters(), max_locals()); 2191 if (WizardMode && code() != NULL) st->print(" ((nmethod*)%p)", code()); 2192 } 2193 2194 #if INCLUDE_SERVICES 2195 // Size Statistics 2196 void Method::collect_statistics(KlassSizeStats *sz) const { | 2157 for (int i = 0; i < localvariable_table_length(); i++) { 2158 int bci = table[i].start_bci; 2159 int len = table[i].length; 2160 const char* name = constants()->printable_name_at(table[i].name_cp_index); 2161 const char* desc = constants()->printable_name_at(table[i].descriptor_cp_index); 2162 int slot = table[i].slot; 2163 st->print_cr(" - %s %s bci=%d len=%d slot=%d", desc, name, bci, len, slot); 2164 } 2165 } 2166 } 2167 if (code() != NULL) { 2168 st->print (" - compiled code: "); 2169 code()->print_value_on(st); 2170 } 2171 if (is_native()) { 2172 st->print_cr(" - native function: " INTPTR_FORMAT, p2i(native_function())); 2173 st->print_cr(" - signature handler: " INTPTR_FORMAT, p2i(signature_handler())); 2174 } 2175 } 2176 2177 void Method::print_linkage_flags(outputStream* st) { 2178 access_flags().print_on(st); 2179 if (is_default_method()) { 2180 st->print("default "); 2181 } 2182 if (is_overpass()) { 2183 st->print("overpass "); 2184 } 2185 } 2186 #endif //PRODUCT 2187 2188 void Method::print_value_on(outputStream* st) const { 2189 assert(is_method(), "must be method"); 2190 st->print("%s", internal_name()); 2191 print_address_on(st); 2192 st->print(" "); 2193 name()->print_value_on(st); 2194 st->print(" "); 2195 signature()->print_value_on(st); 2196 st->print(" in "); 2197 method_holder()->print_value_on(st); 2198 if (WizardMode) st->print("#%d", _vtable_index); 2199 if (WizardMode) st->print("[%d,%d]", size_of_parameters(), max_locals()); 2200 if (WizardMode && code() != NULL) st->print(" ((nmethod*)%p)", code()); 2201 } 2202 2203 #if INCLUDE_SERVICES 2204 // Size Statistics 2205 void Method::collect_statistics(KlassSizeStats *sz) const { |