public final class jdk.tools.jaotc.amd64.AMD64InstructionDecoder extends jdk.tools.jaotc.InstructionDecoder
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.tools.jaotc.amd64.AMD64InstructionDecoder
super_class: jdk.tools.jaotc.InstructionDecoder
{
private boolean targetIs64Bit;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int currentEndOfInstruction;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: .line 32
ldc Ljdk/tools/jaotc/amd64/AMD64InstructionDecoder;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(jdk.vm.ci.code.TargetDescription);
descriptor: (Ljdk/vm/ci/code/TargetDescription;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // jdk.tools.jaotc.amd64.AMD64InstructionDecoder this
start local 1 // jdk.vm.ci.code.TargetDescription target
0: .line 81
aload 0 /* this */
invokespecial jdk.tools.jaotc.InstructionDecoder.<init>:()V
1: .line 82
aload 0 /* this */
aload 1 /* target */
getfield jdk.vm.ci.code.TargetDescription.wordSize:I
bipush 8
if_icmpne 2
iconst_1
goto 3
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder jdk.vm.ci.code.TargetDescription
StackMap stack: jdk.tools.jaotc.amd64.AMD64InstructionDecoder
2: iconst_0
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder jdk.vm.ci.code.TargetDescription
StackMap stack: jdk.tools.jaotc.amd64.AMD64InstructionDecoder int
3: putfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.targetIs64Bit:Z
4: .line 83
return
end local 1 // jdk.vm.ci.code.TargetDescription target
end local 0 // jdk.tools.jaotc.amd64.AMD64InstructionDecoder this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/tools/jaotc/amd64/AMD64InstructionDecoder;
0 5 1 target Ljdk/vm/ci/code/TargetDescription;
MethodParameters:
Name Flags
target
public int currentEndOfInstruction();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // jdk.tools.jaotc.amd64.AMD64InstructionDecoder this
0: .line 87
aload 0 /* this */
getfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.currentEndOfInstruction:I
ireturn
end local 0 // jdk.tools.jaotc.amd64.AMD64InstructionDecoder this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jaotc/amd64/AMD64InstructionDecoder;
public void decodePosition(byte[], int);
descriptor: ([BI)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=13, args_size=3
start local 0 // jdk.tools.jaotc.amd64.AMD64InstructionDecoder this
start local 1 // byte[] code
start local 2 // int pcOffset
0: .line 93
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 2
iload 2 /* pcOffset */
iflt 1
iload 2 /* pcOffset */
aload 1 /* code */
arraylength
if_icmplt 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 107
StackMap locals:
StackMap stack:
iload 2 /* pcOffset */
istore 3 /* ip */
start local 3 // int ip
3: .line 108
iconst_0
istore 4 /* is64bit */
start local 4 // boolean is64bit
4: .line 110
iconst_0
istore 5 /* hasDisp32 */
start local 5 // boolean hasDisp32
5: .line 111
iconst_0
istore 6 /* tailSize */
start local 6 // int tailSize
6: .line 113
iconst_1
istore 7 /* againAfterPrefix */
start local 7 // boolean againAfterPrefix
7: .line 115
goto 129
8: .line 116
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder byte[] int int int int int int
StackMap stack:
iconst_0
istore 7 /* againAfterPrefix */
9: .line 117
sipush 255
aload 1 /* code */
iload 3 /* ip */
iinc 3 /* ip */ 1
baload
iand
lookupswitch { // 101
0: 88
1: 88
2: 88
3: 88
8: 88
9: 88
10: 88
11: 88
15: 50
16: 88
17: 88
18: 88
19: 88
24: 88
25: 88
26: 88
27: 88
32: 88
33: 88
34: 88
35: 88
38: 10
40: 88
41: 88
42: 88
43: 88
46: 10
48: 88
49: 88
50: 88
51: 88
54: 10
56: 88
57: 88
58: 88
59: 88
62: 10
64: 14
65: 14
66: 14
67: 14
68: 14
69: 14
70: 14
71: 14
72: 17
73: 17
74: 17
75: 17
76: 17
77: 17
78: 17
79: 17
100: 10
101: 10
102: 25
103: 14
104: 23
105: 47
107: 90
128: 90
129: 78
131: 81
133: 88
135: 88
136: 21
137: 21
138: 21
139: 21
141: 88
143: 21
155: 84
184: 43
185: 43
186: 43
187: 43
188: 43
189: 43
190: 43
191: 43
193: 90
196: 93
197: 93
198: 90
199: 47
209: 116
211: 116
216: 116
217: 116
219: 116
220: 116
221: 116
222: 116
223: 116
232: 114
233: 114
240: 118
242: 120
243: 120
247: 88
255: 21
default: 128
}
10: .line 128
StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 11
aload 0 /* this */
getfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.targetIs64Bit:Z
ifeq 11
new java.lang.AssertionError
dup
ldc "shouldn't have that prefix"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
11: .line 129
StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 12
iload 3 /* ip */
iload 2 /* pcOffset */
iconst_1
iadd
if_icmpeq 12
new java.lang.AssertionError
dup
ldc "only one prefix allowed"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
12: .line 130
StackMap locals:
StackMap stack:
iconst_1
istore 7 /* againAfterPrefix */
13: .line 131
goto 129
14: .line 142
StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 15
aload 0 /* this */
getfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.targetIs64Bit:Z
ifne 15
new java.lang.AssertionError
dup
ldc "64bit prefixes"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
15: .line 143
StackMap locals:
StackMap stack:
iconst_1
istore 7 /* againAfterPrefix */
16: .line 144
goto 129
17: .line 154
StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 18
aload 0 /* this */
getfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.targetIs64Bit:Z
ifne 18
new java.lang.AssertionError
dup
ldc "64bit prefixes"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
18: .line 155
StackMap locals:
StackMap stack:
iconst_1
istore 4 /* is64bit */
19: .line 156
iconst_1
istore 7 /* againAfterPrefix */
20: .line 157
goto 129
21: .line 165
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
22: .line 166
goto 129
23: .line 169
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 3 /* ip */
iconst_4
iadd
putfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.currentEndOfInstruction:I
24: .line 170
return
25: .line 173
StackMap locals:
StackMap stack:
iconst_1
istore 8 /* againAfterSizePrefix2 */
start local 8 // boolean againAfterSizePrefix2
26: .line 174
goto 41
27: .line 175
StackMap locals: int
StackMap stack:
iconst_0
istore 8 /* againAfterSizePrefix2 */
28: .line 176
sipush 255
aload 1 /* code */
iload 3 /* ip */
iinc 3 /* ip */ 1
baload
iand
lookupswitch { // 20
15: 37
64: 29
65: 29
66: 29
67: 29
68: 29
69: 29
70: 29
71: 29
72: 29
73: 29
74: 29
75: 29
76: 29
77: 29
78: 29
79: 29
137: 32
139: 32
199: 34
default: 40
}
29: .line 193
StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 30
aload 0 /* this */
getfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.targetIs64Bit:Z
ifne 30
new java.lang.AssertionError
dup
ldc "64bit prefix found"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
30: .line 194
StackMap locals:
StackMap stack:
iconst_1
istore 8 /* againAfterSizePrefix2 */
31: .line 195
goto 41
32: .line 198
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
33: .line 199
goto 41
34: .line 201
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
35: .line 202
iconst_2
istore 6 /* tailSize */
36: .line 203
goto 41
37: .line 205
StackMap locals:
StackMap stack:
iinc 3 /* ip */ -1
38: .line 206
iconst_1
istore 7 /* againAfterPrefix */
39: .line 207
goto 41
40: .line 209
StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "should not reach here"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
41: .line 174
StackMap locals:
StackMap stack:
iload 8 /* againAfterSizePrefix2 */
ifne 27
42: .line 212
goto 129
end local 8 // boolean againAfterSizePrefix2
43: .line 222
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 3 /* ip */
iload 4 /* is64bit */
ifeq 44
bipush 8
goto 45
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder byte[] int int int int int int
StackMap stack: jdk.tools.jaotc.amd64.AMD64InstructionDecoder int
44: iconst_4
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder byte[] int int int int int int
StackMap stack: jdk.tools.jaotc.amd64.AMD64InstructionDecoder int int
45: iadd
putfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.currentEndOfInstruction:I
46: .line 223
return
47: .line 227
StackMap locals:
StackMap stack:
iconst_4
istore 6 /* tailSize */
48: .line 228
iconst_1
istore 5 /* hasDisp32 */
49: .line 229
goto 129
50: .line 232
StackMap locals:
StackMap stack:
sipush 255
aload 1 /* code */
iload 3 /* ip */
iinc 3 /* ip */ 1
baload
iand
lookupswitch { // 79
18: 63
40: 63
46: 63
47: 63
56: 55
58: 51
64: 65
65: 65
66: 65
67: 65
68: 65
69: 65
70: 65
71: 65
72: 65
73: 65
74: 65
75: 65
76: 65
77: 65
78: 65
79: 65
84: 63
85: 63
86: 63
87: 63
88: 63
89: 63
110: 63
112: 58
115: 61
126: 63
128: 75
129: 75
130: 75
131: 75
132: 75
133: 75
134: 75
135: 75
136: 75
137: 75
138: 75
139: 75
140: 75
141: 75
142: 75
143: 75
144: 65
145: 65
146: 65
147: 65
148: 65
149: 65
150: 65
151: 65
152: 65
153: 65
154: 65
155: 65
156: 65
157: 65
158: 65
159: 65
172: 72
173: 65
174: 63
175: 65
176: 65
177: 65
182: 65
183: 65
190: 65
191: 65
193: 65
196: 67
197: 70
199: 65
254: 63
default: 77
}
51: .line 234
StackMap locals:
StackMap stack:
iinc 3 /* ip */ 1
52: .line 235
iconst_1
istore 6 /* tailSize */
53: .line 236
iconst_1
istore 5 /* hasDisp32 */
54: .line 237
goto 129
55: .line 240
StackMap locals:
StackMap stack:
iinc 3 /* ip */ 1
56: .line 241
iconst_1
istore 5 /* hasDisp32 */
57: .line 242
goto 129
58: .line 245
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
59: .line 246
iconst_1
istore 6 /* tailSize */
60: .line 247
goto 129
61: .line 250
StackMap locals:
StackMap stack:
iconst_1
istore 6 /* tailSize */
62: .line 251
goto 129
63: .line 269
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
64: .line 270
goto 129
65: .line 314
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
66: .line 316
goto 129
67: .line 319
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
68: .line 320
iconst_1
istore 6 /* tailSize */
69: .line 321
goto 129
70: .line 324
StackMap locals:
StackMap stack:
iconst_1
istore 6 /* tailSize */
71: .line 325
goto 129
72: .line 328
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
73: .line 329
iconst_1
istore 6 /* tailSize */
74: .line 330
goto 129
75: .line 348
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 3 /* ip */
iconst_4
iadd
putfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.currentEndOfInstruction:I
76: .line 349
return
77: .line 351
StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "should not reach here"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
78: .line 358
StackMap locals:
StackMap stack:
iconst_4
istore 6 /* tailSize */
79: .line 359
iconst_1
istore 5 /* hasDisp32 */
80: .line 360
goto 129
81: .line 364
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
82: .line 365
iconst_1
istore 6 /* tailSize */
83: .line 366
goto 129
84: .line 369
StackMap locals:
StackMap stack:
sipush 255
aload 1 /* code */
iload 3 /* ip */
iinc 3 /* ip */ 1
baload
iand
tableswitch { // 217 - 217
217: 85
default: 87
}
85: .line 371
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
86: .line 372
goto 129
87: .line 374
StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "should not reach here"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
88: .line 414
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
89: .line 415
goto 129
90: .line 421
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
91: .line 422
iconst_1
istore 6 /* tailSize */
92: .line 423
goto 129
93: .line 427
StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 94
iload 3 /* ip */
iload 2 /* pcOffset */
iconst_1
iadd
if_icmpeq 94
new java.lang.AssertionError
dup
ldc "no prefixes allowed"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
94: .line 430
StackMap locals:
StackMap stack:
aload 1 /* code */
iload 2 /* pcOffset */
baload
sipush 255
iand
sipush 196
if_icmpne 101
95: .line 431
bipush 31
aload 1 /* code */
iload 3 /* ip */
baload
iand
istore 9 /* vexOpcode */
start local 9 // int vexOpcode
96: .line 432
iinc 3 /* ip */ 1
97: .line 433
sipush 128
aload 1 /* code */
iload 3 /* ip */
baload
iand
sipush 128
if_icmpne 98
iconst_1
goto 99
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder byte[] int int int int int int top int
StackMap stack:
98: iconst_0
StackMap locals:
StackMap stack: int
99: istore 4 /* is64bit */
100: .line 434
goto 102
end local 9 // int vexOpcode
101: .line 435
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder byte[] int int int int int int
StackMap stack:
iconst_1
istore 9 /* vexOpcode */
start local 9 // int vexOpcode
102: .line 437
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder byte[] int int int int int int top int
StackMap stack:
iinc 3 /* ip */ 1
103: .line 439
iload 9 /* vexOpcode */
tableswitch { // 1 - 3
1: 104
2: 110
3: 108
default: 110
}
104: .line 441
StackMap locals:
StackMap stack:
sipush 255
aload 1 /* code */
iload 3 /* ip */
baload
iand
lookupswitch { // 8
112: 105
113: 105
114: 105
115: 105
194: 105
196: 105
197: 105
198: 105
default: 107
}
105: .line 450
StackMap locals:
StackMap stack:
iconst_1
istore 6 /* tailSize */
106: .line 451
goto 111
107: .line 455
StackMap locals:
StackMap stack:
goto 111
108: .line 457
StackMap locals:
StackMap stack:
iconst_1
istore 6 /* tailSize */
109: .line 458
goto 111
110: .line 460
StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "should not reach here"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
111: .line 462
StackMap locals:
StackMap stack:
iinc 3 /* ip */ 1
112: .line 463
iconst_1
istore 5 /* hasDisp32 */
113: .line 464
goto 129
end local 9 // int vexOpcode
114: .line 468
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder byte[] int int int int int int
StackMap stack:
aload 0 /* this */
iload 3 /* ip */
iconst_4
iadd
putfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.currentEndOfInstruction:I
115: .line 469
return
116: .line 480
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
117: .line 481
goto 129
118: .line 484
StackMap locals:
StackMap stack:
iconst_1
istore 7 /* againAfterPrefix */
119: .line 485
goto 129
120: .line 489
StackMap locals:
StackMap stack:
sipush 255
aload 1 /* code */
iload 3 /* ip */
iinc 3 /* ip */ 1
baload
iand
tableswitch { // 64 - 79
64: 121
65: 121
66: 121
67: 121
68: 121
69: 121
70: 121
71: 121
72: 121
73: 121
74: 121
75: 121
76: 121
77: 121
78: 121
79: 121
default: 125
}
121: .line 506
StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 122
aload 0 /* this */
getfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.targetIs64Bit:Z
ifne 122
new java.lang.AssertionError
dup
ldc "found 64bit prefix"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
122: .line 507
StackMap locals:
StackMap stack:
iinc 3 /* ip */ 1
123: .line 508
iinc 3 /* ip */ 1
124: .line 509
goto 126
125: .line 511
StackMap locals:
StackMap stack:
iinc 3 /* ip */ 1
126: .line 513
StackMap locals:
StackMap stack:
iconst_1
istore 5 /* hasDisp32 */
127: .line 514
goto 129
128: .line 517
StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "should not reach here"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
129: .line 115
StackMap locals:
StackMap stack:
iload 7 /* againAfterPrefix */
ifne 8
130: .line 521
getstatic jdk.tools.jaotc.amd64.AMD64InstructionDecoder.$assertionsDisabled:Z
ifne 131
iload 5 /* hasDisp32 */
ifne 131
new java.lang.AssertionError
dup
ldc "(tw) not sure if this holds: instruction has no disp32 field"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
131: .line 524
StackMap locals:
StackMap stack:
sipush 255
aload 1 /* code */
iload 3 /* ip */
iinc 3 /* ip */ 1
baload
iand
istore 8 /* op2 */
start local 8 // int op2
132: .line 525
iload 8 /* op2 */
bipush 7
iand
istore 9 /* base */
start local 9 // int base
133: .line 526
iconst_m1
istore 10 /* op3 */
start local 10 // int op3
134: .line 527
iconst_4
istore 11 /* b100 */
start local 11 // int b100
135: .line 528
iconst_5
istore 12 /* b101 */
start local 12 // int b101
136: .line 529
iload 9 /* base */
iload 11 /* b100 */
if_icmpne 139
iload 8 /* op2 */
bipush 6
ishr
iconst_3
if_icmpeq 139
137: .line 530
sipush 255
aload 1 /* code */
iload 3 /* ip */
iinc 3 /* ip */ 1
baload
iand
istore 10 /* op3 */
138: .line 531
iload 10 /* op3 */
bipush 7
iand
istore 9 /* base */
139: .line 535
StackMap locals: jdk.tools.jaotc.amd64.AMD64InstructionDecoder byte[] int int int int int int int int int int int
StackMap stack:
iload 8 /* op2 */
bipush 6
ishr
tableswitch { // 0 - 3
0: 140
1: 143
2: 145
3: 147
default: 147
}
140: .line 542
StackMap locals:
StackMap stack:
iload 9 /* base */
iload 12 /* b101 */
if_icmpne 147
141: .line 543
iinc 3 /* ip */ 4
142: .line 545
goto 147
143: .line 551
StackMap locals:
StackMap stack:
iinc 3 /* ip */ 1
144: .line 552
goto 147
145: .line 558
StackMap locals:
StackMap stack:
iinc 3 /* ip */ 4
146: .line 559
goto 147
147: .line 566
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 3 /* ip */
iload 6 /* tailSize */
iadd
putfield jdk.tools.jaotc.amd64.AMD64InstructionDecoder.currentEndOfInstruction:I
148: .line 567
return
end local 12 // int b101
end local 11 // int b100
end local 10 // int op3
end local 9 // int base
end local 8 // int op2
end local 7 // boolean againAfterPrefix
end local 6 // int tailSize
end local 5 // boolean hasDisp32
end local 4 // boolean is64bit
end local 3 // int ip
end local 2 // int pcOffset
end local 1 // byte[] code
end local 0 // jdk.tools.jaotc.amd64.AMD64InstructionDecoder this
LocalVariableTable:
Start End Slot Name Signature
0 149 0 this Ljdk/tools/jaotc/amd64/AMD64InstructionDecoder;
0 149 1 code [B
0 149 2 pcOffset I
3 149 3 ip I
4 149 4 is64bit Z
5 149 5 hasDisp32 Z
6 149 6 tailSize I
7 149 7 againAfterPrefix Z
26 43 8 againAfterSizePrefix2 Z
96 101 9 vexOpcode I
102 114 9 vexOpcode I
132 149 8 op2 I
133 149 9 base I
134 149 10 op3 I
135 149 11 b100 I
136 149 12 b101 I
MethodParameters:
Name Flags
code final
pcOffset
}
SourceFile: "AMD64InstructionDecoder.java"
NestMembers:
jdk.tools.jaotc.amd64.AMD64InstructionDecoder$Prefix jdk.tools.jaotc.amd64.AMD64InstructionDecoder$VexOpcode jdk.tools.jaotc.amd64.AMD64InstructionDecoder$VexPrefix
InnerClasses:
private Prefix = jdk.tools.jaotc.amd64.AMD64InstructionDecoder$Prefix of jdk.tools.jaotc.amd64.AMD64InstructionDecoder
private VexOpcode = jdk.tools.jaotc.amd64.AMD64InstructionDecoder$VexOpcode of jdk.tools.jaotc.amd64.AMD64InstructionDecoder
private VexPrefix = jdk.tools.jaotc.amd64.AMD64InstructionDecoder$VexPrefix of jdk.tools.jaotc.amd64.AMD64InstructionDecoder