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 2007/12/12 11:23:43 UTC

[jira] Closed: (HARMONY-5290) [drlvm][jit] SIGSEGV in JIT code

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

Mikhail Fursov closed HARMONY-5290.
-----------------------------------

    Resolution: Fixed

Committed revision 603534

> [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
>         Attachments: 5290.patch
>
>
> 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
> 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

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