vm: implement new PUSH opcodes

This commit is contained in:
Evgenii Stratonikov 2020-04-21 16:45:48 +03:00
parent 2c39e6fcec
commit 008e6eb233
37 changed files with 453 additions and 596 deletions

View file

@ -8,105 +8,41 @@ type Opcode byte
// Viable list of supported instruction constants.
const (
// Constants
PUSH0 Opcode = 0x00
PUSHF Opcode = PUSH0
PUSHBYTES1 Opcode = 0x01
PUSHBYTES2 Opcode = 0x02
PUSHBYTES3 Opcode = 0x03
PUSHBYTES4 Opcode = 0x04
PUSHBYTES5 Opcode = 0x05
PUSHBYTES6 Opcode = 0x06
PUSHBYTES7 Opcode = 0x07
PUSHBYTES8 Opcode = 0x08
PUSHBYTES9 Opcode = 0x09
PUSHBYTES10 Opcode = 0x0A
PUSHBYTES11 Opcode = 0x0B
PUSHBYTES12 Opcode = 0x0C
PUSHBYTES13 Opcode = 0x0D
PUSHBYTES14 Opcode = 0x0E
PUSHBYTES15 Opcode = 0x0F
PUSHBYTES16 Opcode = 0x10
PUSHBYTES17 Opcode = 0x11
PUSHBYTES18 Opcode = 0x12
PUSHBYTES19 Opcode = 0x13
PUSHBYTES20 Opcode = 0x14
PUSHBYTES21 Opcode = 0x15
PUSHBYTES22 Opcode = 0x16
PUSHBYTES23 Opcode = 0x17
PUSHBYTES24 Opcode = 0x18
PUSHBYTES25 Opcode = 0x19
PUSHBYTES26 Opcode = 0x1A
PUSHBYTES27 Opcode = 0x1B
PUSHBYTES28 Opcode = 0x1C
PUSHBYTES29 Opcode = 0x1D
PUSHBYTES30 Opcode = 0x1E
PUSHBYTES31 Opcode = 0x1F
PUSHBYTES32 Opcode = 0x20
PUSHBYTES33 Opcode = 0x21
PUSHBYTES34 Opcode = 0x22
PUSHBYTES35 Opcode = 0x23
PUSHBYTES36 Opcode = 0x24
PUSHBYTES37 Opcode = 0x25
PUSHBYTES38 Opcode = 0x26
PUSHBYTES39 Opcode = 0x27
PUSHBYTES40 Opcode = 0x28
PUSHBYTES41 Opcode = 0x29
PUSHBYTES42 Opcode = 0x2A
PUSHBYTES43 Opcode = 0x2B
PUSHBYTES44 Opcode = 0x2C
PUSHBYTES45 Opcode = 0x2D
PUSHBYTES46 Opcode = 0x2E
PUSHBYTES47 Opcode = 0x2F
PUSHBYTES48 Opcode = 0x30
PUSHBYTES49 Opcode = 0x31
PUSHBYTES50 Opcode = 0x32
PUSHBYTES51 Opcode = 0x33
PUSHBYTES52 Opcode = 0x34
PUSHBYTES53 Opcode = 0x35
PUSHBYTES54 Opcode = 0x36
PUSHBYTES55 Opcode = 0x37
PUSHBYTES56 Opcode = 0x38
PUSHBYTES57 Opcode = 0x39
PUSHBYTES58 Opcode = 0x3A
PUSHBYTES59 Opcode = 0x3B
PUSHBYTES60 Opcode = 0x3C
PUSHBYTES61 Opcode = 0x3D
PUSHBYTES62 Opcode = 0x3E
PUSHBYTES63 Opcode = 0x3F
PUSHBYTES64 Opcode = 0x40
PUSHBYTES65 Opcode = 0x41
PUSHBYTES66 Opcode = 0x42
PUSHBYTES67 Opcode = 0x43
PUSHBYTES68 Opcode = 0x44
PUSHBYTES69 Opcode = 0x45
PUSHBYTES70 Opcode = 0x46
PUSHBYTES71 Opcode = 0x47
PUSHBYTES72 Opcode = 0x48
PUSHBYTES73 Opcode = 0x49
PUSHBYTES74 Opcode = 0x4A
PUSHBYTES75 Opcode = 0x4B
PUSHDATA1 Opcode = 0x4C
PUSHDATA2 Opcode = 0x4D
PUSHDATA4 Opcode = 0x4E
PUSHM1 Opcode = 0x4F
PUSHNULL Opcode = 0x50
PUSH1 Opcode = 0x51
PUSHT Opcode = PUSH1
PUSH2 Opcode = 0x52
PUSH3 Opcode = 0x53
PUSH4 Opcode = 0x54
PUSH5 Opcode = 0x55
PUSH6 Opcode = 0x56
PUSH7 Opcode = 0x57
PUSH8 Opcode = 0x58
PUSH9 Opcode = 0x59
PUSH10 Opcode = 0x5A
PUSH11 Opcode = 0x5B
PUSH12 Opcode = 0x5C
PUSH13 Opcode = 0x5D
PUSH14 Opcode = 0x5E
PUSH15 Opcode = 0x5F
PUSH16 Opcode = 0x60
PUSHINT8 Opcode = 0x00
PUSHINT16 Opcode = 0x01
PUSHINT32 Opcode = 0x02
PUSHINT64 Opcode = 0x03
PUSHINT128 Opcode = 0x04
PUSHINT256 Opcode = 0x05
PUSHNULL Opcode = 0x0B
PUSHDATA1 Opcode = 0x0C
PUSHDATA2 Opcode = 0x0D
PUSHDATA4 Opcode = 0x0E
PUSHM1 Opcode = 0x0F
PUSH0 Opcode = 0x10
PUSHF Opcode = PUSH0
PUSH1 Opcode = 0x11
PUSHT Opcode = PUSH1
PUSH2 Opcode = 0x12
PUSH3 Opcode = 0x13
PUSH4 Opcode = 0x14
PUSH5 Opcode = 0x15
PUSH6 Opcode = 0x16
PUSH7 Opcode = 0x17
PUSH8 Opcode = 0x18
PUSH9 Opcode = 0x19
PUSH10 Opcode = 0x1A
PUSH11 Opcode = 0x1B
PUSH12 Opcode = 0x1C
PUSH13 Opcode = 0x1D
PUSH14 Opcode = 0x1E
PUSH15 Opcode = 0x1F
PUSH16 Opcode = 0x20
OLDPUSH1 Opcode = 0x51
// Flow control
NOP Opcode = 0x61

View file

@ -1,4 +1,4 @@
// Code generated by "stringer -type=Opcode"; DO NOT EDIT.
// Code generated by "stringer -type Opcode"; DO NOT EDIT.
package opcode
@ -8,104 +8,36 @@ func _() {
// An "invalid array index" compiler error signifies that the constant values have changed.
// Re-run the stringer command to generate them again.
var x [1]struct{}
_ = x[PUSH0-0]
_ = x[PUSHF-0]
_ = x[PUSHBYTES1-1]
_ = x[PUSHBYTES2-2]
_ = x[PUSHBYTES3-3]
_ = x[PUSHBYTES4-4]
_ = x[PUSHBYTES5-5]
_ = x[PUSHBYTES6-6]
_ = x[PUSHBYTES7-7]
_ = x[PUSHBYTES8-8]
_ = x[PUSHBYTES9-9]
_ = x[PUSHBYTES10-10]
_ = x[PUSHBYTES11-11]
_ = x[PUSHBYTES12-12]
_ = x[PUSHBYTES13-13]
_ = x[PUSHBYTES14-14]
_ = x[PUSHBYTES15-15]
_ = x[PUSHBYTES16-16]
_ = x[PUSHBYTES17-17]
_ = x[PUSHBYTES18-18]
_ = x[PUSHBYTES19-19]
_ = x[PUSHBYTES20-20]
_ = x[PUSHBYTES21-21]
_ = x[PUSHBYTES22-22]
_ = x[PUSHBYTES23-23]
_ = x[PUSHBYTES24-24]
_ = x[PUSHBYTES25-25]
_ = x[PUSHBYTES26-26]
_ = x[PUSHBYTES27-27]
_ = x[PUSHBYTES28-28]
_ = x[PUSHBYTES29-29]
_ = x[PUSHBYTES30-30]
_ = x[PUSHBYTES31-31]
_ = x[PUSHBYTES32-32]
_ = x[PUSHBYTES33-33]
_ = x[PUSHBYTES34-34]
_ = x[PUSHBYTES35-35]
_ = x[PUSHBYTES36-36]
_ = x[PUSHBYTES37-37]
_ = x[PUSHBYTES38-38]
_ = x[PUSHBYTES39-39]
_ = x[PUSHBYTES40-40]
_ = x[PUSHBYTES41-41]
_ = x[PUSHBYTES42-42]
_ = x[PUSHBYTES43-43]
_ = x[PUSHBYTES44-44]
_ = x[PUSHBYTES45-45]
_ = x[PUSHBYTES46-46]
_ = x[PUSHBYTES47-47]
_ = x[PUSHBYTES48-48]
_ = x[PUSHBYTES49-49]
_ = x[PUSHBYTES50-50]
_ = x[PUSHBYTES51-51]
_ = x[PUSHBYTES52-52]
_ = x[PUSHBYTES53-53]
_ = x[PUSHBYTES54-54]
_ = x[PUSHBYTES55-55]
_ = x[PUSHBYTES56-56]
_ = x[PUSHBYTES57-57]
_ = x[PUSHBYTES58-58]
_ = x[PUSHBYTES59-59]
_ = x[PUSHBYTES60-60]
_ = x[PUSHBYTES61-61]
_ = x[PUSHBYTES62-62]
_ = x[PUSHBYTES63-63]
_ = x[PUSHBYTES64-64]
_ = x[PUSHBYTES65-65]
_ = x[PUSHBYTES66-66]
_ = x[PUSHBYTES67-67]
_ = x[PUSHBYTES68-68]
_ = x[PUSHBYTES69-69]
_ = x[PUSHBYTES70-70]
_ = x[PUSHBYTES71-71]
_ = x[PUSHBYTES72-72]
_ = x[PUSHBYTES73-73]
_ = x[PUSHBYTES74-74]
_ = x[PUSHBYTES75-75]
_ = x[PUSHDATA1-76]
_ = x[PUSHDATA2-77]
_ = x[PUSHDATA4-78]
_ = x[PUSHM1-79]
_ = x[PUSH1-81]
_ = x[PUSHT-81]
_ = x[PUSH2-82]
_ = x[PUSH3-83]
_ = x[PUSH4-84]
_ = x[PUSH5-85]
_ = x[PUSH6-86]
_ = x[PUSH7-87]
_ = x[PUSH8-88]
_ = x[PUSH9-89]
_ = x[PUSH10-90]
_ = x[PUSH11-91]
_ = x[PUSH12-92]
_ = x[PUSH13-93]
_ = x[PUSH14-94]
_ = x[PUSH15-95]
_ = x[PUSH16-96]
_ = x[PUSHINT8-0]
_ = x[PUSHINT16-1]
_ = x[PUSHINT32-2]
_ = x[PUSHINT64-3]
_ = x[PUSHINT128-4]
_ = x[PUSHINT256-5]
_ = x[PUSHNULL-11]
_ = x[PUSHDATA1-12]
_ = x[PUSHDATA2-13]
_ = x[PUSHDATA4-14]
_ = x[PUSHM1-15]
_ = x[PUSH0-16]
_ = x[PUSHF-16]
_ = x[PUSH1-17]
_ = x[PUSHT-17]
_ = x[PUSH2-18]
_ = x[PUSH3-19]
_ = x[PUSH4-20]
_ = x[PUSH5-21]
_ = x[PUSH6-22]
_ = x[PUSH7-23]
_ = x[PUSH8-24]
_ = x[PUSH9-25]
_ = x[PUSH10-26]
_ = x[PUSH11-27]
_ = x[PUSH12-28]
_ = x[PUSH13-29]
_ = x[PUSH14-30]
_ = x[PUSH15-31]
_ = x[PUSH16-32]
_ = x[NOP-97]
_ = x[JMP-98]
_ = x[JMPIF-99]
@ -115,6 +47,7 @@ func _() {
_ = x[APPCALL-103]
_ = x[SYSCALL-104]
_ = x[TAILCALL-105]
_ = x[ISNULL-112]
_ = x[DUPFROMALTSTACK-106]
_ = x[TOALTSTACK-107]
_ = x[FROMALTSTACK-108]
@ -196,193 +129,126 @@ func _() {
_ = x[THROWIFNOT-241]
}
const _Opcode_name = "PUSH0PUSHBYTES1PUSHBYTES2PUSHBYTES3PUSHBYTES4PUSHBYTES5PUSHBYTES6PUSHBYTES7PUSHBYTES8PUSHBYTES9PUSHBYTES10PUSHBYTES11PUSHBYTES12PUSHBYTES13PUSHBYTES14PUSHBYTES15PUSHBYTES16PUSHBYTES17PUSHBYTES18PUSHBYTES19PUSHBYTES20PUSHBYTES21PUSHBYTES22PUSHBYTES23PUSHBYTES24PUSHBYTES25PUSHBYTES26PUSHBYTES27PUSHBYTES28PUSHBYTES29PUSHBYTES30PUSHBYTES31PUSHBYTES32PUSHBYTES33PUSHBYTES34PUSHBYTES35PUSHBYTES36PUSHBYTES37PUSHBYTES38PUSHBYTES39PUSHBYTES40PUSHBYTES41PUSHBYTES42PUSHBYTES43PUSHBYTES44PUSHBYTES45PUSHBYTES46PUSHBYTES47PUSHBYTES48PUSHBYTES49PUSHBYTES50PUSHBYTES51PUSHBYTES52PUSHBYTES53PUSHBYTES54PUSHBYTES55PUSHBYTES56PUSHBYTES57PUSHBYTES58PUSHBYTES59PUSHBYTES60PUSHBYTES61PUSHBYTES62PUSHBYTES63PUSHBYTES64PUSHBYTES65PUSHBYTES66PUSHBYTES67PUSHBYTES68PUSHBYTES69PUSHBYTES70PUSHBYTES71PUSHBYTES72PUSHBYTES73PUSHBYTES74PUSHBYTES75PUSHDATA1PUSHDATA2PUSHDATA4PUSHM1PUSH1PUSH2PUSH3PUSH4PUSH5PUSH6PUSH7PUSH8PUSH9PUSH10PUSH11PUSH12PUSH13PUSH14PUSH15PUSH16NOPJMPJMPIFJMPIFNOTCALLRETAPPCALLSYSCALLTAILCALLDUPFROMALTSTACKTOALTSTACKFROMALTSTACKXDROPXSWAPXTUCKDEPTHDROPDUPNIPOVERPICKROLLROTSWAPTUCKCATSUBSTRLEFTRIGHTSIZEINVERTANDORXOREQUALINCDECSIGNNEGATEABSNOTNZADDSUBMULDIVMODSHLSHRBOOLANDBOOLORNUMEQUALNUMNOTEQUALLTGTLTEGTEMINMAXWITHINSHA1SHA256HASH160HASH256CHECKSIGVERIFYCHECKMULTISIGARRAYSIZEPACKUNPACKPICKITEMSETITEMNEWARRAYNEWSTRUCTNEWMAPAPPENDREVERSEREMOVEHASKEYKEYSVALUESCALLICALLECALLEDCALLETCALLEDTTHROWTHROWIFNOT"
const _Opcode_name = "PUSHINT8PUSHINT16PUSHINT32PUSHINT64PUSHINT128PUSHINT256PUSHNULLPUSHDATA1PUSHDATA2PUSHDATA4PUSHM1PUSH0PUSH1PUSH2PUSH3PUSH4PUSH5PUSH6PUSH7PUSH8PUSH9PUSH10PUSH11PUSH12PUSH13PUSH14PUSH15PUSH16NOPJMPJMPIFJMPIFNOTCALLRETAPPCALLSYSCALLTAILCALLDUPFROMALTSTACKTOALTSTACKFROMALTSTACKXDROPISNULLXSWAPXTUCKDEPTHDROPDUPNIPOVERPICKROLLROTSWAPTUCKCATSUBSTRLEFTRIGHTSIZEINVERTANDORXOREQUALINCDECSIGNNEGATEABSNOTNZADDSUBMULDIVMODSHLSHRBOOLANDBOOLORNUMEQUALNUMNOTEQUALLTGTLTEGTEMINMAXWITHINSHA1SHA256HASH160HASH256CHECKSIGVERIFYCHECKMULTISIGARRAYSIZEPACKUNPACKPICKITEMSETITEMNEWARRAYNEWSTRUCTNEWMAPAPPENDREVERSEREMOVEHASKEYKEYSVALUESCALLICALLECALLEDCALLETCALLEDTTHROWTHROWIFNOT"
var _Opcode_map = map[Opcode]string{
0: _Opcode_name[0:5],
1: _Opcode_name[5:15],
2: _Opcode_name[15:25],
3: _Opcode_name[25:35],
0: _Opcode_name[0:8],
1: _Opcode_name[8:17],
2: _Opcode_name[17:26],
3: _Opcode_name[26:35],
4: _Opcode_name[35:45],
5: _Opcode_name[45:55],
6: _Opcode_name[55:65],
7: _Opcode_name[65:75],
8: _Opcode_name[75:85],
9: _Opcode_name[85:95],
10: _Opcode_name[95:106],
11: _Opcode_name[106:117],
12: _Opcode_name[117:128],
13: _Opcode_name[128:139],
14: _Opcode_name[139:150],
15: _Opcode_name[150:161],
16: _Opcode_name[161:172],
17: _Opcode_name[172:183],
18: _Opcode_name[183:194],
19: _Opcode_name[194:205],
20: _Opcode_name[205:216],
21: _Opcode_name[216:227],
22: _Opcode_name[227:238],
23: _Opcode_name[238:249],
24: _Opcode_name[249:260],
25: _Opcode_name[260:271],
26: _Opcode_name[271:282],
27: _Opcode_name[282:293],
28: _Opcode_name[293:304],
29: _Opcode_name[304:315],
30: _Opcode_name[315:326],
31: _Opcode_name[326:337],
32: _Opcode_name[337:348],
33: _Opcode_name[348:359],
34: _Opcode_name[359:370],
35: _Opcode_name[370:381],
36: _Opcode_name[381:392],
37: _Opcode_name[392:403],
38: _Opcode_name[403:414],
39: _Opcode_name[414:425],
40: _Opcode_name[425:436],
41: _Opcode_name[436:447],
42: _Opcode_name[447:458],
43: _Opcode_name[458:469],
44: _Opcode_name[469:480],
45: _Opcode_name[480:491],
46: _Opcode_name[491:502],
47: _Opcode_name[502:513],
48: _Opcode_name[513:524],
49: _Opcode_name[524:535],
50: _Opcode_name[535:546],
51: _Opcode_name[546:557],
52: _Opcode_name[557:568],
53: _Opcode_name[568:579],
54: _Opcode_name[579:590],
55: _Opcode_name[590:601],
56: _Opcode_name[601:612],
57: _Opcode_name[612:623],
58: _Opcode_name[623:634],
59: _Opcode_name[634:645],
60: _Opcode_name[645:656],
61: _Opcode_name[656:667],
62: _Opcode_name[667:678],
63: _Opcode_name[678:689],
64: _Opcode_name[689:700],
65: _Opcode_name[700:711],
66: _Opcode_name[711:722],
67: _Opcode_name[722:733],
68: _Opcode_name[733:744],
69: _Opcode_name[744:755],
70: _Opcode_name[755:766],
71: _Opcode_name[766:777],
72: _Opcode_name[777:788],
73: _Opcode_name[788:799],
74: _Opcode_name[799:810],
75: _Opcode_name[810:821],
76: _Opcode_name[821:830],
77: _Opcode_name[830:839],
78: _Opcode_name[839:848],
79: _Opcode_name[848:854],
81: _Opcode_name[854:859],
82: _Opcode_name[859:864],
83: _Opcode_name[864:869],
84: _Opcode_name[869:874],
85: _Opcode_name[874:879],
86: _Opcode_name[879:884],
87: _Opcode_name[884:889],
88: _Opcode_name[889:894],
89: _Opcode_name[894:899],
90: _Opcode_name[899:905],
91: _Opcode_name[905:911],
92: _Opcode_name[911:917],
93: _Opcode_name[917:923],
94: _Opcode_name[923:929],
95: _Opcode_name[929:935],
96: _Opcode_name[935:941],
97: _Opcode_name[941:944],
98: _Opcode_name[944:947],
99: _Opcode_name[947:952],
100: _Opcode_name[952:960],
101: _Opcode_name[960:964],
102: _Opcode_name[964:967],
103: _Opcode_name[967:974],
104: _Opcode_name[974:981],
105: _Opcode_name[981:989],
106: _Opcode_name[989:1004],
107: _Opcode_name[1004:1014],
108: _Opcode_name[1014:1026],
109: _Opcode_name[1026:1031],
114: _Opcode_name[1031:1036],
115: _Opcode_name[1036:1041],
116: _Opcode_name[1041:1046],
117: _Opcode_name[1046:1050],
118: _Opcode_name[1050:1053],
119: _Opcode_name[1053:1056],
120: _Opcode_name[1056:1060],
121: _Opcode_name[1060:1064],
122: _Opcode_name[1064:1068],
123: _Opcode_name[1068:1071],
124: _Opcode_name[1071:1075],
125: _Opcode_name[1075:1079],
126: _Opcode_name[1079:1082],
127: _Opcode_name[1082:1088],
128: _Opcode_name[1088:1092],
129: _Opcode_name[1092:1097],
130: _Opcode_name[1097:1101],
131: _Opcode_name[1101:1107],
132: _Opcode_name[1107:1110],
133: _Opcode_name[1110:1112],
134: _Opcode_name[1112:1115],
135: _Opcode_name[1115:1120],
139: _Opcode_name[1120:1123],
140: _Opcode_name[1123:1126],
141: _Opcode_name[1126:1130],
143: _Opcode_name[1130:1136],
144: _Opcode_name[1136:1139],
145: _Opcode_name[1139:1142],
146: _Opcode_name[1142:1144],
147: _Opcode_name[1144:1147],
148: _Opcode_name[1147:1150],
149: _Opcode_name[1150:1153],
150: _Opcode_name[1153:1156],
151: _Opcode_name[1156:1159],
152: _Opcode_name[1159:1162],
153: _Opcode_name[1162:1165],
154: _Opcode_name[1165:1172],
155: _Opcode_name[1172:1178],
156: _Opcode_name[1178:1186],
158: _Opcode_name[1186:1197],
159: _Opcode_name[1197:1199],
160: _Opcode_name[1199:1201],
161: _Opcode_name[1201:1204],
162: _Opcode_name[1204:1207],
163: _Opcode_name[1207:1210],
164: _Opcode_name[1210:1213],
165: _Opcode_name[1213:1219],
167: _Opcode_name[1219:1223],
168: _Opcode_name[1223:1229],
169: _Opcode_name[1229:1236],
170: _Opcode_name[1236:1243],
172: _Opcode_name[1243:1251],
173: _Opcode_name[1251:1257],
174: _Opcode_name[1257:1270],
192: _Opcode_name[1270:1279],
193: _Opcode_name[1279:1283],
194: _Opcode_name[1283:1289],
195: _Opcode_name[1289:1297],
196: _Opcode_name[1297:1304],
197: _Opcode_name[1304:1312],
198: _Opcode_name[1312:1321],
199: _Opcode_name[1321:1327],
200: _Opcode_name[1327:1333],
201: _Opcode_name[1333:1340],
202: _Opcode_name[1340:1346],
203: _Opcode_name[1346:1352],
204: _Opcode_name[1352:1356],
205: _Opcode_name[1356:1362],
224: _Opcode_name[1362:1367],
225: _Opcode_name[1367:1372],
226: _Opcode_name[1372:1378],
227: _Opcode_name[1378:1384],
228: _Opcode_name[1384:1391],
240: _Opcode_name[1391:1396],
241: _Opcode_name[1396:1406],
11: _Opcode_name[55:63],
12: _Opcode_name[63:72],
13: _Opcode_name[72:81],
14: _Opcode_name[81:90],
15: _Opcode_name[90:96],
16: _Opcode_name[96:101],
17: _Opcode_name[101:106],
18: _Opcode_name[106:111],
19: _Opcode_name[111:116],
20: _Opcode_name[116:121],
21: _Opcode_name[121:126],
22: _Opcode_name[126:131],
23: _Opcode_name[131:136],
24: _Opcode_name[136:141],
25: _Opcode_name[141:146],
26: _Opcode_name[146:152],
27: _Opcode_name[152:158],
28: _Opcode_name[158:164],
29: _Opcode_name[164:170],
30: _Opcode_name[170:176],
31: _Opcode_name[176:182],
32: _Opcode_name[182:188],
97: _Opcode_name[188:191],
98: _Opcode_name[191:194],
99: _Opcode_name[194:199],
100: _Opcode_name[199:207],
101: _Opcode_name[207:211],
102: _Opcode_name[211:214],
103: _Opcode_name[214:221],
104: _Opcode_name[221:228],
105: _Opcode_name[228:236],
106: _Opcode_name[236:251],
107: _Opcode_name[251:261],
108: _Opcode_name[261:273],
109: _Opcode_name[273:278],
112: _Opcode_name[278:284],
114: _Opcode_name[284:289],
115: _Opcode_name[289:294],
116: _Opcode_name[294:299],
117: _Opcode_name[299:303],
118: _Opcode_name[303:306],
119: _Opcode_name[306:309],
120: _Opcode_name[309:313],
121: _Opcode_name[313:317],
122: _Opcode_name[317:321],
123: _Opcode_name[321:324],
124: _Opcode_name[324:328],
125: _Opcode_name[328:332],
126: _Opcode_name[332:335],
127: _Opcode_name[335:341],
128: _Opcode_name[341:345],
129: _Opcode_name[345:350],
130: _Opcode_name[350:354],
131: _Opcode_name[354:360],
132: _Opcode_name[360:363],
133: _Opcode_name[363:365],
134: _Opcode_name[365:368],
135: _Opcode_name[368:373],
139: _Opcode_name[373:376],
140: _Opcode_name[376:379],
141: _Opcode_name[379:383],
143: _Opcode_name[383:389],
144: _Opcode_name[389:392],
145: _Opcode_name[392:395],
146: _Opcode_name[395:397],
147: _Opcode_name[397:400],
148: _Opcode_name[400:403],
149: _Opcode_name[403:406],
150: _Opcode_name[406:409],
151: _Opcode_name[409:412],
152: _Opcode_name[412:415],
153: _Opcode_name[415:418],
154: _Opcode_name[418:425],
155: _Opcode_name[425:431],
156: _Opcode_name[431:439],
158: _Opcode_name[439:450],
159: _Opcode_name[450:452],
160: _Opcode_name[452:454],
161: _Opcode_name[454:457],
162: _Opcode_name[457:460],
163: _Opcode_name[460:463],
164: _Opcode_name[463:466],
165: _Opcode_name[466:472],
167: _Opcode_name[472:476],
168: _Opcode_name[476:482],
169: _Opcode_name[482:489],
170: _Opcode_name[489:496],
172: _Opcode_name[496:504],
173: _Opcode_name[504:510],
174: _Opcode_name[510:523],
192: _Opcode_name[523:532],
193: _Opcode_name[532:536],
194: _Opcode_name[536:542],
195: _Opcode_name[542:550],
196: _Opcode_name[550:557],
197: _Opcode_name[557:565],
198: _Opcode_name[565:574],
199: _Opcode_name[574:580],
200: _Opcode_name[580:586],
201: _Opcode_name[586:593],
202: _Opcode_name[593:599],
203: _Opcode_name[599:605],
204: _Opcode_name[605:609],
205: _Opcode_name[609:615],
224: _Opcode_name[615:620],
225: _Opcode_name[620:625],
226: _Opcode_name[625:631],
227: _Opcode_name[631:637],
228: _Opcode_name[637:644],
240: _Opcode_name[644:649],
241: _Opcode_name[649:659],
}
func (i Opcode) String() string {