harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Weldon Washburn" <weldon...@gmail.com>
Subject Re: [classlib] gnuclasspathadapter -- current status on getting specJVM98 to run
Date Mon, 01 May 2006 18:49:47 GMT
On 5/1/06, Archie Cobbs <archie@dellroad.org> wrote:
> Weldon Washburn wrote:
> >>   If the ACC_INTERFACE flag of this class file is set, its ACC_ABSTRACT
> >>   flag must also be set (ยง2.13.1) and its ACC_PUBLIC flag may be set.
> >>   Such a class file may not have any of the other flags in Table 4.1 set.
> >>
> >> It's interesting to hear that Sun (I assume?) doesn't follow this.
> >
> > Are you able to confirm the behavior I am seeing on your system?  I
> > ask because I would hate to find out the problem is caused by some
> > glitch in my environment.  You should be able to test for the problem
> > with specJVM98 _209_db.  Because of spec licensing rules, I may not be
> > able to give you my hacked up source to try.
>
> What's in the classfile? You can use "cfdump" to check, if you've got
> that built. The 0x0400 bit of access_flags should be set for ABSTRACT.
>

Good idea to use cfdump.  I now suspect it was a glitch in my
environment.  It might have been a wild pointer somewhere.  I can no
longer reproduce the problem.

> >> JCHEVM does agressive linking. This behavior is inherited from JCVM
> >> which was optimized for pre-compiled objects. Agressive linking is
> >> within the JVM spec, which allows flexibility in this area. The problem
> >> you see is one downside of the approach.
> >
> > hmmm.... is there any facility to turn off JCHEVM's agressive linking?
> > That is, let the linking happen only at first use of the class.  If
> > not, the choices are to:
> > a)
> > implement AWT and any other missing libs (this may be lots of work)
> > b)
> > comment out unused but offending classes that are in specJVM98 (ugly!)
> > c)
> > use some other benchmarks to demo Harmony LUNI on gnuclasspathadapter
> > (and have to respond to questions why specJVM98 does not work)
>
> JCHEVM resolves all of the symbolic references in a class at once,
> but not until it has to. So the linking does only happen at "first use"
> of the class, but at that time the entire class' references are resolved
> rather than just whatever method you happen to touch first.
> There's no way to fix this easily unfortunately.
>
> In any case it seems like trying to get specJVM to work seems pretty
> ambitious at this point, given that you just got System.out.println()
> working... there are probably more urgent things to fix than AWT, no?

Agreed.  Fixing AWT so that is runs with gnuclasspathadapter/JCHEVM is
the hard way to bring up the system.
> E.g., you could try the Mauve test suite.

Good idea.  I will try to look at mauve soon.  I don't know anything
about it.  Do you know if there there any Apache license compatibility
issues?
>
> Looking forward to getting this stuff committed at some point... !

Thanks.  I agree with you.  Hacking on a private copy of Harmony
Classlibs is growing stale.  It would be much more efficient to commit
the mods to Apache svn server.

>
> -Archie
>
> __________________________________________________________________________
> Archie Cobbs      *        CTO, Awarix        *      http://www.awarix.com
>
> ---------------------------------------------------------------------
> 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
>
>


--
Weldon Washburn
Intel Middleware Products 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