Skip to content

Instantly share code, notes, and snippets.

@tuchida
Created June 29, 2021 10:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tuchida/7dda6b1ea8476e24c4fddc7b8e3229b1 to your computer and use it in GitHub Desktop.
Save tuchida/7dda6b1ea8476e24c4fddc7b8e3229b1 to your computer and use it in GitHub Desktop.
diff --git a/src/org/mozilla/javascript/optimizer/Codegen.java b/src/org/mozilla/javascript/optimizer/Codegen.java
index 7e518cc3..99901b1f 100644
--- a/src/org/mozilla/javascript/optimizer/Codegen.java
+++ b/src/org/mozilla/javascript/optimizer/Codegen.java
@@ -301,6 +301,11 @@ public class Codegen implements Evaluator {
emitTemplateLiteralInit(cfw);
emitConstantDudeInitializers(cfw);
+ try {
+ java.nio.file.Files.write(java.nio.file.Paths.get("try.class"), cfw.toByteArray());
+ } catch (java.io.IOException e) {
+ }
+
return cfw.toByteArray();
}
Classfile /home/uchida/data/src/rhino/try.class
Last modified 2021/06/29; size 4273 bytes
MD5 checksum 71ab4cb630fcdaae1d71914e953f2787
public class org.mozilla.javascript.gen.try_js_1 extends org.mozilla.javascript.NativeFunction implements org.mozilla.javascript.Script
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_SUPER
Constant pool:
#1 = Utf8 org/mozilla/javascript/gen/try_js_1
#2 = Class #1 // org/mozilla/javascript/gen/try_js_1
#3 = Utf8 org/mozilla/javascript/NativeFunction
#4 = Class #3 // org/mozilla/javascript/NativeFunction
#5 = Utf8 _id
#6 = Utf8 I
#7 = Utf8 org/mozilla/javascript/Script
#8 = Class #7 // org/mozilla/javascript/Script
#9 = Utf8 <init>
#10 = Utf8 ()V
#11 = NameAndType #9:#10 // "<init>":()V
#12 = Methodref #4.#11 // org/mozilla/javascript/NativeFunction."<init>":()V
#13 = NameAndType #5:#6 // _id:I
#14 = Fieldref #2.#13 // org/mozilla/javascript/gen/try_js_1._id:I
#15 = Utf8 Code
#16 = Utf8 StackMapTable
#17 = Utf8 main
#18 = Utf8 ([Ljava/lang/String;)V
#19 = NameAndType #9:#10 // "<init>":()V
#20 = Methodref #2.#19 // org/mozilla/javascript/gen/try_js_1."<init>":()V
#21 = Utf8 (Lorg/mozilla/javascript/Script;[Ljava/lang/String;)V
#22 = NameAndType #17:#21 // main:(Lorg/mozilla/javascript/Script;[Ljava/lang/String;)V
#23 = Utf8 org/mozilla/javascript/optimizer/OptRuntime
#24 = Class #23 // org/mozilla/javascript/optimizer/OptRuntime
#25 = Methodref #24.#22 // org/mozilla/javascript/optimizer/OptRuntime.main:(Lorg/mozilla/javascript/Script;[Ljava/lang/String;)V
#26 = Utf8 [Ljava/lang/String;
#27 = Class #26 // "[Ljava/lang/String;"
#28 = Utf8 exec
#29 = Utf8 (Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object;
#30 = Utf8 call
#31 = Utf8 (Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
#32 = NameAndType #30:#31 // call:(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
#33 = Methodref #2.#32 // org/mozilla/javascript/gen/try_js_1.call:(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
#34 = Utf8 org/mozilla/javascript/Context
#35 = Class #34 // org/mozilla/javascript/Context
#36 = Utf8 org/mozilla/javascript/Scriptable
#37 = Class #36 // org/mozilla/javascript/Scriptable
#38 = Utf8 java/lang/Object
#39 = Class #38 // java/lang/Object
#40 = Utf8 hasTopCall
#41 = Utf8 (Lorg/mozilla/javascript/Context;)Z
#42 = NameAndType #40:#41 // hasTopCall:(Lorg/mozilla/javascript/Context;)Z
#43 = Utf8 org/mozilla/javascript/ScriptRuntime
#44 = Class #43 // org/mozilla/javascript/ScriptRuntime
#45 = Methodref #44.#42 // org/mozilla/javascript/ScriptRuntime.hasTopCall:(Lorg/mozilla/javascript/Context;)Z
#46 = Utf8 doTopCall
#47 = Utf8 (Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;Z)Ljava/lang/Object;
#48 = NameAndType #46:#47 // doTopCall:(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;Z)Ljava/lang/Object;
#49 = Methodref #44.#48 // org/mozilla/javascript/ScriptRuntime.doTopCall:(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;Z)Ljava/lang/Object;
#50 = Utf8 _c_script_0
#51 = Utf8 (Lorg/mozilla/javascript/gen/try_js_1;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
#52 = NameAndType #50:#51 // _c_script_0:(Lorg/mozilla/javascript/gen/try_js_1;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
#53 = Methodref #2.#52 // org/mozilla/javascript/gen/try_js_1._c_script_0:(Lorg/mozilla/javascript/gen/try_js_1;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
#54 = Utf8 [Ljava/lang/Object;
#55 = Class #54 // "[Ljava/lang/Object;"
#56 = Utf8 getLanguageVersion
#57 = Utf8 ()I
#58 = Utf8 getFunctionName
#59 = Utf8 ()Ljava/lang/String;
#60 = Utf8
#61 = String #60 //
#62 = Utf8 java/lang/String
#63 = Class #62 // java/lang/String
#64 = Utf8 getParamCount
#65 = Utf8 getParamAndVarCount
#66 = Utf8 getParamOrVarName
#67 = Utf8 (I)Ljava/lang/String;
#68 = Utf8 getEncodedSource
#69 = Utf8 ŒTXTX2)ex1UYXTX2)ex2UY€Z'er1[XYYY€Z'er2[XY
#70 = String #69 // ŒTXTX2)ex1UYXTX2)ex2UY€Z'er1[XYYY€Z'er2[XY
#71 = Utf8 substring
#72 = Utf8 (II)Ljava/lang/String;
#73 = NameAndType #71:#72 // substring:(II)Ljava/lang/String;
#74 = Methodref #63.#73 // java/lang/String.substring:(II)Ljava/lang/String;
#75 = Utf8 getParamOrVarConst
#76 = Utf8 (I)Z
#77 = Utf8 isGeneratorFunction
#78 = Utf8 ()Z
#79 = Utf8 initScript
#80 = Utf8 (Lorg/mozilla/javascript/NativeFunction;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Z)V
#81 = NameAndType #79:#80 // initScript:(Lorg/mozilla/javascript/NativeFunction;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Z)V
#82 = Methodref #44.#81 // org/mozilla/javascript/ScriptRuntime.initScript:(Lorg/mozilla/javascript/NativeFunction;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Z)V
#83 = Utf8 instance
#84 = Utf8 Ljava/lang/Object;
#85 = NameAndType #83:#84 // instance:Ljava/lang/Object;
#86 = Utf8 org/mozilla/javascript/Undefined
#87 = Class #86 // org/mozilla/javascript/Undefined
#88 = Fieldref #87.#85 // org/mozilla/javascript/Undefined.instance:Ljava/lang/Object;
#89 = Utf8 ex1
#90 = String #89 // ex1
#91 = Utf8 org/mozilla/javascript/JavaScriptException
#92 = Class #91 // org/mozilla/javascript/JavaScriptException
#93 = Utf8 try.js
#94 = String #93 // try.js
#95 = Utf8 (Ljava/lang/Object;Ljava/lang/String;I)V
#96 = NameAndType #9:#95 // "<init>":(Ljava/lang/Object;Ljava/lang/String;I)V
#97 = Methodref #92.#96 // org/mozilla/javascript/JavaScriptException."<init>":(Ljava/lang/Object;Ljava/lang/String;I)V
#98 = Utf8 ex2
#99 = String #98 // ex2
#100 = Utf8 org/mozilla/javascript/EvaluatorException
#101 = Class #100 // org/mozilla/javascript/EvaluatorException
#102 = Utf8 org/mozilla/javascript/EcmaError
#103 = Class #102 // org/mozilla/javascript/EcmaError
#104 = Utf8 er1
#105 = String #104 // er1
#106 = Utf8 newCatchScope
#107 = Utf8 (Ljava/lang/Throwable;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#108 = NameAndType #106:#107 // newCatchScope:(Ljava/lang/Throwable;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#109 = Methodref #44.#108 // org/mozilla/javascript/ScriptRuntime.newCatchScope:(Ljava/lang/Throwable;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#110 = Utf8 enterWith
#111 = Utf8 (Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#112 = NameAndType #110:#111 // enterWith:(Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#113 = Methodref #44.#112 // org/mozilla/javascript/ScriptRuntime.enterWith:(Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#114 = Utf8 leaveWith
#115 = Utf8 (Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#116 = NameAndType #114:#115 // leaveWith:(Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#117 = Methodref #44.#116 // org/mozilla/javascript/ScriptRuntime.leaveWith:(Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
#118 = Utf8 er2
#119 = String #118 // er2
#120 = Utf8 java/lang/Throwable
#121 = Class #120 // java/lang/Throwable
#122 = Utf8 org/mozilla/javascript/RhinoException
#123 = Class #122 // org/mozilla/javascript/RhinoException
#124 = Utf8 LineNumberTable
{
private int _id;
descriptor: I
flags: ACC_PRIVATE
public org.mozilla.javascript.gen.try_js_1();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
0: aload_0
1: invokespecial #12 // Method org/mozilla/javascript/NativeFunction."<init>":()V
4: aload_0
5: iconst_0
6: putfield #14 // Field _id:I
9: return
StackMapTable: number_of_entries = 0
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
0: new #2 // class org/mozilla/javascript/gen/try_js_1
3: dup
4: invokespecial #20 // Method "<init>":()V
7: aload_0
8: invokestatic #25 // Method org/mozilla/javascript/optimizer/OptRuntime.main:(Lorg/mozilla/javascript/Script;[Ljava/lang/String;)V
11: return
StackMapTable: number_of_entries = 0
public final java.lang.Object exec(org.mozilla.javascript.Context, org.mozilla.javascript.Scriptable);
descriptor: (Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=3, args_size=3
0: aload_0
1: aload_1
2: aload_2
3: dup
4: aconst_null
5: invokevirtual #33 // Method call:(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
8: areturn
StackMapTable: number_of_entries = 0
public final java.lang.Object call(org.mozilla.javascript.Context, org.mozilla.javascript.Scriptable, org.mozilla.javascript.Scriptable, java.lang.Object[]);
descriptor: (Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=5, args_size=5
0: aload_1
1: invokestatic #45 // Method org/mozilla/javascript/ScriptRuntime.hasTopCall:(Lorg/mozilla/javascript/Context;)Z
4: ifne 18
7: aload_0
8: aload_1
9: aload_2
10: aload_3
11: aload 4
13: iconst_0
14: invokestatic #49 // Method org/mozilla/javascript/ScriptRuntime.doTopCall:(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;Z)Ljava/lang/Object;
17: areturn
18: aload_0
19: aload_1
20: aload_2
21: aload_3
22: aload 4
24: invokestatic #53 // Method _c_script_0:(Lorg/mozilla/javascript/gen/try_js_1;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
27: areturn
StackMapTable: number_of_entries = 1
frame_type = 18 /* same */
public int getLanguageVersion();
descriptor: ()I
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: sipush 180
3: ireturn
StackMapTable: number_of_entries = 0
public java.lang.String getFunctionName();
descriptor: ()Ljava/lang/String;
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: ldc #61 // String
2: areturn
StackMapTable: number_of_entries = 0
public int getParamCount();
descriptor: ()I
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: iconst_0
1: ireturn
StackMapTable: number_of_entries = 0
public int getParamAndVarCount();
descriptor: ()I
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: iconst_0
1: ireturn
StackMapTable: number_of_entries = 0
public java.lang.String getParamOrVarName(int);
descriptor: (I)Ljava/lang/String;
flags: ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
0: aconst_null
1: areturn
StackMapTable: number_of_entries = 0
public java.lang.String getEncodedSource();
descriptor: ()Ljava/lang/String;
flags: ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
0: ldc #70 // String ŒTXTX2)ex1UYXTX2)ex2UY€Z'er1[XYYY€Z'er2[XY
2: iconst_0
3: bipush 61
5: invokevirtual #74 // Method java/lang/String.substring:(II)Ljava/lang/String;
8: areturn
StackMapTable: number_of_entries = 0
public boolean getParamOrVarConst(int);
descriptor: (I)Z
flags: ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
0: iconst_0
1: ireturn
StackMapTable: number_of_entries = 0
protected boolean isGeneratorFunction();
descriptor: ()Z
flags: ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
0: iconst_0
1: ireturn
StackMapTable: number_of_entries = 0
private static java.lang.Object _c_script_0(org.mozilla.javascript.gen.try_js_1, org.mozilla.javascript.Context, org.mozilla.javascript.Scriptable, org.mozilla.javascript.Scriptable, java.lang.Object[]);
descriptor: (Lorg/mozilla/javascript/gen/try_js_1;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;
flags: ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=14, args_size=5
0: aload_0
1: aload_3
2: aload_1
3: aload_2
4: iconst_0
5: invokestatic #82 // Method org/mozilla/javascript/ScriptRuntime.initScript:(Lorg/mozilla/javascript/NativeFunction;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Z)V
8: getstatic #88 // Field org/mozilla/javascript/Undefined.instance:Ljava/lang/Object;
11: astore 5
13: aload_2
14: astore 7
16: aload_2
17: astore 9
19: ldc #90 // String ex1
21: new #92 // class org/mozilla/javascript/JavaScriptException
24: dup_x1
25: swap
26: ldc #94 // String try.js
28: iconst_3
29: invokespecial #97 // Method org/mozilla/javascript/JavaScriptException."<init>":(Ljava/lang/Object;Ljava/lang/String;I)V
32: athrow
33: nop
34: nop
35: nop
36: nop
37: nop
38: nop
39: nop
40: nop
41: nop
42: nop
43: nop
44: nop
45: nop
46: nop
47: nop
48: nop
49: nop
50: athrow
51: nop
52: nop
53: athrow
54: nop
55: nop
56: nop
57: nop
58: nop
59: nop
60: nop
61: nop
62: nop
63: nop
64: nop
65: nop
66: nop
67: nop
68: nop
69: nop
70: nop
71: nop
72: nop
73: nop
74: nop
75: nop
76: nop
77: nop
78: nop
79: nop
80: nop
81: athrow
82: nop
83: nop
84: nop
85: nop
86: athrow
87: nop
88: nop
89: athrow
90: nop
91: nop
92: nop
93: nop
94: nop
95: nop
96: nop
97: athrow
98: nop
99: nop
100: nop
101: nop
102: nop
103: nop
104: nop
105: athrow
106: nop
107: nop
108: nop
109: nop
110: nop
111: nop
112: nop
113: athrow
114: nop
115: nop
116: athrow
117: nop
118: nop
119: athrow
120: astore 8
122: aload 9
124: astore_2
125: aload_2
126: astore 11
128: ldc #99 // String ex2
130: new #92 // class org/mozilla/javascript/JavaScriptException
133: dup_x1
134: swap
135: ldc #94 // String try.js
137: bipush 6
139: invokespecial #97 // Method org/mozilla/javascript/JavaScriptException."<init>":(Ljava/lang/Object;Ljava/lang/String;I)V
142: athrow
143: nop
144: nop
145: athrow
146: aload 10
148: aconst_null
149: ldc #105 // String er1
151: aload_1
152: aload_2
153: invokestatic #109 // Method org/mozilla/javascript/ScriptRuntime.newCatchScope:(Ljava/lang/Throwable;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
156: astore 12
158: aload 12
160: aload_1
161: aload_2
162: invokestatic #113 // Method org/mozilla/javascript/ScriptRuntime.enterWith:(Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
165: astore_2
166: aload_2
167: invokestatic #117 // Method org/mozilla/javascript/ScriptRuntime.leaveWith:(Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
170: astore_2
171: goto 179
174: nop
175: nop
176: nop
177: nop
178: athrow
179: goto 206
182: astore 10
184: aload 11
186: astore_2
187: goto 146
190: astore 10
192: aload 11
194: astore_2
195: goto 146
198: astore 10
200: aload 11
202: astore_2
203: goto 146
206: aload 8
208: athrow
209: nop
210: nop
211: athrow
212: aload 6
214: aconst_null
215: ldc #119 // String er2
217: aload_1
218: aload_2
219: invokestatic #109 // Method org/mozilla/javascript/ScriptRuntime.newCatchScope:(Ljava/lang/Throwable;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
222: astore 8
224: aload 8
226: aload_1
227: aload_2
228: invokestatic #113 // Method org/mozilla/javascript/ScriptRuntime.enterWith:(Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
231: astore_2
232: aload_2
233: invokestatic #117 // Method org/mozilla/javascript/ScriptRuntime.leaveWith:(Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;
236: astore_2
237: goto 245
240: nop
241: nop
242: nop
243: nop
244: athrow
245: goto 272
248: astore 6
250: aload 7
252: astore_2
253: goto 212
256: astore 6
258: aload 7
260: astore_2
261: goto 212
264: astore 6
266: aload 7
268: astore_2
269: goto 212
272: aload 5
274: areturn
Exception table:
from to target type
19 33 120 any
36 54 90 Class org/mozilla/javascript/JavaScriptException
36 54 98 Class org/mozilla/javascript/EvaluatorException
36 54 106 Class org/mozilla/javascript/EcmaError
128 146 182 Class org/mozilla/javascript/JavaScriptException
128 146 190 Class org/mozilla/javascript/EvaluatorException
128 146 198 Class org/mozilla/javascript/EcmaError
16 212 248 Class org/mozilla/javascript/JavaScriptException
16 212 256 Class org/mozilla/javascript/EvaluatorException
16 212 264 Class org/mozilla/javascript/EcmaError
LineNumberTable:
line 11: 13
line 1: 13
line 1: 13
line 1: 16
line 2: 16
line 2: 19
line 3: 19
line 4: 33
line 5: 33
line 5: 36
line 6: 36
line 7: 66
line 7: 74
line 7: 74
line 4: 125
line 5: 125
line 5: 128
line 6: 128
line 7: 158
line 7: 166
line 7: 166
line 10: 224
line 10: 232
line 10: 232
StackMapTable: number_of_entries = 27
frame_type = 255 /* full_frame */
offset_delta = 33
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable ]
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 17
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;" ]
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 2
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable ]
stack = [ class java/lang/Throwable ]
frame_type = 91 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 68 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 66 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 71 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 71 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 71 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 66 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 2
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable, top, class org/mozilla/javascript/Scriptable ]
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 22
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable, class java/lang/Throwable, class org/mozilla/javascript/Scriptable, top, class org/mozilla/javascript/Scriptable ]
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 2
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable, class java/lang/Throwable, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/RhinoException, class org/mozilla/javascript/Scriptable ]
stack = []
frame_type = 255 /* full_frame */
offset_delta = 27
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable ]
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 4
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable, class java/lang/Throwable, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/RhinoException, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable ]
stack = []
frame_type = 255 /* full_frame */
offset_delta = 2
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable, class java/lang/Throwable, class org/mozilla/javascript/Scriptable, top, class org/mozilla/javascript/Scriptable ]
stack = [ class org/mozilla/javascript/JavaScriptException ]
frame_type = 71 /* same_locals_1_stack_item */
stack = [ class org/mozilla/javascript/EvaluatorException ]
frame_type = 71 /* same_locals_1_stack_item */
stack = [ class org/mozilla/javascript/EcmaError ]
frame_type = 255 /* full_frame */
offset_delta = 7
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable, class java/lang/Throwable, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/RhinoException, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable ]
stack = []
frame_type = 255 /* full_frame */
offset_delta = 2
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable ]
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 2
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, class org/mozilla/javascript/RhinoException, class org/mozilla/javascript/Scriptable ]
stack = []
frame_type = 255 /* full_frame */
offset_delta = 27
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;" ]
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 4
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, class org/mozilla/javascript/RhinoException, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable ]
stack = []
frame_type = 255 /* full_frame */
offset_delta = 2
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, top, class org/mozilla/javascript/Scriptable ]
stack = [ class org/mozilla/javascript/JavaScriptException ]
frame_type = 71 /* same_locals_1_stack_item */
stack = [ class org/mozilla/javascript/EvaluatorException ]
frame_type = 71 /* same_locals_1_stack_item */
stack = [ class org/mozilla/javascript/EcmaError ]
frame_type = 255 /* full_frame */
offset_delta = 7
locals = [ class org/mozilla/javascript/gen/try_js_1, class org/mozilla/javascript/Context, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable, class "[Ljava/lang/Object;", class java/lang/Object, class org/mozilla/javascript/RhinoException, class org/mozilla/javascript/Scriptable, class org/mozilla/javascript/Scriptable ]
stack = []
}
try{
try{
throw "ex1";
}finally{
try{
throw "ex2";
}catch(er1){
}
}
}catch(er2){
}
$ java -jar buildGradle/libs/rhino-1.7.14-SNAPSHOT.jar try.js
$ javap -v -p try.class > try.dump
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment