harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Egor Pasko <egor.pa...@gmail.com>
Subject Re: [drlvm] Trouble Building DRLVM
Date Mon, 25 Sep 2006 12:29:53 GMT
On the 0x1EC day of Apache Harmony Egor Pasko wrote:
> On the 0x1EB day of Apache Harmony Egor Pasko wrote:
> > On the 0x1EB day of Apache Harmony Geir Magnusson, Jr. wrote:
> > > I modified the launcher to include both the vm directory as well as
> > > the launcher directory on the PATH/LD_LIBRARY_PATH.
> > 
> > I am not catching .. the launcher directory is known without
> > PATH/LD_LIBRARY_PATH. Why should we look at PATH?
> > 
> > > Can those that have been having troubles with shared lib loading give
> > > it a try, and report back, and please mention the platform you are
> > > running on...
> > 
> > SUSE 9:
> > * HelloWorld works without complaining, cool!
> > * JAVA_HOME crash is gone, great! 
> >   (but are we not ignoring JAVA_HOME yet?)
> > * tests: 
> >   * ThreadTest failed on JET (looks like a known issue:)
> >   * ~4 tests failed on OPT (ThreadTest too), I'll look at them
> 
> I picked the ClassLoaderTest. It passes on JET and failes on OPT.
> Looks like it is time to open a JIRA...  If nobody objects, :) I'll
> put some words here as an example how to investigate JIT compiler
> problems. I hope, it might be useful for people.
> 
> I ran it as a single test like this:
> .../jre/bin/java -Xem:opt
> -Xbootclasspath/a:$HARMONY/working_classlib/depends/jars/junit_3.8.2/junit.jar:$HARMONY/working_vm/build/lnx_ia32_gcc_debug/semis/kernel.tests/classes
> junit.textui.TestRunner java.lang.ClassLoaderTest
> 
> If invoked with the option "-Xtrace:em", DRLVM prints compilation
> events as soon as they occur. What makes real fun is that one method
> starts compilation several times (without success) and receives
> SEGFAULT after not so many attempts. The bug may be in OPT or in
> recompilation, not clear now. Will investigate (first, I'll try to
> compile some methods with JET selectively)

the bug is caused by OPT's incorrect compilation of method
test_getPackages_V if I move the compilation to JET, the test
passes. Investigating...

Moving compilation of _one_ method to JET, while _others_ are compiled
with OPT *is easy*. All you have to do is put debug.emconf file to
.../jre/bin/default and run with the option -Xem:debug

debug.emconf is as follows:
========================================================================
chains=chain1,chain2
chain1.jits=JET_DEBUG
chain2.jits=CD_OPT

chain1.filter=+::test_getPackages_V
chain1.filter=-

JET_DEBUG.file=jitrino
CD_OPT.file=jitrino

# Options to be passed to JIT

-Djit.JET_DEBUG.path=

-Djit.CD_OPT.path=opt_init,translator,optimizer,hir2lir,codegen

-Djit.CD_OPT.path.optimizer=ssa,devirt,inline,purge,simplify,uce,dce,lazyexc,memopt,simplify,uce,dce,lower,dessa,statprof,markglobals
-Djit.CD_OPT.path.codegen=lock_method,bbp,gcpoints,cafl,dce1,i8l,early_prop,itrace-,native,constraints,dce2,regalloc,spillgen,layout,copy,rce+,stack,break-,iprof-,emitter!,si_insts,gcmap,info,unlock_method
-Djit.CD_OPT.path.dce1=cg_dce
-Djit.CD_OPT.path.dce2=cg_dce
-Djit.CD_OPT.path.regalloc=bp_regalloc1,bp_regalloc2
-Djit.CD_OPT.path.bp_regalloc1=bp_regalloc
-Djit.CD_OPT.path.bp_regalloc2=bp_regalloc

#inliner configuration
-Djit.CD_OPT.CD_OPT_inliner_pipeline.filter=-
-Djit.CD_OPT.CD_OPT_inliner_pipeline.path=ssa,devirt
-Djit.CD_OPT.arg.optimizer.inline.pipeline=CD_OPT_inliner_pipeline

-Djit.CD_OPT.arg.codegen.dce1.early=yes
-Djit.CD_OPT.arg.codegen.regalloc.bp_regalloc1.regs=ALL_GP
-Djit.CD_OPT.arg.codegen.regalloc.bp_regalloc2.regs=ALL_XMM
========================================================================

-- 
Egor Pasko, Intel Managed Runtime Division


---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message