+1 to commit it. If we still have problems on other tests because of new pseudo throw insts normalization - we can turn back the previous mode tomorrow.
On Dec 11, 2007 8:32 PM, Pavel Ozhdikhin <[EMAIL PROTECTED]> wrote: > The fix is in JIRA, I'm running tests to check it. > > Thanks, > Pavel > > > On 12/11/07, Tim Ellison <[EMAIL PROTECTED]> wrote: > > > > This issue does seem to be the cause of a number of current test > failures. > > Anyone care to take ownership of it? > > > > Regards, > > Tim > > > > Andrey Pavlenko (JIRA) wrote: > > > [drlvm][jit] SIGSEGV in JIT code > > > -------------------------------- > > > > > > Key: HARMONY-5290 > > > URL: > https://issues.apache.org/jira/browse/HARMONY-5290 > > > Project: Harmony > > > Issue Type: Bug > > > Components: DRLVM > > > Environment: Linux x86/x64 > > > Reporter: Andrey Pavlenko > > > Priority: Critical > > > > > > > > > The following test causes VM crash. I've marked this issue as > critical > > because it seems to be a regression and causes an error of the > functional > > test > > > http://people.apache.org/~smishura/r602572/Linux_x86/func/functional/org/apache/harmony/test/func/jit/HLO/peel/LoopVar2/738_LoopVar2.html<http://people.apache.org/%7Esmishura/r602572/Linux_x86/func/functional/org/apache/harmony/test/func/jit/HLO/peel/LoopVar2/738_LoopVar2.html> > > > > > > public class Test { > > > > > > boolean flag = false; > > > > > > public static void main(String[] args) { > > > System.exit((new Test()).test()); > > > } > > > > > > public int test() { > > > int limit = 100000; > > > int i = -1; > > > int k = -1; > > > while (k < limit) { > > > k++; > > > for (i = 0; i < k; i++) { > > > flag = true; > > > } > > > } > > > return ((k == limit) && (i == limit)) ? 0 : 1; > > > } > > > } > > > > > > SIGSEGV in VM code. > > > Stack trace: > > > 0: Jitrino::ControlFlowGraph::addEdge(Jitrino::Node*, > Jitrino::Node*, > > Jitrino::Edge*, double) (walkers.cpp:-1) > > > 1: Jitrino::ControlFlowGraph::addEdge(Jitrino::Node*, > Jitrino::Node*, > > double) (walkers.cpp:-1) > > > 2: Jitrino::FlowGraph::doTranslatorCleanupPhase(Jitrino::IRManager&) > ( > > walkers.cpp:-1) > > > 3: Jitrino::TranslatorSession::postTranslatorCleanup() ( > walkers.cpp:-1 > > ) > > > 4: Jitrino::TranslatorSession::run() (walkers.cpp:-1) > > > 5: Jitrino::runPipeline(Jitrino::CompilationContext*) ( > walkers.cpp:-1) > > > 6: Jitrino::compileMethod(Jitrino::CompilationContext*) ( > > walkers.cpp:-1) > > > 7: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) ( > > walkers.cpp:-1) > > > 8: JIT_compile_method_with_params (??:-1) > > > 9: Dll_JIT::compile_method_with_params(void*, Method*, > > OpenMethodExecutionParams) (apr_strtok.c:-1) > > > 10: compile_do_compilation_jit(Method*, JIT*) (apr_strtok.c:-1) > > > 11: vm_compile_method (??:-1) > > > 12: DrlEMImpl::methodProfileIsReady(MethodProfile*) (inet_pton.c:-1) > > > 13: EBProfileCollector::onTimeout() (inet_pton.c:-1) > > > 14: DrlEMImpl::tbsTimeout() (inet_pton.c:-1) > > > 15: ProfilerThreadTimeout (em_intf.cpp:-1) > > > 16: Java_java_lang_EMThreadSupport_onTimeout (??:-1) > > > 17: 0xA6093C26 <Generated stub> > > > 18: java/lang/EMThreadSupport.run()V (EMThreadSupport.java:68) > > > 19: java/lang/EMThreadSupport$1.run()V (EMThreadSupport.java:44) > > > 20: java/lang/Thread.run()V (Thread.java:657) > > > 21: java/lang/Thread.runImpl()V (Thread.java:668) > > > 22: ?? (??:-1) > > > 23: .L294 (ini_iA32.cpp:-1) > > > 24: DrlEMImpl::executeMethod(_jmethodID*, jvalue*, jvalue*) > > (inet_pton.c:-1) > > > 25: ExecuteMethod (em_intf.cpp:-1) > > > 26: vm_execute_java_method_array (apr_strtok.c:-1) > > > 27: call_method_no_ref_result(JNIEnv_External*, _jobject*, > _jmethodID*, > > jvalue*, jvalue*, int) (jni_method.cpp:-1) > > > 28: CallVoidMethodA(JNIEnv_External*, _jobject*, _jmethodID*, > jvalue*) > > (apr_strtok.c:-1) > > > 29: jthread_wrapper_start_proc(void*) (apr_strtok.c:-1) > > > 30: start_thread (??:-1) > > > 31: clone (??:-1) > > > <end of stack trace> > > > Segmentation fault > > > > > > > > > > > > > > > -- Mikhail Fursov
