You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Gregory Shimansky (JIRA)" <ji...@apache.org> on 2007/06/22 15:07:26 UTC

[jira] Closed: (HARMONY-2206) [drlvm][interpreter] Assertion "frame.locals.ref(varNum) == FLAG_RET_ADDR" in interpreter.cpp line 2194

     [ https://issues.apache.org/jira/browse/HARMONY-2206?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky closed HARMONY-2206.
--------------------------------------


No response, assuming ok.

> [drlvm][interpreter] Assertion "frame.locals.ref(varNum) == FLAG_RET_ADDR" in interpreter.cpp line 2194
> -------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-2206
>                 URL: https://issues.apache.org/jira/browse/HARMONY-2206
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: Windows/ia32, Linux/ia32
>            Reporter: Ivan Popov
>            Assignee: Gregory Shimansky
>         Attachments: interpreter_JSR_W_fix.diff
>
>
> While running test from HARMONY-2200 against DRLVM (r474860) in -Xint mode I've noticed that with debug build  it throws assertion:
> Assertion failed: frame.locals.ref(varNum) == FLAG_RET_ADDR, file ...\dr
> lvm\trunk\vm\interpreter\src\interpreter.cpp, line 2194
> Attaching with VC++ debugger shows the following stack trace:
> >	interpreter.dll!_assert(const char * expr=0x014a9e14, const char * filename=0x014a9db0, unsigned int lineno=2194)  Line 295	C
>  	interpreter.dll!Opcode_RET(StackFrame & frame={...})  Line 2194 + 0x2b	C++
>  	interpreter.dll!interpreter(StackFrame & frame={...})  Line 2864 + 0x9	C++
>  	interpreter.dll!interpreterInvoke(StackFrame & prevFrame={...}, Method * method=0x02655538, int args=1, ManagedObject * obj=0x20607194, bool intf=false)  Line 3373 + 0x9	C++
>  	interpreter.dll!interpreterInvokeVirtual(StackFrame & prevFrame={...}, Method * method=0x02655538)  Line 3455 + 0x17	C++
>  	interpreter.dll!Opcode_INVOKEVIRTUAL(StackFrame & frame={...})  Line 2054 + 0xd	C++
>  	interpreter.dll!interpreter(StackFrame & frame={...})  Line 2893 + 0x9	C++
>  	interpreter.dll!interpreter_execute_method(Method * method=0x026554a0, jvalue * return_value=0x00000000, jvalue * args=0x02511498)  Line 3176 + 0x9	C++
>  	interpreter.dll!JIT_execute_method(void * jh=0x00000000, _jmethodID * m=0x026554a0, jvalue * return_value=0x00000000, jvalue * args=0x02511498)  Line 162 + 0x11	C++
>  	em.dll!DrlEMImpl::executeMethod(_jmethodID * meth=0x026554a0, jvalue * return_value=0x00000000, jvalue * args=0x02511498)  Line 489 + 0x16	C++
>  	em.dll!ExecuteMethod(_jmethodID * meth=0x026554a0, jvalue * return_value=0x00000000, jvalue * args=0x02511498)  Line 43 + 0x21	C++
>  	harmonyvm.dll!vm_execute_java_method_array(_jmethodID * method=0x026554a0, jvalue * result=0x00000000, jvalue * args=0x02511498)  Line 51 + 0x1b	C++
>  	harmonyvm.dll!call_static_method_no_ref_result(JNIEnv_External * env=0x011b1870, _jobject * clazz=0x02511578, _jmethodID * methodID=0x026554a0, jvalue * args=0x02511498, jvalue * result=0x00000000)  Line 1089 + 0x11	C++
>  	harmonyvm.dll!CallStaticVoidMethodA(JNIEnv_External * env=0x011b1870, _jobject * clazz=0x02511578, _jmethodID * methodID=0x026554a0, jvalue * args=0x02511498)  Line 1467 + 0x17	C++
>  	harmonyvm.dll!CallStaticVoidMethodV(JNIEnv_External * env=0x011b1870, _jobject * clazz=0x02511578, _jmethodID * methodID=0x026554a0, char * args=0x0013fa40)  Line 1455	C++
>  	harmonyvm.dll!CallStaticVoidMethod(JNIEnv_External * env=0x011b1870, _jobject * clazz=0x02511578, _jmethodID * methodID=0x026554a0, ...)  Line 1445	C++
>  	java.exe!00401b56() 	
>  	java.exe!00402508() 	
>  	java.exe!00402bb2() 	
>  	java.exe!0040111a() 	
>  	hyprt.dll!111060d8() 	
>  	java.exe!004011ba() 	
>  	ntdll.dll!7c9499e9() 	
> To reproduce this problem, download test ThreadEventsTest.zip from HARMONY-2200, edit run_win.bat or run_linux.sh by adding -Xint option to java command, and run it against _debug_ build of DRLVM. With release build test passes in -Xint mode.
> This does not relate to JVMTI support, because assertion is thrown even if instrumented class is executed without JVMTI agent loaded (testcase #2).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.