src/share/vm/compiler/methodLiveness.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File valhalla-experimental Sdiff src/share/vm/compiler

src/share/vm/compiler/methodLiveness.cpp

Print this page




 789     case Bytecodes::_invokevirtual:
 790     case Bytecodes::_invokedirect:
 791     case Bytecodes::_invokespecial:
 792     case Bytecodes::_invokestatic:
 793     case Bytecodes::_invokeinterface:
 794     case Bytecodes::_invokedynamic:
 795     case Bytecodes::_newarray:
 796     case Bytecodes::_anewarray:
 797     case Bytecodes::_checkcast:
 798     case Bytecodes::_arraylength:
 799     case Bytecodes::_instanceof:
 800     case Bytecodes::_athrow:
 801     case Bytecodes::_areturn:
 802     case Bytecodes::_vreturn:
 803     case Bytecodes::_monitorenter:
 804     case Bytecodes::_monitorexit:
 805     case Bytecodes::_ifnull:
 806     case Bytecodes::_ifnonnull:
 807     case Bytecodes::_multianewarray:
 808     case Bytecodes::_lookupswitch:


 809       // These bytecodes have no effect on the method's locals.
 810       break;
 811 
 812     case Bytecodes::_return:
 813       if (instruction->method()->intrinsic_id() == vmIntrinsics::_Object_init) {
 814         // return from Object.init implicitly registers a finalizer
 815         // for the receiver if needed, so keep it alive.
 816         load_one(0);
 817       }
 818       break;
 819 
 820 
 821     case Bytecodes::_lload:
 822     case Bytecodes::_dload:
 823       load_two(instruction->get_index());
 824       break;
 825 
 826     case Bytecodes::_lload_0:
 827     case Bytecodes::_dload_0:
 828       load_two(0);




 789     case Bytecodes::_invokevirtual:
 790     case Bytecodes::_invokedirect:
 791     case Bytecodes::_invokespecial:
 792     case Bytecodes::_invokestatic:
 793     case Bytecodes::_invokeinterface:
 794     case Bytecodes::_invokedynamic:
 795     case Bytecodes::_newarray:
 796     case Bytecodes::_anewarray:
 797     case Bytecodes::_checkcast:
 798     case Bytecodes::_arraylength:
 799     case Bytecodes::_instanceof:
 800     case Bytecodes::_athrow:
 801     case Bytecodes::_areturn:
 802     case Bytecodes::_vreturn:
 803     case Bytecodes::_monitorenter:
 804     case Bytecodes::_monitorexit:
 805     case Bytecodes::_ifnull:
 806     case Bytecodes::_ifnonnull:
 807     case Bytecodes::_multianewarray:
 808     case Bytecodes::_lookupswitch:
 809     case Bytecodes::_vbox:
 810     case Bytecodes::_vunbox:
 811       // These bytecodes have no effect on the method's locals.
 812       break;
 813 
 814     case Bytecodes::_return:
 815       if (instruction->method()->intrinsic_id() == vmIntrinsics::_Object_init) {
 816         // return from Object.init implicitly registers a finalizer
 817         // for the receiver if needed, so keep it alive.
 818         load_one(0);
 819       }
 820       break;
 821 
 822 
 823     case Bytecodes::_lload:
 824     case Bytecodes::_dload:
 825       load_two(instruction->get_index());
 826       break;
 827 
 828     case Bytecodes::_lload_0:
 829     case Bytecodes::_dload_0:
 830       load_two(0);


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