Mercurial > hg > graal-compiler
comparison src/share/vm/oops/constantPoolKlass.cpp @ 3785:ddd894528dbc
7056328: JSR 292 invocation sometimes fails in adapters for types not on boot class path
Reviewed-by: never
author | jrose |
---|---|
date | Thu, 23 Jun 2011 17:14:06 -0700 |
parents | 69c94f488271 |
children | f08d439fab8c |
comparison
equal
deleted
inserted
replaced
3784:aabf25fa3f05 | 3785:ddd894528dbc |
---|---|
308 constantPoolOop cp = constantPoolOop(obj); | 308 constantPoolOop cp = constantPoolOop(obj); |
309 if (cp->flags() != 0) { | 309 if (cp->flags() != 0) { |
310 st->print(" - flags: 0x%x", cp->flags()); | 310 st->print(" - flags: 0x%x", cp->flags()); |
311 if (cp->has_pseudo_string()) st->print(" has_pseudo_string"); | 311 if (cp->has_pseudo_string()) st->print(" has_pseudo_string"); |
312 if (cp->has_invokedynamic()) st->print(" has_invokedynamic"); | 312 if (cp->has_invokedynamic()) st->print(" has_invokedynamic"); |
313 if (cp->has_preresolution()) st->print(" has_preresolution"); | |
313 st->cr(); | 314 st->cr(); |
314 } | 315 } |
316 if (cp->pool_holder() != NULL) { | |
317 bool extra = (instanceKlass::cast(cp->pool_holder())->constants() != cp); | |
318 st->print_cr(" - holder: " INTPTR_FORMAT "%s", cp->pool_holder(), (extra? " (extra)" : "")); | |
319 } | |
315 st->print_cr(" - cache: " INTPTR_FORMAT, cp->cache()); | 320 st->print_cr(" - cache: " INTPTR_FORMAT, cp->cache()); |
316 | |
317 for (int index = 1; index < cp->length(); index++) { // Index 0 is unused | 321 for (int index = 1; index < cp->length(); index++) { // Index 0 is unused |
318 st->print(" - %3d : ", index); | 322 st->print(" - %3d : ", index); |
319 cp->tag_at(index).print_on(st); | 323 cp->tag_at(index).print_on(st); |
320 st->print(" : "); | 324 st->print(" : "); |
321 switch (cp->tag_at(index).value()) { | 325 switch (cp->tag_at(index).value()) { |
412 assert(obj->is_constantPool(), "must be constantPool"); | 416 assert(obj->is_constantPool(), "must be constantPool"); |
413 constantPoolOop cp = constantPoolOop(obj); | 417 constantPoolOop cp = constantPoolOop(obj); |
414 st->print("constant pool [%d]", cp->length()); | 418 st->print("constant pool [%d]", cp->length()); |
415 if (cp->has_pseudo_string()) st->print("/pseudo_string"); | 419 if (cp->has_pseudo_string()) st->print("/pseudo_string"); |
416 if (cp->has_invokedynamic()) st->print("/invokedynamic"); | 420 if (cp->has_invokedynamic()) st->print("/invokedynamic"); |
421 if (cp->has_preresolution()) st->print("/preresolution"); | |
417 if (cp->operands() != NULL) st->print("/operands[%d]", cp->operands()->length()); | 422 if (cp->operands() != NULL) st->print("/operands[%d]", cp->operands()->length()); |
418 cp->print_address_on(st); | 423 cp->print_address_on(st); |
419 st->print(" for "); | 424 st->print(" for "); |
420 cp->pool_holder()->print_value_on(st); | 425 cp->pool_holder()->print_value_on(st); |
426 if (cp->pool_holder() != NULL) { | |
427 bool extra = (instanceKlass::cast(cp->pool_holder())->constants() != cp); | |
428 if (extra) st->print(" (extra)"); | |
429 } | |
421 if (cp->cache() != NULL) { | 430 if (cp->cache() != NULL) { |
422 st->print(" cache=" PTR_FORMAT, cp->cache()); | 431 st->print(" cache=" PTR_FORMAT, cp->cache()); |
423 } | 432 } |
424 } | 433 } |
425 | 434 |