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: [dlrvm] ClassCircularityError in recursive compilation (Was: Re: [drlvm] smoke test : gc PhantomReferenceQueueTest is really unstable)
Date Thu, 12 Oct 2006 09:18:32 GMT
On the 0x200 day of Apache Harmony Pavel Pervov wrote:
> Mikhail,
> 
> Unfortunately, both our compilers are affected by this issue.

fixing only JET sounds more or less realistic. Fixing OPT is an
overkill. 

Pavel, that would have been great if we had some real tests to go on
with fixing. As usual, the more diverse tests are, the better. Can
you, please, provide a JIRA with your below example (and, maybe, other
reproducers, if possible)?

Thanks!

> Pavel.
> On 10/11/06, Mikhail Fursov <mike.fursov@gmail.com> wrote:
> >
> > The test you described has a lot of hidden issues.
> > For example: if Sun supports such situation only with interpreter (need to
> > investigate), may be it's enough if we support it only with JET (in the
> > default mode JET compiles all methods first)? In this case if we see
> > ClassCircularityError in OPT we have a chance to return JIT_FAILURE to EM
> > and ask EM to compile this method with JET?
> >
> > On 10/11/06, Pavel Pervov <pmcfirst@gmail.com> wrote:
> > >
> > > I suspect it was JRockit java, which crashed. Since Sun's jvm is
> > hotspot,
> > > you have to force it into compiling the method. Otherwise it will
> > > interpret
> > > the method and everything will work fine. :)
> > >
> > > Pavel.
> > >
> > > On 10/11/06, Mikhail Fursov <mike.fursov@gmail.com> wrote:
> > > >
> > > > Will this test pass on SUN or BEA JVM?
> > > > I remember I tried something similar but one of the RIs crashed :)
> > > >
> > > > On 10/11/06, Pavel Pervov <pmcfirst@gmail.com> wrote:
> > > > >
> > > > > (Branching from original thread as this is different problem than
in
> > > the
> > > > > root message.)
> > > > >
> > > > > Mikhail,
> > > > >
> > > > > The following scenario will fail:
> > > > >
> > > > > 1) JIT compiles some method and resolves some class "A" through user
> > > > > defined
> > > > > class loader
> > > > > 2) user define class loader loads class "A" and triggers compilation
> > > of
> > > > > some
> > > > > of its methods
> > > > > 3) this method happens to depend on class "A", and, thus, JIT
> > resolves
> > > > the
> > > > > class "A" through the same class loader
> > > > >
> > > > > Voila! We have the described situation.
> > > > >
> > > > > Regards,
> > > > >     Pavel.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Mikhail Fursov
> > > >
> > > >
> > >
> > >
> >
> >
> > --
> > Mikhail Fursov
> >
> >

-- 
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