< prev index next >

src/hotspot/share/opto/type.cpp

Print this page

4544   switch( _ptr ) {
4545   case Constant:
4546     const_oop()->print(st);
4547     break;
4548   case BotPTR:
4549     if (!WizardMode && !Verbose) {
4550       if( _klass_is_exact ) st->print(":exact");
4551       break;
4552     }
4553   case TopPTR:
4554   case AnyNull:
4555   case NotNull:
4556     st->print(":%s", ptr_msg[_ptr]);
4557     if( _klass_is_exact ) st->print(":exact");
4558     break;
4559   default:
4560     break;
4561   }
4562 
4563   if( _offset != 0 ) {
4564     int header_size = objArrayOopDesc::header_size() * wordSize;

4565     if( _offset == OffsetTop )       st->print("+undefined");
4566     else if( _offset == OffsetBot )  st->print("+any");
4567     else if( _offset < header_size ) st->print("+%d", _offset);
4568     else {
4569       BasicType basic_elem_type = elem()->basic_type();
4570       int array_base = arrayOopDesc::base_offset_in_bytes(basic_elem_type);
4571       int elem_size = type2aelembytes(basic_elem_type);
4572       st->print("[%d]", (_offset - array_base)/elem_size);
4573     }
4574   }
4575   st->print(" *");
4576   if (_instance_id == InstanceTop)
4577     st->print(",iid=top");
4578   else if (_instance_id != InstanceBot)
4579     st->print(",iid=%d",_instance_id);
4580 
4581   dump_inline_depth(st);
4582   dump_speculative(st);
4583 }
4584 #endif

4544   switch( _ptr ) {
4545   case Constant:
4546     const_oop()->print(st);
4547     break;
4548   case BotPTR:
4549     if (!WizardMode && !Verbose) {
4550       if( _klass_is_exact ) st->print(":exact");
4551       break;
4552     }
4553   case TopPTR:
4554   case AnyNull:
4555   case NotNull:
4556     st->print(":%s", ptr_msg[_ptr]);
4557     if( _klass_is_exact ) st->print(":exact");
4558     break;
4559   default:
4560     break;
4561   }
4562 
4563   if( _offset != 0 ) {
4564     BasicType basic_elem_type = elem()->basic_type();
4565     int header_size = arrayOopDesc::base_offset_in_bytes(basic_elem_type);
4566     if( _offset == OffsetTop )       st->print("+undefined");
4567     else if( _offset == OffsetBot )  st->print("+any");
4568     else if( _offset < header_size ) st->print("+%d", _offset);
4569     else {
4570       BasicType basic_elem_type = elem()->basic_type();
4571       int array_base = arrayOopDesc::base_offset_in_bytes(basic_elem_type);
4572       int elem_size = type2aelembytes(basic_elem_type);
4573       st->print("[%d]", (_offset - array_base)/elem_size);
4574     }
4575   }
4576   st->print(" *");
4577   if (_instance_id == InstanceTop)
4578     st->print(",iid=top");
4579   else if (_instance_id != InstanceBot)
4580     st->print(",iid=%d",_instance_id);
4581 
4582   dump_inline_depth(st);
4583   dump_speculative(st);
4584 }
4585 #endif
< prev index next >