changeset 2365:eeb7d84e7ae5

Bump to b123. 2011-03-21 Andrew John Hughes <ahughes@redhat.com> * patches/4964490-generify_hotspot_jdi.patch: Removed, in IcedTea tree. * patches/hotspot/default/icedtea-includedb.patch, * patches/no-precompiled.patch: Removed, obsolete with b123 HotSpot. * patches/icedtea-ssl.patch: Old unneeded patch from GNU Crypto days. * Makefile.am: (OPENJDK_VERSION): Bump to b123. (CORBA_CHANGESET): Updated. (HOTSPOT_CHANGESET): Likewise. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (CORBA_SHA256SUM): Likewise. (HOTSPOT_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. (ICEDTEA_PATCHES): Remove dropped patches. * generated/java/nio/DirectByteBuffer.java, * generated/java/nio/DirectByteBufferR.java: Regenerated for b123. * patches/boot/demos.patch: Regenerated. * patches/boot/ecj-diamond.patch, * patches/boot/ecj-stringswitch.patch: Extended with new cases. * patches/boot/revert-6973616.patch, * patches/hotspot/default/icedtea-gcc-suffix.patch, * patches/hotspot/default/icedtea-sparc-trapsfix.patch, * patches/hotspot/default/icedtea-text-relocations.patch, * patches/icedtea-freetypeversion.patch, * patches/icedtea-javafiles.patch, * patches/icedtea-lc_ctype.patch, * patches/icedtea-signed-types.patch, * patches/icedtea-systemtap.patch: Regenerated.
author Andrew John Hughes <ahughes@redhat.com>
date Mon, 21 Mar 2011 20:47:22 +0000
parents 0811a305cdb3
children 7f137bd40e46
files ChangeLog Makefile.am generated/java/nio/DirectByteBuffer.java generated/java/nio/DirectByteBufferR.java patches/4964490-generify_hotspot_jdi.patch patches/boot/demos.patch patches/boot/ecj-diamond.patch patches/boot/ecj-stringswitch.patch patches/boot/revert-6973616.patch patches/hotspot/default/icedtea-gcc-suffix.patch patches/hotspot/default/icedtea-includedb.patch patches/hotspot/default/icedtea-sparc-trapsfix.patch patches/hotspot/default/icedtea-text-relocations.patch patches/icedtea-freetypeversion.patch patches/icedtea-javafiles.patch patches/icedtea-lc_ctype.patch patches/icedtea-signed-types.patch patches/icedtea-ssl.patch patches/icedtea-systemtap.patch patches/no-precompiled.patch
diffstat 20 files changed, 709 insertions(+), 906 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon Mar 14 21:22:03 2011 +0000
+++ b/ChangeLog	Mon Mar 21 20:47:22 2011 +0000
@@ -1,3 +1,48 @@
+2011-03-21  Andrew John Hughes  <ahughes@redhat.com>
+
+	* patches/4964490-generify_hotspot_jdi.patch:
+	Removed, in IcedTea tree.
+	* patches/hotspot/default/icedtea-includedb.patch,
+	* patches/no-precompiled.patch:
+	Removed, obsolete with b123 HotSpot.
+	* patches/icedtea-ssl.patch:
+	Old unneeded patch from GNU Crypto days.
+	* Makefile.am:
+	(OPENJDK_VERSION): Bump to b123.
+	(CORBA_CHANGESET): Updated.
+	(HOTSPOT_CHANGESET): Likewise.
+	(JAXP_CHANGESET): Likewise.
+	(JAXWS_CHANGESET): Likewise.
+	(JDK_CHANGESET): Likewise.
+	(LANGTOOLS_CHANGESET): Likewise.
+	(OPENJDK_CHANGESET): Likewise.
+	(CORBA_SHA256SUM): Likewise.
+	(HOTSPOT_SHA256SUM): Likewise.
+	(JAXP_SHA256SUM): Likewise.
+	(JAXWS_SHA256SUM): Likewise.
+	(JDK_SHA256SUM): Likewise.
+	(LANGTOOLS_SHA256SUM): Likewise.
+	(OPENJDK_SHA256SUM): Likewise.
+	(ICEDTEA_PATCHES): Remove dropped patches.
+	* generated/java/nio/DirectByteBuffer.java,
+	* generated/java/nio/DirectByteBufferR.java:
+	Regenerated for b123.
+	* patches/boot/demos.patch:
+	Regenerated.
+	* patches/boot/ecj-diamond.patch,
+	* patches/boot/ecj-stringswitch.patch:
+	Extended with new cases.
+	* patches/boot/revert-6973616.patch,
+	* patches/hotspot/default/icedtea-gcc-suffix.patch,
+	* patches/hotspot/default/icedtea-sparc-trapsfix.patch,
+	* patches/hotspot/default/icedtea-text-relocations.patch,
+	* patches/icedtea-freetypeversion.patch,
+	* patches/icedtea-javafiles.patch,
+	* patches/icedtea-lc_ctype.patch,
+	* patches/icedtea-signed-types.patch,
+	* patches/icedtea-systemtap.patch:
+	Regenerated.
+
 2011-03-14  Andrew John Hughes  <ahughes@redhat.com>
 
 	Perform minimal compilation prior to bootstrap
--- a/Makefile.am	Mon Mar 14 21:22:03 2011 +0000
+++ b/Makefile.am	Mon Mar 21 20:47:22 2011 +0000
@@ -1,22 +1,22 @@
 # Dependencies
 
-OPENJDK_VERSION = b117
+OPENJDK_VERSION = b123
 
-CORBA_CHANGESET = 06146786b141
-HOTSPOT_CHANGESET = 81685aa89446
-JAXP_CHANGESET  = 43658f98c582
-JAXWS_CHANGESET = f3444af18aff
-JDK_CHANGESET = e7fc51780596
-LANGTOOLS_CHANGESET = fdf1b74d3437
-OPENJDK_CHANGESET = c94d1673451e
+CORBA_CHANGESET = eac2b25431d9
+HOTSPOT_CHANGESET = e452443363a7
+JAXP_CHANGESET  = 17aa584100e9
+JAXWS_CHANGESET = 98bca2ec154b
+JDK_CHANGESET = e251bf6cbfb4
+LANGTOOLS_CHANGESET = a75f9777ae63
+OPENJDK_CHANGESET = 9bf0526ea1a0
 
-CORBA_SHA256SUM = 8d5a566e2d51d791d75f1ff25d5ae499317ec9391ed6bbc86eef483d15551d55
-HOTSPOT_SHA256SUM = 7ca6831eb7505c21b8607c7cf8d12cb182fca21c3a40c4696db737d56d80e54b
-JAXP_SHA256SUM = e0aa77b166b30d4d4052110956da831c59c43e22f8d6feeac62a06775bb083b6
-JAXWS_SHA256SUM = ff4124f3765ac5ebac5ecfd0391cb2a54857d80ac7f967f60630ce0879cfd1f4
-JDK_SHA256SUM = 0a01f5c43c8ef895addbc6c75adf4046d200c7a0d95d8056fa4f127a1b87feec
-LANGTOOLS_SHA256SUM = d200c9bcf1c1805e0800a8cd8017e99ff6d12db14a1fcca8e9b67c59dc5ed448
-OPENJDK_SHA256SUM = d7a3a531f0e064898e511f08f1127447b9171adce21ae4cecb3bca84b3f7b531
+CORBA_SHA256SUM = 106b6ff3765db0d608a7e5542a7b606fe10a2c1ebb155b866aef09f88ce481a7
+HOTSPOT_SHA256SUM = 045f86a3ccd383bde0be5d1f213d5d0165f3e30006081253c86a4545f85071a2
+JAXP_SHA256SUM = 009baa056f2b01e313470b71542b40baab511e179b63decca00b16081e6730bd
+JAXWS_SHA256SUM = 5990beb8e8f2144838d52f0948b088bf74ae3ddd748b996ddbb7e7ff1605389b
+JDK_SHA256SUM = 32f2d2172020046a671cca94fbe647bc9fd1af350f82090ca6edaf9ad2a537dc
+LANGTOOLS_SHA256SUM = c60849a838df72cb7b95562a97af75fa1e3e56fcc15678885a8e154463df8417
+OPENJDK_SHA256SUM = 33a62959bc1a553299983c90ffc2c3ac724ff42300eb1bb4cbc53907ede4635b
 
 CACAO_VERSION = e321b101a9ee
 CACAO_SHA256SUM = 46bc5b6212c199dc4a3dbebe6386fe15a8248625a5dffa17115aab394a298444
@@ -235,7 +235,6 @@
 
 ICEDTEA_PATCHES = \
 	patches/hotspot/$(HSBUILD)/icedtea-text-relocations.patch \
-	patches/icedtea-ssl.patch \
 	patches/icedtea-rmi_amd64.patch \
 	patches/icedtea-tools.patch \
 	patches/icedtea-demos.patch \
@@ -275,17 +274,14 @@
         patches/security/icedtea-6592792.patch \
         patches/security/icedtea-6733959.patch \
         patches/security/icedtea-6755943.patch \
-	patches/hotspot/$(HSBUILD)/icedtea-includedb.patch \
 	patches/icedtea-demo-swingapplet.patch \
 	patches/icedtea-jvmtiEnv.patch \
 	patches/icedtea-disable-intree-ec.patch \
 	patches/icedtea-sources.patch \
-	patches/no-precompiled.patch \
 	patches/parisc.patch \
 	patches/sh4-support.patch \
 	patches/jtreg-httpTest.patch \
-	patches/icedtea-update-bootclasspath.patch \
-	patches/4964490-generify_hotspot_jdi.patch
+	patches/icedtea-update-bootclasspath.patch
 
 # Conditional patches
 
--- a/generated/java/nio/DirectByteBuffer.java	Mon Mar 14 21:22:03 2011 +0000
+++ b/generated/java/nio/DirectByteBuffer.java	Mon Mar 21 20:47:22 2011 +0000
@@ -1,12 +1,12 @@
 /*
- * Copyright 2000-2005 Sun Microsystems, Inc.  All Rights Reserved.
+ * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Sun designates this
+ * published by the Free Software Foundation.  Oracle designates this
  * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
+ * by Oracle in the LICENSE file that accompanied this code.
  *
  * This code is distributed in the hope that it will be useful, but WITHOUT
  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@@ -18,19 +18,20 @@
  * 2 along with this work; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
  */
 
 // -- This file was mechanically generated: Do not edit! -- //
 
 package java.nio;
 
+import java.io.FileDescriptor;
 import sun.misc.Cleaner;
 import sun.misc.Unsafe;
+import sun.misc.VM;
 import sun.nio.ch.DirectBuffer;
-import sun.nio.ch.FileChannelImpl;
 
 
 class DirectByteBuffer
@@ -114,9 +115,10 @@
     //
     DirectByteBuffer(int cap) {                   // package-private
 
-        super(-1, 0, cap, cap, false);
+        super(-1, 0, cap, cap);
+        boolean pa = VM.isDirectMemoryPageAligned();
         int ps = Bits.pageSize();
-        int size = cap + ps;
+        long size = Math.max(1L, (long)cap + (pa ? ps : 0));
         Bits.reserveMemory(size, cap);
 
         long base = 0;
@@ -127,7 +129,7 @@
             throw x;
         }
         unsafe.setMemory(base, size, (byte) 0);
-        if (base % ps != 0) {
+        if (pa && (base % ps != 0)) {
             // Round up to page boundary
             address = base + ps - (base & (ps - 1));
         } else {
@@ -144,7 +146,7 @@
     // Invoked only by JNI: NewDirectByteBuffer(void*, long)
     //
     private DirectByteBuffer(long addr, int cap) {
-        super(-1, 0, cap, cap, false);
+        super(-1, 0, cap, cap);
         address = addr;
         cleaner = null;
     }
@@ -153,9 +155,12 @@
 
     // For memory-mapped buffers -- invoked by FileChannelImpl via reflection
     //
-    protected DirectByteBuffer(int cap, long addr, Runnable unmapper) {
+    protected DirectByteBuffer(int cap, long addr,
+                                     FileDescriptor fd,
+                                     Runnable unmapper)
+    {
 
-        super(-1, 0, cap, cap, true);
+        super(-1, 0, cap, cap, fd);
         address = addr;
         viewedBuffer = null;
         cleaner = Cleaner.create(this, unmapper);
@@ -365,7 +370,7 @@
         unsafe.copyMemory(ix(pos), ix(0), rem << 0);
         position(rem);
         limit(capacity());
-	discardMark();
+        discardMark();
         return this;
 
 
@@ -441,6 +446,8 @@
 
 
 
+
+
     byte _get(int i) {                          // package-private
         return unsafe.getByte(address + i);
     }
--- a/generated/java/nio/DirectByteBufferR.java	Mon Mar 14 21:22:03 2011 +0000
+++ b/generated/java/nio/DirectByteBufferR.java	Mon Mar 21 20:47:22 2011 +0000
@@ -1,12 +1,12 @@
 /*
- * Copyright 2000-2005 Sun Microsystems, Inc.  All Rights Reserved.
+ * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Sun designates this
+ * published by the Free Software Foundation.  Oracle designates this
  * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
+ * by Oracle in the LICENSE file that accompanied this code.
  *
  * This code is distributed in the hope that it will be useful, but WITHOUT
  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@@ -18,19 +18,20 @@
  * 2 along with this work; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
  */
 
 // -- This file was mechanically generated: Do not edit! -- //
 
 package java.nio;
 
+import java.io.FileDescriptor;
 import sun.misc.Cleaner;
 import sun.misc.Unsafe;
+import sun.misc.VM;
 import sun.nio.ch.DirectBuffer;
-import sun.nio.ch.FileChannelImpl;
 
 
 class DirectByteBufferR
@@ -135,6 +136,7 @@
 
 
 
+
         super(cap);
 
     }
@@ -153,14 +155,17 @@
 
     // For memory-mapped buffers -- invoked by FileChannelImpl via reflection
     //
-    protected DirectByteBufferR(int cap, long addr, Runnable unmapper) {
+    protected DirectByteBufferR(int cap, long addr,
+                                     FileDescriptor fd,
+                                     Runnable unmapper)
+    {
 
 
 
 
 
 
-        super(cap, addr, unmapper);
+        super(cap, addr, fd, unmapper);
 
     }
 
@@ -441,6 +446,8 @@
 
 
 
+
+
     byte _get(int i) {                          // package-private
         return unsafe.getByte(address + i);
     }
--- a/patches/4964490-generify_hotspot_jdi.patch	Mon Mar 14 21:22:03 2011 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,274 +0,0 @@
-# HG changeset patch
-# User andrew
-# Date 1300124050 0
-# Node ID e452443363a7f9dcff60404a0ef0fa5369380ddd
-# Parent  7f338a5e5e66b24a3dd82c57c8d1847e5c6f3878
-4964490: Generify HotSpot JDI implementation
-Summary: Fix errors produced by removing -source/-target 1.4 from SA build.
-
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/HelloWorld.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/HelloWorld.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/HelloWorld.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -55,7 +55,7 @@
-     synchronized(lock) {
-       if (useMethodInvoke) {
-         try {
--          Method method = HelloWorld.class.getMethod("e", null);
-+          Method method = HelloWorld.class.getMethod("e");
-           Integer result = (Integer) method.invoke(null, new Object[0]);
-           return result.intValue();
-         }
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/ByteValueImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/ByteValueImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/ByteValueImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -52,12 +52,10 @@
-         return intValue();
-     }
- 
--    public int compareTo(Object obj) {
--        byte other = ((ByteValue)obj).value();
--        return value() - other;
-+    public int compareTo(ByteValue byteVal) {
-+        return value() - byteVal.value();
-     }
- 
--
-     public Type type() {
-         return vm.theByteType();
-     }
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/CharValueImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/CharValueImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/CharValueImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -52,9 +52,8 @@
-         return intValue();
-     }
- 
--    public int compareTo(Object obj) {
--        char other = ((CharValue)obj).value();
--        return value() - other;
-+    public int compareTo(CharValue charVal) {
-+        return value() - charVal.value();
-     }
- 
-     public Type type() {
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/ConnectorImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/ConnectorImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/ConnectorImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -186,7 +186,7 @@
-         // assert isVMVersionMismatch(throwable), "not a VMVersionMismatch"
-         Class expClass = throwable.getClass();
-         Method targetVersionMethod = expClass.getMethod("getTargetVersion", new Class[0]);
--        return (String) targetVersionMethod.invoke(throwable, null);
-+        return (String) targetVersionMethod.invoke(throwable);
-     }
- 
-     /** If the causal chain has a sun.jvm.hotspot.runtime.VMVersionMismatchException,
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/DoubleValueImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/DoubleValueImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/DoubleValueImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -45,8 +45,8 @@
-         }
-     }
- 
--    public int compareTo(Object obj) {
--        double other = ((DoubleValue)obj).value();
-+    public int compareTo(DoubleValue doubleVal) {
-+        double other = doubleVal.value();
-         if (value() < other) {
-             return -1;
-         } else if (value() == other) {
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/FieldImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/FieldImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/FieldImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -145,8 +145,7 @@
-     }
- 
-     // From interface Comparable
--    public int compareTo(Object object) {
--        Field field = (Field)object;
-+    public int compareTo(Field field) {
-         ReferenceTypeImpl declaringType = (ReferenceTypeImpl)declaringType();
-         int rc = declaringType.compareTo(field.declaringType());
-         if (rc == 0) {
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/FloatValueImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/FloatValueImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/FloatValueImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -52,8 +52,8 @@
-         return intValue();
-     }
- 
--    public int compareTo(Object obj) {
--        float other = ((FloatValue)obj).value();
-+    public int compareTo(FloatValue floatVal) {
-+        float other = floatVal.value();
-         if (value() < other) {
-             return -1;
-         } else if (value() == other) {
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/IntegerValueImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/IntegerValueImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/IntegerValueImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -52,9 +52,8 @@
-         return intValue();
-     }
- 
--    public int compareTo(Object obj) {
--        int other = ((IntegerValue)obj).value();
--        return value() - other;
-+    public int compareTo(IntegerValue integerVal) {
-+        return value() - integerVal.value();
-     }
- 
-     public Type type() {
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/LocalVariableImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/LocalVariableImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/LocalVariableImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -67,8 +67,8 @@
-         return (int)method.hashCode() + slot();
-     }
- 
--    public int compareTo(Object object) {
--        LocalVariableImpl other = (LocalVariableImpl)object;
-+    public int compareTo(LocalVariable localVar) {
-+        LocalVariableImpl other = (LocalVariableImpl) localVar;
-         int rc = method.compareTo(other.method);
-         if (rc == 0) {
-             rc = slot() - other.slot();
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/LocationImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/LocationImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/LocationImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -78,8 +78,7 @@
-         return method().hashCode() + (int)codeIndex();
-     }
- 
--    public int compareTo(Object object) {
--        LocationImpl other = (LocationImpl)object;
-+    public int compareTo(Location other) {
-         int rc = method().compareTo(other.method());
-         if (rc == 0) {
-             long diff = codeIndex() - other.codeIndex();
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/LongValueImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/LongValueImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/LongValueImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -52,8 +52,8 @@
-         return intValue();
-     }
- 
--    public int compareTo(Object obj) {
--        long other = ((LongValue)obj).value();
-+    public int compareTo(LongValue longVal) {
-+        long other = longVal.value();
-         if (value() < other) {
-             return -1;
-         } else if (value() == other) {
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/MethodImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/MethodImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/MethodImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -200,8 +200,7 @@
-     }
- 
-     // From interface Comparable
--    public int compareTo(Object object) {
--      Method method = (Method)object;
-+    public int compareTo(Method method) {
-         ReferenceTypeImpl declaringType = (ReferenceTypeImpl)declaringType();
-          int rc = declaringType.compareTo(method.declaringType());
-          if (rc == 0) {
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/ReferenceTypeImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/ReferenceTypeImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/ReferenceTypeImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -99,7 +99,7 @@
-         return saKlass.hashCode();
-     }
- 
--    public int compareTo(Object object) {
-+    public int compareTo(ReferenceType refType) {
-         /*
-          * Note that it is critical that compareTo() == 0
-          * implies that equals() == true. Otherwise, TreeSet
-@@ -108,7 +108,7 @@
-          * (Classes of the same name loaded by different class loaders
-          * or in different VMs must not return 0).
-          */
--        ReferenceTypeImpl other = (ReferenceTypeImpl)object;
-+        ReferenceTypeImpl other = (ReferenceTypeImpl)refType;
-         int comp = name().compareTo(other.name());
-         if (comp == 0) {
-             Oop rf1 = ref();
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/ShortValueImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/ShortValueImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/ShortValueImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -52,9 +52,8 @@
-         return intValue();
-     }
- 
--    public int compareTo(Object obj) {
--        short other = ((ShortValue)obj).value();
--        return value() - other;
-+    public int compareTo(ShortValue shortVal) {
-+        return value() - shortVal.value();
-     }
- 
-     public Type type() {
-diff -r 7f338a5e5e66 -r e452443363a7 agent/src/share/classes/sun/jvm/hotspot/jdi/VirtualMachineImpl.java
---- openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/VirtualMachineImpl.java	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/agent/src/share/classes/sun/jvm/hotspot/jdi/VirtualMachineImpl.java	Mon Mar 14 17:34:10 2011 +0000
-@@ -798,12 +798,11 @@
-     }
- 
-     public String description() {
--        String[] versionParts = {"" + vmmgr.majorInterfaceVersion(),
--                                 "" + vmmgr.minorInterfaceVersion(),
--                                 name()};
-         return java.text.MessageFormat.format(java.util.ResourceBundle.
-                                               getBundle("com.sun.tools.jdi.resources.jdi").getString("version_format"),
--                                              versionParts);
-+                                              "" + vmmgr.majorInterfaceVersion(),
-+                                              "" + vmmgr.minorInterfaceVersion(),
-+                                              name());
-     }
- 
-     public String version() {
-diff -r 7f338a5e5e66 -r e452443363a7 make/linux/makefiles/sa.make
---- openjdk/hotspot/make/linux/makefiles/sa.make	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/make/linux/makefiles/sa.make	Mon Mar 14 17:34:10 2011 +0000
-@@ -97,8 +97,8 @@
- 	$(foreach file,$(AGENT_FILES1),$(shell echo $(file) >> $(AGENT_FILES1_LIST)))
- 	$(foreach file,$(AGENT_FILES2),$(shell echo $(file) >> $(AGENT_FILES2_LIST)))
- 	
--	$(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES1_LIST)
--	$(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES2_LIST)
-+	$(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES1_LIST)
-+	$(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES2_LIST)
- 	
- 	$(QUIETLY) $(REMOTE) $(COMPILE.RMIC)  -classpath $(SA_CLASSDIR) -d $(SA_CLASSDIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer
- 	$(QUIETLY) echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES)
-diff -r 7f338a5e5e66 -r e452443363a7 make/solaris/makefiles/sa.make
---- openjdk/hotspot/make/solaris/makefiles/sa.make	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/make/solaris/makefiles/sa.make	Mon Mar 14 17:34:10 2011 +0000
-@@ -88,8 +88,8 @@
- 	$(foreach file,$(AGENT_FILES1),$(shell echo $(file) >> $(AGENT_FILES1_LIST)))
- 	$(foreach file,$(AGENT_FILES2),$(shell echo $(file) >> $(AGENT_FILES2_LIST)))
- 	
--	$(QUIETLY) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES1_LIST)
--	$(QUIETLY) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES2_LIST)
-+	$(QUIETLY) $(COMPILE.JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES1_LIST)
-+	$(QUIETLY) $(COMPILE.JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES2_LIST)
- 	
- 	$(QUIETLY) $(COMPILE.RMIC)  -classpath $(SA_CLASSDIR) -d $(SA_CLASSDIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer
- 	$(QUIETLY) echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES)
-diff -r 7f338a5e5e66 -r e452443363a7 make/windows/makefiles/sa.make
---- openjdk/hotspot/make/windows/makefiles/sa.make	Mon Jan 10 16:57:36 2011 +0000
-+++ openjdk/hotspot/make/windows/makefiles/sa.make	Mon Mar 14 17:34:10 2011 +0000
-@@ -55,9 +55,9 @@
- $(GENERATED)\sa-jdi.jar: $(AGENT_FILES1:/=\) $(AGENT_FILES2:/=\)
- 	@if not exist $(SA_CLASSDIR) mkdir $(SA_CLASSDIR)
- 	@echo ...Building sa-jdi.jar
--	@echo ...$(COMPILE_JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -d $(SA_CLASSDIR) ....
--	@$(COMPILE_JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) $(AGENT_FILES1:/=\)
--	@$(COMPILE_JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) $(AGENT_FILES2:/=\)
-+	@echo ...$(COMPILE_JAVAC) -classpath $(SA_CLASSPATH) -d $(SA_CLASSDIR) ....
-+	@$(COMPILE_JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) $(AGENT_FILES1:/=\)
-+	@$(COMPILE_JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) $(AGENT_FILES2:/=\)
- 	$(COMPILE_RMIC) -classpath $(SA_CLASSDIR) -d $(SA_CLASSDIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer
- 	$(QUIETLY) echo $(SA_BUILD_VERSION_PROP)> $(SA_PROPERTIES)
- 	$(QUIETLY) rm -f $(SA_CLASSDIR)/sun/jvm/hotspot/utilities/soql/sa.js
--- a/patches/boot/demos.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/boot/demos.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,7 +1,7 @@
-diff -Nru openjdk-boot.orig/jdk/make/common/Release.gmk openjdk-boot/jdk/make/common/Release.gmk
---- openjdk-boot.orig/jdk/make/common/Release.gmk	2010-05-04 13:14:46.000000000 +0100
-+++ openjdk-boot/jdk/make/common/Release.gmk	2010-05-04 13:23:41.000000000 +0100
-@@ -1038,16 +1038,6 @@
+diff -Nru openjdk.orig/jdk/make/common/Release.gmk openjdk/jdk/make/common/Release.gmk
+--- openjdk-boot.orig/jdk/make/common/Release.gmk	2011-03-16 20:59:31.000000000 +0000
++++ openjdk-boot/jdk/make/common/Release.gmk	2011-03-16 21:29:40.269191529 +0000
+@@ -1071,16 +1071,6 @@
  	$(CP) $(PLATFORM_SRC)/bin/java_md.h $(JDK_IMAGE_DIR)/src/launcher
  	$(CD) $(JDK_IMAGE_DIR)/src && $(ZIPEXE) -qr ../src.zip *
  	$(RM) -r $(JDK_IMAGE_DIR)/src
@@ -18,15 +18,15 @@
  ifneq ($(PLATFORM), windows)
  	$(call copy-man-pages,$(JDK_IMAGE_DIR),$(JDK_MAN_PAGES))
  endif # !windows
-diff -Nru openjdk-boot.orig/jdk/make/Makefile openjdk-boot/jdk/make/Makefile
---- openjdk-boot.orig/jdk/make/Makefile	2010-04-28 22:05:26.000000000 +0100
-+++ openjdk-boot/jdk/make/Makefile	2010-05-04 13:23:57.000000000 +0100
-@@ -242,7 +242,7 @@
+diff -Nru openjdk.orig/jdk/make/Makefile openjdk/jdk/make/Makefile
+--- openjdk-boot.orig/jdk/make/Makefile	2011-03-14 22:10:30.000000000 +0000
++++ openjdk-boot/jdk/make/Makefile	2011-03-16 21:29:40.269191529 +0000
+@@ -238,7 +238,7 @@
  
  SUBDIRS       = tools java javax sun com
  SUBDIRS_tools = launchers
 -SUBDIRS_misc  = org sunw jpda mkdemo mksample
 +SUBDIRS_misc  = org sunw jpda mksample
  
- include $(BUILDDIR)/common/Subdirs.gmk
- 
+ # Alternate classes implementation
+ ifndef OPENJDK
--- a/patches/boot/ecj-diamond.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/boot/ecj-diamond.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,6 +1,390 @@
-diff -r 917976e88f76 src/share/classes/sun/nio/cs/AbstractCharsetProvider.java
---- openjdk-boot.orig/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java	Mon Feb 22 15:16:55 2010 +0000
-+++ openjdk-boot/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java	Mon Feb 22 16:55:24 2010 +0000
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java	2011-03-14 22:10:30.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java	2011-03-16 22:41:33.034195793 +0000
+@@ -104,9 +104,9 @@
+     }
+ 
+     private static final byte[] noBytes = {};
+-    private static final Map<List<Attribute>, List<Attribute>> canonLists = new HashMap<>();
+-    private static final Map<Layout, Attribute> attributes = new HashMap<>();
+-    private static final Map<Layout, Attribute> standardDefs = new HashMap<>();
++    private static final Map<List<Attribute>, List<Attribute>> canonLists = new HashMap<List<Attribute>,List<Attribute>>();
++    private static final Map<Layout, Attribute> attributes = new HashMap<Layout, Attribute>();
++    private static final Map<Layout, Attribute> standardDefs = new HashMap<Layout, Attribute>();
+ 
+     // Canonicalized lists of trivial attrs (Deprecated, etc.)
+     // are used by trimToSize, in order to reduce footprint
+@@ -116,7 +116,7 @@
+         synchronized (canonLists) {
+             List<Attribute> cl = canonLists.get(al);
+             if (cl == null) {
+-                cl = new ArrayList<>(al.size());
++                cl = new ArrayList<Attribute>(al.size());
+                 cl.addAll(al);
+                 cl = Collections.unmodifiableList(cl);
+                 canonLists.put(al, cl);
+@@ -337,9 +337,9 @@
+ 
+         public void addAttribute(Attribute a) {
+             if (attributes == null)
+-                attributes = new ArrayList<>(3);
++                attributes = new ArrayList<Attribute>(3);
+             else if (!(attributes instanceof ArrayList))
+-                attributes = new ArrayList<>(attributes);  // unfreeze it
++                attributes = new ArrayList<Attribute>(attributes);  // unfreeze it
+             attributes.add(a);
+         }
+ 
+@@ -347,7 +347,7 @@
+             if (attributes == null)       return null;
+             if (!attributes.contains(a))  return null;
+             if (!(attributes instanceof ArrayList))
+-                attributes = new ArrayList<>(attributes);  // unfreeze it
++                attributes = new ArrayList<Attribute>(attributes);  // unfreeze it
+             attributes.remove(a);
+             return a;
+         }
+@@ -832,7 +832,7 @@
+     */
+     static //private
+     Layout.Element[] tokenizeLayout(Layout self, int curCble, String layout) {
+-        ArrayList<Layout.Element> col = new ArrayList<>(layout.length());
++        ArrayList<Layout.Element> col = new ArrayList<Layout.Element>(layout.length());
+         tokenizeLayout(self, curCble, layout, col);
+         Layout.Element[] res = new Layout.Element[col.size()];
+         col.toArray(res);
+@@ -897,7 +897,7 @@
+             case 'T': // union: 'T' any_int union_case* '(' ')' '[' body ']'
+                 kind = EK_UN;
+                 i = tokenizeSInt(e, layout, i);
+-                ArrayList<Layout.Element> cases = new ArrayList<>();
++                ArrayList<Layout.Element> cases = new ArrayList<Layout.Element>();
+                 for (;;) {
+                     // Keep parsing cases until we hit the default case.
+                     if (layout.charAt(i++) != '(')
+@@ -1051,7 +1051,7 @@
+     }
+     static //private
+     String[] splitBodies(String layout) {
+-        ArrayList<String> bodies = new ArrayList<>();
++        ArrayList<String> bodies = new ArrayList<String>();
+         // Parse several independent layout bodies:  "[foo][bar]...[baz]"
+         for (int i = 0; i < layout.length(); i++) {
+             if (layout.charAt(i++) != '[')
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java	2011-03-14 22:10:30.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java	2011-03-16 22:41:33.034195793 +0000
+@@ -916,7 +916,7 @@
+     public static
+     Index[] partition(Index ix, int[] keys) {
+         // %%% Should move this into class Index.
+-        ArrayList<List<Entry>> parts = new ArrayList<>();
++        ArrayList<List<Entry>> parts = new ArrayList<List<Entry>>();
+         Entry[] cpMap = ix.cpMap;
+         assert(keys.length == cpMap.length);
+         for (int i = 0; i < keys.length; i++) {
+@@ -927,7 +927,7 @@
+             }
+             List<Entry> part = parts.get(key);
+             if (part == null) {
+-                parts.set(key, part = new ArrayList<>());
++                parts.set(key, part = new ArrayList<Entry>());
+             }
+             part.add(cpMap[i]);
+         }
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java	2011-03-14 22:10:30.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java	2011-03-16 22:41:33.034195793 +0000
+@@ -59,7 +59,7 @@
+                 ResourceBundle.getBundle("com.sun.java.util.jar.pack.DriverResource");
+ 
+     public static void main(String[] ava) throws IOException {
+-        ArrayList<String> av = new ArrayList<>(Arrays.asList(ava));
++        ArrayList<String> av = new ArrayList<String>(Arrays.asList(ava));
+ 
+         boolean doPack   = true;
+         boolean doUnpack = false;
+@@ -82,7 +82,7 @@
+         }
+ 
+         // Collect engine properties here:
+-        HashMap<String,String> engProps = new HashMap<>();
++        HashMap<String,String> engProps = new HashMap<String,String>();
+         engProps.put(verboseProp, System.getProperty(verboseProp));
+ 
+         String optionMap;
+@@ -96,7 +96,7 @@
+         }
+ 
+         // Collect argument properties here:
+-        HashMap<String,String> avProps = new HashMap<>();
++        HashMap<String,String> avProps = new HashMap<String,String>();
+         try {
+             for (;;) {
+                 String state = parseCommandOptions(av, optionMap, avProps);
+@@ -515,7 +515,7 @@
+         String resultString = null;
+ 
+         // Convert options string into optLines dictionary.
+-        TreeMap<String,String[]> optmap = new TreeMap<>();
++        TreeMap<String,String[]> optmap = new TreeMap<String,String[]>();
+     loadOptmap:
+         for (String optline : options.split("\n")) {
+             String[] words = optline.split("\\p{Space}+");
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java	2011-03-14 22:10:30.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java	2011-03-16 22:41:33.034195793 +0000
+@@ -111,7 +111,7 @@
+     public static final Attribute.Layout attrSourceFileSpecial;
+     public static final Map attrDefs;
+     static {
+-        HashMap<Layout, Attribute> ad = new HashMap<>(3);
++        HashMap<Layout, Attribute> ad = new HashMap<Layout, Attribute>(3);
+         attrCodeEmpty = Attribute.define(ad, ATTR_CONTEXT_METHOD,
+                                          "Code", "").layout();
+         attrInnerClassesEmpty = Attribute.define(ad, ATTR_CONTEXT_CLASS,
+@@ -181,7 +181,7 @@
+         }
+     }
+ 
+-    ArrayList<Package.Class> classes = new ArrayList<>();
++    ArrayList<Package.Class> classes = new ArrayList<Package.Class>();
+ 
+     public List<Package.Class> getClasses() {
+         return classes;
+@@ -292,7 +292,7 @@
+             if (a != olda) {
+                 if (verbose > 2)
+                     Utils.log.fine("recoding obvious SourceFile="+obvious);
+-                List<Attribute> newAttrs = new ArrayList<>(getAttributes());
++                List<Attribute> newAttrs = new ArrayList<Attribute>(getAttributes());
+                 int where = newAttrs.indexOf(olda);
+                 newAttrs.set(where, a);
+                 setAttributes(newAttrs);
+@@ -341,7 +341,7 @@
+          *  with that of Package.this.allInnerClasses.
+          */
+         public List<InnerClass> computeGloballyImpliedICs() {
+-            HashSet<Entry> cpRefs = new HashSet<>();
++            HashSet<Entry> cpRefs = new HashSet<Entry>();
+             {   // This block temporarily displaces this.innerClasses.
+                 ArrayList<InnerClass> innerClassesSaved = innerClasses;
+                 innerClasses = null;  // ignore for the moment
+@@ -350,7 +350,7 @@
+             }
+             ConstantPool.completeReferencesIn(cpRefs, true);
+ 
+-            HashSet<Entry> icRefs = new HashSet<>();
++            HashSet<Entry> icRefs = new HashSet<Entry>();
+             for (Entry e : cpRefs) {
+                 // Restrict cpRefs to InnerClasses entries only.
+                 if (!(e instanceof ClassEntry))  continue;
+@@ -366,7 +366,7 @@
+             // This loop is structured this way so as to accumulate
+             // entries into impliedICs in an order which reflects
+             // the order of allInnerClasses.
+-            ArrayList<InnerClass> impliedICs = new ArrayList<>();
++            ArrayList<InnerClass> impliedICs = new ArrayList<InnerClass>();
+             for (InnerClass ic : allInnerClasses) {
+                 // This one is locally relevant if it describes
+                 // a member of the current class, or if the current
+@@ -409,8 +409,8 @@
+                 // Diff is A since I is empty.
+             }
+             // (I*A) is non-trivial
+-            HashSet<InnerClass> center = new HashSet<>(actualICs);
+-            center.retainAll(new HashSet<>(impliedICs));
++            HashSet<InnerClass> center = new HashSet<InnerClass>(actualICs);
++            center.retainAll(new HashSet<InnerClass>(impliedICs));
+             impliedICs.addAll(actualICs);
+             impliedICs.removeAll(center);
+             // Diff is now I^A = (I+A)-(I*A).
+@@ -539,7 +539,7 @@
+                 super(flags, descriptor);
+                 assert(!descriptor.isMethod());
+                 if (fields == null)
+-                    fields = new ArrayList<>();
++                    fields = new ArrayList<Field>();
+                 boolean added = fields.add(this);
+                 assert(added);
+                 order = fields.size();
+@@ -564,7 +564,7 @@
+                 super(flags, descriptor);
+                 assert(descriptor.isMethod());
+                 if (methods == null)
+-                    methods = new ArrayList<>();
++                    methods = new ArrayList<Method>();
+                 boolean added = methods.add(this);
+                 assert(added);
+             }
+@@ -734,14 +734,14 @@
+     }
+ 
+     // What non-class files are in this unit?
+-    ArrayList<File> files = new ArrayList<>();
++    ArrayList<File> files = new ArrayList<File>();
+ 
+     public List<File> getFiles() {
+         return files;
+     }
+ 
+     public List<File> getClassStubs() {
+-        ArrayList<File> classStubs = new ArrayList<>(classes.size());
++        ArrayList<File> classStubs = new ArrayList<File>(classes.size());
+         for (Class cls : classes) {
+             assert(cls.file.isClassStub());
+             classStubs.add(cls.file);
+@@ -860,7 +860,7 @@
+         public InputStream getInputStream() {
+             InputStream in = new ByteArrayInputStream(append.toByteArray());
+             if (prepend.size() == 0)  return in;
+-            ArrayList<InputStream> isa = new ArrayList<>(prepend.size()+1);
++            ArrayList<InputStream> isa = new ArrayList<InputStream>(prepend.size()+1);
+             for (Iterator i = prepend.iterator(); i.hasNext(); ) {
+                 byte[] bytes = (byte[]) i.next();
+                 isa.add(new ByteArrayInputStream(bytes));
+@@ -897,7 +897,7 @@
+     }
+ 
+     // Is there a globally declared table of inner classes?
+-    ArrayList<InnerClass> allInnerClasses = new ArrayList<>();
++    ArrayList<InnerClass> allInnerClasses = new ArrayList<InnerClass>();
+     HashMap<ClassEntry, InnerClass>   allInnerClassesByThis;
+ 
+     public
+@@ -912,7 +912,7 @@
+         allInnerClasses.addAll(ics);
+ 
+         // Make an index:
+-        allInnerClassesByThis = new HashMap<>(allInnerClasses.size());
++        allInnerClassesByThis = new HashMap<ClassEntry,InnerClass>(allInnerClasses.size());
+         for (InnerClass ic : allInnerClasses) {
+             Object pic = allInnerClassesByThis.put(ic.thisClass, ic);
+             assert(pic == null);  // caller must ensure key uniqueness!
+@@ -1309,7 +1309,7 @@
+ 
+     // Use this before writing the class files.
+     void ensureAllClassFiles() {
+-        HashSet<File> fileSet = new HashSet<>(files);
++        HashSet<File> fileSet = new HashSet<File>(files);
+         for (Class cls : classes) {
+             // Add to the end of ths list:
+             if (!fileSet.contains(cls.file))
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java	2010-09-14 16:01:38.000000000 +0100
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java	2011-03-16 22:41:33.034195793 +0000
+@@ -58,12 +58,12 @@
+     private final Map<String, MemberEntry> memberEntries;
+ 
+     TLGlobals() {
+-        utf8Entries = new HashMap<>();
+-        classEntries = new HashMap<>();
+-        literalEntries = new HashMap<>();
+-        signatureEntries = new HashMap<>();
+-        descriptorEntries = new HashMap<>();
+-        memberEntries = new HashMap<>();
++        utf8Entries = new HashMap<String,Utf8Entry>();
++        classEntries = new HashMap<String,ClassEntry>();
++        literalEntries = new HashMap<Object,LiteralEntry>();
++        signatureEntries = new HashMap<String,SignatureEntry>();
++        descriptorEntries = new HashMap<String,DescriptorEntry>();
++        memberEntries = new HashMap<String,MemberEntry>();
+         props = new PropMap();
+     }
+ 
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java	2011-03-14 22:10:30.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java	2011-03-16 22:41:33.034195793 +0000
+@@ -225,7 +225,7 @@
+             props.setProperty(java.util.jar.Pack200.Unpacker.PROGRESS,"50");
+             pkg.ensureAllClassFiles();
+             // Now write out the files.
+-            HashSet<Package.Class> classesToWrite = new HashSet<>(pkg.getClasses());
++            HashSet<Package.Class> classesToWrite = new HashSet<Package.Class>(pkg.getClasses());
+             for (Iterator i = pkg.getFiles().iterator(); i.hasNext(); ) {
+                 Package.File file = (Package.File) i.next();
+                 String name = file.nameString;
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java	2011-03-14 22:10:30.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java	2011-03-16 22:41:33.034195793 +0000
+@@ -132,7 +132,7 @@
+     // Keep a TLS point to the global data and environment.
+     // This makes it simpler to supply environmental options
+     // to the engine code, especially the native code.
+-    static final ThreadLocal<TLGlobals> currentInstance = new ThreadLocal<>();
++    static final ThreadLocal<TLGlobals> currentInstance = new ThreadLocal<TLGlobals>();
+ 
+     // convenience methods to access the TL globals
+     static TLGlobals getTLGlobals() {
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java	2010-11-12 01:20:48.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java	2011-03-16 22:41:33.034195793 +0000
+@@ -135,7 +135,7 @@
+             throw new ConfigurationException("DNS pseudo-URL required");
+         }
+ 
+-        List<String> servers = new ArrayList<>();
++        List<String> servers = new ArrayList<String>();
+ 
+         for (int i = 0; i < urls.length; i++) {
+             String server = urls[i].getHost();
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/io/CharacterEncoding.java openjdk-boot/jdk/src/share/classes/sun/io/CharacterEncoding.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/io/CharacterEncoding.java	2011-03-14 22:10:33.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/io/CharacterEncoding.java	2011-03-16 22:41:33.034195793 +0000
+@@ -54,7 +54,7 @@
+     private static volatile boolean installedAll;
+ 
+     static {
+-        aliasTable = new HashMap<>(460, 1.0f);                    /* MDA */
++        aliasTable = new HashMap<String,String>(460, 1.0f);                    /* MDA */
+ 
+         aliasTable.put("us-ascii",              "ASCII");
+         aliasTable.put("ascii",                 "ASCII");
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java openjdk-boot/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java	2010-08-27 19:16:11.000000000 +0100
++++ openjdk-boot/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java	2011-03-16 22:41:33.034195793 +0000
+@@ -52,7 +52,7 @@
+ 
+     // Per-thread soft cache of the last temporary context
+     private static ThreadLocal<SoftReference<ThreadContext>> contextRef =
+-            new ThreadLocal<>();
++            new ThreadLocal<SoftReference<ThreadContext>>();
+ 
+     // Simple class to encapsulate the temporary context
+     private static class ThreadContext {
+@@ -99,7 +99,7 @@
+ 
+         // new thread context needs to be created
+         if (thrCtxt == null) {
+-            final Hashtable<String,Object> env = new Hashtable<>();
++            final Hashtable<String,Object> env = new Hashtable<String,Object>();
+             env.put("java.naming.factory.initial",
+                     "com.sun.jndi.dns.DnsContextFactory");
+ 
+@@ -165,7 +165,7 @@
+                                       final String[] ids, int depth)
+             throws UnknownHostException
+     {
+-        ArrayList<String> results = new ArrayList<>();
++        ArrayList<String> results = new ArrayList<String>();
+         Attributes attrs;
+ 
+         // do the query
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java	2011-03-14 22:10:33.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java	2011-03-16 22:41:33.034195793 +0000
+@@ -111,7 +111,7 @@
+      * at the same time, then all but the first will block until
+      * the first completes its authentication.
+      */
+-    static private HashMap<String,Thread> requests = new HashMap<>();
++    static private HashMap<String,Thread> requests = new HashMap<String,Thread>();
+ 
+     /* check if a request for this destination is in progress
+      * return false immediately if not. Otherwise block until
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java openjdk-boot/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java	2011-03-14 22:10:33.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java	2011-03-16 22:41:33.026195665 +0000
 @@ -49,22 +49,22 @@
      /* Maps canonical names to class names
       */
@@ -37,33 +421,9 @@
          }
  
          return new Iterator<Charset>() {
-diff -r a9b4fde406d4 src/share/classes/sun/io/CharacterEncoding.java
---- openjdk-boot.orig/jdk/src/share/classes/sun/io/CharacterEncoding.java	Thu Feb 18 13:31:46 2010 -0800
-+++ openjdk-boot/jdk/src/share/classes/sun/io/CharacterEncoding.java	Wed Feb 24 11:10:05 2010 +0000
-@@ -54,7 +54,7 @@
-     private static volatile boolean installedAll;
- 
-     static {
--        aliasTable = new HashMap<>(460, 1.0f);                    /* MDA */
-+        aliasTable = new HashMap<String,String>(460, 1.0f);                    /* MDA */
- 
-         aliasTable.put("us-ascii",              "ASCII");
-         aliasTable.put("ascii",                 "ASCII");
-diff -r c1cee45daf4d src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java
---- openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java	Wed Apr 28 22:15:05 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java	Tue May 04 18:21:07 2010 +0100
-@@ -111,7 +111,7 @@
-      * at the same time, then all but the first will block until
-      * the first completes its authentication.
-      */
--    static private HashMap<String,Thread> requests = new HashMap<>();
-+    static private HashMap<String,Thread> requests = new HashMap<String,Thread>();
- 
-     /* check if a request for this destination is in progress
-      * return false immediately if not. Otherwise block until
-diff -r c1cee45daf4d src/share/classes/sun/security/provider/JavaKeyStore.java
---- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java	Wed Apr 28 22:15:05 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java	Wed May 05 11:35:35 2010 +0100
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java openjdk-boot/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java	2011-03-14 22:10:33.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java	2011-03-16 22:41:33.034195793 +0000
 @@ -683,7 +683,7 @@
                      // Read the certificate chain
                      int numOfCerts = dis.readInt();
@@ -74,8 +434,8 @@
                          for (int j = 0; j < numOfCerts; j++) {
                              if (xVersion == 2) {
 diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java openjdk-boot/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java
---- openjdk-boot.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java	2010-09-01 22:07:18.059282202 +0100
-+++ openjdk-boot/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java	2010-09-01 22:07:50.032515630 +0100
+--- openjdk-boot.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java	2010-08-27 19:16:11.000000000 +0100
++++ openjdk-boot/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java	2011-03-16 22:41:33.034195793 +0000
 @@ -60,7 +60,7 @@
                                            int maxperkeyword,
                                            int maxkeywords)
@@ -94,39 +454,9 @@
          String domain = fallbackDomain0();
          if (domain != null && domain.length() > 0) {
              sl.add(domain);
-diff -r a094068f4c7b src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java
---- openjdk-boot.orig/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java	Fri Aug 27 19:01:53 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java	Mon Sep 06 17:03:29 2010 +0100
-@@ -52,7 +52,7 @@
- 
-     // Per-thread soft cache of the last temporary context
-     private static ThreadLocal<SoftReference<ThreadContext>> contextRef =
--            new ThreadLocal<>();
-+            new ThreadLocal<SoftReference<ThreadContext>>();
- 
-     // Simple class to encapsulate the temporary context
-     private static class ThreadContext {
-@@ -99,7 +99,7 @@
- 
-         // new thread context needs to be created
-         if (thrCtxt == null) {
--            final Hashtable<String,Object> env = new Hashtable<>();
-+            final Hashtable<String,Object> env = new Hashtable<String,Object>();
-             env.put("java.naming.factory.initial",
-                     "com.sun.jndi.dns.DnsContextFactory");
- 
-@@ -165,7 +165,7 @@
-                                       final String[] ids, int depth)
-             throws UnknownHostException
-     {
--        ArrayList<String> results = new ArrayList<>();
-+        ArrayList<String> results = new ArrayList<String>();
-         Attributes attrs;
- 
-         // do the query
-diff -r a094068f4c7b src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java
---- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java	Fri Aug 27 19:01:53 2010 +0100
-+++ openjdk-boot/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java	Mon Sep 06 18:44:51 2010 +0100
+diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java openjdk-boot/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java
+--- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java	2011-03-14 22:10:33.000000000 +0000
++++ openjdk-boot/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java	2011-03-16 22:41:33.034195793 +0000
 @@ -153,12 +153,12 @@
  
      static {
@@ -144,345 +474,51 @@
  
          if (!(isEncodingSupported("US-ASCII") &&
                isEncodingSupported("ISO-8859-1")))
-diff -r a094068f4c7b src/share/classes/com/sun/jndi/dns/DnsContextFactory.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java	Fri Aug 27 19:01:53 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java	Mon Sep 06 18:50:12 2010 +0100
-@@ -132,7 +132,7 @@
-             throw new ConfigurationException("DNS pseudo-URL required");
-         }
- 
--        List<String> servers = new ArrayList<>();
-+        List<String> servers = new ArrayList<String>();
- 
-         for (int i = 0; i < urls.length; i++) {
-             String server = urls[i].getHost();
-diff -r 240d4d3f2db7 src/share/classes/com/sun/java/util/jar/pack/Attribute.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java	Tue Sep 14 17:29:58 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java	Wed Sep 15 00:00:17 2010 +0100
-@@ -96,9 +96,9 @@
-     }
- 
-     private static final byte[] noBytes = {};
--    private static final Map<List<Attribute>, List<Attribute>> canonLists = new HashMap<>();
--    private static final Map<Layout, Attribute> attributes = new HashMap<>();
--    private static final Map<Layout, Attribute> standardDefs = new HashMap<>();
-+    private static final Map<List<Attribute>, List<Attribute>> canonLists = new HashMap<List<Attribute>,List<Attribute>>();
-+    private static final Map<Layout, Attribute> attributes = new HashMap<Layout, Attribute>();
-+    private static final Map<Layout, Attribute> standardDefs = new HashMap<Layout, Attribute>();
- 
-     // Canonicalized lists of trivial attrs (Deprecated, etc.)
-     // are used by trimToSize, in order to reduce footprint
-@@ -108,7 +108,7 @@
-         synchronized (canonLists) {
-             List<Attribute> cl = canonLists.get(al);
-             if (cl == null) {
--                cl = new ArrayList<>(al.size());
-+                cl = new ArrayList<Attribute>(al.size());
-                 cl.addAll(al);
-                 cl = Collections.unmodifiableList(cl);
-                 canonLists.put(al, cl);
-@@ -329,9 +329,9 @@
- 
-         public void addAttribute(Attribute a) {
-             if (attributes == null)
--                attributes = new ArrayList<>(3);
-+                attributes = new ArrayList<Attribute>(3);
-             else if (!(attributes instanceof ArrayList))
--                attributes = new ArrayList<>(attributes);  // unfreeze it
-+                attributes = new ArrayList<Attribute>(attributes);  // unfreeze it
-             attributes.add(a);
-         }
- 
-@@ -339,7 +339,7 @@
-             if (attributes == null)       return null;
-             if (!attributes.contains(a))  return null;
-             if (!(attributes instanceof ArrayList))
--                attributes = new ArrayList<>(attributes);  // unfreeze it
-+                attributes = new ArrayList<Attribute>(attributes);  // unfreeze it
-             attributes.remove(a);
-             return a;
-         }
-@@ -824,7 +824,7 @@
-     */
-     static //private
-     Layout.Element[] tokenizeLayout(Layout self, int curCble, String layout) {
--        ArrayList<Layout.Element> col = new ArrayList<>(layout.length());
-+        ArrayList<Layout.Element> col = new ArrayList<Layout.Element>(layout.length());
-         tokenizeLayout(self, curCble, layout, col);
-         Layout.Element[] res = new Layout.Element[col.size()];
-         col.toArray(res);
-@@ -889,7 +889,7 @@
-             case 'T': // union: 'T' any_int union_case* '(' ')' '[' body ']'
-                 kind = EK_UN;
-                 i = tokenizeSInt(e, layout, i);
--                ArrayList<Layout.Element> cases = new ArrayList<>();
-+                ArrayList<Layout.Element> cases = new ArrayList<Layout.Element>();
-                 for (;;) {
-                     // Keep parsing cases until we hit the default case.
-                     if (layout.charAt(i++) != '(')
-@@ -1043,7 +1043,7 @@
-     }
-     static //private
-     String[] splitBodies(String layout) {
--        ArrayList<String> bodies = new ArrayList<>();
-+        ArrayList<String> bodies = new ArrayList<String>();
-         // Parse several independent layout bodies:  "[foo][bar]...[baz]"
-         for (int i = 0; i < layout.length(); i++) {
-             if (layout.charAt(i++) != '[')
-diff -r 240d4d3f2db7 src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java	Tue Sep 14 17:29:58 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java	Wed Sep 15 00:00:17 2010 +0100
-@@ -909,7 +909,7 @@
-     public static
-     Index[] partition(Index ix, int[] keys) {
-         // %%% Should move this into class Index.
--        ArrayList<List<Entry>> parts = new ArrayList<>();
-+        ArrayList<List<Entry>> parts = new ArrayList<List<Entry>>();
-         Entry[] cpMap = ix.cpMap;
-         assert(keys.length == cpMap.length);
-         for (int i = 0; i < keys.length; i++) {
-@@ -920,7 +920,7 @@
-             }
-             List<Entry> part = parts.get(key);
-             if (part == null) {
--                parts.set(key, part = new ArrayList<>());
-+                parts.set(key, part = new ArrayList<Entry>());
-             }
-             part.add(cpMap[i]);
-         }
-diff -r 240d4d3f2db7 src/share/classes/com/sun/java/util/jar/pack/Package.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java	Tue Sep 14 17:29:58 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java	Wed Sep 15 00:00:17 2010 +0100
-@@ -90,7 +90,7 @@
-     public static final Attribute.Layout attrSourceFileSpecial;
-     public static final Map attrDefs;
-     static {
--        HashMap<Layout, Attribute> ad = new HashMap<>(3);
-+        HashMap<Layout, Attribute> ad = new HashMap<Layout, Attribute>(3);
-         attrCodeEmpty = Attribute.define(ad, ATTR_CONTEXT_METHOD,
-                                          "Code", "").layout();
-         attrInnerClassesEmpty = Attribute.define(ad, ATTR_CONTEXT_CLASS,
-@@ -160,7 +160,7 @@
-         }
-     }
- 
--    ArrayList<Package.Class> classes = new ArrayList<>();
-+    ArrayList<Package.Class> classes = new ArrayList<Package.Class>();
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/zip/ZipFile.java openjdk-boot/jdk/src/share/classes/java/util/zip/ZipFile.java
+--- openjdk-boot.orig/jdk/src/share/classes/java/util/zip/ZipFile.java	2011-03-16 23:12:35.811715556 +0000
++++ openjdk-boot/jdk/src/share/classes/java/util/zip/ZipFile.java	2011-03-16 23:12:50.331945019 +0000
+@@ -315,7 +315,7 @@
+     private static native void freeEntry(long jzfile, long jzentry);
  
-     public List<Package.Class> getClasses() {
-         return classes;
-@@ -271,7 +271,7 @@
-             if (a != olda) {
-                 if (verbose > 2)
-                     Utils.log.fine("recoding obvious SourceFile="+obvious);
--                List<Attribute> newAttrs = new ArrayList<>(getAttributes());
-+                List<Attribute> newAttrs = new ArrayList<Attribute>(getAttributes());
-                 int where = newAttrs.indexOf(olda);
-                 newAttrs.set(where, a);
-                 setAttributes(newAttrs);
-@@ -320,7 +320,7 @@
-          *  with that of Package.this.allInnerClasses.
-          */
-         public List<InnerClass> computeGloballyImpliedICs() {
--            HashSet<Entry> cpRefs = new HashSet<>();
-+            HashSet<Entry> cpRefs = new HashSet<Entry>();
-             {   // This block temporarily displaces this.innerClasses.
-                 ArrayList<InnerClass> innerClassesSaved = innerClasses;
-                 innerClasses = null;  // ignore for the moment
-@@ -329,7 +329,7 @@
-             }
-             ConstantPool.completeReferencesIn(cpRefs, true);
+     // the outstanding inputstreams that need to be closed.
+-    private Set<InputStream> streams = new HashSet<>();
++    private Set<InputStream> streams = new HashSet<InputStream>();
  
--            HashSet<Entry> icRefs = new HashSet<>();
-+            HashSet<Entry> icRefs = new HashSet<Entry>();
-             for (Entry e : cpRefs) {
-                 // Restrict cpRefs to InnerClasses entries only.
-                 if (!(e instanceof ClassEntry))  continue;
-@@ -345,7 +345,7 @@
-             // This loop is structured this way so as to accumulate
-             // entries into impliedICs in an order which reflects
-             // the order of allInnerClasses.
--            ArrayList<InnerClass> impliedICs = new ArrayList<>();
-+            ArrayList<InnerClass> impliedICs = new ArrayList<InnerClass>();
-             for (InnerClass ic : allInnerClasses) {
-                 // This one is locally relevant if it describes
-                 // a member of the current class, or if the current
-@@ -388,8 +388,8 @@
-                 // Diff is A since I is empty.
-             }
-             // (I*A) is non-trivial
--            HashSet<InnerClass> center = new HashSet<>(actualICs);
--            center.retainAll(new HashSet<>(impliedICs));
-+            HashSet<InnerClass> center = new HashSet<InnerClass>(actualICs);
-+            center.retainAll(new HashSet<InnerClass>(impliedICs));
-             impliedICs.addAll(actualICs);
-             impliedICs.removeAll(center);
-             // Diff is now I^A = (I+A)-(I*A).
-@@ -518,7 +518,7 @@
-                 super(flags, descriptor);
-                 assert(!descriptor.isMethod());
-                 if (fields == null)
--                    fields = new ArrayList<>();
-+                    fields = new ArrayList<Field>();
-                 boolean added = fields.add(this);
-                 assert(added);
-                 order = fields.size();
-@@ -543,7 +543,7 @@
-                 super(flags, descriptor);
-                 assert(descriptor.isMethod());
-                 if (methods == null)
--                    methods = new ArrayList<>();
-+                    methods = new ArrayList<Method>();
-                 boolean added = methods.add(this);
-                 assert(added);
-             }
-@@ -713,14 +713,14 @@
-     }
- 
-     // What non-class files are in this unit?
--    ArrayList<File> files = new ArrayList<>();
-+    ArrayList<File> files = new ArrayList<File>();
- 
-     public List<File> getFiles() {
-         return files;
-     }
- 
-     public List<File> getClassStubs() {
--        ArrayList<File> classStubs = new ArrayList<>(classes.size());
-+        ArrayList<File> classStubs = new ArrayList<File>(classes.size());
-         for (Class cls : classes) {
-             assert(cls.file.isClassStub());
-             classStubs.add(cls.file);
-@@ -839,7 +839,7 @@
-         public InputStream getInputStream() {
-             InputStream in = new ByteArrayInputStream(append.toByteArray());
-             if (prepend.size() == 0)  return in;
--            ArrayList<InputStream> isa = new ArrayList<>(prepend.size()+1);
-+            ArrayList<InputStream> isa = new ArrayList<InputStream>(prepend.size()+1);
-             for (Iterator i = prepend.iterator(); i.hasNext(); ) {
-                 byte[] bytes = (byte[]) i.next();
-                 isa.add(new ByteArrayInputStream(bytes));
-@@ -876,7 +876,7 @@
-     }
- 
-     // Is there a globally declared table of inner classes?
--    ArrayList<InnerClass> allInnerClasses = new ArrayList<>();
-+    ArrayList<InnerClass> allInnerClasses = new ArrayList<InnerClass>();
-     HashMap<ClassEntry, InnerClass>   allInnerClassesByThis;
- 
-     public
-@@ -891,7 +891,7 @@
-         allInnerClasses.addAll(ics);
- 
-         // Make an index:
--        allInnerClassesByThis = new HashMap<>(allInnerClasses.size());
-+        allInnerClassesByThis = new HashMap<ClassEntry,InnerClass>(allInnerClasses.size());
-         for (InnerClass ic : allInnerClasses) {
-             Object pic = allInnerClassesByThis.put(ic.thisClass, ic);
-             assert(pic == null);  // caller must ensure key uniqueness!
-@@ -1288,7 +1288,7 @@
- 
-     // Use this before writing the class files.
-     void ensureAllClassFiles() {
--        HashSet<File> fileSet = new HashSet<>(files);
-+        HashSet<File> fileSet = new HashSet<File>(files);
-         for (Class cls : classes) {
-             // Add to the end of ths list:
-             if (!fileSet.contains(cls.file))
-diff -r 240d4d3f2db7 src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java	Tue Sep 14 17:29:58 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java	Wed Sep 15 00:00:17 2010 +0100
-@@ -599,7 +599,7 @@
+     /**
+      * Returns an input stream for reading the contents of the specified
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java	2011-03-17 00:34:27.949060984 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java	2011-03-17 00:34:40.485261234 +0000
+@@ -630,7 +630,7 @@
  
          List<InFile> scanJar(JarFile jf) throws IOException {
              // Collect jar entries, preserving order.
 -            List<InFile> inFiles = new ArrayList<>();
 +            List<InFile> inFiles = new ArrayList<InFile>();
-             for (JarEntry je : Collections.list(jf.entries())) {
-                 InFile inFile = new InFile(jf, je);
-                 assert(je.isDirectory() == inFile.name.endsWith("/"));
-diff -r 240d4d3f2db7 src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java	Tue Sep 14 17:29:58 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java	Wed Sep 15 00:00:17 2010 +0100
-@@ -58,12 +58,12 @@
-     private final Map<String, MemberEntry> memberEntries;
+             try {
+                 for (JarEntry je : Collections.list(jf.entries())) {
+                     InFile inFile = new InFile(jf, je);
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/kr5/internal/ktab/KeyTab.java openjdk-boot/jdk/src/share/classes/sun/security/kr5/internal/ktab/KeyTab.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java	2011-03-21 12:40:26.290331039 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java	2011-03-21 12:41:22.079230112 +0000
+@@ -436,7 +436,7 @@
+         int count = 0;
  
-     TLGlobals() {
--        utf8Entries = new HashMap<>();
--        classEntries = new HashMap<>();
--        literalEntries = new HashMap<>();
--        signatureEntries = new HashMap<>();
--        descriptorEntries = new HashMap<>();
--        memberEntries = new HashMap<>();
-+        utf8Entries = new HashMap<String,Utf8Entry>();
-+        classEntries = new HashMap<String,ClassEntry>();
-+        literalEntries = new HashMap<Object,LiteralEntry>();
-+        signatureEntries = new HashMap<String,SignatureEntry>();
-+        descriptorEntries = new HashMap<String,DescriptorEntry>();
-+        memberEntries = new HashMap<String,MemberEntry>();
-         props = new PropMap();
-     }
- 
-diff -r 240d4d3f2db7 src/share/classes/com/sun/java/util/jar/pack/Utils.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java	Tue Sep 14 17:29:58 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java	Wed Sep 15 00:00:17 2010 +0100
-@@ -123,7 +123,7 @@
-     // Keep a TLS point to the global data and environment.
-     // This makes it simpler to supply environmental options
-     // to the engine code, especially the native code.
--    static final ThreadLocal<TLGlobals> currentInstance = new ThreadLocal<>();
-+    static final ThreadLocal<TLGlobals> currentInstance = new ThreadLocal<TLGlobals>();
+         // Remember the highest KVNO for each etype. Used for kvno == -2
+-        Map<Integer,Integer> highest = new HashMap<>();
++        Map<Integer,Integer> highest = new HashMap<Integer, Integer>();
  
-     // convenience methods to access the TL globals
-     static TLGlobals getTLGlobals() {
-diff -r 240d4d3f2db7 src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java	Tue Sep 14 17:29:58 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java	Wed Sep 15 14:34:26 2010 +0100
-@@ -199,7 +199,7 @@
-             props.setProperty(java.util.jar.Pack200.Unpacker.PROGRESS,"50");
-             pkg.ensureAllClassFiles();
-             // Now write out the files.
--            HashSet<Package.Class> classesToWrite = new HashSet<>(pkg.getClasses());
-+            HashSet<Package.Class> classesToWrite = new HashSet<Package.Class>(pkg.getClasses());
-             for (Iterator i = pkg.getFiles().iterator(); i.hasNext(); ) {
-                 Package.File file = (Package.File) i.next();
-                 String name = file.nameString;
-diff -r 240d4d3f2db7 src/share/classes/com/sun/java/util/jar/pack/Driver.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java	Tue Sep 14 17:29:58 2010 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java	Wed Sep 15 15:25:40 2010 +0100
-@@ -38,7 +38,7 @@
-                 ResourceBundle.getBundle("com.sun.java.util.jar.pack.DriverResource");
- 
-     public static void main(String[] ava) throws IOException {
--        ArrayList<String> av = new ArrayList<>(Arrays.asList(ava));
-+        ArrayList<String> av = new ArrayList<String>(Arrays.asList(ava));
- 
-         boolean doPack   = true;
-         boolean doUnpack = false;
-@@ -61,7 +61,7 @@
-         }
- 
-         // Collect engine properties here:
--        HashMap<String,String> engProps = new HashMap<>();
-+        HashMap<String,String> engProps = new HashMap<String,String>();
-         engProps.put(verboseProp, System.getProperty(verboseProp));
- 
-         String optionMap;
-@@ -75,7 +75,7 @@
-         }
- 
-         // Collect argument properties here:
--        HashMap<String,String> avProps = new HashMap<>();
-+        HashMap<String,String> avProps = new HashMap<String,String>();
-         try {
-             for (;;) {
-                 String state = parseCommandOptions(av, optionMap, avProps);
-@@ -494,7 +494,7 @@
-         String resultString = null;
- 
-         // Convert options string into optLines dictionary.
--        TreeMap<String,String[]> optmap = new TreeMap<>();
-+        TreeMap<String,String[]> optmap = new TreeMap<String,String[]>();
-     loadOptmap:
-         for (String optline : options.split("\n")) {
-             String[] words = optline.split("\\p{Space}+");
+         for (int i = entries.size()-1; i >= 0; i--) {
+             KeyTabEntry e = entries.get(i);
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java	2011-03-21 16:48:19.620912572 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java	2011-03-21 16:48:28.193052021 +0000
+@@ -176,7 +176,7 @@
+     private static void printProperties(PrintStream ostream) {
+         Properties p = System.getProperties();
+         ostream.println(PROP_SETTINGS);
+-        List<String> sortedPropertyKeys = new ArrayList<>();
++        List<String> sortedPropertyKeys = new ArrayList<String>();
+         sortedPropertyKeys.addAll(p.stringPropertyNames());
+         Collections.sort(sortedPropertyKeys);
+         for (String x : sortedPropertyKeys) {
--- a/patches/boot/ecj-stringswitch.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/boot/ecj-stringswitch.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -36,3 +36,75 @@
          try {
              fac = SecretKeyFactory.getInstance ("DES");
              cipher = Cipher.getInstance ("DES/ECB/NoPadding");
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java	2011-03-21 16:45:04.633739680 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java	2011-03-21 16:47:00.579626597 +0000
+@@ -110,21 +110,17 @@
+         String optStr = (opts.length > 1 && opts[1] != null)
+                 ? opts[1].trim()
+                 : "all";
+-        switch (optStr) {
+-            case "vm":
++        if ("vm".equals(optStr))
++            printVmSettings(ostream, maxHeapSize, stackSize, isServer);
++        else if ("properties".equals(optStr))
++            printProperties(ostream);
++        else if ("locale".equals(optStr))
++            printLocale(ostream);
++        else
++            {
+                 printVmSettings(ostream, maxHeapSize, stackSize, isServer);
+-                break;
+-            case "properties":
+                 printProperties(ostream);
+-                break;
+-            case "locale":
+                 printLocale(ostream);
+-                break;
+-            default:
+-                printVmSettings(ostream, maxHeapSize, stackSize, isServer);
+-                printProperties(ostream);
+-                printLocale(ostream);
+-                break;
+         }
+     }
+ 
+--- openjdk-boot.orig/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java	2011-03-14 22:10:33.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java	2011-03-21 15:05:29.000000000 +0000
+@@ -383,19 +383,23 @@
+             GE;         // ">="
+ 
+             static Operator of(String s) {
+-                switch (s) {
+-                    case "==":
+-                        return EQ;
+-                    case "!=":
+-                        return NE;
+-                    case "<":
+-                        return LT;
+-                    case "<=":
+-                        return LE;
+-                    case ">":
+-                        return GT;
+-                    case ">=":
+-                        return GE;
++                if ("==".equals(s)) {
++                    return EQ;
++                }
++                if ("!=".equals(s)) {
++                    return NE;
++                }
++                if ("<".equals(s)) {
++                    return LT;
++                }
++                if ("<=".equals(s)) {
++                    return LE;
++                }
++                if (">".equals(s)) {
++                    return GT;
++                }
++                if (">=".equals(s)) {
++                    return GE;
+                 }
+ 
+                 throw new IllegalArgumentException(
--- a/patches/boot/revert-6973616.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/boot/revert-6973616.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,12 +1,12 @@
-diff -Nru openjdk-boot.orig/jdk/make/common/shared/Defs-versions.gmk openjdk-boot/jdk/make/common/shared/Defs-versions.gmk
---- openjdk-boot.orig/jdk/make/common/shared/Defs-versions.gmk	2010-09-06 13:47:55.000000000 +0100
-+++ openjdk-boot/jdk/make/common/shared/Defs-versions.gmk	2010-09-06 13:54:03.765973618 +0100
-@@ -191,7 +191,7 @@
+diff -Nru openjdk.orig/jdk/make/common/shared/Defs-versions.gmk openjdk/jdk/make/common/shared/Defs-versions.gmk
+--- openjdk-boot.orig/jdk/make/common/shared/Defs-versions.gmk	2011-03-16 22:23:11.000000000 +0000
++++ openjdk-boot/jdk/make/common/shared/Defs-versions.gmk	2011-03-16 22:29:36.710722785 +0000
+@@ -206,7 +206,7 @@
  
  # Generic
  REQUIRED_ANT_VER          = 1.6.3
 -REQUIRED_BOOT_VER         = 1.6
 +REQUIRED_BOOT_VER         = 1.5
  REQUIRED_FREETYPE_VERSION = 2.2.1
- REQUIRED_MAKE_VER         = 3.78
+ REQUIRED_MAKE_VER         = 3.81
  REQUIRED_UNZIP_VER        = 5.12
--- a/patches/hotspot/default/icedtea-gcc-suffix.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/hotspot/default/icedtea-gcc-suffix.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,6 +1,6 @@
 diff -Nru openjdk.orig/hotspot/agent/src/os/linux/Makefile openjdk/hotspot/agent/src/os/linux/Makefile
 --- openjdk.orig/hotspot/agent/src/os/linux/Makefile	2010-07-29 21:54:38.000000000 +0100
-+++ openjdk/hotspot/agent/src/os/linux/Makefile	2010-08-31 17:54:44.523837437 +0100
++++ openjdk/hotspot/agent/src/os/linux/Makefile	2011-03-15 01:21:20.137504508 +0000
 @@ -23,7 +23,7 @@
  #
  
@@ -11,12 +11,12 @@
  JAVAH    = ${JAVA_HOME}/bin/javah
  
 diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make
---- openjdk.orig/hotspot/make/linux/makefiles/gcc.make	2010-08-31 17:24:48.000000000 +0100
-+++ openjdk/hotspot/make/linux/makefiles/gcc.make	2010-08-31 17:55:09.288779769 +0100
-@@ -26,11 +26,11 @@
- # CC, CPP & AS
- 
- ifdef ALT_COMPILER_PATH
+--- openjdk.orig/hotspot/make/linux/makefiles/gcc.make	2011-03-15 01:15:45.000000000 +0000
++++ openjdk/hotspot/make/linux/makefiles/gcc.make	2011-03-15 01:22:17.187820176 +0000
+@@ -28,11 +28,11 @@
+ # When cross-compiling the ALT_COMPILER_PATH points
+ # to the cross-compilation toolset
+ ifdef CROSS_COMPILE_ARCH
 -CPP = $(ALT_COMPILER_PATH)/g++
 -CC  = $(ALT_COMPILER_PATH)/gcc
 +CPP = $(ALT_COMPILER_PATH)/g++$(GCC_SUFFIX)
--- a/patches/hotspot/default/icedtea-includedb.patch	Mon Mar 14 21:22:03 2011 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge openjdk/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge
---- openjdk.orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge	2009-02-19 08:40:26.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge	2009-02-23 21:09:49.000000000 +0000
-@@ -308,6 +308,8 @@
- psPermGen.cpp                           psMarkSweepDecorator.hpp
- psPermGen.cpp                           psParallelCompact.hpp
- psPermGen.cpp                           psPermGen.hpp
-+psPermGen.cpp                           markOop.inline.hpp
-+psPermGen.cpp                           markSweep.inline.hpp
- 
- psPermGen.hpp                           psOldGen.hpp
- 
--- a/patches/hotspot/default/icedtea-sparc-trapsfix.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/hotspot/default/icedtea-sparc-trapsfix.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,9 +1,9 @@
 diff -Nru openjdk.orig/hotspot/src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp openjdk/hotspot/src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp
---- openjdk.orig/hotspot/src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp	2008-08-04 08:40:18.000000000 +0100
-+++ openjdk/hotspot/src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp	2008-08-09 01:29:51.000000000 +0100
-@@ -25,7 +25,16 @@
- #include "incls/_precompiled.incl"
- #include "incls/_assembler_linux_sparc.cpp.incl"
+--- openjdk.orig/hotspot/src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp	2011-03-14 22:09:02.000000000 +0000
++++ openjdk/hotspot/src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp	2011-03-15 23:02:33.883758538 +0000
+@@ -28,7 +28,16 @@
+ #include "runtime/os.hpp"
+ #include "runtime/threadLocalStorage.hpp"
  
 -#include <asm-sparc/traps.h>
 +/* Headers for 32bit sparc with a 32bit userland end up in asm/
--- a/patches/hotspot/default/icedtea-text-relocations.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/hotspot/default/icedtea-text-relocations.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,7 +1,7 @@
 diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make
---- openjdk.orig/hotspot/make/linux/makefiles/gcc.make	2008-07-17 08:40:27.000000000 +0100
-+++ openjdk/hotspot/make/linux/makefiles/gcc.make	2008-07-21 23:10:50.000000000 +0100
-@@ -46,7 +46,11 @@
+--- openjdk.orig/hotspot/make/linux/makefiles/gcc.make	2011-03-14 22:09:02.000000000 +0000
++++ openjdk/hotspot/make/linux/makefiles/gcc.make	2011-03-14 22:59:37.765234824 +0000
+@@ -58,7 +58,11 @@
  # Compiler flags
  
  # position-independent code
@@ -13,9 +13,10 @@
  
  VM_PICFLAG/LIBJVM = $(PICFLAG)
  VM_PICFLAG/AOUT   =
---- rules.make.orig	2008-12-12 11:23:31.000000000 -0500
-+++ openjdk/hotspot/make/linux/makefiles/rules.make	2008-12-12 11:32:26.000000000 -0500
-@@ -138,20 +138,10 @@
+diff -Nru openjdk.orig/hotspot/make/linux/makefiles/rules.make openjdk/hotspot/make/linux/makefiles/rules.make
+--- openjdk.orig/hotspot/make/linux/makefiles/rules.make	2011-03-14 22:09:02.000000000 +0000
++++ openjdk/hotspot/make/linux/makefiles/rules.make	2011-03-14 23:00:47.571188825 +0000
+@@ -146,20 +146,10 @@
  include $(GAMMADIR)/make/pic.make
  endif
  
@@ -24,21 +25,22 @@
  %.o: %.cpp
  	@echo Compiling $<
  	$(QUIETLY) $(REMOVE_TARGET)
- 	$(QUIETLY) $(COMPILE.CC) -o $@ $< $(COMPILE_DONE)
+ 	$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
 -else
 -%.o: %.cpp
 -	@echo Compiling $<
 -	$(QUIETLY) $(REMOVE_TARGET)
 -	$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
--	   $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) -o $@ $< $(COMPILE_DONE), \
--	   $(COMPILE.CC) -o $@ $< $(COMPILE_DONE))
+-	   $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
+-	   $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
 -endif
  
  %.o: %.s
  	@echo Assembling $<
---- rules.make.orig	2008-12-12 11:42:55.000000000 -0500
-+++ openjdk/hotspot/make/solaris/makefiles/rules.make	2008-12-12 11:44:01.000000000 -0500
-@@ -138,20 +138,10 @@
+diff -Nru openjdk.orig/hotspot/make/solaris/makefiles/rules.make openjdk/hotspot/make/solaris/makefiles/rules.make
+--- openjdk.orig/hotspot/make/solaris/makefiles/rules.make	2011-03-14 22:09:02.000000000 +0000
++++ openjdk/hotspot/make/solaris/makefiles/rules.make	2011-03-14 23:01:14.490399553 +0000
+@@ -146,20 +146,10 @@
  include $(GAMMADIR)/make/pic.make
  endif
  
@@ -47,14 +49,14 @@
  %.o: %.cpp
  	@echo Compiling $<
  	$(QUIETLY) $(REMOVE_TARGET)
- 	$(QUIETLY) $(COMPILE.CC) -o $@ $< $(COMPILE_DONE)
+ 	$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
 -else
 -%.o: %.cpp
 -	@echo Compiling $<
 -	$(QUIETLY) $(REMOVE_TARGET)
 -	$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
--         $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) -o $@ $< $(COMPILE_DONE), \
--         $(COMPILE.CC) -o $@ $< $(COMPILE_DONE))
+-	   $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
+-	   $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
 -endif
  
  %.o: %.s
--- a/patches/icedtea-freetypeversion.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/icedtea-freetypeversion.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,12 +1,12 @@
 diff -Nru openjdk.orig/jdk/make/common/shared/Defs-versions.gmk openjdk/jdk/make/common/shared/Defs-versions.gmk
---- openjdk.orig/jdk/make/common/shared/Defs-versions.gmk	2010-08-27 19:16:10.000000000 +0100
-+++ openjdk/jdk/make/common/shared/Defs-versions.gmk	2010-08-31 19:07:12.239786010 +0100
-@@ -192,7 +192,7 @@
+--- openjdk.orig/jdk/make/common/shared/Defs-versions.gmk	2011-03-14 22:10:30.000000000 +0000
++++ openjdk/jdk/make/common/shared/Defs-versions.gmk	2011-03-15 01:45:56.009913021 +0000
+@@ -207,7 +207,7 @@
  # Generic
  REQUIRED_ANT_VER          = 1.6.3
  REQUIRED_BOOT_VER         = 1.6
 -REQUIRED_FREETYPE_VERSION = 2.3.0
 +REQUIRED_FREETYPE_VERSION = 2.2.1
- REQUIRED_MAKE_VER         = 3.78
+ REQUIRED_MAKE_VER         = 3.81
  REQUIRED_UNZIP_VER        = 5.12
  REQUIRED_ZIP_VER          = 2.2
--- a/patches/icedtea-javafiles.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/icedtea-javafiles.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,6 +1,6 @@
 diff -Nru openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_encoding.jmk openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_encoding.jmk
 --- openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_encoding.jmk	2010-07-29 21:54:09.000000000 +0100
-+++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_encoding.jmk	2010-09-01 19:20:12.256298401 +0100
++++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_encoding.jmk	2011-03-16 20:45:33.914471077 +0000
 @@ -62,7 +62,6 @@
  	com/sun/corba/se/impl/encoding/TypeCodeInputStream.java \
  	com/sun/corba/se/impl/encoding/TypeCodeOutputStream.java \
@@ -14,7 +14,7 @@
 +	com/sun/corba/se/impl/encoding/IDLJavaSerializationOutputStream.java
 diff -Nru openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_ior.jmk openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_ior.jmk
 --- openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_ior.jmk	2010-07-29 21:54:09.000000000 +0100
-+++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_ior.jmk	2010-09-01 19:20:12.264297713 +0100
++++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_ior.jmk	2011-03-16 20:45:33.922471207 +0000
 @@ -66,4 +66,5 @@
  	com/sun/corba/se/impl/ior/iiop/JavaSerializationComponent.java \
  	com/sun/corba/se/impl/ior/iiop/MaxStreamFormatVersionComponentImpl.java \
@@ -24,7 +24,7 @@
 +	com/sun/corba/se/impl/ior/iiop/JavaSerializationComponent.java
 diff -Nru openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk
 --- openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk	2010-07-29 21:54:09.000000000 +0100
-+++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk	2010-09-01 19:20:12.264297713 +0100
++++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_orbutil.jmk	2011-03-16 20:45:33.922471207 +0000
 @@ -81,4 +81,5 @@
  	com/sun/corba/se/impl/orbutil/graph/Node.java \
  	com/sun/corba/se/impl/orbutil/graph/NodeData.java \
@@ -34,7 +34,7 @@
 +	com/sun/corba/se/impl/orbutil/GetPropertyAction.java
 diff -Nru openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_protocol.jmk openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_protocol.jmk
 --- openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_protocol.jmk	2010-07-29 21:54:09.000000000 +0100
-+++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_protocol.jmk	2010-09-01 19:20:12.264297713 +0100
++++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_protocol.jmk	2011-03-16 20:45:33.922471207 +0000
 @@ -81,5 +81,5 @@
  	com/sun/corba/se/impl/protocol/giopmsgheaders/RequestMessage_1_1.java \
  	com/sun/corba/se/impl/protocol/giopmsgheaders/RequestMessage_1_2.java \
@@ -45,7 +45,7 @@
 +	com/sun/corba/se/impl/protocol/giopmsgheaders/LocateReplyOrReplyMessage.java
 diff -Nru openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_monitoring.jmk openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_monitoring.jmk
 --- openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_monitoring.jmk	2010-07-29 21:54:09.000000000 +0100
-+++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_monitoring.jmk	2010-09-01 19:20:12.264297713 +0100
++++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_monitoring.jmk	2011-03-16 20:45:33.922471207 +0000
 @@ -30,6 +30,7 @@
  	com/sun/corba/se/spi/monitoring/StringMonitoredAttributeBase.java \
  	com/sun/corba/se/spi/monitoring/LongMonitoredAttributeBase.java \
@@ -56,7 +56,7 @@
  	com/sun/corba/se/spi/monitoring/MonitoredObjectFactory.java \
 diff -Nru openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_presentation_rmi.jmk openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_presentation_rmi.jmk
 --- openjdk.orig/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_presentation_rmi.jmk	2010-07-29 21:54:09.000000000 +0100
-+++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_presentation_rmi.jmk	2010-09-01 19:20:12.264297713 +0100
++++ openjdk/corba/make/com/sun/corba/minclude/com_sun_corba_se_spi_presentation_rmi.jmk	2011-03-16 20:45:33.922471207 +0000
 @@ -29,5 +29,6 @@
  	com/sun/corba/se/spi/presentation/rmi/IDLNameTranslator.java \
  	com/sun/corba/se/spi/presentation/rmi/PresentationDefaults.java \
@@ -65,8 +65,8 @@
  	com/sun/corba/se/spi/presentation/rmi/StubAdapter.java
  
 diff -Nru openjdk.orig/jdk/make/java/java/FILES_java.gmk openjdk/jdk/make/java/java/FILES_java.gmk
---- openjdk.orig/jdk/make/java/java/FILES_java.gmk	2010-07-29 21:55:26.000000000 +0100
-+++ openjdk/jdk/make/java/java/FILES_java.gmk	2010-09-01 19:20:12.268297371 +0100
+--- openjdk.orig/jdk/make/java/java/FILES_java.gmk	2011-03-14 22:10:30.000000000 +0000
++++ openjdk/jdk/make/java/java/FILES_java.gmk	2011-03-16 20:45:33.922471207 +0000
 @@ -29,6 +29,80 @@
  # will generate header files
  #
@@ -148,9 +148,9 @@
      java/lang/Object.java \
      java/lang/AutoCloseable.java \
      java/lang/Class.java \
-@@ -138,13 +212,6 @@
-     java/lang/Readable.java \
+@@ -139,13 +213,6 @@
      java/lang/Override.java \
+     java/lang/SafeVarargs.java \
      java/lang/SuppressWarnings.java \
 -    java/lang/ref/Reference.java \
 -        java/lang/ref/SoftReference.java \
--- a/patches/icedtea-lc_ctype.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/icedtea-lc_ctype.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,16 +1,16 @@
 diff -Nru openjdk.orig/jdk/src/solaris/native/java/lang/java_props_md.c openjdk/jdk/src/solaris/native/java/lang/java_props_md.c
---- openjdk.orig/jdk/src/solaris/native/java/lang/java_props_md.c	2010-11-12 01:20:49.000000000 +0000
-+++ openjdk/jdk/src/solaris/native/java/lang/java_props_md.c	2010-11-12 18:31:00.049493600 +0000
-@@ -118,7 +118,7 @@
- #endif
+--- openjdk.orig/jdk/src/solaris/native/java/lang/java_props_md.c	2011-03-14 22:10:33.000000000 +0000
++++ openjdk/jdk/src/solaris/native/java/lang/java_props_md.c	2011-03-15 23:40:55.950143541 +0000
+@@ -119,7 +119,7 @@
  
- static int ParseLocale(int cat, char ** std_language, char ** std_country, char ** std_variant, char ** std_encoding) {
+ static int ParseLocale(int cat, char ** std_language, char ** std_script,
+                        char ** std_country, char ** std_variant, char ** std_encoding) {
 -    char temp[64];
 +    char *temp;
      char *language = NULL, *country = NULL, *variant = NULL,
           *encoding = NULL;
      char *p, encoding_variant[64];
-@@ -162,6 +162,7 @@
+@@ -163,6 +163,7 @@
       * <country name>, <encoding name>, and <variant name> are optional.
       */
  
@@ -18,7 +18,7 @@
      strcpy(temp, lc);
  
      /* Parse the language, country, encoding, and variant from the
-@@ -282,6 +283,10 @@
+@@ -301,6 +302,10 @@
  #endif
      }
  
--- a/patches/icedtea-signed-types.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/icedtea-signed-types.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,7 +1,7 @@
 diff -Nru openjdk.orig/hotspot/src/share/vm/asm/codeBuffer.hpp openjdk/hotspot/src/share/vm/asm/codeBuffer.hpp
---- openjdk.orig/hotspot/src/share/vm/asm/codeBuffer.hpp	2008-05-27 21:18:54.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/asm/codeBuffer.hpp	2008-05-27 21:56:42.000000000 +0100
-@@ -81,7 +81,7 @@
+--- openjdk.orig/hotspot/src/share/vm/asm/codeBuffer.hpp	2011-03-14 22:09:03.000000000 +0000
++++ openjdk/hotspot/src/share/vm/asm/codeBuffer.hpp	2011-03-15 23:15:53.055192661 +0000
+@@ -93,7 +93,7 @@
    address     _locs_point;      // last relocated position (grows upward)
    bool        _locs_own;        // did I allocate the locs myself?
    bool        _frozen;          // no more expansion of this section
@@ -10,22 +10,10 @@
    CodeBuffer* _outer;           // enclosing CodeBuffer
  
    // (Note:  _locs_point used to be called _last_reloc_offset.)
-diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/ostream.cpp openjdk/hotspot/src/share/vm/utilities/ostream.cpp
---- openjdk.orig/hotspot/src/share/vm/utilities/ostream.cpp	2008-05-27 21:18:54.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/utilities/ostream.cpp	2008-05-27 21:59:01.000000000 +0100
-@@ -829,7 +829,7 @@
-   server.sin_port = htons(port);
- 
-   server.sin_addr.s_addr = inet_addr(ip);
--  if (server.sin_addr.s_addr == (uint32_t)-1) {
-+  if (server.sin_addr.s_addr == (in_addr_t)-1) {
- #ifdef _WINDOWS
-     struct hostent* host = hpi::get_host_by_name((char*)ip);
- #else
-diff -r ca98ea212429 openjdk/hotspot/src/share/vm/ci/ciTypeFlow.cpp
---- openjdk/hotspot/src/share/vm/ci/ciTypeFlow.cpp	Fri Aug 08 16:06:52 2008 +0100
-+++ openjdk/hotspot/src/share/vm/ci/ciTypeFlow.cpp	Fri Aug 08 16:15:45 2008 +0100
-@@ -388,7 +388,7 @@ const ciTypeFlow::StateVector* ciTypeFlo
+diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciTypeFlow.cpp openjdk/hotspot/src/share/vm/ci/ciTypeFlow.cpp
+--- openjdk.orig/hotspot/src/share/vm/ci/ciTypeFlow.cpp	2011-03-14 22:09:03.000000000 +0000
++++ openjdk/hotspot/src/share/vm/ci/ciTypeFlow.cpp	2011-03-15 23:15:53.055192661 +0000
+@@ -403,7 +403,7 @@
    // Set the rest of the locals to bottom.
    Cell cell = state->next_cell(state->tos());
    state->set_stack_size(0);
@@ -34,3 +22,15 @@
    for (; cell < limit; cell = state->next_cell(cell)) {
      state->set_type_at(cell, state->bottom_type());
    }
+diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/ostream.cpp openjdk/hotspot/src/share/vm/utilities/ostream.cpp
+--- openjdk.orig/hotspot/src/share/vm/utilities/ostream.cpp	2011-03-14 22:09:03.000000000 +0000
++++ openjdk/hotspot/src/share/vm/utilities/ostream.cpp	2011-03-15 23:16:13.990549499 +0000
+@@ -915,7 +915,7 @@
+   server.sin_port = htons(port);
+ 
+   server.sin_addr.s_addr = inet_addr(ip);
+-  if (server.sin_addr.s_addr == (uint32_t)-1) {
++  if (server.sin_addr.s_addr == (in_addr_t)-1) {
+     struct hostent* host = os::get_host_by_name((char*)ip);
+     if (host != NULL) {
+       memcpy(&server.sin_addr, host->h_addr_list[0], host->h_length);
--- a/patches/icedtea-ssl.patch	Mon Mar 14 21:22:03 2011 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
---- ../openjdkb23/openjdk/jdk/src/share/classes/sun/security/ssl/Handshaker.java	2007-10-30 04:38:10.000000000 -0400
-+++ openjdk/jdk/src/share/classes/sun/security/ssl/Handshaker.java	2007-11-13 13:06:01.000000000 -0500
-@@ -36,6 +36,7 @@
- import java.security.PrivilegedExceptionAction;
- import java.security.PrivilegedActionException;
- import java.security.cert.X509Certificate;
-+import java.security.spec.AlgorithmParameterSpec;
- 
- import javax.crypto.*;
- import javax.crypto.spec.*;
-@@ -688,8 +683,8 @@
-         SecretKey masterSecret;
-         try {
-             KeyGenerator kg = JsseJce.getKeyGenerator("SunTlsMasterSecret");
--            kg.init(spec);
--            masterSecret = kg.generateKey();
-+            kg.init((AlgorithmParameterSpec) spec);
-+	    masterSecret = kg.generateKey();
-         } catch (GeneralSecurityException e) {
-             // For RSA premaster secrets, do not signal a protocol error
-             // due to the Bleichenbacher attack. See comments further down.
---- ../openjdkb23/openjdk/jdk/src/share/classes/sun/security/ssl/RSAClientKeyExchange.java	2007-10-30 04:38:10.000000000 -0400
-+++ openjdk/jdk/src/share/classes/sun/security/ssl/RSAClientKeyExchange.java	2007-11-13 13:06:42.000000000 -0500
-@@ -36,6 +36,8 @@
- import javax.net.ssl.*;
- 
- import sun.security.internal.spec.TlsRsaPremasterSecretParameterSpec;
-+import java.security.spec.AlgorithmParameterSpec;
-+
- 
- /**
-  * This is the client key exchange message (CLIENT --> SERVER) used with
-@@ -104,8 +106,8 @@
- 
-         try {
-             KeyGenerator kg = JsseJce.getKeyGenerator("SunTlsRsaPremasterSecret");
--            kg.init(new TlsRsaPremasterSecretParameterSpec(major, minor));
--            preMaster = kg.generateKey();
-+            kg.init((AlgorithmParameterSpec) (new TlsRsaPremasterSecretParameterSpec(major, minor)));
-+	    preMaster = kg.generateKey();
- 
-             Cipher cipher = JsseJce.getCipher(JsseJce.CIPHER_RSA_PKCS1);
-             cipher.init(Cipher.WRAP_MODE, publicKey, generator);
--- a/patches/icedtea-systemtap.patch	Mon Mar 14 21:22:03 2011 +0000
+++ b/patches/icedtea-systemtap.patch	Mon Mar 21 20:47:22 2011 +0000
@@ -1,6 +1,6 @@
 diff -Nru openjdk.orig/hotspot/make/linux/makefiles/dtrace.make openjdk/hotspot/make/linux/makefiles/dtrace.make
 --- openjdk.orig/hotspot/make/linux/makefiles/dtrace.make	2010-07-29 21:54:46.000000000 +0100
-+++ openjdk/hotspot/make/linux/makefiles/dtrace.make	2010-09-01 20:10:41.490928687 +0100
++++ openjdk/hotspot/make/linux/makefiles/dtrace.make	2011-03-16 20:52:47.269527251 +0000
 @@ -25,3 +25,7 @@
  # Linux does not build jvm_db
  LIBJVM_DB =
@@ -10,9 +10,9 @@
 +
 +# It doesn't support HAVE_DTRACE_H though.
 diff -Nru openjdk.orig/hotspot/src/share/vm/prims/jni.cpp openjdk/hotspot/src/share/vm/prims/jni.cpp
---- openjdk.orig/hotspot/src/share/vm/prims/jni.cpp	2010-08-27 19:15:27.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/prims/jni.cpp	2010-09-01 20:10:41.498927999 +0100
-@@ -1753,10 +1753,7 @@
+--- openjdk.orig/hotspot/src/share/vm/prims/jni.cpp	2011-03-14 22:09:03.000000000 +0000
++++ openjdk/hotspot/src/share/vm/prims/jni.cpp	2011-03-16 20:52:47.277527381 +0000
+@@ -1817,10 +1817,7 @@
  JNI_QUICK_ENTRY(void, jni_Set##Result##Field(JNIEnv *env, jobject obj, jfieldID fieldID, Argument value)) \
    JNIWrapper("Set" XSTR(Result) "Field"); \
  \
@@ -24,7 +24,7 @@
  \
    oop o = JNIHandles::resolve_non_null(obj); \
    klassOop k = o->klass(); \
-@@ -1930,10 +1927,7 @@
+@@ -1994,10 +1991,7 @@
  \
  JNI_ENTRY(void, jni_SetStatic##Result##Field(JNIEnv *env, jclass clazz, jfieldID fieldID, Argument value)) \
    JNIWrapper("SetStatic" XSTR(Result) "Field"); \
@@ -37,9 +37,9 @@
    JNIid* id = jfieldIDWorkaround::from_static_jfieldID(fieldID); \
    assert(id->is_static_field_id(), "invalid static field id"); \
 diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp openjdk/hotspot/src/share/vm/runtime/arguments.cpp
---- openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp	2010-09-01 19:24:41.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp	2010-09-01 20:10:41.498927999 +0100
-@@ -2490,16 +2490,16 @@
+--- openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp	2011-03-16 20:51:33.000000000 +0000
++++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp	2011-03-16 20:52:47.277527381 +0000
+@@ -2634,16 +2634,16 @@
        FLAG_SET_CMDLINE(bool, DisplayVMOutputToStderr, false);
        FLAG_SET_CMDLINE(bool, DisplayVMOutputToStdout, true);
      } else if (match_option(option, "-XX:+ExtendedDTraceProbes", &tail)) {
@@ -61,25 +61,25 @@
      } else if (match_option(option, "-XX:+FullGCALot", &tail)) {
        FLAG_SET_CMDLINE(bool, FullGCALot, true);
 diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp openjdk/hotspot/src/share/vm/utilities/dtrace.hpp
---- openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp	2010-07-29 21:54:53.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/utilities/dtrace.hpp	2010-09-01 20:12:19.582467794 +0100
+--- openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp	2011-03-14 22:09:03.000000000 +0000
++++ openjdk/hotspot/src/share/vm/utilities/dtrace.hpp	2011-03-16 20:53:58.314683506 +0000
 @@ -1,5 +1,6 @@
  /*
-  * Copyright (c) 2005, 2007, Oracle and/or its affiliates. All rights reserved.
+  * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
 + * Copyright 2009 Red Hat, Inc.
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   *
   * This code is free software; you can redistribute it and/or modify it
-@@ -22,7 +23,7 @@
-  *
-  */
+@@ -25,7 +26,7 @@
+ #ifndef SHARE_VM_UTILITIES_DTRACE_HPP
+ #define SHARE_VM_UTILITIES_DTRACE_HPP
  
 -#if defined(SOLARIS) && defined(DTRACE_ENABLED)
 +#if defined(DTRACE_ENABLED)
  
  #include <sys/sdt.h>
  
-@@ -33,7 +34,7 @@
+@@ -36,7 +37,7 @@
  #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() \
    do { volatile size_t dtrace_workaround_tail_call_bug = 1; } while (0)
  
@@ -88,7 +88,7 @@
  
  #define DTRACE_ONLY(x)
  #define NOT_DTRACE(x) x
-@@ -44,11 +45,18 @@
+@@ -47,11 +48,18 @@
  #define DTRACE_PROBE3(a,b,c,d,e) {;}
  #define DTRACE_PROBE4(a,b,c,d,e,f) {;}
  #define DTRACE_PROBE5(a,b,c,d,e,f,g) {;}
@@ -107,7 +107,7 @@
  #define HS_DTRACE_PROBE_FN(provider,name)\
    __dtrace_##provider##___##name
  
-@@ -56,6 +64,11 @@
+@@ -59,6 +67,11 @@
    DTRACE_ONLY(extern "C" void HS_DTRACE_PROBE_FN(provider,name) args)
  #define HS_DTRACE_PROBE_CDECL_N(provider,name,args) \
    DTRACE_ONLY(extern void HS_DTRACE_PROBE_FN(provider,name) args)
@@ -119,7 +119,7 @@
  
  /* Dtrace probe declarations */
  #define HS_DTRACE_PROBE_DECL(provider,name) \
-@@ -94,6 +107,8 @@
+@@ -97,6 +110,8 @@
      uintptr_t,uintptr_t,uintptr_t))
  
  /* Dtrace probe definitions */
@@ -128,7 +128,7 @@
  #define HS_DTRACE_PROBE_N(provider,name, args) \
    DTRACE_ONLY(HS_DTRACE_PROBE_FN(provider,name) args)
  
-@@ -129,3 +144,29 @@
+@@ -132,5 +147,31 @@
    HS_DTRACE_PROBE_N(provider,name,((uintptr_t)a0,(uintptr_t)a1,(uintptr_t)a2,\
      (uintptr_t)a3,(uintptr_t)a4,(uintptr_t)a5,(uintptr_t)a6,(uintptr_t)a7,\
      (uintptr_t)a8,(uintptr_t)a9))
@@ -158,3 +158,5 @@
 +#define HS_DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\
 +  DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)
 +#endif
+ 
+ #endif // SHARE_VM_UTILITIES_DTRACE_HPP
--- a/patches/no-precompiled.patch	Mon Mar 14 21:22:03 2011 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
---- openjdk/hotspot/make/linux/makefiles/gcc.make~	2009-10-30 11:54:26.000000000 +0100
-+++ openjdk/hotspot/make/linux/makefiles/gcc.make	2009-10-30 11:55:34.000000000 +0100
-@@ -34,13 +34,14 @@
- CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
- CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
- 
-+ifeq (,$(DISABLE_PRECOMPILED_HEADER))
- # check for precompiled headers support
- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
- USE_PRECOMPILED_HEADER=1
- PRECOMPILED_HEADER_DIR=.
- PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/incls/_precompiled.incl.gch
- endif
--
-+endif
- 
- #------------------------------------------------------------------------
- # Compiler flags
---- openjdk/hotspot/make/solaris/makefiles/gcc.make~	2009-10-30 11:54:26.000000000 +0100
-+++ openjdk/hotspot/make/solaris/makefiles/gcc.make	2009-10-30 11:56:05.000000000 +0100
-@@ -45,12 +45,14 @@
- $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
- 
- 
-+ifeq (,$(DISABLE_PRECOMPILED_HEADER))
- # check for precompiled headers support
- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
- USE_PRECOMPILED_HEADER=1
- PRECOMPILED_HEADER_DIR=.
- PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/incls/_precompiled.incl.gch
- endif
-+endif
- 
- 
- #------------------------------------------------------------------------