< prev index next >

src/share/vm/opto/callnode.cpp

Print this page




 352     assert(sco_n >= 0, "");
 353     st->print(" %s%d]=#ScObj" INT32_FORMAT, msg, i, sco_n);
 354     return;
 355   }
 356   if (regalloc->node_regs_max_index() > 0 &&
 357       OptoReg::is_valid(regalloc->get_reg_first(n))) { // Check for undefined
 358     char buf[50];
 359     regalloc->dump_register(n,buf);
 360     st->print(" %s%d]=%s",msg,i,buf);
 361   } else {                      // No register, but might be constant
 362     const Type *t = n->bottom_type();
 363     switch (t->base()) {
 364     case Type::Int:
 365       st->print(" %s%d]=#" INT32_FORMAT,msg,i,t->is_int()->get_con());
 366       break;
 367     case Type::AnyPtr:
 368       assert( t == TypePtr::NULL_PTR || n->in_dump(), "" );
 369       st->print(" %s%d]=#NULL",msg,i);
 370       break;
 371     case Type::AryPtr:

 372     case Type::InstPtr:
 373       st->print(" %s%d]=#Ptr" INTPTR_FORMAT,msg,i,p2i(t->isa_oopptr()->const_oop()));
 374       break;
 375     case Type::KlassPtr:
 376       st->print(" %s%d]=#Ptr" INTPTR_FORMAT,msg,i,p2i(t->make_ptr()->isa_klassptr()->klass()));
 377       break;
 378     case Type::MetadataPtr:
 379       st->print(" %s%d]=#Ptr" INTPTR_FORMAT,msg,i,p2i(t->make_ptr()->isa_metadataptr()->metadata()));
 380       break;
 381     case Type::NarrowOop:
 382       st->print(" %s%d]=#Ptr" INTPTR_FORMAT,msg,i,p2i(t->make_ptr()->isa_oopptr()->const_oop()));
 383       break;
 384     case Type::RawPtr:
 385       st->print(" %s%d]=#Raw" INTPTR_FORMAT,msg,i,p2i(t->is_rawptr()));
 386       break;
 387     case Type::DoubleCon:
 388       st->print(" %s%d]=#%fD",msg,i,t->is_double_constant()->_d);
 389       break;
 390     case Type::FloatCon:
 391       st->print(" %s%d]=#%fF",msg,i,t->is_float_constant()->_f);




 352     assert(sco_n >= 0, "");
 353     st->print(" %s%d]=#ScObj" INT32_FORMAT, msg, i, sco_n);
 354     return;
 355   }
 356   if (regalloc->node_regs_max_index() > 0 &&
 357       OptoReg::is_valid(regalloc->get_reg_first(n))) { // Check for undefined
 358     char buf[50];
 359     regalloc->dump_register(n,buf);
 360     st->print(" %s%d]=%s",msg,i,buf);
 361   } else {                      // No register, but might be constant
 362     const Type *t = n->bottom_type();
 363     switch (t->base()) {
 364     case Type::Int:
 365       st->print(" %s%d]=#" INT32_FORMAT,msg,i,t->is_int()->get_con());
 366       break;
 367     case Type::AnyPtr:
 368       assert( t == TypePtr::NULL_PTR || n->in_dump(), "" );
 369       st->print(" %s%d]=#NULL",msg,i);
 370       break;
 371     case Type::AryPtr:
 372     case Type::ValueTypePtr:
 373     case Type::InstPtr:
 374       st->print(" %s%d]=#Ptr" INTPTR_FORMAT,msg,i,p2i(t->isa_oopptr()->const_oop()));
 375       break;
 376     case Type::KlassPtr:
 377       st->print(" %s%d]=#Ptr" INTPTR_FORMAT,msg,i,p2i(t->make_ptr()->isa_klassptr()->klass()));
 378       break;
 379     case Type::MetadataPtr:
 380       st->print(" %s%d]=#Ptr" INTPTR_FORMAT,msg,i,p2i(t->make_ptr()->isa_metadataptr()->metadata()));
 381       break;
 382     case Type::NarrowOop:
 383       st->print(" %s%d]=#Ptr" INTPTR_FORMAT,msg,i,p2i(t->make_ptr()->isa_oopptr()->const_oop()));
 384       break;
 385     case Type::RawPtr:
 386       st->print(" %s%d]=#Raw" INTPTR_FORMAT,msg,i,p2i(t->is_rawptr()));
 387       break;
 388     case Type::DoubleCon:
 389       st->print(" %s%d]=#%fD",msg,i,t->is_double_constant()->_d);
 390       break;
 391     case Type::FloatCon:
 392       st->print(" %s%d]=#%fF",msg,i,t->is_float_constant()->_f);


< prev index next >