harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Geir Magnusson Jr." <g...@pobox.com>
Subject Re: [drlvm][jira] Created: (HARMONY-2956) [jit] segfault with -Xem:server option
Date Wed, 10 Jan 2007 15:17:00 GMT
Two things :

1) shouldn't we start running tests using -Xem:server? :)

2) Does anyone object to declaring gcc 4.x as our "supported"  
compiler?  What do we lose?  (IOW, what platforms don't have gcc  
4.x?)  I'll ask this again in a different thread

geir

On Jan 10, 2007, at 7:42 AM, Mikhail Fursov wrote:

> I wrote the code that fail and I hope that this is not GCC 3.4 bug  
> but my
> missunderstanding. However I do not understand why for a vector of  
> pointers
> that does not contain NULLs gcc3.4 generates code that passes NULL  
> to a
> comparator.
>
> The only workaround I know: replace std::sort(..) with  
> std::stable_sort(..).
> I'm going to provide a patch this week.
>
>
>
> On 10 Jan 2007 15:07:53 +0600, Egor Pasko <egor.pasko@gmail.com>  
> wrote:
>>
>> On the 0x25A day of Apache Harmony Pavel Ozhdikhin wrote:
>> > Naveen,
>> >
>> > Using gcc 4.1.0 or newer will likely help in your case. There  
>> was JIRA
>> issue
>> > about similar failure:
>> >
>> > http://issues.apache.org/jira/browse/HARMONY-1873
>> >
>> > The comments reads that earlier gcc version have a bug in std::sort
>> > implementation. That particular issue was fixed by simplifying the
>> > comparator expression but the root cause is a bug in gcc.
>>
>> I would vote to workaround the possible GCC bug. Finding the right  
>> GCC
>> bugreport would have been ideal.
>>
>> > Thanks,
>> > Pavel
>> >
>> >
>> > On 1/10/07, Naveen Neelakantam <neelakan@uiuc.edu> wrote:
>> > >
>> > > I am seeing a segfault when I use the -Xem:server option.  I  
>> depend
>> > > on this option working.
>> > >
>> > > Thanks,
>> > > Naveen
>> > >
>> > > Begin forwarded message:
>> > >
>> > > > From: "Naveen Neelakantam (JIRA)" <jira@apache.org>
>> > > > Date: January 9, 2007 5:29:27 PM CST
>> > > > To: neelakan@uiuc.edu
>> > > > Subject: [jira] Created: (HARMONY-2956) [jit] segfault with -
>> > > > Xem:server option
>> > > >
>> > > > [jit] segfault with -Xem:server option
>> > > > --------------------------------------
>> > > >
>> > > >                  Key: HARMONY-2956
>> > > >                  URL: https://issues.apache.org/jira/browse/
>> > > > HARMONY-2956
>> > > >              Project: Harmony
>> > > >           Issue Type: Bug
>> > > >           Components: DRLVM
>> > > >          Environment: RHEL4 update 4, x86, core2 duo
>> > > >             Reporter: Naveen Neelakantam
>> > > >
>> > > >
>> > > > The problem seems to occur with any long running program,  
>> but you
>> > > > can trigger it with the DaCapo benchmarks:
>> > > >
>> > > >> java -showversion -Xem:server -jar dacapo-2006-10.jar fop
>> > > > Apache Harmony Launcher : (c) Copyright 1991, 2006 The Apache
>> > > > Software Foundation or its licensors, as applicable.
>> > > > java version "1.5.0"
>> > > > pre-alpha : not complete or compatible
>> > > > svn = r494559, (Jan  9 2007), Linux/ia32/gcc 3.4.6, debug build
>> > > > http://incubator.apache.org/harmony
>> > > > SIGSEGV in VM code.
>> > > > Stack trace:
>> > > >         1: Jitrino::Ia32::edge_comparator::getEdgeExecCount
>> > > > (Jitrino::Edge const*) (??:-1)
>> > > >         2: ?? (00180234
>> > > > :180234)
>> > > >         3: ?? (0017f79e
>> > > > :17)
>> > > >         4: ?? (0017f7b0
>> > > > :17)
>> > > >         5: ?? (0017f7b0
>> > > > :17)
>> > > >         6: ?? (0017f7b0
>> > > > :17)
>> > > >         7: ?? (0017f6d3
>> > > > :17)
>> > > >         8: Jitrino::Ia32::BottomUpLayout::linearizeCfgImpl()  
>> (??:-1)
>> > > >         9: Jitrino::Ia32::Linearizer::linearizeCfg() (??:-1)
>> > > >         10: Jitrino::Ia32::Linearizer::doLayout
>> > > > (Jitrino::Ia32::Linearizer::LinearizerType,
>> > > > Jitrino::Ia32::IRManager*) (??:-1)
>> > > >         11: Jitrino::Ia32::Layouter::runImpl() (??:-1)
>> > > >         12: Jitrino::Ia32::SessionAction::run() (??:-1)
>> > > >         13: Jitrino::runPipeline(Jitrino::CompilationContext*)
>> (??:-1)
>> > > >         14: Jitrino::compileMethod 
>> (Jitrino::CompilationContext*)
>> > > > (??:-1)
>> > > >         15: Jitrino::Jitrino::CompileMethod
>> > > > (Jitrino::CompilationContext*) (??:-1)
>> > > >         16: JIT_compile_method_with_params (??:-1)
>> > > >         17: Dll_JIT::compile_method_with_params(void*, Method*,
>> > > > OpenMethodExecutionParams) (/home/dcsfiles/neelakan/Sandbox/ 
>> Harmony/
>> > > > stable/working_vm/vm/vmcore/include/dll_jit_intf.h:86)
>> > > >         18: compile_do_compilation_jit(Method*, JIT*) (/home/
>> > > > dcsfiles/neelakan/Sandbox/Harmony/stable/working_vm/vm/ 
>> vmcore/src/
>> > > > jit/compile.cpp:645)
>> > > >         19: vm_compile_method (/home/dcsfiles/neelakan/Sandbox/
>> > > > Harmony/stable/working_vm/vm/vmcore/src/class_support/
>> > > > C_Interface.cpp:2462)
>> > > >         20: DrlEMImpl::compileMethod(Method*) (/home/dcsfiles/
>> > > > neelakan/Sandbox/Harmony/stable/working_vm/vm/em/src/ 
>> DrlEMImpl.cpp:
>> > > > 545)
>> > > >         21: CompileMethod (/home/dcsfiles/neelakan/Sandbox/ 
>> Harmony/
>> > > > stable/working_vm/vm/em/src/em_intf.cpp:49)
>> > > >         22: compile_do_compilation (/home/dcsfiles/neelakan/ 
>> Sandbox/
>> > > > Harmony/stable/working_vm/vm/vmcore/src/jit/compile.cpp:752)
>> > > >         23: compile_me(Method*) (/home/dcsfiles/neelakan/ 
>> Sandbox/
>> > > > Harmony/stable/working_vm/vm/vmcore/src/jit/compile.cpp:772)
>> > > >         24: IP is 0xB6972162 <native code>
>> > > >         25: ?? (??:-1)
>> > > >         26: dacapo/parser/ConfigFileTokenManager.jjStartNfa_0 
>> (IJ)I
>> > > > (ConfigFileTokenManager.java:-1)
>> > > >         27: dacapo/parser/
>> > > > ConfigFileTokenManager.jjMoveStringLiteralDfa2_0(JJ)I
>> > > > (ConfigFileTokenManager.java:-1)
>> > > >         28: dacapo/parser/
>> > > > ConfigFileTokenManager.jjMoveStringLiteralDfa1_0(J)I
>> > > > (ConfigFileTokenManager.java:-1)
>> > > >         29: dacapo/parser/
>> > > > ConfigFileTokenManager.jjMoveStringLiteralDfa0_0()I
>> > > > (ConfigFileTokenManager.java:-1)
>> > > >         30: dacapo/parser/ConfigFileTokenManager.getNextToken()
>> > > > Ldacapo/parser/Token; (ConfigFileTokenManager.java:-1)
>> > > >         31: dacapo/parser/ConfigFile.jj_consume_token(I) 
>> Ldacapo/
>> > > > parser/Token; (ConfigFile.java:-1)
>> > > >         32: dacapo/parser/ConfigFile.config()Ldacapo/parser/ 
>> Config;
>> > > > (ConfigFile.java:-1)
>> > > >         33: dacapo/parser/ConfigFile.configFile()Ldacapo/ 
>> parser/
>> > > > Config; (ConfigFile.java:-1)
>> > > >         34: dacapo/parser/Config.parse(Ljava/io/InputStream;)
>> > > > Ldacapo/parser/Config; (Config.java:-1)
>> > > >         35: dacapo/TestHarness.<init>(Ljava/io/InputStream;)V
>> > > > (TestHarness.java:-1)
>> > > >         36: dacapo/TestHarness.main([Ljava/lang/String;)V
>> > > > (TestHarness.java:-1)
>> > > >         37: vm_invoke_native_array_stub (/home/dcsfiles/ 
>> neelakan/
>> > > > Sandbox/Harmony/stable/working_vm/vm/vmcore/src/util/ia32/base/
>> > > > invoke_native_stub_ia32.asm:41)
>> > > >         38: JIT_execute_method_default(void*, _jmethodID*,  
>> jvalue*,
>> > > > jvalue*) (/home/dcsfiles/neelakan/Sandbox/Harmony/stable/ 
>> working_vm/
>> > > > vm/vmcore/src/util/ia32/base/ini_iA32.cpp:199)
>> > > >         39: DrlEMImpl::executeMethod(_jmethodID*, jvalue*,  
>> jvalue*)
>> > > > (/home/dcsfiles/neelakan/Sandbox/Harmony/stable/working_vm/ 
>> vm/em/
>> > > > src/DrlEMImpl.cpp:514)
>> > > >         40: ExecuteMethod (/home/dcsfiles/neelakan/Sandbox/ 
>> Harmony/
>> > > > stable/working_vm/vm/em/src/em_intf.cpp:43)
>> > > >         41: vm_execute_java_method_array(_jmethodID*, jvalue*,
>> > > > jvalue*) (/home/dcsfiles/neelakan/Sandbox/Harmony/stable/ 
>> working_vm/
>> > > > vm/vmcore/src/jit/ini.cpp:51)
>> > > >         42: call_static_method_no_ref_result (/home/dcsfiles/
>> > > > neelakan/Sandbox/Harmony/stable/working_vm/vm/vmcore/src/jni/
>> > > > jni_method.cpp:1155)
>> > > >         43: CallStaticVoidMethodA(JNIEnv_External*, _jobject*,
>> > > > _jmethodID*, jvalue*) (/home/dcsfiles/neelakan/Sandbox/Harmony/
>> > > > stable/working_vm/vm/vmcore/src/jni/jni_method.cpp:1563)
>> > > >         44: invoke_primitive_method (/home/dcsfiles/neelakan/
>> > > > Sandbox/Harmony/stable/working_vm/vm/vmcore/src/kernel_classes/
>> > > > native/java_lang_reflect_VMReflection.cpp:184)
>> > > > Segmentation fault
>> > > >
>> > > >
>> > > > --
>> > > > This message is automatically generated by JIRA.
>> > > > -
>> > > > If you think it was sent incorrectly contact one of the
>> > > > administrators: https://issues.apache.org/jira/secure/
>> > > > Administrators.jspa
>> > > > -
>> > > > For more information on JIRA, see: http://www.atlassian.com/
>> > > > software/jira
>> > > >
>> > > >
>> > >
>> > >
>> > >
>>
>> --
>> Egor Pasko
>>
>>
>
>
> -- 
> Mikhail Fursov


Mime
View raw message