1.1 --- a/src/share/vm/c1/c1_LIRAssembler.cpp Fri Aug 23 18:04:35 2013 -0700 1.2 +++ b/src/share/vm/c1/c1_LIRAssembler.cpp Wed Aug 21 13:34:45 2013 +0200 1.3 @@ -93,12 +93,23 @@ 1.4 default: 1.5 ShouldNotReachHere(); 1.6 } 1.7 + } else if (patch->id() == PatchingStub::load_appendix_id) { 1.8 + Bytecodes::Code bc_raw = info->scope()->method()->raw_code_at_bci(info->stack()->bci()); 1.9 + assert(Bytecodes::has_optional_appendix(bc_raw), "unexpected appendix resolution"); 1.10 } else { 1.11 ShouldNotReachHere(); 1.12 } 1.13 #endif 1.14 } 1.15 1.16 +PatchingStub::PatchID LIR_Assembler::patching_id(CodeEmitInfo* info) { 1.17 + IRScope* scope = info->scope(); 1.18 + Bytecodes::Code bc_raw = scope->method()->raw_code_at_bci(info->stack()->bci()); 1.19 + if (Bytecodes::has_optional_appendix(bc_raw)) { 1.20 + return PatchingStub::load_appendix_id; 1.21 + } 1.22 + return PatchingStub::load_mirror_id; 1.23 +} 1.24 1.25 //--------------------------------------------------------------- 1.26