From nobody Mon Sep 17 00:00:00 2001 From: Pavel Afremov Date: Mon, 9 Oct 2006 15:26:56 +0400 Subject: [PATCH] Interpreter and JIT mismatch in exception status assertion. Java Methods must not be launched in the “exception raised” state. But DRL VM asserts it now in the interpreter mode only. To fix it assert(!exn_raised()) was added into vm_execute_java_method_array. --- vm/vmcore/src/jit/ini.cpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) e872428d30b9fd09216bce2c1179d8378ac08dd9 diff --git a/vm/vmcore/src/jit/ini.cpp b/vm/vmcore/src/jit/ini.cpp index 93c6863..48f5f4b 100644 --- a/vm/vmcore/src/jit/ini.cpp +++ b/vm/vmcore/src/jit/ini.cpp @@ -24,6 +24,7 @@ #include "cxxlog.h" #include #include "ini.h" #include "environment.h" +#include "exceptions.h" #include "open/em_vm.h" #include "jvmti_break_intf.h" @@ -32,6 +33,7 @@ void vm_execute_java_method_array(jmethodID method, jvalue *result, jvalue *args) { // TODO: select jit which compiled the method assert(!hythread_is_suspend_enabled()); + assert(!exn_raised()); //FIXME integration //DEBUG_PUSH_LOCK(JAVA_CODE_PSEUDO_LOCK); assert(NULL != VM_Global_State::loader_env); -- 1.3.3