Mercurial > hg > truffle
comparison src/share/vm/opto/bytecodeInfo.cpp @ 1565:ab102d5d923e
6939207: refactor constant pool index processing
Summary: Factored cleanup of instruction decode which prepares for enhanced ldc semantics.
Reviewed-by: twisti
author | jrose |
---|---|
date | Sun, 23 May 2010 01:38:26 -0700 |
parents | 61b2245abf36 |
children | e9ff18c4ace7 |
comparison
equal
deleted
inserted
replaced
1564:61b2245abf36 | 1565:ab102d5d923e |
---|---|
338 ciBytecodeStream iter(caller_method); | 338 ciBytecodeStream iter(caller_method); |
339 iter.force_bci(caller_bci); | 339 iter.force_bci(caller_bci); |
340 Bytecodes::Code call_bc = iter.cur_bc(); | 340 Bytecodes::Code call_bc = iter.cur_bc(); |
341 // An invokedynamic instruction does not have a klass. | 341 // An invokedynamic instruction does not have a klass. |
342 if (call_bc != Bytecodes::_invokedynamic) { | 342 if (call_bc != Bytecodes::_invokedynamic) { |
343 int index = iter.get_index_int(); | 343 int index = iter.get_index_u2_cpcache(); |
344 if (!caller_method->is_klass_loaded(index, true)) { | 344 if (!caller_method->is_klass_loaded(index, true)) { |
345 return false; | 345 return false; |
346 } | 346 } |
347 // Try to do constant pool resolution if running Xcomp | 347 // Try to do constant pool resolution if running Xcomp |
348 if( !caller_method->check_call(index, call_bc == Bytecodes::_invokestatic) ) { | 348 if( !caller_method->check_call(index, call_bc == Bytecodes::_invokestatic) ) { |