You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Mikhail Fursov (JIRA)" <ji...@apache.org> on 2006/10/31 16:08:18 UTC
[jira] Updated: (HARMONY-1909) [drlvm][opt] failed assert in
Node::insertInst
[ http://issues.apache.org/jira/browse/HARMONY-1909?page=all ]
Mikhail Fursov updated HARMONY-1909:
------------------------------------
Attachment: 1909.diff
The fix. Please verify that this patch fixes all of your problems.
> [drlvm][opt] failed assert in Node::insertInst
> ----------------------------------------------
>
> Key: HARMONY-1909
> URL: http://issues.apache.org/jira/browse/HARMONY-1909
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Environment: SUSE 9
> Reporter: Alexey Varlamov
> Attachments: 1909.diff
>
>
> To reproduce:
> ./java -Xem:opt -cp $classlib/modules/luni/bin/test:$WRK/junit.jar junit.textui.TestRunner tests.api.java.lang.reflect.FieldTest
> java: /export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/shared/ControlFlowGraph.cpp:154: void Jitrino::Node::insertInst(Jitrino::CFGInst*, Jitrino::CFGInst*): Assertion `prevInst->isHeaderCriticalInst()' failed.
> SIGABRT in VM code.
> Stack trace:
> 1: ?? (??:-1)
> 2: abort (??:-1)
> 3: __assert_fail (??:-1)
> 4: Jitrino::Node::insertInst(Jitrino::CFGInst*, Jitrino::CFGInst*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/shared/ControlFlowGraph.cpp:155)
> 5: Jitrino::CFGInst::insertAfter(Jitrino::CFGInst*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/shared/ControlFlowGraph.cpp:984)
> 6: Jitrino::ControlFlowGraph::moveInstructions(Jitrino::Node*, Jitrino::Node*, bool) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/shared/ControlFlowGraph.cpp:822)
> 7: Jitrino::ControlFlowGraph::mergeBlocks(Jitrino::Node*, Jitrino::Node*, bool) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/shared/ControlFlowGraph.cpp:528)
> 8: Jitrino::ControlFlowGraph::mergeAdjacentNodes(bool, bool) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/shared/ControlFlowGraph.cpp:546)
> 9: Jitrino::DeadCodeEliminator::eliminateDeadCode(bool) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/optimizer/deadcodeeliminator.cpp:1042)
> 10: Jitrino::DeadCodeEliminationPass::_run(Jitrino::IRManager&) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/optimizer/deadcodeeliminator.cpp:47)
> 11: Jitrino::OptPass::run() (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/optimizer/optpass.cpp:61)
> 12: Jitrino::runPipeline(Jitrino::CompilationContext*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/main/Jitrino.cpp:226)
> 13: Jitrino::compileMethod(Jitrino::CompilationContext*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/main/Jitrino.cpp:261)
> 14: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/main/Jitrino.cpp:286)
> 15: JIT_compile_method_with_params (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/vm/drl/DrlJITInterface.cpp:282)
> 16: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/include/dll_jit_intf.h:86)
> 17: compile_do_compilation_jit(Method*, JIT*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/jit/compile.cpp:700)
> 18: vm_compile_method (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/class_support/C_Interface.cpp:2538)
> 19: DrlEMImpl::compileMethod(Method*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/em/src/DrlEMImpl.cpp:520)
> 20: CompileMethod (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/em/src/em_intf.cpp:49)
> 21: compile_do_compilation (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/jit/compile.cpp:780)
> 22: compile_jit_a_method(Method*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/jit/compile.cpp:828)
> 23: IP is 0x410D0172 <native code>
> 24: vm_invoke_native_array_stub (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/util/ia32/base/invoke_native_stub_ia32.asm:41)
> 25: JIT_execute_method_default(void*, _jmethodID*, jvalue*, jvalue*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/util/ia32/base/ini_iA32.cpp:199)
> 26: DrlEMImpl::executeMethod(_jmethodID*, jvalue*, jvalue*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/em/src/DrlEMImpl.cpp:489)
> 27: ExecuteMethod (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/em/src/em_intf.cpp:43)
> 28: vm_execute_java_method_array(_jmethodID*, jvalue*, jvalue*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/jit/ini.cpp:60)
> 29: call_method_no_ref_result (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/jni/jni_method.cpp:165)
> 30: CallVoidMethodA(JNIEnv_External*, _jobject*, _jmethodID*, jvalue*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/jni/jni_method.cpp:200)
> 31: invoke_primitive_method (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/kernel_classes/native/java_lang_reflect_VMReflection.cpp:185)
> 32: Java_java_lang_reflect_VMReflection_invokeMethod (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/kernel_classes/native/java_lang_reflect_VMReflection.cpp:221)
> 33: IP is 0x41125C79 <native code>
> 34: java/lang/reflect/Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; (??:-1)
> 35: junit/framework/TestCase.runTest()V (TestCase.java:154)
> 36: junit/framework/TestCase.runBare()V (TestCase.java:-1)
> 37: junit/framework/TestResult$1.protect()V (TestResult.java:-1)
> 38: junit/framework/TestResult.runProtected(Ljunit/framework/Test;Ljunit/framework/Protectable;)V (TestResult.java:-1)
> 39: junit/framework/TestResult.run(Ljunit/framework/TestCase;)V (TestResult.java:-1)
> 40: junit/framework/TestCase.run(Ljunit/framework/TestResult;)V (TestCase.java:-1)
> SIGSEGV in VM code.
> Stack trace:
> 41: Jitrino::Ia32::StackInfo::readByteSize(unsigned char const*) const (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/codegenerator/ia32/Ia32StackInfo.cpp:107)
> 42: Jitrino::Ia32::RuntimeInterface::getBcLocationForNative(Jitrino::MethodDesc*, unsigned long long, unsigned short*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/codegenerator/ia32/Ia32RuntimeInterface.cpp:78)
> 43: Jitrino::Jitrino::GetBcLocationForNative(Jitrino::MethodDesc*, unsigned long long, unsigned short*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/main/Jitrino.cpp:358)
> 44: get_bc_location_for_native (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/jitrino/src/vm/drl/DrlJITInterface.cpp:590)
> 45: Dll_JIT::get_bc_location_for_native(Method*, void*, unsigned short*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/include/dll_jit_intf.h:240)
> 46: get_file_and_line (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/stack/stack_trace.cpp:60)
> 47: st_get_java_method_info (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/stack/stack_dump.cpp:196)
> 48: st_print_stack(Registers*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/stack/stack_dump.cpp:242)
> 49: abort_handler(int, siginfo*, void*) (/export/users2/avarlamo/linux.ia32/svn-repo/drlvm/vm/vmcore/src/util/linux/signals_ia32.cpp:614)
> <end of stack trace>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira