You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Geir Magnusson Jr <ge...@pobox.com> on 2006/06/21 21:54:06 UTC

[drlvm] Doing the minimum to support Java 5 classfiles

It seems we're in general agreement that getting DRLVM to deal with Java
5 classfiles is a good place to start.

It supports our project desire to get off the target=jsr14 hack for
compiling.

So, for those that know the DRLVM codebase, what are the steps?

Anyone who throws the One Big Patch over the wall will be summarily
beaten about the head and neck with a trout, by the way, and we may not
defrost the trout first... lets use this as an exercise to start
learning about the DRLVM and get people talking about how to do these
things together, with small patches once we agree on the strategy :)

geir

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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Pavel Pervov <pm...@gmail.com>.
>
> > I'd suggest switching the build to 1.5.
> >
> > The rest will come shortly :)
> Now that's a plan! :)

Yeah, indeed. :)

Seriously speaking, DRLVM is already allowed to load class files with
version 49. Certainly, some issues will be brought up while trying to run
DRLVM against class library compiled as 5.0 classes (like the one fixed by
Gregory Shimansky), but these issues could be then filed as simple JIRAs and
fixed accordingly.

Am I completely wrong in understanding things?


> geir

Pavel.

Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Tim Ellison <t....@gmail.com>.
Alexey Varlamov wrote:
> Good news: with patches for HARMONY-677, I was able to run 1.5 classes
> on DRLVM + classlib built with target=1.5.
> 
> But, I had some fun with the default javac (tried Sun jdk1.5.0_06 and
> jrockit-jdk1.5.0-windows-ia32), which outwits itself in optimizing
> String concatenations.

Alexey, FYI I've applied a workaround to StringBuilder in r423942.

Regards,
Tim

-- 

Tim Ellison (t.p.ellison@gmail.com)
IBM Java technology centre, UK.

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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Alexey Varlamov <al...@gmail.com>.
Good news: with patches for HARMONY-677, I was able to run 1.5 classes
on DRLVM + classlib built with target=1.5.

But, I had some fun with the default javac (tried Sun jdk1.5.0_06 and
jrockit-jdk1.5.0-windows-ia32), which outwits itself in optimizing
String concatenations.
At first I got puzzled with this error message:
---------------------------
java/lang/IllegalAccessError : from java/security/Security$1 to
java/lang/AbstractStringBuilder
 at java.security.AccessController.doPrivilegedImpl (: -1)
 at java.security.AccessController.doPrivileged (: -1)
 at java.security.Security.<clinit> (Security.java: 57)
 at org.apache.harmony.security.fortress.PolicyUtils$SecurityPropertyAccessor.run
(PolicyUtils.java: 148)
 at org.apache.harmony.security.fortress.PolicyUtils$SecurityPropertyAccessor.run
(PolicyUtils.java: 127)
 at java.security.AccessController.doPrivilegedImpl (: -1)
 at java.security.AccessController.doPrivileged (: -1)
 at java.security.Policy.getDefaultProvider (Policy.java: 139)
 at java.security.Policy.getAccessiblePolicy (Policy.java: 190)
 at java.security.Policy.getPolicy (Policy.java: 131)
 at java.lang.ClassLoader.<clinit> (: -1)
 at java.lang.Thread.<init> (: -1)
 at java.lang.Thread.<init> (: -1)
----------------------------

Indeed, looking at the bytecode of j.s.Security$1:
---------------------
   10:	invokespecial	#4; //Method java/lang/StringBuilder."<init>":()V
   13:	ldc	#5; //String java.home
   15:	invokestatic	#6; //Method
java/lang/System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
   18:	invokevirtual	#7; //Method
java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
< cut off several append() >
   49:	ldc	#11; //String java.security
   51:	invokevirtual	#7; //Method
java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
   54:	invokevirtual	#12; //Method
java/lang/AbstractStringBuilder.toString:()Ljava/lang/String;
----------------------
How do you like the last instruction operand? %)
After some analysis, I figured that the reason was j.l.StringBuilder
extending j.l.AbstractStringBuilder without explicitly overriding
toString(). Interestingly, I tried to reproduce this bug manually, but
in vain...

Eclipse's ecj was smarter (or just less eager :)) and produced correct bytecode.
Neverthless, I guess we have to workaround this in j.l.StringBuilder.

Index: modules/luni/src/main/java/java/lang/StringBuilder.java
============================================================
--- modules/luni/src/main/java/java/lang/StringBuilder.java     (revision 417667
)
+++ modules/luni/src/main/java/java/lang/StringBuilder.java     (working copy)
@@ -733,4 +733,8 @@
         out.writeInt(length());
         out.writeObject(getValue());
     }
+
+    public String toString() {
+        return super.toString();
+    }
 }

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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Alexey Varlamov <al...@gmail.com>.
Folks,
I'm back to work, glad to hear all of you :).

Looks like planning and technical directions already settled, I'm
right in time to go coding ;)
Seriously, Pavel Pervov made good observation: very basic v49 support
only includes accepting the version number + groking new LDC
semantics. For the DRLVM, these are several-line-patches for verifier,
interpreter and Jitrino.Jet (well, rather a helper function in VM, as
was pointed by Evgueni).

Recognizing new attributes will be needed no sooner than kernel
classes can exploit them.

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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Geir Magnusson Jr <ge...@pobox.com>.

Andrey Chernyshev wrote:
> On 6/23/06, Mark Hindess <ma...@googlemail.com> wrote:
>>
>> On 23 June 2006 at 17:10, Tim Ellison <t....@gmail.com> wrote:
>> > Rana Dasgupta wrote:
>> > > On 6/23/06, Geir Magnusson Jr <ge...@pobox.com> wrote:
>> > >> >>Pavel Pervov wrote:
>> > >> >> Geir,
>> > >> >>
>> > >> >> What's the first thing we do?
>> > >> >> I'd suggest switching the build to 1.5.
>> > >> >>
>> > >> >> The rest will come shortly :)
>> > >>
>> > >> >Now that's a plan! :)
>> > >
>> > >
>> > > Hi Geir,
>> > >  Actually what Pavel says makes sense. Not sure what plan we need.
>> We could
>> > > do it either way. We can make some changes to the class structure,
>> loader,
>> > > and the jit/interpreter, and submit a couple of patches. It is not
>> the
>> > > "huge" patch that you have mentioned .. 7-8 files or so. Or we can
>> switch
>> > > the build first. This will break drlvm for a short time, and we can
>> > > submit a
>> > > couple of bug fixes to get it going again. This way, we will just
>> add the
>> > > minimum needed for removing the compiler hack. Whatever way you
>> think makes
>> > > sense.
>> > >  However, you started this thread with saying "no patch over the
>> wall"
>> > > and making this "learning exercise about DRLVM". Where are you
>> going with
>> > > this? Do you want to actually enumerate/discuss which source files
>> need to
>> > > change and in what way, on this thread so that more people can
>> participate?
>> > >
>> > > Marginally confused :-)
>> > > Rana
>> >
>> > Just for the record, my goal was to avoid 'moving the goalposts' for
>> > drlvm to integrate with the classlib and run the tests, apps, etc.
>> >
>> > If consensus here is that moving to 5.0 (and thereby delaying that
>> goal)
>> > is more desirable then I'm happy to go along with it, though I'm
>> keen to
>> > get the entire end-to-end story working soonest.
>> >
>> > Regards,
>> > Tim
>>
>> My feeling at the moment is that although drlvm and classlib are working
>> together[0], it is evident[1] that things are not really integrated.
>> I would prefer to see "real integration" before we break[0] things by
>> moving to 5.0.
> 
> I agree the integration doesn't look perfect. On the other hand,
> improving integration and moving to 5.0 could be quite independent.
> Integration issues seem to be mostly related to the building /
> packaging, while 5.0 support would require adding / changing a code.

This is my POV as well.  I'm guessing they are independent, at least the
basics for accepting a v5 classfile.

> 
>>
>> As Geir pointed out recently, we are not just a Class library project,
>> so perhaps a change of focus is warranted?  Perhaps if we can agree a
>> set of prerequisite goals (involving our JVMs) for moving to 5.0, we can
>> ... err ... encourage this change of focus?
>>
>> My prerequisite goals would include things like:
>>
>> 1) Fix the (reasonable) 'hacks' that help us get this far with drlvm
>> integration - e.g. the static libhyprt.a for instance.[2]
> 
> It seems libhyprt is needed by VMI module to implement GetPortLibrary
> function.
> I guess static hyprt library is still needed for Windows (this is why
> it was added) while it isn't needed on Linux. The dependency on hyprt
> could be handled more gracefully with <select os="XXX"> tags.

I don't understand why it has to be static.

> 
>>
>> 2) Implement enough of the classlibadapter kernel classes such that
>> JCHEVM will run 'ant rebuild' in classlib[3].  We have some difficult
>> problems (thread attach) but there is also a lot of low hanging fruit in
>> terms of missing or incomplete methods.
>>
>> 3) Get drlvm loading with the Harmony launcher from Classlib so we
>> can have both drlvm and IBM VME around for testing.  I think this is
>> important because it will make it easier for people to test with either
>> JVM.
> 
> Do we want every VM, capable of working with Harmony classlib, be
> started with the Harmony launcher? 

No, but ours certainly could.

> It's probably could be too
> restrictive and may require additional work for adopting other VM's
> for classlib.
> However, I completely agree that the non-standard name breaks other
> tools and scripts. Wouldn't it be sufficient just to rename ij->java?

Yes

> 
>>
>> 4) Change the drlvm build so that its deploy tree layout has no classlib
>> files in it.  So we can do ...
>>
>> 5) Create the top-level build that can combine the trimmed drlvm deploy
>> tree and the classlib deploy tree to produce a working jdk.  (In much
>> the same way that we currently combine the classlib and IBM VME.)
>>
>> 6) Pull out shared dependencies to top-level so we only need one copy.
> 
> It looks like most of these issues are relating to the building files.
> Geir, would you be willing to work on that, or, someone else could try?

Anyone can try.  I have a top-level federation started, and will do more
tomorrow and get that checked in.

What would help is to rip out all the dependency stuff for DRLVM and
just move to a peer directory to DRLVM - the key will be letting us set
'pointers' via properties in the DRLVM build.

geir


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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Andrey Chernyshev <a....@gmail.com>.
On 6/23/06, Mark Hindess <ma...@googlemail.com> wrote:
>
> On 23 June 2006 at 17:10, Tim Ellison <t....@gmail.com> wrote:
> > Rana Dasgupta wrote:
> > > On 6/23/06, Geir Magnusson Jr <ge...@pobox.com> wrote:
> > >> >>Pavel Pervov wrote:
> > >> >> Geir,
> > >> >>
> > >> >> What's the first thing we do?
> > >> >> I'd suggest switching the build to 1.5.
> > >> >>
> > >> >> The rest will come shortly :)
> > >>
> > >> >Now that's a plan! :)
> > >
> > >
> > > Hi Geir,
> > >  Actually what Pavel says makes sense. Not sure what plan we need. We could
> > > do it either way. We can make some changes to the class structure, loader,
> > > and the jit/interpreter, and submit a couple of patches. It is not the
> > > "huge" patch that you have mentioned .. 7-8 files or so. Or we can switch
> > > the build first. This will break drlvm for a short time, and we can
> > > submit a
> > > couple of bug fixes to get it going again. This way, we will just add the
> > > minimum needed for removing the compiler hack. Whatever way you think makes
> > > sense.
> > >  However, you started this thread with saying "no patch over the wall"
> > > and making this "learning exercise about DRLVM". Where are you going with
> > > this? Do you want to actually enumerate/discuss which source files need to
> > > change and in what way, on this thread so that more people can participate?
> > >
> > > Marginally confused :-)
> > > Rana
> >
> > Just for the record, my goal was to avoid 'moving the goalposts' for
> > drlvm to integrate with the classlib and run the tests, apps, etc.
> >
> > If consensus here is that moving to 5.0 (and thereby delaying that goal)
> > is more desirable then I'm happy to go along with it, though I'm keen to
> > get the entire end-to-end story working soonest.
> >
> > Regards,
> > Tim
>
> My feeling at the moment is that although drlvm and classlib are working
> together[0], it is evident[1] that things are not really integrated.
> I would prefer to see "real integration" before we break[0] things by
> moving to 5.0.

I agree the integration doesn't look perfect. On the other hand,
improving integration and moving to 5.0 could be quite independent.
Integration issues seem to be mostly related to the building /
packaging, while 5.0 support would require adding / changing a code.

>
> As Geir pointed out recently, we are not just a Class library project,
> so perhaps a change of focus is warranted?  Perhaps if we can agree a
> set of prerequisite goals (involving our JVMs) for moving to 5.0, we can
> ... err ... encourage this change of focus?
>
> My prerequisite goals would include things like:
>
> 1) Fix the (reasonable) 'hacks' that help us get this far with drlvm
> integration - e.g. the static libhyprt.a for instance.[2]

It seems libhyprt is needed by VMI module to implement GetPortLibrary function.
I guess static hyprt library is still needed for Windows (this is why
it was added) while it isn't needed on Linux. The dependency on hyprt
could be handled more gracefully with <select os="XXX"> tags.

>
> 2) Implement enough of the classlibadapter kernel classes such that
> JCHEVM will run 'ant rebuild' in classlib[3].  We have some difficult
> problems (thread attach) but there is also a lot of low hanging fruit in
> terms of missing or incomplete methods.
>
> 3) Get drlvm loading with the Harmony launcher from Classlib so we
> can have both drlvm and IBM VME around for testing.  I think this is
> important because it will make it easier for people to test with either
> JVM.

Do we want every VM, capable of working with Harmony classlib, be
started with the Harmony launcher? It's probably could be too
restrictive and may require additional work for adopting other VM's
for classlib.
However, I completely agree that the non-standard name breaks other
tools and scripts. Wouldn't it be sufficient just to rename ij->java?

>
> 4) Change the drlvm build so that its deploy tree layout has no classlib
> files in it.  So we can do ...
>
> 5) Create the top-level build that can combine the trimmed drlvm deploy
> tree and the classlib deploy tree to produce a working jdk.  (In much
> the same way that we currently combine the classlib and IBM VME.)
>
> 6) Pull out shared dependencies to top-level so we only need one copy.

It looks like most of these issues are relating to the building files.
Geir, would you be willing to work on that, or, someone else could try?

Thanks,
Andrey.


>
>
> At the moment, I think moving to 5.0 would increase the divide between
> the JVMs and Classlib.
>
> In the meantime there is still plenty of work to do for those that, for
> whatever reasons, don't find these tasks exciting enough - for instance,
> the missing java.lang.Character/java.lang.Math methods[4].
>
> Regards,
>  Mark.
>
> [0] Thanks Geir!
>
> [1] http://issues.apache.org/jira/browse/HARMONY-651
>
> [2] This isn't a criticism; I think these hacks can be justified.
>
> [3] I tried this the other day.  It got to the second (non-comment) line
> of the first ant script before crashing because ClassLoader.getResources()
> isn't implemented yet.
>
> [4] http://www.kaffe.org/~stuart/japi/htmlout/h-jdk15-harmony.html#pkg_java_lang
>
>
> ---------------------------------------------------------------------
> 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
>
>


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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Tim Ellison <t....@gmail.com>.
Rana Dasgupta wrote:
> On 6/23/06, Geir Magnusson Jr <ge...@pobox.com> wrote:
>> >>Pavel Pervov wrote:
>> >> Geir,
>> >>
>> >> What's the first thing we do?
>> >> I'd suggest switching the build to 1.5.
>> >>
>> >> The rest will come shortly :)
>>
>> >Now that's a plan! :)
> 
> 
> Hi Geir,
>  Actually what Pavel says makes sense. Not sure what plan we need. We could
> do it either way. We can make some changes to the class structure, loader,
> and the jit/interpreter, and submit a couple of patches. It is not the
> "huge" patch that you have mentioned .. 7-8 files or so. Or we can switch
> the build first. This will break drlvm for a short time, and we can
> submit a
> couple of bug fixes to get it going again. This way, we will just add the
> minimum needed for removing the compiler hack. Whatever way you think makes
> sense.
>  However, you started this thread with saying "no patch over the wall"
> and making this "learning exercise about DRLVM". Where are you going with
> this? Do you want to actually enumerate/discuss which source files need to
> change and in what way, on this thread so that more people can participate?
> 
> Marginally confused :-)
> Rana

Just for the record, my goal was to avoid 'moving the goalposts' for
drlvm to integrate with the classlib and run the tests, apps, etc.

If consensus here is that moving to 5.0 (and thereby delaying that goal)
is more desirable then I'm happy to go along with it, though I'm keen to
get the entire end-to-end story working soonest.

Regards,
Tim


-- 

Tim Ellison (t.p.ellison@gmail.com)
IBM Java technology centre, UK.

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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Rana Dasgupta <rd...@gmail.com>.
On 6/23/06, Geir Magnusson Jr <ge...@pobox.com> wrote:
>
>
>
> >>Pavel Pervov wrote:
> >> Geir,
> >>
> >> What's the first thing we do?
> >> I'd suggest switching the build to 1.5.
> >>
> >> The rest will come shortly :)
>
> >Now that's a plan! :)


Hi Geir,
  Actually what Pavel says makes sense. Not sure what plan we need. We could
do it either way. We can make some changes to the class structure, loader,
and the jit/interpreter, and submit a couple of patches. It is not the
"huge" patch that you have mentioned .. 7-8 files or so. Or we can switch
the build first. This will break drlvm for a short time, and we can submit a
couple of bug fixes to get it going again. This way, we will just add the
minimum needed for removing the compiler hack. Whatever way you think makes
sense.
  However, you started this thread with saying "no patch over the wall"
and making this "learning exercise about DRLVM". Where are you going with
this? Do you want to actually enumerate/discuss which source files need to
change and in what way, on this thread so that more people can participate?

Marginally confused :-)
Rana

Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Geir Magnusson Jr <ge...@pobox.com>.

Pavel Pervov wrote:
> Geir,
> 
>> What's the first thing we do?
> I'd suggest switching the build to 1.5.
> 
> The rest will come shortly :)

Now that's a plan! :)

geir

> 
> Pavel Pervov.
> Intel Middleware Products Division.
> 
> On 6/23/06, Geir Magnusson Jr <ge...@pobox.com> wrote:
>>
>> This sounds easy and fun.
>>
>> What's the first thing we do?
>>
>> geir
>>
>>
>> Rana Dasgupta wrote:
>> > Geir,
>> >  Not sure at what level of detail you are asking, but  we  need some
>> > changes in the DRLVM class support code to handle the new
>> > class format. These include the acc_synthetic , acc_annotation etc.
>> access
>> > modifiers,  the new attrs like enclosingClass,  runtime
>> > visible/invisible attrs, signatures for generics support and the
>> > class/interface naming convention changes etc. There should be
>> some  small
>> > changes in the interpreter and JIT to support the ldc CONSTANT_Class .
>> > There are possibly some minimal associated changes to the kernel
>> classes
>> > also even without the full implementation of annotation, reflection
>> etc.
>> > kernel classes as Alexey pointed out on the previous 1.5 thread.
>> >
>> > Rana
>> >
>> >
>> > On 6/22/06, Tim Ellison <t.p.ellison@gmail.com > wrote:
>> >>
>> >> There are modest changes to the classfile format that need to be
>> >> supported; once they are in place we can remove the compiler-hack.
>> >>
>> >> Regards,
>> >> Tim
>> >>
>> >> Geir Magnusson Jr wrote:
>> >> > It seems we're in general agreement that getting DRLVM to deal with
>> >> Java
>> >> > 5 classfiles is a good place to start.
>> >> >
>> >> > It supports our project desire to get off the target=jsr14 hack for
>> >> > compiling.
>> >> >
>> >> > So, for those that know the DRLVM codebase, what are the steps?
>> >> >
>> >> > Anyone who throws the One Big Patch over the wall will be summarily
>> >> > beaten about the head and neck with a trout, by the way, and we may
>> not
>> >> > defrost the trout first... lets use this as an exercise to start
>> >> > learning about the DRLVM and get people talking about how to do
>> these
>> >> > things together, with small patches once we agree on the strategy :)
>> >> >
>> >> > geir
>> >> >
>> >> >
>> ---------------------------------------------------------------------
>> >> > 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
>> >> >
>> >> >
>> >>
>> >> --
>> >>
>> >> Tim Ellison (t.p.ellison@gmail.com)
>> >> IBM Java technology centre, UK.
>> >>
>> >> ---------------------------------------------------------------------
>> >> 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
>> >>
>> >>
>> >
>>
>> ---------------------------------------------------------------------
>> 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
>>
>>
> 

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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Pavel Pervov <pm...@gmail.com>.
Geir,

> What's the first thing we do?
I'd suggest switching the build to 1.5.

The rest will come shortly :)

Pavel Pervov.
Intel Middleware Products Division.

On 6/23/06, Geir Magnusson Jr <ge...@pobox.com> wrote:
>
> This sounds easy and fun.
>
> What's the first thing we do?
>
> geir
>
>
> Rana Dasgupta wrote:
> > Geir,
> >  Not sure at what level of detail you are asking, but  we  need some
> > changes in the DRLVM class support code to handle the new
> > class format. These include the acc_synthetic , acc_annotation etc.
> access
> > modifiers,  the new attrs like enclosingClass,  runtime
> > visible/invisible attrs, signatures for generics support and the
> > class/interface naming convention changes etc. There should be
> some  small
> > changes in the interpreter and JIT to support the ldc CONSTANT_Class .
> > There are possibly some minimal associated changes to the kernel classes
> > also even without the full implementation of annotation, reflection etc.
> > kernel classes as Alexey pointed out on the previous 1.5 thread.
> >
> > Rana
> >
> >
> > On 6/22/06, Tim Ellison <t.p.ellison@gmail.com > wrote:
> >>
> >> There are modest changes to the classfile format that need to be
> >> supported; once they are in place we can remove the compiler-hack.
> >>
> >> Regards,
> >> Tim
> >>
> >> Geir Magnusson Jr wrote:
> >> > It seems we're in general agreement that getting DRLVM to deal with
> >> Java
> >> > 5 classfiles is a good place to start.
> >> >
> >> > It supports our project desire to get off the target=jsr14 hack for
> >> > compiling.
> >> >
> >> > So, for those that know the DRLVM codebase, what are the steps?
> >> >
> >> > Anyone who throws the One Big Patch over the wall will be summarily
> >> > beaten about the head and neck with a trout, by the way, and we may
> not
> >> > defrost the trout first... lets use this as an exercise to start
> >> > learning about the DRLVM and get people talking about how to do these
> >> > things together, with small patches once we agree on the strategy :)
> >> >
> >> > geir
> >> >
> >> > ---------------------------------------------------------------------
> >> > 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
> >> >
> >> >
> >>
> >> --
> >>
> >> Tim Ellison (t.p.ellison@gmail.com)
> >> IBM Java technology centre, UK.
> >>
> >> ---------------------------------------------------------------------
> >> 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
> >>
> >>
> >
>
> ---------------------------------------------------------------------
> 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
>
>

Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Geir Magnusson Jr <ge...@pobox.com>.
This sounds easy and fun.

What's the first thing we do?

geir


Rana Dasgupta wrote:
> Geir,
>  Not sure at what level of detail you are asking, but  we  need some
> changes in the DRLVM class support code to handle the new
> class format. These include the acc_synthetic , acc_annotation etc. access
> modifiers,  the new attrs like enclosingClass,  runtime
> visible/invisible attrs, signatures for generics support and the
> class/interface naming convention changes etc. There should be some  small
> changes in the interpreter and JIT to support the ldc CONSTANT_Class .
> There are possibly some minimal associated changes to the kernel classes
> also even without the full implementation of annotation, reflection etc.
> kernel classes as Alexey pointed out on the previous 1.5 thread.
> 
> Rana
> 
> 
> On 6/22/06, Tim Ellison <t.p.ellison@gmail.com > wrote:
>>
>> There are modest changes to the classfile format that need to be
>> supported; once they are in place we can remove the compiler-hack.
>>
>> Regards,
>> Tim
>>
>> Geir Magnusson Jr wrote:
>> > It seems we're in general agreement that getting DRLVM to deal with
>> Java
>> > 5 classfiles is a good place to start.
>> >
>> > It supports our project desire to get off the target=jsr14 hack for
>> > compiling.
>> >
>> > So, for those that know the DRLVM codebase, what are the steps?
>> >
>> > Anyone who throws the One Big Patch over the wall will be summarily
>> > beaten about the head and neck with a trout, by the way, and we may not
>> > defrost the trout first... lets use this as an exercise to start
>> > learning about the DRLVM and get people talking about how to do these
>> > things together, with small patches once we agree on the strategy :)
>> >
>> > geir
>> >
>> > ---------------------------------------------------------------------
>> > 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
>> >
>> >
>>
>> -- 
>>
>> Tim Ellison (t.p.ellison@gmail.com)
>> IBM Java technology centre, UK.
>>
>> ---------------------------------------------------------------------
>> 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
>>
>>
> 

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


Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Pavel Rebriy <pa...@gmail.com>.
Besides, verifier code should be updated to support Java 5 changes.

On 22/06/06, Rana Dasgupta <rd...@gmail.com> wrote:
>
> Geir,
>   Not sure at what level of detail you are asking, but  we  need some
> changes in the DRLVM class support code to handle the new
> class format. These include the acc_synthetic , acc_annotation etc. access
> modifiers,  the new attrs like enclosingClass,  runtime
> visible/invisible attrs, signatures for generics support and the
> class/interface naming convention changes etc. There should be some  small
> changes in the interpreter and JIT to support the ldc CONSTANT_Class .
> There are possibly some minimal associated changes to the kernel classes
> also even without the full implementation of annotation, reflection etc.
> kernel classes as Alexey pointed out on the previous 1.5 thread.
>
> Rana
>
>
> On 6/22/06, Tim Ellison <t.p.ellison@gmail.com > wrote:
> >
> > There are modest changes to the classfile format that need to be
> > supported; once they are in place we can remove the compiler-hack.
> >
> > Regards,
> > Tim
> >
> > Geir Magnusson Jr wrote:
> > > It seems we're in general agreement that getting DRLVM to deal with
> Java
> > > 5 classfiles is a good place to start.
> > >
> > > It supports our project desire to get off the target=jsr14 hack for
> > > compiling.
> > >
> > > So, for those that know the DRLVM codebase, what are the steps?
> > >
> > > Anyone who throws the One Big Patch over the wall will be summarily
> > > beaten about the head and neck with a trout, by the way, and we may
> not
> > > defrost the trout first... lets use this as an exercise to start
> > > learning about the DRLVM and get people talking about how to do these
> > > things together, with small patches once we agree on the strategy :)
> > >
> > > geir
> > >
> > > ---------------------------------------------------------------------
> > > 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
> > >
> > >
> >
> > --
> >
> > Tim Ellison (t.p.ellison@gmail.com)
> > IBM Java technology centre, UK.
> >
> > ---------------------------------------------------------------------
> > 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
> >
> >
>
>


-- 
Best regards,
Pavel Rebriy

Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Rana Dasgupta <rd...@gmail.com>.
Geir,
  Not sure at what level of detail you are asking, but  we  need some
changes in the DRLVM class support code to handle the new
class format. These include the acc_synthetic , acc_annotation etc. access
modifiers,  the new attrs like enclosingClass,  runtime
visible/invisible attrs, signatures for generics support and the
class/interface naming convention changes etc. There should be some  small
changes in the interpreter and JIT to support the ldc CONSTANT_Class .
There are possibly some minimal associated changes to the kernel classes
also even without the full implementation of annotation, reflection etc.
kernel classes as Alexey pointed out on the previous 1.5 thread.

Rana


On 6/22/06, Tim Ellison <t.p.ellison@gmail.com > wrote:
>
> There are modest changes to the classfile format that need to be
> supported; once they are in place we can remove the compiler-hack.
>
> Regards,
> Tim
>
> Geir Magnusson Jr wrote:
> > It seems we're in general agreement that getting DRLVM to deal with Java
> > 5 classfiles is a good place to start.
> >
> > It supports our project desire to get off the target=jsr14 hack for
> > compiling.
> >
> > So, for those that know the DRLVM codebase, what are the steps?
> >
> > Anyone who throws the One Big Patch over the wall will be summarily
> > beaten about the head and neck with a trout, by the way, and we may not
> > defrost the trout first... lets use this as an exercise to start
> > learning about the DRLVM and get people talking about how to do these
> > things together, with small patches once we agree on the strategy :)
> >
> > geir
> >
> > ---------------------------------------------------------------------
> > 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
> >
> >
>
> --
>
> Tim Ellison (t.p.ellison@gmail.com)
> IBM Java technology centre, UK.
>
> ---------------------------------------------------------------------
> 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
>
>

Re: [drlvm] Doing the minimum to support Java 5 classfiles

Posted by Tim Ellison <t....@gmail.com>.
There are modest changes to the classfile format that need to be
supported; once they are in place we can remove the compiler-hack.

Regards,
Tim

Geir Magnusson Jr wrote:
> It seems we're in general agreement that getting DRLVM to deal with Java
> 5 classfiles is a good place to start.
> 
> It supports our project desire to get off the target=jsr14 hack for
> compiling.
> 
> So, for those that know the DRLVM codebase, what are the steps?
> 
> Anyone who throws the One Big Patch over the wall will be summarily
> beaten about the head and neck with a trout, by the way, and we may not
> defrost the trout first... lets use this as an exercise to start
> learning about the DRLVM and get people talking about how to do these
> things together, with small patches once we agree on the strategy :)
> 
> geir
> 
> ---------------------------------------------------------------------
> 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
> 
> 

-- 

Tim Ellison (t.p.ellison@gmail.com)
IBM Java technology centre, UK.

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