Mercurial > hg > truffle
comparison src/share/vm/interpreter/bytecodeInterpreter.cpp @ 14396:583211d4b16b
Merge
author | kvn |
---|---|
date | Wed, 03 Jul 2013 11:50:29 -0700 |
parents | 48d3d0eb193b 6a0ead6dc6db |
children | 641d55c11d6b |
comparison
equal
deleted
inserted
replaced
14395:48d3d0eb193b | 14396:583211d4b16b |
---|---|
480 // account for extra_stack_entries() anymore because at the time when it is called | 480 // account for extra_stack_entries() anymore because at the time when it is called |
481 // EnableInvokeDynamic was already set to false. | 481 // EnableInvokeDynamic was already set to false. |
482 // So we have a second version of the assertion which handles the case where EnableInvokeDynamic was | 482 // So we have a second version of the assertion which handles the case where EnableInvokeDynamic was |
483 // switched off because of the wrong classes. | 483 // switched off because of the wrong classes. |
484 if (EnableInvokeDynamic || FLAG_IS_CMDLINE(EnableInvokeDynamic)) { | 484 if (EnableInvokeDynamic || FLAG_IS_CMDLINE(EnableInvokeDynamic)) { |
485 assert(abs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + 1), "bad stack limit"); | 485 assert(labs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + 1), "bad stack limit"); |
486 } else { | 486 } else { |
487 const int extra_stack_entries = Method::extra_stack_entries_for_indy; | 487 const int extra_stack_entries = Method::extra_stack_entries_for_jsr292; |
488 assert(labs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + extra_stack_entries | 488 assert(labs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + extra_stack_entries |
489 + 1), "bad stack limit"); | 489 + 1), "bad stack limit"); |
490 } | 490 } |
491 #ifndef SHARK | 491 #ifndef SHARK |
492 IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong")); | 492 IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong")); |
2360 handle_exception); | 2360 handle_exception); |
2361 cache = cp->constant_pool()->invokedynamic_cp_cache_entry_at(index); | 2361 cache = cp->constant_pool()->invokedynamic_cp_cache_entry_at(index); |
2362 } | 2362 } |
2363 | 2363 |
2364 Method* method = cache->f1_as_method(); | 2364 Method* method = cache->f1_as_method(); |
2365 VERIFY_OOP(method); | 2365 if (VerifyOops) method->verify(); |
2366 | 2366 |
2367 if (cache->has_appendix()) { | 2367 if (cache->has_appendix()) { |
2368 ConstantPool* constants = METHOD->constants(); | 2368 ConstantPool* constants = METHOD->constants(); |
2369 SET_STACK_OBJECT(cache->appendix_if_resolved(constants), 0); | 2369 SET_STACK_OBJECT(cache->appendix_if_resolved(constants), 0); |
2370 MORE_STACK(1); | 2370 MORE_STACK(1); |
2392 handle_exception); | 2392 handle_exception); |
2393 cache = cp->entry_at(index); | 2393 cache = cp->entry_at(index); |
2394 } | 2394 } |
2395 | 2395 |
2396 Method* method = cache->f1_as_method(); | 2396 Method* method = cache->f1_as_method(); |
2397 | 2397 if (VerifyOops) method->verify(); |
2398 VERIFY_OOP(method); | |
2399 | 2398 |
2400 if (cache->has_appendix()) { | 2399 if (cache->has_appendix()) { |
2401 ConstantPool* constants = METHOD->constants(); | 2400 ConstantPool* constants = METHOD->constants(); |
2402 SET_STACK_OBJECT(cache->appendix_if_resolved(constants), 0); | 2401 SET_STACK_OBJECT(cache->appendix_if_resolved(constants), 0); |
2403 MORE_STACK(1); | 2402 MORE_STACK(1); |