461 // and set simpler to to test variables rather than method calls or complex
462 // boolean expressions.
463
464 static int initialized = 0;
465 static int checkit = 0;
466 static intptr_t* c_addr = NULL;
467 static intptr_t c_value;
468
469 if (checkit && *c_addr != c_value) {
470 os::breakpoint();
471 }
472 #ifdef VM_JVMTI
473 static bool _jvmti_interp_events = 0;
474 #endif
475
476 static int _compiling; // (UseCompiler || CountCompiledCalls)
477
478 #ifdef ASSERT
479 if (istate->_msg != initialize) {
480 assert(labs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + 1), "bad stack limit");
481 #ifndef SHARK
482 IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong"));
483 #endif // !SHARK
484 }
485 // Verify linkages.
486 interpreterState l = istate;
487 do {
488 assert(l == l->_self_link, "bad link");
489 l = l->_prev_link;
490 } while (l != NULL);
491 // Screwups with stack management usually cause us to overwrite istate
492 // save a copy so we can verify it.
493 interpreterState orig = istate;
494 #endif
495
496 register intptr_t* topOfStack = (intptr_t *)istate->stack(); /* access with STACK macros */
497 register address pc = istate->bcp();
498 register jubyte opcode;
499 register intptr_t* locals = istate->locals();
500 register ConstantPoolCache* cp = istate->constants(); // method()->constants()->cache()
501 #ifdef LOTS_OF_REGS
502 register JavaThread* THREAD = istate->thread();
503 #else
|
461 // and set simpler to to test variables rather than method calls or complex
462 // boolean expressions.
463
464 static int initialized = 0;
465 static int checkit = 0;
466 static intptr_t* c_addr = NULL;
467 static intptr_t c_value;
468
469 if (checkit && *c_addr != c_value) {
470 os::breakpoint();
471 }
472 #ifdef VM_JVMTI
473 static bool _jvmti_interp_events = 0;
474 #endif
475
476 static int _compiling; // (UseCompiler || CountCompiledCalls)
477
478 #ifdef ASSERT
479 if (istate->_msg != initialize) {
480 assert(labs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + 1), "bad stack limit");
481 IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong"));
482 }
483 // Verify linkages.
484 interpreterState l = istate;
485 do {
486 assert(l == l->_self_link, "bad link");
487 l = l->_prev_link;
488 } while (l != NULL);
489 // Screwups with stack management usually cause us to overwrite istate
490 // save a copy so we can verify it.
491 interpreterState orig = istate;
492 #endif
493
494 register intptr_t* topOfStack = (intptr_t *)istate->stack(); /* access with STACK macros */
495 register address pc = istate->bcp();
496 register jubyte opcode;
497 register intptr_t* locals = istate->locals();
498 register ConstantPoolCache* cp = istate->constants(); // method()->constants()->cache()
499 #ifdef LOTS_OF_REGS
500 register JavaThread* THREAD = istate->thread();
501 #else
|