Thanks Andrew,

Andrew John Hughes wrote:
On 18/08/2008, Ian Rogers <[EMAIL PROTECTED]> wrote:
Hi,

 currently there are 3 patches waiting to go into GNU Classpath from
 Jikes RVM:


Note that 0.98 is very imminent i.e. I'd like it to be released this
week and most of it has already been merged to GCJ.

 1) Thread Local improvements:
 http://jira.codehaus.org/browse/RVM-185
 
http://jikesrvm.svn.sourceforge.net/viewvc/jikesrvm/rvmroot/trunk/build/components/patches/classpath-cvs.RVM-185.patch?revision=13369&view=markup
 I believe this is stalled waiting for Daniel's FSF paper work. This
 patch would be a big performance win for many VMs.


The assignment is still pending.  The last e-mail I have is Daniel's
assignment form on 11th June.  I've pinged to see what's going on.

Great! Getting this into 0.98 would be a real feature.

 2) ZipEntry improvements:
 http://jira.codehaus.org/browse/RVM-392
 
http://jikesrvm.svn.sourceforge.net/viewvc/jikesrvm/rvmroot/trunk/build/components/patches/classpath-cvs.RVM-392.patch?revision=14005&view=markup
 This patch cleans up the use of Calendar in ZipEntry and avoids
 unnecessary bouncing between UNIX and DOS time formats. Possible
 bootstrap issues were raised by Tom Tromey, so the patch is still
 pending. Here's the e-mail thread:
 
http://www.nabble.com/RFC%3A-tweaks-to-java.util.zip.ZipEntry-to15289313.html#a15289313


I'm sceptical about committing this one for 0.98 if there may be
issues.  I assume the gain is it not using a synchronized method to
initialise the Calendar?  Have you considered the initialization on
demand holder idiom instead?

  http://en.wikipedia.org/wiki/Initialization_on_demand_holder_idiom

It's also mentioned in the JSR166 book by Doug Lea et. al.  I can see
why initialising Calendar as a prerequisite for zip support might
cause a lot of problems and I don't think we have time to test it well
enough for this release.

Sorry, this change is a bit more involved than initialization on demand. Basically the normal use for a ZipEntry is for reading. In the current code to read an entry we must also convert the date (that is in DOS form in a ZIP) into a canonical unix time form, hence the requirement for a Calendar (and boot strap problems if the Calendar is in the zip). The main point of the patch is that we only really need the canonical time if we are writing the ZipEntry or if someone is querying it, in such a circumstance calling Calendar.getInstance() is fine and any caching can be done there.

The patch is necessary for Jikes RVM as it avoids a boot strap issue (we don't need a Calendar to be in the boot image before we start reading a zip). I *really* don't want Calendars in Jikes RVM's boot image as I have to hand code conversion code between the different JDK and Classpath formats, hence initialization on demand is definitely not a solution.

This patch is a good thing in my opinion and hasn't caused any issues for Jikes RVM, I would like to see it included in 0.98. It will help other VMs with the same bootstrap issue.

 3) AIX build fix:
 http://jira.codehaus.org/browse/RVM-526
 
http://jikesrvm.svn.sourceforge.net/viewvc/jikesrvm/rvmroot/trunk/build/components/patches/classpath-cvs.RVM-526.patch?revision=14551&view=markup
 This is a small patch that fixes a problem for builds on AIX, I believe
 it would be safe to commit it.


I think I've seen this before.  Seems fine.  Can you forward it for
discussion on cp-patches?

Maybe Dave can, he's assigned the issue to himself.

Thanks,

Ian

 I'd like to push these patches up stream. For 2 and 3 please could
 people complain if they think they are an issue for their VM, I believe
 they are both steps in the right direction. For 1 could someone chase up
 the paper work?

 Thanks,
 Ian Rogers


 -------------------------------------------------------------------------
 This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
 Build the coolest Linux based applications with Moblin SDK & win great prizes
 Grand prize is a trip for two to an Open Source event anywhere in the world
 http://moblin-contest.org/redirect.php?banner_id=100&url=/
 _______________________________________________
 Jikesrvm-core mailing list
 [EMAIL PROTECTED]
 https://lists.sourceforge.net/lists/listinfo/jikesrvm-core





Reply via email to