better
authoradam <adam@megacz.com>
Wed, 25 Feb 2004 10:02:58 +0000 (10:02 +0000)
committeradam <adam@megacz.com>
Wed, 25 Feb 2004 10:02:58 +0000 (10:02 +0000)
darcs-hash:20040225100258-5007d-9d47b77fb811f3ac3582534b2c43497249574381.gz

src/org/ibex/util/BytecodePruner.java

index eb3040c..f9a3b64 100644 (file)
@@ -75,8 +75,8 @@ public class BytecodePruner {
         // we call start(), but the VM calls run()...
         bcp.loadMethod("java.lang.Thread.run");
         bcp.loadAllMethods("java.lang.SecurityContext");
-        bcp.visitJavaClass(repo.loadClass("java.awt.AWTPermission"));
-        bcp.visitJavaClass(repo.loadClass("gnu.classpath.Configuration"));
+        //bcp.visitJavaClass(repo.loadClass("java.awt.AWTPermission"));
+        //bcp.visitJavaClass(repo.loadClass("gnu.classpath.Configuration"));
         bcp.loadAllMethods("java.lang.ThreadDeath");
 
         bcp.loadAllMethods("java.util.Hashtable$HashIterator");
@@ -109,7 +109,6 @@ public class BytecodePruner {
                 bcp.visitJavaMethod(repo.loadClass("org.ibex.plat.Linux"), meths[i]);
         }
         System.out.println();
-
         System.out.println("Dumping...");
 
         StringTokenizer st = new StringTokenizer(s[0], ":");
@@ -213,7 +212,6 @@ public class BytecodePruner {
     }
     public void load(Type t) throws Exception {
         if (t == null) return;
-        //String sig = t.getSignature();
         if (t instanceof ArrayType) load(((ArrayType)t).getElementType());
         if (!(t instanceof ObjectType)) return;
         load(((ObjectType)t).getClassName());
@@ -236,18 +234,19 @@ public class BytecodePruner {
     public static int level = 0;
     public void visitJavaMethod(JavaClass jc, Method method) throws Exception {
         visitJavaClass(jc);
+        /*
         if (jc.getClassName().equals("java.util.Date") && method.getName().equals("readObject")) return;
+        */
         if (jc.getClassName().indexOf("SharedLib") != -1) return;
         if (jc.getClassName().indexOf("Datagram") != -1) return;
         if (dest.contains(method)) return;
 
-        // gcj bug; gcj can't compile this method from a .class file input
-        //if (jc.getClassName().equals("java.lang.System") && method.getName().equals("runFinalizersOnExit")) return;
-
+        /*
         // HACK (okay?)
         // not inferrable: CNI call to abstract method
         if (jc.getClassName().equals("java.util.TimeZone") && method.getName().equals("getDefaultTimeZoneId"))
             loadMethod("java.util.SimpleTimeZone.useDaylightTime");
+        */
         
         dest.add(method);
         level += 2;