Merge
authorlana
Thu, 10 Dec 2009 09:46:13 -0800
changeset 4377 1411f4ebf52e
parent 4360 feacdd1c5df3 (diff)
parent 4376 61cb05d6efa2 (current diff)
child 4395 35a852e373c5
Merge
jdk/src/share/classes/sun/awt/ComponentAccessor.java
jdk/src/share/classes/sun/awt/WindowAccessor.java
--- a/.hgtags	Wed Dec 09 14:33:55 2009 +0300
+++ b/.hgtags	Thu Dec 10 09:46:13 2009 -0800
@@ -50,3 +50,4 @@
 ce74bd35ce948d629a356e168797f44b593b1578 jdk7-b73
 4e7661eaa211e186674f6cbefec4aef1144ac2a0 jdk7-b74
 946518568340c4e511549318f19f47f06b7f5f9b jdk7-b75
+09e0b33177af2b98a03c9ca19eedf61440bd1cf6 jdk7-b76
--- a/.hgtags-top-repo	Wed Dec 09 14:33:55 2009 +0300
+++ b/.hgtags-top-repo	Thu Dec 10 09:46:13 2009 -0800
@@ -50,3 +50,4 @@
 3ac6dcf7823205546fbbc3d4ea59f37358d0b0d4 jdk7-b73
 2c88089b6e1c053597418099a14232182c387edc jdk7-b74
 d1516b9f23954b29b8e76e6f4efc467c08c78133 jdk7-b75
+c8b63075403d53a208104a8a6ea5072c1cb66aab jdk7-b76
--- a/corba/.hgtags	Wed Dec 09 14:33:55 2009 +0300
+++ b/corba/.hgtags	Thu Dec 10 09:46:13 2009 -0800
@@ -50,3 +50,4 @@
 b751c528c55560cf2adeaeef24b39ca1f4d1cbf7 jdk7-b73
 5d0cf59a3203b9f57aceebc33ae656b884987955 jdk7-b74
 0fb137085952c8e47878e240d1cb40f14de463c4 jdk7-b75
+937144222e2219939101b0129d26a872a7956b13 jdk7-b76
--- a/corba/make/common/shared/Platform.gmk	Wed Dec 09 14:33:55 2009 +0300
+++ b/corba/make/common/shared/Platform.gmk	Thu Dec 10 09:46:13 2009 -0800
@@ -187,6 +187,9 @@
                 sparc*) \
                     echo sparc \
                     ;; \
+                arm*) \
+                    echo arm \
+                    ;; \
                 *) \
                     echo $(mach) \
                     ;; \
--- a/hotspot/.hgtags	Wed Dec 09 14:33:55 2009 +0300
+++ b/hotspot/.hgtags	Thu Dec 10 09:46:13 2009 -0800
@@ -50,3 +50,4 @@
 faf94d94786b621f8e13cbcc941ca69c6d967c3f jdk7-b73
 f4b900403d6e4b0af51447bd13bbe23fe3a1dac7 jdk7-b74
 d8dd291a362acb656026a9c0a9da48501505a1e7 jdk7-b75
+9174bb32e934965288121f75394874eeb1fcb649 jdk7-b76
--- a/jaxp/.hgtags	Wed Dec 09 14:33:55 2009 +0300
+++ b/jaxp/.hgtags	Thu Dec 10 09:46:13 2009 -0800
@@ -50,3 +50,4 @@
 feb05980f9f2964e6bc2b3a8532f9b3054c2289b jdk7-b73
 ea7b88c676dd8b269bc858a4a17c14dc96c8aed1 jdk7-b74
 555fb78ee4cebed082ca7ddabff46d2e5b4c9026 jdk7-b75
+233a4871d3364ec305efd4a58cfd676620a03a90 jdk7-b76
--- a/jaxp/build.properties	Wed Dec 09 14:33:55 2009 +0300
+++ b/jaxp/build.properties	Thu Dec 10 09:46:13 2009 -0800
@@ -34,6 +34,10 @@
 # one of the standard user build.properties files (see build.xml)
 javac.jar=${bootstrap.dir}/lib/javac.jar
 
+# The tools.jar is needed in the classpath to compile these sources
+jdk.home=${java.home}/..
+tools.jar=${jdk.home}/lib/tools.jar
+
 # options for the <javac> tasks used to compile the tools
 javac.source = 7
 javac.target = 7
--- a/jaxp/build.xml	Wed Dec 09 14:33:55 2009 +0300
+++ b/jaxp/build.xml	Thu Dec 10 09:46:13 2009 -0800
@@ -113,7 +113,10 @@
     <!-- Build (compilation) of sources to class files. -->
     <target name="build"
 	    depends="init, -init-src-dirs, -build-prep">
-        <javac fork="true"
+        <javac 
+	     includeAntRuntime="false"
+	     classpath="${build.classes.dir}"
+	     fork="true"
              destdir="${build.classes.dir}"
              memoryInitialSize="${javac.memoryInitialSize}"
              memoryMaximumSize="${javac.memoryMaximumSize}"
--- a/jaxp/make/Makefile	Wed Dec 09 14:33:55 2009 +0300
+++ b/jaxp/make/Makefile	Thu Dec 10 09:46:13 2009 -0800
@@ -113,11 +113,13 @@
 ifdef ALT_LANGTOOLS_DIST
   ifdef ALT_BOOTDIR
     ANT_JAVA_HOME = JAVA_HOME=$(ALT_BOOTDIR)
+    ANT_OPTIONS += -Djdk.home=$(ALT_BOOTDIR)
   endif
   ANT_OPTIONS += -Dbootstrap.dir=$(ALT_LANGTOOLS_DIST)/bootstrap
 else
   ifdef ALT_JDK_IMPORT_PATH
     ANT_JAVA_HOME = JAVA_HOME=$(ALT_JDK_IMPORT_PATH)
+    ANT_OPTIONS += -Djdk.home=$(ALT_JDK_IMPORT_PATH)
   endif
 endif
 
@@ -141,7 +143,7 @@
 
 # Create a make target for each
 $(ANT_TARGETS):
-	cd .. && $(ANT_JAVA_HOME) $(ANT) -version
+	cd .. && $(ANT_JAVA_HOME) $(ANT) $(ANT_OPTIONS) -version
 	cd .. && $(ANT_JAVA_HOME) $(ANT) $(ANT_OPTIONS) $@
 
 # Help target
--- a/jaxws/.hgtags	Wed Dec 09 14:33:55 2009 +0300
+++ b/jaxws/.hgtags	Thu Dec 10 09:46:13 2009 -0800
@@ -50,3 +50,4 @@
 558985e26fe16f5a6ebb2edb9180a42e1c8e8202 jdk7-b73
 f4466e1b608088c90e11beaa4b600f102608c6a1 jdk7-b74
 fcf2b8b5d606641659419f247fcee4b284c45e6e jdk7-b75
+765d2077d1e652e234d27fe85ba58a986b488503 jdk7-b76
--- a/jaxws/build.properties	Wed Dec 09 14:33:55 2009 +0300
+++ b/jaxws/build.properties	Thu Dec 10 09:46:13 2009 -0800
@@ -34,6 +34,10 @@
 # one of the standard user build.properties files (see build.xml)
 javac.jar=${bootstrap.dir}/lib/javac.jar
 
+# The tools.jar is needed in the classpath to compile these sources
+jdk.home=${java.home}/..
+tools.jar=${jdk.home}/lib/tools.jar
+
 # options for the <javac> tasks used to compile the tools
 javac.source = 7
 javac.target = 7
--- a/jaxws/build.xml	Wed Dec 09 14:33:55 2009 +0300
+++ b/jaxws/build.xml	Thu Dec 10 09:46:13 2009 -0800
@@ -113,7 +113,10 @@
     <!-- Build (compilation) of sources to class files. -->
     <target name="build"
 	    depends="init, -init-src-dirs, -build-prep">
-        <javac fork="true"
+        <javac 
+	     includeAntRuntime="false" 
+	     classpath="${build.classes.dir}:${tools.jar}"
+	     fork="true"
              destdir="${build.classes.dir}"
              memoryInitialSize="${javac.memoryInitialSize}"
              memoryMaximumSize="${javac.memoryMaximumSize}"
--- a/jaxws/make/Makefile	Wed Dec 09 14:33:55 2009 +0300
+++ b/jaxws/make/Makefile	Thu Dec 10 09:46:13 2009 -0800
@@ -113,11 +113,13 @@
 ifdef ALT_LANGTOOLS_DIST
   ifdef ALT_BOOTDIR
     ANT_JAVA_HOME = JAVA_HOME=$(ALT_BOOTDIR)
+    ANT_OPTIONS += -Djdk.home=$(ALT_BOOTDIR)
   endif
   ANT_OPTIONS += -Dbootstrap.dir=$(ALT_LANGTOOLS_DIST)/bootstrap
 else
   ifdef ALT_JDK_IMPORT_PATH
     ANT_JAVA_HOME = JAVA_HOME=$(ALT_JDK_IMPORT_PATH)
+    ANT_OPTIONS += -Djdk.home=$(ALT_JDK_IMPORT_PATH)
   endif
 endif
 
@@ -141,7 +143,7 @@
 
 # Create a make target for each
 $(ANT_TARGETS):
-	cd .. && $(ANT_JAVA_HOME) $(ANT) -version
+	cd .. && $(ANT_JAVA_HOME) $(ANT) $(ANT_OPTIONS) -version
 	cd .. && $(ANT_JAVA_HOME) $(ANT) $(ANT_OPTIONS) $@
 
 # Help target
--- a/jdk/.hgtags	Wed Dec 09 14:33:55 2009 +0300
+++ b/jdk/.hgtags	Thu Dec 10 09:46:13 2009 -0800
@@ -51,3 +51,4 @@
 eacb36e30327e7ae33baa068e82ddccbd91eaae2 jdk7-b74
 8885b22565077236a927e824ef450742e434a230 jdk7-b75
 8fb602395be0f7d5af4e7e93b7df2d960faf9d17 jdk7-b76
+e6a5d095c356a547cf5b3c8885885aca5e91e09b jdk7-b77
--- a/jdk/make/common/shared/Platform.gmk	Wed Dec 09 14:33:55 2009 +0300
+++ b/jdk/make/common/shared/Platform.gmk	Thu Dec 10 09:46:13 2009 -0800
@@ -165,6 +165,9 @@
                 sparc*) \
                     echo sparc \
                     ;; \
+                arm*) \
+                    echo arm \
+                    ;; \
                 *) \
                     echo $(mach) \
                     ;; \
--- a/jdk/src/share/classes/sun/font/StandardGlyphVector.java	Wed Dec 09 14:33:55 2009 +0300
+++ b/jdk/src/share/classes/sun/font/StandardGlyphVector.java	Thu Dec 10 09:46:13 2009 -0800
@@ -396,12 +396,19 @@
 
     // !!! not cached, assume TextLayout will cache if necessary
     public Rectangle2D getVisualBounds() {
-        if (glyphs.length == 0) {
-            return new Rectangle2D.Float(0, 0, 0, 0);
+        Rectangle2D result = null;
+        for (int i = 0; i < glyphs.length; ++i) {
+            Rectangle2D glyphVB = getGlyphVisualBounds(i).getBounds2D();
+            if (!glyphVB.isEmpty()) {
+                if (result == null) {
+                    result = glyphVB;
+                } else {
+                    Rectangle2D.union(result, glyphVB, result);
+                }
+            }
         }
-        Rectangle2D result = getGlyphVisualBounds(0).getBounds2D();
-        for (int i = 1; i < glyphs.length; ++i) {
-            Rectangle2D.union(result, getGlyphVisualBounds(i).getBounds2D(), result);
+        if (result == null) {
+            result = new Rectangle2D.Float(0, 0, 0, 0);
         }
         return result;
     }
@@ -1787,8 +1794,19 @@
                 gp.transform(sgv.invdtx);
                 result = gp.getBounds2D();
             }
-            result.setRect(result.getMinX() + x + dx, result.getMinY() + y + dy,
-                           result.getWidth(), result.getHeight());
+            /* Since x is the logical advance of the glyph to this point.
+             * Because of the way that Rectangle.union is specified, this
+             * means that subsequent unioning of a rect including that
+             * will be affected, even if the glyph is empty. So skip such
+             * cases. This alone isn't a complete solution since x==0
+             * may also not be what is wanted. The code that does the
+             * unioning also needs to be aware to ignore empty glyphs.
+             */
+            if (!result.isEmpty()) {
+                result.setRect(result.getMinX() + x + dx,
+                               result.getMinY() + y + dy,
+                               result.getWidth(), result.getHeight());
+            }
             return result;
         }
 
--- a/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h	Wed Dec 09 14:33:55 2009 +0300
+++ b/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h	Thu Dec 10 09:46:13 2009 -0800
@@ -29,7 +29,7 @@
 #ifdef __NEWVALID       /* special setup for Sun test regime */
 #if defined(i386) || defined(i486) || \
         defined(intel) || defined(x86) || \
-        defined(i86pc) || defined(_M_IA64)
+        defined(i86pc) || defined(_M_IA64) || defined(ia64)
 #define _LITTLE_ENDIAN
 #endif
 #endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/java/awt/font/GlyphVector/VisualBounds.java	Thu Dec 10 09:46:13 2009 -0800
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009 Sun Microsystems, Inc.  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.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 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.
+ */
+
+/* @test
+ * @summary leading and trailing spaces must not affect visual bounds
+ * @bug 6904962
+ */
+
+
+import java.awt.*;
+import java.awt.font.*;
+import java.awt.geom.*;
+
+public class VisualBounds {
+
+    public static void main(String args[]) {
+
+        String s1 = "a";
+        String s2 = s1+" ";
+        String s3 = " "+s1;
+        Font f = new Font("Dialog", Font.PLAIN, 12);
+        FontRenderContext frc = new FontRenderContext(null, false, false);
+        GlyphVector gv1 = f.createGlyphVector(frc, s1);
+        GlyphVector gv2 = f.createGlyphVector(frc, s2);
+        GlyphVector gv3 = f.createGlyphVector(frc, s3);
+        Rectangle2D bds1 = gv1.getVisualBounds();
+        Rectangle2D bds2 = gv2.getVisualBounds();
+        Rectangle2D bds3 = gv3.getVisualBounds();
+        GlyphVector gv4 = f.createGlyphVector(frc, " ");
+        Rectangle2D bds4 = gv4.getVisualBounds();
+        System.out.println(bds1);
+        System.out.println(bds2);
+        System.out.println(bds3);
+        System.out.println(bds4);
+
+        if (!bds1.equals(bds2)) {
+          throw new RuntimeException("Trailing space: Visual bounds differ");
+        }
+        if (bds2.getWidth() != bds3.getWidth()) {
+          throw new RuntimeException("Leading space: Visual widths differ");
+       }
+        if (!bds4.isEmpty()) {
+          throw new RuntimeException("Non empty bounds for space");
+       }
+    }
+}
--- a/langtools/.hgtags	Wed Dec 09 14:33:55 2009 +0300
+++ b/langtools/.hgtags	Thu Dec 10 09:46:13 2009 -0800
@@ -50,3 +50,4 @@
 9596dff460935f09684c11d156ce591f92584f0d jdk7-b73
 1a66b08deed0459054b5b1bea3dfbead30d258fa jdk7-b74
 2485f5641ed0829205aaaeb31ad711c2c2ef0de3 jdk7-b75
+8fb9b4be3cb1574302acde90549a4d333ef51e93 jdk7-b76
--- a/langtools/src/share/classes/com/sun/tools/classfile/Attribute.java	Wed Dec 09 14:33:55 2009 +0300
+++ b/langtools/src/share/classes/com/sun/tools/classfile/Attribute.java	Thu Dec 10 09:46:13 2009 -0800
@@ -64,11 +64,6 @@
     public static final String StackMapTable            = "StackMapTable";
     public static final String Synthetic                = "Synthetic";
 
-    // JSR 277/294
-    public static final String Module                   = "Module";
-    public static final String ModuleExportTable        = "ModuleExportTable";
-    public static final String ModuleMemberTable        = "ModuleMemberTable";
-
     public static class Factory {
         public Factory() {
             // defer init of standardAttributeClasses until after options set up
@@ -78,10 +73,6 @@
             this.compat = compat;
         }
 
-        public void setJSR277(boolean jsr277) {
-            this.jsr277 = jsr277;
-        }
-
         public Attribute createAttribute(ClassReader cr, int name_index, byte[] data)
                 throws IOException {
             if (standardAttributes == null)
@@ -121,12 +112,6 @@
             standardAttributes.put(LocalVariableTable, LocalVariableTable_attribute.class);
             standardAttributes.put(LocalVariableTypeTable, LocalVariableTypeTable_attribute.class);
 
-            if (jsr277) {
-                standardAttributes.put(Module,            Module_attribute.class);
-                standardAttributes.put(ModuleExportTable, ModuleExportTable_attribute.class);
-                standardAttributes.put(ModuleMemberTable, ModuleMemberTable_attribute.class);
-            }
-
             if (!compat) { // old javap does not recognize recent attributes
                 standardAttributes.put(CompilationID, CompilationID_attribute.class);
                 standardAttributes.put(RuntimeInvisibleAnnotations, RuntimeInvisibleAnnotations_attribute.class);
@@ -148,7 +133,6 @@
 
         private Map<String,Class<? extends Attribute>> standardAttributes;
         private boolean compat; // don't support recent attrs in compatibility mode
-        private boolean jsr277; // support new jsr277 attrs
     }
 
     public static Attribute read(ClassReader cr) throws IOException {
@@ -201,9 +185,5 @@
         R visitStackMap(StackMap_attribute attr, P p);
         R visitStackMapTable(StackMapTable_attribute attr, P p);
         R visitSynthetic(Synthetic_attribute attr, P p);
-
-        R visitModule(Module_attribute attr, P p);
-        R visitModuleExportTable(ModuleExportTable_attribute attr, P p);
-        R visitModuleMemberTable(ModuleMemberTable_attribute attr, P p);
     }
 }
--- a/langtools/src/share/classes/com/sun/tools/classfile/ClassWriter.java	Wed Dec 09 14:33:55 2009 +0300
+++ b/langtools/src/share/classes/com/sun/tools/classfile/ClassWriter.java	Thu Dec 10 09:46:13 2009 -0800
@@ -449,25 +449,6 @@
             out.writeShort(entry.index);
         }
 
-        public Void visitModule(Module_attribute attr, ClassOutputStream out) {
-            out.writeShort(attr.module_name);
-            return null;
-        }
-
-        public Void visitModuleExportTable(ModuleExportTable_attribute attr, ClassOutputStream out) {
-            out.writeShort(attr.export_type_table.length);
-            for (int i: attr.export_type_table)
-                out.writeShort(i);
-            return null;
-        }
-
-        public Void visitModuleMemberTable(ModuleMemberTable_attribute attr, ClassOutputStream out) {
-            out.writeShort(attr.package_member_table.length);
-            for (int i: attr.package_member_table)
-                out.writeShort(i);
-            return null;
-        }
-
         public Void visitRuntimeVisibleAnnotations(RuntimeVisibleAnnotations_attribute attr, ClassOutputStream out) {
             annotationWriter.write(attr.annotations, out);
             return null;
--- a/langtools/src/share/classes/com/sun/tools/classfile/ModuleExportTable_attribute.java	Wed Dec 09 14:33:55 2009 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-/*
- * Copyright 2007-2008 Sun Microsystems, Inc.  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
- * particular file as subject to the "Classpath" exception as provided
- * by Sun 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
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 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.
- */
-
-package com.sun.tools.classfile;
-
-import java.io.IOException;
-
-/**
- * See JSR 277.
- *
- *  <p><b>This is NOT part of any API supported by Sun Microsystems.  If
- *  you write code that depends on this, you do so at your own risk.
- *  This code and its internal interfaces are subject to change or
- *  deletion without notice.</b>
- */
-public class ModuleExportTable_attribute extends Attribute {
-    ModuleExportTable_attribute(ClassReader cr, int name_index, int length) throws IOException {
-        super(name_index, length);
-        int export_type_length = cr.readUnsignedShort();
-        export_type_table = new int[export_type_length];
-        for (int i = 0; i < export_type_table.length; i++)
-            export_type_table[i] = cr.readUnsignedShort();
-    }
-
-    public ModuleExportTable_attribute(ConstantPool cp, int[] export_type_table)
-            throws ConstantPoolException {
-        this(cp.getUTF8Index(Attribute.ModuleExportTable), export_type_table);
-    }
-
-    public ModuleExportTable_attribute(int name_index, int[] export_type_table) {
-        super(name_index, 2 + 2 * export_type_table.length);
-        this.export_type_table = export_type_table;
-    }
-
-    public int getExportTypeCount() {
-        return export_type_table.length;
-    }
-
-    public String getExportTypeName(int index, ConstantPool constant_pool) throws ConstantPoolException {
-        return constant_pool.getUTF8Value(export_type_table[index]);
-    }
-
-    public <R, P> R accept(Visitor<R, P> visitor, P p) {
-        return visitor.visitModuleExportTable(this, p);
-    }
-
-    public final int[] export_type_table;
-}
--- a/langtools/src/share/classes/com/sun/tools/classfile/ModuleMemberTable_attribute.java	Wed Dec 09 14:33:55 2009 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-/*
- * Copyright 2007-2008 Sun Microsystems, Inc.  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
- * particular file as subject to the "Classpath" exception as provided
- * by Sun 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
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 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.
- */
-package com.sun.tools.classfile;
-
-import java.io.IOException;
-
-/**
- * See JSR 277.
- *
- *  <p><b>This is NOT part of any API supported by Sun Microsystems.  If
- *  you write code that depends on this, you do so at your own risk.
- *  This code and its internal interfaces are subject to change or
- *  deletion without notice.</b>
- */
-public class ModuleMemberTable_attribute extends Attribute {
-    ModuleMemberTable_attribute(ClassReader cr, int name_index, int length) throws IOException {
-        super(name_index, length);
-        int package_member_length = cr.readUnsignedShort();
-        package_member_table = new int[package_member_length];
-        for (int i = 0; i < package_member_table.length; i++)
-            package_member_table[i] = cr.readUnsignedShort();
-    }
-
-    public ModuleMemberTable_attribute(ConstantPool cp, int[] package_member_table)
-            throws ConstantPoolException {
-        this(cp.getUTF8Index(Attribute.ModuleMemberTable), package_member_table);
-    }
-
-    public ModuleMemberTable_attribute(int name_index, int[] package_member_table) {
-        super(name_index, 2 + 2 * package_member_table.length);
-        this.package_member_table = package_member_table;
-    }
-
-    public int getPackageMemberCount() {
-        return package_member_table.length;
-    }
-
-    public String getPackageMemberName(int index, ConstantPool constant_pool) throws ConstantPoolException {
-        return constant_pool.getUTF8Value(package_member_table[index]);
-    }
-
-    public <R, P> R accept(Visitor<R, P> visitor, P p) {
-        return visitor.visitModuleMemberTable(this, p);
-    }
-
-    public final int[] package_member_table;
-}
--- a/langtools/src/share/classes/com/sun/tools/classfile/Module_attribute.java	Wed Dec 09 14:33:55 2009 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-/*
- * Copyright 2007-2008 Sun Microsystems, Inc.  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
- * particular file as subject to the "Classpath" exception as provided
- * by Sun 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
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 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.
- */
-
-package com.sun.tools.classfile;
-
-import java.io.IOException;
-
-/**
- * See JSR 277.
- *
- *  <p><b>This is NOT part of any API supported by Sun Microsystems.  If
- *  you write code that depends on this, you do so at your own risk.
- *  This code and its internal interfaces are subject to change or
- *  deletion without notice.</b>
- */
-public class Module_attribute extends Attribute {
-    Module_attribute(ClassReader cr, int name_index, int length) throws IOException {
-        super(name_index, length);
-        module_name = cr.readUnsignedShort();
-    }
-
-    public Module_attribute(ConstantPool constant_pool, int module_name)
-            throws ConstantPoolException {
-        this(constant_pool.getUTF8Index(Attribute.Module), module_name);
-    }
-
-    public Module_attribute(int name_index, int module_name) {
-        super(name_index, 2);
-        this.module_name = module_name;
-    }
-
-    public String getModuleName(ConstantPool constant_pool) throws ConstantPoolException {
-        return constant_pool.getUTF8Value(module_name);
-    }
-
-    public <R, D> R accept(Visitor<R, D> visitor, D data) {
-        return visitor.visitModule(this, data);
-    }
-
-    public final int module_name;
-
-}
--- a/langtools/src/share/classes/com/sun/tools/javap/AttributeWriter.java	Wed Dec 09 14:33:55 2009 +0300
+++ b/langtools/src/share/classes/com/sun/tools/javap/AttributeWriter.java	Thu Dec 10 09:46:13 2009 -0800
@@ -45,9 +45,6 @@
 import com.sun.tools.classfile.LineNumberTable_attribute;
 import com.sun.tools.classfile.LocalVariableTable_attribute;
 import com.sun.tools.classfile.LocalVariableTypeTable_attribute;
-import com.sun.tools.classfile.ModuleExportTable_attribute;
-import com.sun.tools.classfile.ModuleMemberTable_attribute;
-import com.sun.tools.classfile.Module_attribute;
 import com.sun.tools.classfile.RuntimeInvisibleAnnotations_attribute;
 import com.sun.tools.classfile.RuntimeInvisibleParameterAnnotations_attribute;
 import com.sun.tools.classfile.RuntimeInvisibleTypeAnnotations_attribute;
@@ -372,63 +369,6 @@
         return null;
     }
 
-    public Void visitModule(Module_attribute attr, Void ignore) {
-        print("Module: #" + attr.module_name);
-        tab();
-        println("// " + getModuleName(attr));
-        return null;
-    }
-
-    String getModuleName(Module_attribute attr) {
-        try {
-            return attr.getModuleName(constant_pool);
-        } catch (ConstantPoolException e) {
-            return report(e);
-        }
-    }
-
-    public Void visitModuleExportTable(ModuleExportTable_attribute attr, Void ignore) {
-        println("ModuleExportTable:");
-        indent(+1);
-        println("Types: (" + attr.export_type_table.length + ")");
-        for (int i = 0; i < attr.export_type_table.length; i++) {
-            print("#" + attr.export_type_table[i]);
-            tab();
-            println("// " + getExportTypeName(attr, i));
-        }
-        indent(-1);
-        return null;
-    }
-
-    String getExportTypeName(ModuleExportTable_attribute attr, int index) {
-        try {
-            return attr.getExportTypeName(index, constant_pool);
-        } catch (ConstantPoolException e) {
-            return report(e);
-        }
-    }
-
-    public Void visitModuleMemberTable(ModuleMemberTable_attribute attr, Void ignore) {
-        println("ModuleMemberTable:");
-        indent(+1);
-        println("Packages: (" + attr.package_member_table.length + ")");
-        for (int i = 0; i < attr.package_member_table.length; i++) {
-            print("#" + attr.package_member_table[i]);
-            tab();
-            println("// " + getPackageMemberName(attr, i));
-        }
-        indent(-1);
-        return null;
-    }
-
-    String getPackageMemberName(ModuleMemberTable_attribute attr, int index) {
-        try {
-            return attr.getPackageMemberName(index, constant_pool);
-        } catch (ConstantPoolException e) {
-            return report(e);
-        }
-    }
-
     public Void visitRuntimeVisibleAnnotations(RuntimeVisibleAnnotations_attribute attr, Void ignore) {
         println("RuntimeVisibleAnnotations:");
         indent(+1);
--- a/langtools/src/share/classes/com/sun/tools/javap/JavapTask.java	Wed Dec 09 14:33:55 2009 +0300
+++ b/langtools/src/share/classes/com/sun/tools/javap/JavapTask.java	Thu Dec 10 09:46:13 2009 -0800
@@ -236,12 +236,6 @@
             }
         },
 
-        new Option(false, "-XDjsr277") {
-            void process(JavapTask task, String opt, String arg) {
-                task.options.jsr277 = true;
-            }
-        },
-
         new Option(false, "-XDdetails") {
             void process(JavapTask task, String opt, String arg) {
                 task.options.details = EnumSet.allOf(InstructionDetailWriter.Kind.class);
@@ -586,7 +580,6 @@
         sourceWriter.setFileManager(fileManager);
 
         attributeFactory.setCompat(options.compat);
-        attributeFactory.setJSR277(options.jsr277);
 
         boolean ok = true;
 
--- a/langtools/src/share/classes/com/sun/tools/javap/Options.java	Wed Dec 09 14:33:55 2009 +0300
+++ b/langtools/src/share/classes/com/sun/tools/javap/Options.java	Thu Dec 10 09:46:13 2009 -0800
@@ -90,5 +90,4 @@
     public int tabColumn = 40;    // column number for comments
 
     public boolean compat;             // bug-for-bug compatibility mode with old javap
-    public boolean jsr277;
 }