harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexey Varlamov (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-3121) [drlvm][jit][opt] Dacapo.eclipse crashes on the second iteration in -Xem:server mode
Date Wed, 07 Feb 2007 12:00:10 GMT

    [ https://issues.apache.org/jira/browse/HARMONY-3121?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12470936
] 

Alexey Varlamov commented on HARMONY-3121:
------------------------------------------

Looks like unlockProfile(); is missing under the if?

===================================================================
--- vm/em/src/NValueProfileCollector.cpp	(revision 503992)
+++ vm/em/src/NValueProfileCollector.cpp	(working copy)
@@ -239,8 +239,12 @@
 {
     lockProfile();
     VPInstructionProfileData* _temp_vp = ValueMap[instructionKey];
+    if (_temp_vp == NULL) {
+        assert(0);
+        return 0;
+    }
     flushInstProfile(_temp_vp);
-    POINTER_SIZE_INT result = (_temp_vp == NULL) ? 0 : getVPC()->find_max(_temp_vp->TNV_Table);
+    POINTER_SIZE_INT result = getVPC()->find_max(_temp_vp->TNV_Table);
     unlockProfile();
     return result; 
 }

> [drlvm][jit][opt] Dacapo.eclipse crashes on the second iteration in -Xem:server mode
> ------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3121
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3121
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Ozhdikhin
>         Assigned To: Alexey Varlamov
>         Attachments: H3121.patch, quick.patch
>
>
> Dacapo.eclipse benchmark crashes with segmentation fault on the second iteration in -Xem:server
mode.
> Command to run:
>   java.exe -Xem:server -jar dacapo-2006-10.jar -s default -n 2 eclipse
> SIGSEGV in VM code. 
> Stack trace: 
> 1: ValueMethodProfile::flushInstProfile(VPInstructionProfileData*) (??:-1) 
> 2: ValueMethodProfile::getResult(unsigned int) (??:-1) 
> 3: value_profiler_get_top_value(void*, unsigned int) (??:-1) 
> 4: Jitrino::DrlValueMethodProfile::getTopValue(unsigned int) const (??:-1) 
> 5: Jitrino::Devirtualizer::guardCallsInBlock(Jitrino::IRManager&, Jitrino::Node*)
(??:-1) 
> 6: Jitrino::Devirtualizer::guardCallsInRegion(Jitrino::IRManager&, Jitrino::DominatorTree*)
(??:-1) 
> 7: Jitrino::GuardedDevirtualizationPass::_run(Jitrino::IRManager&) (??:-1) 
> 8: Jitrino::OptPass::run() (??:-1) 
> 9: Jitrino::runPipeline(Jitrino::CompilationContext*) (??:-1) 
> 10: Jitrino::compileMethod(Jitrino::CompilationContext*) (??:-1) 
> 11: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (??:-1) 
> 12: JIT_compile_method_with_params (??:-1) 
> 13: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams) (??:-1)

> 14: compile_do_compilation_jit(Method*, JIT*) (??:-1) 
> 15: vm_compile_method (??:-1) 
> 16: DrlEMImpl::methodProfileIsReady(MethodProfile*) (??:-1) 
> 17: EdgeProfileCollector::onTimeout() (??:-1) 
> 18: DrlEMImpl::tbsTimeout() (??:-1) 
> 19: ProfilerThreadTimeout (??:-1) 
> 20: Java_java_lang_EMThreadSupport_onTimeout (??:-1) 
> 21: IP is 0xA2BC3BA3 <native code> 
> 22: java/lang/EMThreadSupport.run()V (EMThreadSupport.java:68) 
> 23: java/lang/EMThreadSupport$1.run()V (EMThreadSupport.java:44) 
> 24: java/lang/Thread.run()V (Thread.java:-1) 
> 25: java/lang/Thread.runImpl()V (Thread.java:-1) 
> 26: vm_invoke_native_array_stub (/Harmony/source/enhanced/drlvm/trunk/vm/vmcore/src/util/ia32/base/invoke_native_stub_ia32.asm:41)

> 27: .L49 (??:-1) 
> 28: DrlEMImpl::executeMethod(_jmethodID*, jvalue*, jvalue*) (??:-1) 
> 29: ExecuteMethod (??:-1) 
> 30: vm_execute_java_method_array(_jmethodID*, jvalue*, jvalue*) (??:-1) 
> 31: call_method_no_ref_result(JNIEnv_External*, _jobject*, _jmethodID*, jvalue*, jvalue*,
int) (??:-1) 
> 32: wrapper_proc (??:-1) 
> 33: thread_start_proc (??:-1) 
> 34: dummy_worker (threadproc/unix/thread.c:139) 
> 35: start_thread (??:-1) 
> 36: clone (??:-1) 

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


Mime
View raw message