equal
deleted
inserted
replaced
307 type = Bytecode_invoke_at(mh, bci)->result_type(thread); |
307 type = Bytecode_invoke_at(mh, bci)->result_type(thread); |
308 // since the cache entry might not be initialized: |
308 // since the cache entry might not be initialized: |
309 // (NOT needed for the old calling convension) |
309 // (NOT needed for the old calling convension) |
310 if (!is_top_frame) { |
310 if (!is_top_frame) { |
311 int index = Bytes::get_native_u2(bcp+1); |
311 int index = Bytes::get_native_u2(bcp+1); |
|
312 method->constants()->cache()->entry_at(index)->set_parameter_size(callee_parameters); |
|
313 } |
|
314 break; |
|
315 } |
|
316 |
|
317 case Bytecodes::_invokedynamic: { |
|
318 Thread *thread = Thread::current(); |
|
319 ResourceMark rm(thread); |
|
320 methodHandle mh(thread, method); |
|
321 type = Bytecode_invoke_at(mh, bci)->result_type(thread); |
|
322 // since the cache entry might not be initialized: |
|
323 // (NOT needed for the old calling convension) |
|
324 if (!is_top_frame) { |
|
325 int index = Bytes::get_native_u4(bcp+1); |
312 method->constants()->cache()->entry_at(index)->set_parameter_size(callee_parameters); |
326 method->constants()->cache()->entry_at(index)->set_parameter_size(callee_parameters); |
313 } |
327 } |
314 break; |
328 break; |
315 } |
329 } |
316 |
330 |