class jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter
super_class: java.lang.Object
{
final int[] code;
descriptor: [I
flags: (0x0010) ACC_FINAL
final int codeLength;
descriptor: I
flags: (0x0010) ACC_FINAL
final char[][] templates;
descriptor: [[C
flags: (0x0010) ACC_FINAL
java.lang.Object[] operands;
descriptor: [Ljava/lang/Object;
flags: (0x0000)
private static final java.lang.String[] OpCodeNames;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] OpCodeArgTypes;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: bipush 88
anewarray java.lang.String
dup
iconst_0
1: ldc "finish"
aastore
dup
iconst_1
2: ldc "end"
aastore
dup
iconst_2
3: ldc "exact1"
aastore
dup
iconst_3
4: ldc "exact2"
aastore
dup
iconst_4
5: ldc "exact3"
aastore
dup
iconst_5
6: ldc "exact4"
aastore
dup
bipush 6
7: ldc "exact5"
aastore
dup
bipush 7
8: ldc "exactn"
aastore
dup
bipush 8
9: ldc "exactmb2-n1"
aastore
dup
bipush 9
10: ldc "exactmb2-n2"
aastore
dup
bipush 10
11: ldc "exactmb2-n3"
aastore
dup
bipush 11
12: ldc "exactmb2-n"
aastore
dup
bipush 12
13: ldc "exactmb3n"
aastore
dup
bipush 13
14: ldc "exactmbn"
aastore
dup
bipush 14
15: ldc "exact1-ic"
aastore
dup
bipush 15
16: ldc "exactn-ic"
aastore
dup
bipush 16
17: ldc "cclass"
aastore
dup
bipush 17
18: ldc "cclass-mb"
aastore
dup
bipush 18
19: ldc "cclass-mix"
aastore
dup
bipush 19
20: ldc "cclass-not"
aastore
dup
bipush 20
21: ldc "cclass-mb-not"
aastore
dup
bipush 21
22: ldc "cclass-mix-not"
aastore
dup
bipush 22
23: ldc "cclass-node"
aastore
dup
bipush 23
24: ldc "anychar"
aastore
dup
bipush 24
25: ldc "anychar-ml"
aastore
dup
bipush 25
26: ldc "anychar*"
aastore
dup
bipush 26
27: ldc "anychar-ml*"
aastore
dup
bipush 27
28: ldc "anychar*-peek-next"
aastore
dup
bipush 28
29: ldc "anychar-ml*-peek-next"
aastore
dup
bipush 29
30: ldc "word"
aastore
dup
bipush 30
31: ldc "not-word"
aastore
dup
bipush 31
32: ldc "word-bound"
aastore
dup
bipush 32
33: ldc "not-word-bound"
aastore
dup
bipush 33
34: ldc "word-begin"
aastore
dup
bipush 34
35: ldc "word-end"
aastore
dup
bipush 35
36: ldc "begin-buf"
aastore
dup
bipush 36
37: ldc "end-buf"
aastore
dup
bipush 37
38: ldc "begin-line"
aastore
dup
bipush 38
39: ldc "end-line"
aastore
dup
bipush 39
40: ldc "semi-end-buf"
aastore
dup
bipush 40
41: ldc "begin-position"
aastore
dup
bipush 41
42: ldc "backref1"
aastore
dup
bipush 42
43: ldc "backref2"
aastore
dup
bipush 43
44: ldc "backrefn"
aastore
dup
bipush 44
45: ldc "backrefn-ic"
aastore
dup
bipush 45
46: ldc "backref_multi"
aastore
dup
bipush 46
47: ldc "backref_multi-ic"
aastore
dup
bipush 47
48: ldc "backref_at_level"
aastore
dup
bipush 48
49: ldc "mem-start"
aastore
dup
bipush 49
50: ldc "mem-start-push"
aastore
dup
bipush 50
51: ldc "mem-end-push"
aastore
dup
bipush 51
52: ldc "mem-end-push-rec"
aastore
dup
bipush 52
53: ldc "mem-end"
aastore
dup
bipush 53
54: ldc "mem-end-rec"
aastore
dup
bipush 54
55: ldc "fail"
aastore
dup
bipush 55
56: ldc "jump"
aastore
dup
bipush 56
57: ldc "push"
aastore
dup
bipush 57
58: ldc "pop"
aastore
dup
bipush 58
59: ldc "push-or-jump-e1"
aastore
dup
bipush 59
60: ldc "push-if-peek-next"
aastore
dup
bipush 60
61: ldc "repeat"
aastore
dup
bipush 61
62: ldc "repeat-ng"
aastore
dup
bipush 62
63: ldc "repeat-inc"
aastore
dup
bipush 63
64: ldc "repeat-inc-ng"
aastore
dup
bipush 64
65: ldc "repeat-inc-sg"
aastore
dup
bipush 65
66: ldc "repeat-inc-ng-sg"
aastore
dup
bipush 66
67: ldc "null-check-start"
aastore
dup
bipush 67
68: ldc "null-check-end"
aastore
dup
bipush 68
69: ldc "null-check-end-memst"
aastore
dup
bipush 69
70: ldc "null-check-end-memst-push"
aastore
dup
bipush 70
71: ldc "push-pos"
aastore
dup
bipush 71
72: ldc "pop-pos"
aastore
dup
bipush 72
73: ldc "push-pos-not"
aastore
dup
bipush 73
74: ldc "fail-pos"
aastore
dup
bipush 74
75: ldc "push-stop-bt"
aastore
dup
bipush 75
76: ldc "pop-stop-bt"
aastore
dup
bipush 76
77: ldc "look-behind"
aastore
dup
bipush 77
78: ldc "push-look-behind-not"
aastore
dup
bipush 78
79: ldc "fail-look-behind-not"
aastore
dup
bipush 79
80: ldc "call"
aastore
dup
bipush 80
81: ldc "return"
aastore
dup
bipush 81
82: ldc "state-check-push"
aastore
dup
bipush 82
83: ldc "state-check-push-or-jump"
aastore
dup
bipush 83
84: ldc "state-check"
aastore
dup
bipush 84
85: ldc "state-check-anychar*"
aastore
dup
bipush 85
86: ldc "state-check-anychar-ml*"
aastore
dup
bipush 86
87: ldc "set-option-push"
aastore
dup
bipush 87
88: ldc "set-option"
aastore
89: putstatic jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.OpCodeNames:[Ljava/lang/String;
90: bipush 88
newarray 10
dup
iconst_2
91: iconst_m1
iastore
dup
iconst_3
92: iconst_m1
iastore
dup
iconst_4
93: iconst_m1
iastore
dup
iconst_5
94: iconst_m1
iastore
dup
bipush 6
95: iconst_m1
iastore
dup
bipush 7
96: iconst_m1
iastore
dup
bipush 8
97: iconst_m1
iastore
dup
bipush 9
98: iconst_m1
iastore
dup
bipush 10
99: iconst_m1
iastore
dup
bipush 11
100: iconst_m1
iastore
dup
bipush 12
101: iconst_m1
iastore
dup
bipush 13
102: iconst_m1
iastore
dup
bipush 14
103: iconst_m1
iastore
dup
bipush 15
104: iconst_m1
iastore
dup
bipush 16
105: iconst_m1
iastore
dup
bipush 17
106: iconst_m1
iastore
dup
bipush 18
107: iconst_m1
iastore
dup
bipush 19
108: iconst_m1
iastore
dup
bipush 20
109: iconst_m1
iastore
dup
bipush 21
110: iconst_m1
iastore
dup
bipush 22
111: iconst_m1
iastore
dup
bipush 27
112: iconst_m1
iastore
dup
bipush 28
113: iconst_m1
iastore
dup
bipush 43
114: iconst_4
iastore
dup
bipush 44
115: iconst_m1
iastore
dup
bipush 45
116: iconst_m1
iastore
dup
bipush 46
117: iconst_m1
iastore
dup
bipush 47
118: iconst_m1
iastore
dup
bipush 48
119: iconst_4
iastore
dup
bipush 49
120: iconst_4
iastore
dup
bipush 50
121: iconst_4
iastore
dup
bipush 51
122: iconst_4
iastore
dup
bipush 52
123: iconst_4
iastore
dup
bipush 53
124: iconst_4
iastore
dup
bipush 55
125: iconst_1
iastore
dup
bipush 56
126: iconst_1
iastore
dup
bipush 58
127: iconst_m1
iastore
dup
bipush 59
128: iconst_m1
iastore
dup
bipush 60
129: iconst_m1
iastore
dup
bipush 61
130: iconst_m1
iastore
dup
bipush 62
131: iconst_4
iastore
dup
bipush 63
132: iconst_4
iastore
dup
bipush 64
133: iconst_4
iastore
dup
bipush 65
134: iconst_4
iastore
dup
bipush 66
135: iconst_4
iastore
dup
bipush 67
136: iconst_4
iastore
dup
bipush 68
137: iconst_4
iastore
dup
bipush 69
138: iconst_4
iastore
dup
bipush 72
139: iconst_1
iastore
dup
bipush 76
140: iconst_m1
iastore
dup
bipush 77
141: iconst_m1
iastore
dup
bipush 79
142: iconst_2
iastore
dup
bipush 81
143: iconst_m1
iastore
dup
bipush 82
144: iconst_m1
iastore
dup
bipush 83
145: bipush 6
iastore
dup
bipush 84
146: bipush 6
iastore
dup
bipush 85
147: bipush 6
iastore
dup
bipush 86
148: iconst_5
iastore
dup
bipush 87
149: iconst_5
iastore
150: putstatic jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.OpCodeArgTypes:[I
151: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(jdk.nashorn.internal.runtime.regexp.joni.Regex);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/Regex;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.Regex.code:[I
putfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
2: aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.Regex.codeLength:I
putfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.codeLength:I
3: aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.Regex.operands:[Ljava/lang/Object;
putfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.operands:[Ljava/lang/Object;
4: aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.Regex.templates:[[C
putfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.templates:[[C
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ByteCodePrinter;
0 6 1 regex Ljdk/nashorn/internal/runtime/regexp/joni/Regex;
MethodParameters:
Name Flags
regex final
public java.lang.String byteCodeListToString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.compiledByteCodeListToString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ByteCodePrinter;
private void pString(java.lang.StringBuilder, int, int);
descriptor: (Ljava/lang/StringBuilder;II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
1: aload 1
new java.lang.String
dup
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 3
iload 2
invokespecial java.lang.String.<init>:([III)V
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ByteCodePrinter;
0 3 1 sb Ljava/lang/StringBuilder;
0 3 2 len I
0 3 3 s I
MethodParameters:
Name Flags
sb final
len final
s final
private void pLenString(java.lang.StringBuilder, int, int);
descriptor: (Ljava/lang/StringBuilder;II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
1: aload 1
new java.lang.String
dup
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 3
iload 2
invokespecial java.lang.String.<init>:([III)V
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ByteCodePrinter;
0 3 1 sb Ljava/lang/StringBuilder;
0 3 2 len I
0 3 3 s I
MethodParameters:
Name Flags
sb final
len final
s final
private static void pLenStringFromTemplate(java.lang.StringBuilder, int, char[], int);
descriptor: (Ljava/lang/StringBuilder;I[CI)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
ldc ":T:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
1: aload 0
aload 2
iload 3
iload 1
invokevirtual java.lang.StringBuilder.append:([CII)Ljava/lang/StringBuilder;
pop
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 sb Ljava/lang/StringBuilder;
0 3 1 len I
0 3 2 tm [C
0 3 3 idx I
MethodParameters:
Name Flags
sb final
len final
tm final
idx final
public int compiledByteCodeToString(java.lang.StringBuilder, int);
descriptor: (Ljava/lang/StringBuilder;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=19, args_size=3
start local 0 start local 1 start local 2 0: iload 2
istore 13
start local 13 1: aload 1
ldc "["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.OpCodeNames:[Ljava/lang/String;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: getstatic jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.OpCodeArgTypes:[I
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
iaload
istore 14
start local 14 3: iload 13
istore 15
start local 15 4: iload 14
iconst_m1
if_icmpeq 26
5: iinc 13 1
6: iload 14
tableswitch { // 0 - 6
0: 7
1: 8
2: 11
3: 14
4: 17
5: 20
6: 23
default: 7
}
7: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int top top top top top top top top top top int int int
StackMap stack:
goto 158
8: StackMap locals:
StackMap stack:
aload 1
ldc ":("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: iinc 13 1
10: goto 158
11: StackMap locals:
StackMap stack:
aload 1
ldc ":("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: iinc 13 1
13: goto 158
14: StackMap locals:
StackMap stack:
aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
15: iinc 13 1
16: goto 158
17: StackMap locals:
StackMap stack:
aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
18: iinc 13 1
19: goto 158
20: StackMap locals:
StackMap stack:
aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
21: iinc 13 1
22: goto 158
23: StackMap locals:
StackMap stack:
aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
24: iinc 13 2
25: goto 158
26: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iinc 13 1
iaload
lookupswitch { // 29
2: 27
3: 29
4: 32
5: 35
6: 38
7: 41
14: 49
15: 52
16: 60
17: 72
18: 78
19: 66
20: 72
21: 78
22: 88
27: 27
28: 27
44: 93
45: 97
46: 97
47: 110
58: 135
59: 135
60: 129
61: 129
76: 141
77: 145
81: 151
82: 151
default: 157
}
27: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_1
iload 13
iinc 13 1
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pString:(Ljava/lang/StringBuilder;II)V
28: goto 158
29: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_2
iload 13
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pString:(Ljava/lang/StringBuilder;II)V
30: iinc 13 2
31: goto 158
32: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_3
iload 13
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pString:(Ljava/lang/StringBuilder;II)V
33: iinc 13 3
34: goto 158
35: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_4
iload 13
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pString:(Ljava/lang/StringBuilder;II)V
36: iinc 13 4
37: goto 158
38: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_5
iload 13
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pString:(Ljava/lang/StringBuilder;II)V
39: iinc 13 5
40: goto 158
41: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 3
start local 3 42: iinc 13 1
43: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 11
start local 11 44: iinc 13 1
45: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 12
start local 12 46: iinc 13 1
47: aload 1
iload 3
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.templates:[[C
iload 11
aaload
iload 12
invokestatic jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pLenStringFromTemplate:(Ljava/lang/StringBuilder;I[CI)V
48: goto 158
end local 12 end local 11 end local 3 49: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_1
iload 13
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pString:(Ljava/lang/StringBuilder;II)V
50: iinc 13 1
51: goto 158
52: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 3
start local 3 53: iinc 13 1
54: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 11
start local 11 55: iinc 13 1
56: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 12
start local 12 57: iinc 13 1
58: aload 1
iload 3
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.templates:[[C
iload 11
aaload
iload 12
invokestatic jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pLenStringFromTemplate:(Ljava/lang/StringBuilder;I[CI)V
59: goto 158
end local 12 end local 11 end local 3 60: StackMap locals:
StackMap stack:
new jdk.nashorn.internal.runtime.regexp.joni.BitSet
dup
invokespecial jdk.nashorn.internal.runtime.regexp.joni.BitSet.<init>:()V
astore 9
start local 9 61: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
aload 9
getfield jdk.nashorn.internal.runtime.regexp.joni.BitSet.bits:[I
iconst_0
bipush 8
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
62: aload 9
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.BitSet.numOn:()I
istore 4
start local 4 63: iinc 13 8
64: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
65: goto 158
end local 9 end local 4 66: StackMap locals:
StackMap stack:
new jdk.nashorn.internal.runtime.regexp.joni.BitSet
dup
invokespecial jdk.nashorn.internal.runtime.regexp.joni.BitSet.<init>:()V
astore 9
start local 9 67: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
aload 9
getfield jdk.nashorn.internal.runtime.regexp.joni.BitSet.bits:[I
iconst_0
bipush 8
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
68: aload 9
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.BitSet.numOn:()I
istore 4
start local 4 69: iinc 13 8
70: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
71: goto 158
end local 9 end local 4 72: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 3
start local 3 73: iinc 13 1
74: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 8
start local 8 75: iload 13
iload 3
iadd
istore 13
76: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 8
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
77: goto 158
end local 8 end local 3 78: StackMap locals:
StackMap stack:
new jdk.nashorn.internal.runtime.regexp.joni.BitSet
dup
invokespecial jdk.nashorn.internal.runtime.regexp.joni.BitSet.<init>:()V
astore 9
start local 9 79: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
aload 9
getfield jdk.nashorn.internal.runtime.regexp.joni.BitSet.bits:[I
iconst_0
bipush 8
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
80: aload 9
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.BitSet.numOn:()I
istore 4
start local 4 81: iinc 13 8
82: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 3
start local 3 83: iinc 13 1
84: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 8
start local 8 85: iload 13
iload 3
iadd
istore 13
86: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 8
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
87: goto 158
end local 9 end local 8 end local 4 end local 3 88: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.operands:[Ljava/lang/Object;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
aaload
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.CClassNode
astore 10
start local 10 89: iinc 13 1
90: aload 10
getfield jdk.nashorn.internal.runtime.regexp.joni.ast.CClassNode.bs:Ljdk/nashorn/internal/runtime/regexp/joni/BitSet;
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.BitSet.numOn:()I
istore 4
start local 4 91: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
92: goto 158
end local 10 end local 4 93: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 5
start local 5 94: iinc 13 1
95: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
96: goto 158
end local 5 97: StackMap locals:
StackMap stack:
aload 1
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
98: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 3
start local 3 99: iinc 13 1
100: iconst_0
istore 16
start local 16 101: goto 108
102: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int int top top top top top top top top top int int int int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 5
start local 5 103: iinc 13 1
104: iload 16
ifle 106
105: aload 1
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
106: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int int top int top top top top top top top int int int int
StackMap stack:
aload 1
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
107: iinc 16 1
end local 5 StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int int top top top top top top top top top int int int int
StackMap stack:
108: iload 16
iload 3
if_icmplt 102
end local 16 109: goto 158
end local 3 110: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int top top top top top top top top top top int int int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 16
start local 16 111: iinc 13 1
112: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 16
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
113: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 17
start local 17 114: iinc 13 1
115: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 17
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
116: aload 1
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
117: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 3
start local 3 118: iinc 13 1
119: iconst_0
istore 18
start local 18 120: goto 127
121: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int int top top top top top top top top top int int int int int int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 5
start local 5 122: iinc 13 1
123: iload 18
ifle 125
124: aload 1
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
125: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int int top int top top top top top top top int int int int int int
StackMap stack:
aload 1
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
126: iinc 18 1
end local 5 StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int int top top top top top top top top top int int int int int int
StackMap stack:
127: iload 18
iload 3
if_icmplt 121
end local 18 128: goto 158
end local 17 end local 16 end local 3 129: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int top top top top top top top top top top int int int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 5
start local 5 130: iinc 13 1
131: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 6
start local 6 132: iinc 13 1
133: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
134: goto 158
end local 6 end local 5 135: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 6
start local 6 136: iinc 13 1
137: aload 1
ldc ":("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
138: aload 0
aload 1
iconst_1
iload 13
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.pString:(Ljava/lang/StringBuilder;II)V
139: iinc 13 1
140: goto 158
end local 6 141: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 3
start local 3 142: iinc 13 1
143: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
144: goto 158
end local 3 145: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 6
start local 6 146: iinc 13 1
147: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 3
start local 3 148: iinc 13 1
149: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
150: goto 158
end local 6 end local 3 151: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 7
start local 7 152: iinc 13 1
153: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iload 13
iaload
istore 6
start local 6 154: iinc 13 1
155: aload 1
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 7
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
156: goto 158
end local 7 end local 6 157: StackMap locals:
StackMap stack:
new jdk.nashorn.internal.runtime.regexp.joni.exception.InternalException
dup
new java.lang.StringBuilder
dup
ldc "undefined code: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.code:[I
iinc 13 -1
iload 13
iaload
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial jdk.nashorn.internal.runtime.regexp.joni.exception.InternalException.<init>:(Ljava/lang/String;)V
athrow
158: StackMap locals:
StackMap stack:
aload 1
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
159: iload 13
ireturn
end local 15 end local 14 end local 13 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 160 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ByteCodePrinter;
0 160 1 sb Ljava/lang/StringBuilder;
0 160 2 bptr I
42 49 3 len I
53 60 3 len I
73 78 3 len I
83 88 3 len I
99 110 3 len I
118 129 3 len I
142 145 3 len I
148 151 3 len I
63 66 4 n I
69 72 4 n I
81 88 4 n I
91 93 4 n I
94 97 5 mem I
103 108 5 mem I
122 127 5 mem I
130 135 5 mem I
132 135 6 addr I
136 141 6 addr I
146 151 6 addr I
154 157 6 addr I
152 157 7 scn I
75 78 8 cod I
85 88 8 cod I
61 66 9 bs Ljdk/nashorn/internal/runtime/regexp/joni/BitSet;
67 72 9 bs Ljdk/nashorn/internal/runtime/regexp/joni/BitSet;
79 88 9 bs Ljdk/nashorn/internal/runtime/regexp/joni/BitSet;
89 93 10 cc Ljdk/nashorn/internal/runtime/regexp/joni/ast/CClassNode;
44 49 11 tm I
55 60 11 tm I
46 49 12 idx I
57 60 12 idx I
1 160 13 bp I
3 160 14 argType I
4 160 15 ip I
101 109 16 i I
111 129 16 option I
114 129 17 level I
120 128 18 i I
MethodParameters:
Name Flags
sb final
bptr final
private java.lang.String compiledByteCodeListToString();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: aload 1
ldc "code length: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.codeLength:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: iconst_0
istore 2
start local 2 3: iconst_0
istore 3
start local 3 4: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.codeLength:I
istore 4
start local 4 5: goto 12
6: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int int int
StackMap stack:
iinc 2 1
7: iload 3
ifle 11
8: aload 1
iload 2
iconst_5
irem
ifne 9
ldc "\n"
goto 10
StackMap locals:
StackMap stack: java.lang.StringBuilder
9: ldc " "
StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter java.lang.StringBuilder int int int
StackMap stack: java.lang.StringBuilder java.lang.String
10: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
11: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 3
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ByteCodePrinter.compiledByteCodeToString:(Ljava/lang/StringBuilder;I)I
istore 3
12: StackMap locals:
StackMap stack:
iload 3
iload 4
if_icmplt 6
13: aload 1
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
14: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ByteCodePrinter;
1 15 1 sb Ljava/lang/StringBuilder;
3 15 2 ncode I
4 15 3 bp I
5 15 4 end I
}
SourceFile: "ByteCodePrinter.java"