forked from TrueCloudLab/neoneo-go
8fe079ec8e
* refactor to use ast.Walk for recursive converting * added lots of test cases * added a new way to handle jump labels * function calls with multiple arguments * binary expression (LOR LAND) * struct types + method receives * cleaner opcode dumps, side by side diff for debugging test cases
118 lines
3.8 KiB
Go
118 lines
3.8 KiB
Go
// Code generated by "stringer -type=Opcode ./pkg/vm/compiler"; DO NOT EDIT.
|
|
|
|
package vm
|
|
|
|
import "strconv"
|
|
|
|
const _Opcode_name = "Opush0Opushbytes1Opushbytes75Opushdata1Opushdata2Opushdata4Opushm1Opush1Opush2Opush3Opush4Opush5Opush6Opush7Opush8Opush9Opush10Opush11Opush12Opush13Opush14Opush15Opush16OnopOjmpOjmpifOjmpifnotOcallOretOpcallOsyscallOtailcallOdupfromaltstackOtoaltstackOfromaltstackOxdropOxswapOxtuckOdepthOdropOdupOnipOoverOpickOrollOrotOswapOtuckOcatOsubstrOleftOrightOsizeOinvertOandOorOxorOequalOincOdecOsignOnegateOabsOnotOnzOaddOsubOmulOdivOmodOshlOshrOboolandOboolorOnumequalOnumnotequalOltOgtOlteOgteOminOmaxOwithinOsha1Osha256Ohash160Ohash256OchecksigOcheckmultisigOarraysizeOpackOunpackOpickitemOsetitemOnewarrayOnewstructOappendOreverseOremoveOthrowOthrowifnot"
|
|
|
|
var _Opcode_map = map[Opcode]string{
|
|
0: _Opcode_name[0:6],
|
|
1: _Opcode_name[6:17],
|
|
75: _Opcode_name[17:29],
|
|
76: _Opcode_name[29:39],
|
|
77: _Opcode_name[39:49],
|
|
78: _Opcode_name[49:59],
|
|
79: _Opcode_name[59:66],
|
|
81: _Opcode_name[66:72],
|
|
82: _Opcode_name[72:78],
|
|
83: _Opcode_name[78:84],
|
|
84: _Opcode_name[84:90],
|
|
85: _Opcode_name[90:96],
|
|
86: _Opcode_name[96:102],
|
|
87: _Opcode_name[102:108],
|
|
88: _Opcode_name[108:114],
|
|
89: _Opcode_name[114:120],
|
|
90: _Opcode_name[120:127],
|
|
91: _Opcode_name[127:134],
|
|
92: _Opcode_name[134:141],
|
|
93: _Opcode_name[141:148],
|
|
94: _Opcode_name[148:155],
|
|
95: _Opcode_name[155:162],
|
|
96: _Opcode_name[162:169],
|
|
97: _Opcode_name[169:173],
|
|
98: _Opcode_name[173:177],
|
|
99: _Opcode_name[177:183],
|
|
100: _Opcode_name[183:192],
|
|
101: _Opcode_name[192:197],
|
|
102: _Opcode_name[197:201],
|
|
103: _Opcode_name[201:207],
|
|
104: _Opcode_name[207:215],
|
|
105: _Opcode_name[215:224],
|
|
106: _Opcode_name[224:240],
|
|
107: _Opcode_name[240:251],
|
|
108: _Opcode_name[251:264],
|
|
109: _Opcode_name[264:270],
|
|
114: _Opcode_name[270:276],
|
|
115: _Opcode_name[276:282],
|
|
116: _Opcode_name[282:288],
|
|
117: _Opcode_name[288:293],
|
|
118: _Opcode_name[293:297],
|
|
119: _Opcode_name[297:301],
|
|
120: _Opcode_name[301:306],
|
|
121: _Opcode_name[306:311],
|
|
122: _Opcode_name[311:316],
|
|
123: _Opcode_name[316:320],
|
|
124: _Opcode_name[320:325],
|
|
125: _Opcode_name[325:330],
|
|
126: _Opcode_name[330:334],
|
|
127: _Opcode_name[334:341],
|
|
128: _Opcode_name[341:346],
|
|
129: _Opcode_name[346:352],
|
|
130: _Opcode_name[352:357],
|
|
131: _Opcode_name[357:364],
|
|
132: _Opcode_name[364:368],
|
|
133: _Opcode_name[368:371],
|
|
134: _Opcode_name[371:375],
|
|
135: _Opcode_name[375:381],
|
|
139: _Opcode_name[381:385],
|
|
140: _Opcode_name[385:389],
|
|
141: _Opcode_name[389:394],
|
|
143: _Opcode_name[394:401],
|
|
144: _Opcode_name[401:405],
|
|
145: _Opcode_name[405:409],
|
|
146: _Opcode_name[409:412],
|
|
147: _Opcode_name[412:416],
|
|
148: _Opcode_name[416:420],
|
|
149: _Opcode_name[420:424],
|
|
150: _Opcode_name[424:428],
|
|
151: _Opcode_name[428:432],
|
|
152: _Opcode_name[432:436],
|
|
153: _Opcode_name[436:440],
|
|
154: _Opcode_name[440:448],
|
|
155: _Opcode_name[448:455],
|
|
156: _Opcode_name[455:464],
|
|
158: _Opcode_name[464:476],
|
|
159: _Opcode_name[476:479],
|
|
160: _Opcode_name[479:482],
|
|
161: _Opcode_name[482:486],
|
|
162: _Opcode_name[486:490],
|
|
163: _Opcode_name[490:494],
|
|
164: _Opcode_name[494:498],
|
|
165: _Opcode_name[498:505],
|
|
167: _Opcode_name[505:510],
|
|
168: _Opcode_name[510:517],
|
|
169: _Opcode_name[517:525],
|
|
170: _Opcode_name[525:533],
|
|
172: _Opcode_name[533:542],
|
|
174: _Opcode_name[542:556],
|
|
192: _Opcode_name[556:566],
|
|
193: _Opcode_name[566:571],
|
|
194: _Opcode_name[571:578],
|
|
195: _Opcode_name[578:587],
|
|
196: _Opcode_name[587:595],
|
|
197: _Opcode_name[595:604],
|
|
198: _Opcode_name[604:614],
|
|
200: _Opcode_name[614:621],
|
|
201: _Opcode_name[621:629],
|
|
202: _Opcode_name[629:636],
|
|
240: _Opcode_name[636:642],
|
|
241: _Opcode_name[642:653],
|
|
}
|
|
|
|
func (i Opcode) String() string {
|
|
if str, ok := _Opcode_map[i]; ok {
|
|
return str
|
|
}
|
|
return "Opcode(" + strconv.FormatInt(int64(i), 10) + ")"
|
|
}
|