xref: /aosp_15_r20/dalvik/dx/tests/131-perf/ClassGen.java (revision 055d459012065f78d96b68be8421640240ddf631)
1*055d4590SKeyi Gui import java.io.File;
2*055d4590SKeyi Gui import java.io.PrintWriter;
3*055d4590SKeyi Gui 
4*055d4590SKeyi Gui public class ClassGen {
5*055d4590SKeyi Gui 
main(String... args)6*055d4590SKeyi Gui     public static void main(String... args) {
7*055d4590SKeyi Gui 
8*055d4590SKeyi Gui 	int start = 1;
9*055d4590SKeyi Gui         int end =   8024;
10*055d4590SKeyi Gui 	int fields =   4;
11*055d4590SKeyi Gui         int methods =   6;
12*055d4590SKeyi Gui 	if (args.length > 0) {
13*055d4590SKeyi Gui 	    start = Integer.parseInt(args[0]);
14*055d4590SKeyi Gui         }
15*055d4590SKeyi Gui 	if (args.length > 1) {
16*055d4590SKeyi Gui 	    end = Integer.parseInt(args[1]);
17*055d4590SKeyi Gui         }
18*055d4590SKeyi Gui 	if (args.length > 2) {
19*055d4590SKeyi Gui 	    fields = Integer.parseInt(args[2]);
20*055d4590SKeyi Gui         }
21*055d4590SKeyi Gui 	if (args.length > 3) {
22*055d4590SKeyi Gui 	    methods = Integer.parseInt(args[3]);
23*055d4590SKeyi Gui         }
24*055d4590SKeyi Gui 
25*055d4590SKeyi Gui 	for (int file = start; file <= end; file++) {
26*055d4590SKeyi Gui             try {
27*055d4590SKeyi Gui 	        File f = new File("src/Clazz" + file + ".java");
28*055d4590SKeyi Gui 	        PrintWriter pw = new PrintWriter(f);
29*055d4590SKeyi Gui 		pw.println("class Clazz" + file + " {");
30*055d4590SKeyi Gui 		for (int field = 1; field <= fields; field++) {
31*055d4590SKeyi Gui 		    pw.println("    public static int f" + field + ";");
32*055d4590SKeyi Gui 		}
33*055d4590SKeyi Gui 		for (int method = 1; method <= methods; method++) {
34*055d4590SKeyi Gui 		    pw.println("    boolean m" + method + "_" + (file%(end/2)) + "() {"
35*055d4590SKeyi Gui );
36*055d4590SKeyi Gui 		    pw.println("      int max = Thread.MAX_PRIORITY;");
37*055d4590SKeyi Gui 		    pw.println("      for (int i = 0; i < max; i++) {");
38*055d4590SKeyi Gui 		    pw.println("        System.out.println(\"Hello from: \" + Clazz"
39*055d4590SKeyi Gui                             + file + ".class + \".method" + method
40*055d4590SKeyi Gui                             + "() \" + Clazz" + (end-file+1) + ".f1);");
41*055d4590SKeyi Gui 		    pw.println("        Thread.dumpStack();");
42*055d4590SKeyi Gui 		    pw.println("      }");
43*055d4590SKeyi Gui 		    pw.println("      return Thread.holdsLock(this);");
44*055d4590SKeyi Gui 		    pw.println("    }");
45*055d4590SKeyi Gui 		}
46*055d4590SKeyi Gui 		pw.println("}");
47*055d4590SKeyi Gui                 pw.close();
48*055d4590SKeyi Gui             } catch(Exception ex) {
49*055d4590SKeyi Gui 		System.out.println("Ups");
50*055d4590SKeyi Gui             }
51*055d4590SKeyi Gui         }
52*055d4590SKeyi Gui     }
53*055d4590SKeyi Gui }
54