ton-assembly
Version:
TON assembler and disassembler
1,969 lines • 65.9 kB
JavaScript
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.printInstruction = void 0;
// AUTOGENERATED, DO NOT EDIT, generated by ../generator/gen-printer.ts
const $ = __importStar(require("./printer"));
const printInstruction = (p, instr) => {
p.beginLine(instr.$);
switch (instr.$) {
case "PUSHNAN":
return;
case "ADD":
return;
case "SUB":
return;
case "SUBR":
return;
case "NEGATE":
return;
case "INC":
return;
case "DEC":
return;
case "MUL":
return;
case "POW2":
return;
case "AND":
return;
case "OR":
return;
case "XOR":
return;
case "NOT":
return;
case "FITSX":
return;
case "UFITSX":
return;
case "BITSIZE":
return;
case "UBITSIZE":
return;
case "MIN":
return;
case "MAX":
return;
case "MINMAX":
return;
case "ABS":
return;
case "QADD":
return;
case "QSUB":
return;
case "QSUBR":
return;
case "QNEGATE":
return;
case "QINC":
return;
case "QDEC":
return;
case "QMUL":
return;
case "QPOW2":
return;
case "QAND":
return;
case "QOR":
return;
case "QXOR":
return;
case "QNOT":
return;
case "QFITSX":
return;
case "QUFITSX":
return;
case "QBITSIZE":
return;
case "QUBITSIZE":
return;
case "QMIN":
return;
case "QMAX":
return;
case "QMINMAX":
return;
case "QABS":
return;
case "SGN":
return;
case "LESS":
return;
case "EQUAL":
return;
case "LEQ":
return;
case "GREATER":
return;
case "NEQ":
return;
case "GEQ":
return;
case "CMP":
return;
case "ISNAN":
return;
case "CHKNAN":
return;
case "QSGN":
return;
case "QLESS":
return;
case "QEQUAL":
return;
case "QLEQ":
return;
case "QGREATER":
return;
case "QNEQ":
return;
case "QGEQ":
return;
case "QCMP":
return;
case "SEMPTY":
return;
case "SDEMPTY":
return;
case "SREMPTY":
return;
case "SDFIRST":
return;
case "SDLEXCMP":
return;
case "SDEQ":
return;
case "SDPFX":
return;
case "SDPFXREV":
return;
case "SDPPFX":
return;
case "SDPPFXREV":
return;
case "SDSFX":
return;
case "SDSFXREV":
return;
case "SDPSFX":
return;
case "SDPSFXREV":
return;
case "SDCNTLEAD0":
return;
case "SDCNTLEAD1":
return;
case "SDCNTTRAIL0":
return;
case "SDCNTTRAIL1":
return;
case "NEWC":
return;
case "ENDC":
return;
case "ENDCST":
return;
case "STBREF":
return;
case "STB":
return;
case "STREFR":
return;
case "STBREFR":
return;
case "STSLICER":
return;
case "STBR":
return;
case "STREFQ":
return;
case "STBREFQ":
return;
case "STSLICEQ":
return;
case "STBQ":
return;
case "STREFRQ":
return;
case "STBREFRQ":
return;
case "STSLICERQ":
return;
case "STBRQ":
return;
case "ENDXC":
return;
case "BDEPTH":
return;
case "BBITS":
return;
case "BREFS":
return;
case "BBITREFS":
return;
case "BREMBITS":
return;
case "BREMREFS":
return;
case "BREMBITREFS":
return;
case "BCHKREFS":
return;
case "BCHKBITREFS":
return;
case "BCHKREFSQ":
return;
case "BCHKBITREFSQ":
return;
case "STZEROES":
return;
case "STONES":
return;
case "STSAME":
return;
case "CTOS":
return;
case "ENDS":
return;
case "LDREF":
return;
case "LDREFRTOS":
return;
case "SDCUTFIRST":
return;
case "SDSKIPFIRST":
return;
case "SDCUTLAST":
return;
case "SDSKIPLAST":
return;
case "SDSUBSTR":
return;
case "SCUTFIRST":
return;
case "SSKIPFIRST":
return;
case "SCUTLAST":
return;
case "SSKIPLAST":
return;
case "SUBSLICE":
return;
case "SPLIT":
return;
case "SPLITQ":
return;
case "XCTOS":
return;
case "XLOAD":
return;
case "XLOADQ":
return;
case "SCHKBITS":
return;
case "SCHKREFS":
return;
case "SCHKBITREFS":
return;
case "SCHKBITSQ":
return;
case "SCHKREFSQ":
return;
case "SCHKBITREFSQ":
return;
case "PLDREFVAR":
return;
case "SBITS":
return;
case "SREFS":
return;
case "SBITREFS":
return;
case "LDZEROES":
return;
case "LDONES":
return;
case "LDSAME":
return;
case "SDEPTH":
return;
case "CDEPTH":
return;
case "CLEVEL":
return;
case "CLEVELMASK":
return;
case "CHASHIX":
return;
case "CDEPTHIX":
return;
case "EXECUTE":
return;
case "JMPX":
return;
case "RET":
return;
case "RETALT":
return;
case "RETBOOL":
return;
case "CALLCC":
return;
case "JMPXDATA":
return;
case "CALLXVARARGS":
return;
case "RETVARARGS":
return;
case "JMPXVARARGS":
return;
case "CALLCCVARARGS":
return;
case "RETDATA":
return;
case "RUNVMX":
return;
case "IFRET":
return;
case "IFNOTRET":
return;
case "IF":
return;
case "IFNOT":
return;
case "IFJMP":
return;
case "IFNOTJMP":
return;
case "IFELSE":
return;
case "CONDSEL":
return;
case "CONDSELCHK":
return;
case "IFRETALT":
return;
case "IFNOTRETALT":
return;
case "REPEAT":
return;
case "REPEATEND":
return;
case "UNTIL":
return;
case "UNTILEND":
return;
case "WHILE":
return;
case "WHILEEND":
return;
case "AGAIN":
return;
case "AGAINEND":
return;
case "REPEATBRK":
return;
case "REPEATENDBRK":
return;
case "UNTILBRK":
return;
case "UNTILENDBRK":
return;
case "WHILEBRK":
return;
case "WHILEENDBRK":
return;
case "AGAINBRK":
return;
case "AGAINENDBRK":
return;
case "RETURNVARARGS":
return;
case "SETCONTVARARGS":
return;
case "SETNUMVARARGS":
return;
case "BLESS":
return;
case "BLESSVARARGS":
return;
case "PUSHCTRX":
return;
case "POPCTRX":
return;
case "SETCONTCTRX":
return;
case "SETCONTCTRMANYX":
return;
case "BOOLAND":
return;
case "BOOLOR":
return;
case "COMPOSBOTH":
return;
case "ATEXIT":
return;
case "ATEXITALT":
return;
case "SETEXITALT":
return;
case "THENRET":
return;
case "THENRETALT":
return;
case "INVERT":
return;
case "BOOLEVAL":
return;
case "SAMEALT":
return;
case "SAMEALTSAVE":
return;
case "TRY":
return;
case "STDICT":
return;
case "SKIPDICT":
return;
case "LDDICTS":
return;
case "PLDDICTS":
return;
case "LDDICT":
return;
case "PLDDICT":
return;
case "LDDICTQ":
return;
case "PLDDICTQ":
return;
case "PFXDICTSET":
return;
case "PFXDICTREPLACE":
return;
case "PFXDICTADD":
return;
case "PFXDICTDEL":
return;
case "PFXDICTGETQ":
return;
case "PFXDICTGET":
return;
case "PFXDICTGETJMP":
return;
case "PFXDICTGETEXEC":
return;
case "NOP":
return;
case "SWAP":
return;
case "DUP":
return;
case "OVER":
return;
case "DROP":
return;
case "NIP":
return;
case "ROT":
return;
case "ROTREV":
return;
case "PICK":
return;
case "ROLL":
return;
case "ROLLREV":
return;
case "BLKSWX":
return;
case "REVX":
return;
case "DROPX":
return;
case "TUCK":
return;
case "XCHGX":
return;
case "DEPTH":
return;
case "CHKDEPTH":
return;
case "ONLYTOPX":
return;
case "ONLYX":
return;
case "ACCEPT":
return;
case "SETGASLIMIT":
return;
case "GASCONSUMED":
return;
case "COMMIT":
return;
case "NOW":
return;
case "BLOCKLT":
return;
case "LTIME":
return;
case "RANDSEED":
return;
case "BALANCE":
return;
case "MYADDR":
return;
case "CONFIGROOT":
return;
case "MYCODE":
return;
case "INCOMINGVALUE":
return;
case "STORAGEFEES":
return;
case "PREVBLOCKSINFOTUPLE":
return;
case "UNPACKEDCONFIGTUPLE":
return;
case "DUEPAYMENT":
return;
case "CONFIGDICT":
return;
case "CONFIGPARAM":
return;
case "CONFIGOPTPARAM":
return;
case "PREVMCBLOCKS":
return;
case "PREVKEYBLOCK":
return;
case "PREVMCBLOCKS_100":
return;
case "GLOBALID":
return;
case "GETGASFEE":
return;
case "GETSTORAGEFEE":
return;
case "GETFORWARDFEE":
return;
case "GETPRECOMPILEDGAS":
return;
case "GETORIGINALFWDFEE":
return;
case "GETGASFEESIMPLE":
return;
case "GETFORWARDFEESIMPLE":
return;
case "GETGLOBVAR":
return;
case "SETGLOBVAR":
return;
case "RANDU256":
return;
case "RAND":
return;
case "SETRAND":
return;
case "ADDRAND":
return;
case "HASHCU":
return;
case "HASHSU":
return;
case "SHA256U":
return;
case "CHKSIGNU":
return;
case "CHKSIGNS":
return;
case "ECRECOVER":
return;
case "SECP256K1_XONLY_PUBKEY_TWEAK_ADD":
return;
case "P256_CHKSIGNU":
return;
case "P256_CHKSIGNS":
return;
case "RIST255_FROMHASH":
return;
case "RIST255_VALIDATE":
return;
case "RIST255_ADD":
return;
case "RIST255_SUB":
return;
case "RIST255_MUL":
return;
case "RIST255_MULBASE":
return;
case "RIST255_PUSHL":
return;
case "RIST255_QVALIDATE":
return;
case "RIST255_QADD":
return;
case "RIST255_QSUB":
return;
case "RIST255_QMUL":
return;
case "RIST255_QMULBASE":
return;
case "BLS_VERIFY":
return;
case "BLS_AGGREGATE":
return;
case "BLS_FASTAGGREGATEVERIFY":
return;
case "BLS_AGGREGATEVERIFY":
return;
case "BLS_G1_ADD":
return;
case "BLS_G1_SUB":
return;
case "BLS_G1_NEG":
return;
case "BLS_G1_MUL":
return;
case "BLS_G1_MULTIEXP":
return;
case "BLS_G1_ZERO":
return;
case "BLS_MAP_TO_G1":
return;
case "BLS_G1_INGROUP":
return;
case "BLS_G1_ISZERO":
return;
case "BLS_G2_ADD":
return;
case "BLS_G2_SUB":
return;
case "BLS_G2_NEG":
return;
case "BLS_G2_MUL":
return;
case "BLS_G2_MULTIEXP":
return;
case "BLS_G2_ZERO":
return;
case "BLS_MAP_TO_G2":
return;
case "BLS_G2_INGROUP":
return;
case "BLS_G2_ISZERO":
return;
case "BLS_PAIRING":
return;
case "BLS_PUSHR":
return;
case "CDATASIZEQ":
return;
case "CDATASIZE":
return;
case "SDATASIZEQ":
return;
case "SDATASIZE":
return;
case "LDGRAMS":
return;
case "LDVARINT16":
return;
case "STGRAMS":
return;
case "STVARINT16":
return;
case "LDVARUINT32":
return;
case "LDVARINT32":
return;
case "STVARUINT32":
return;
case "STVARINT32":
return;
case "LDMSGADDR":
return;
case "LDMSGADDRQ":
return;
case "PARSEMSGADDR":
return;
case "PARSEMSGADDRQ":
return;
case "REWRITESTDADDR":
return;
case "REWRITESTDADDRQ":
return;
case "REWRITEVARADDR":
return;
case "REWRITEVARADDRQ":
return;
case "SENDRAWMSG":
return;
case "RAWRESERVE":
return;
case "RAWRESERVEX":
return;
case "SETCODE":
return;
case "SETLIBCODE":
return;
case "CHANGELIB":
return;
case "SENDMSG":
return;
case "PUSHNULL":
return;
case "ISNULL":
return;
case "TUPLEVAR":
return;
case "INDEXVAR":
return;
case "UNTUPLEVAR":
return;
case "UNPACKFIRSTVAR":
return;
case "EXPLODEVAR":
return;
case "SETINDEXVAR":
return;
case "INDEXVARQ":
return;
case "SETINDEXVARQ":
return;
case "TLEN":
return;
case "QTLEN":
return;
case "ISTUPLE":
return;
case "LAST":
return;
case "TPUSH":
return;
case "TPOP":
return;
case "NULLSWAPIF":
return;
case "NULLSWAPIFNOT":
return;
case "NULLROTRIF":
return;
case "NULLROTRIFNOT":
return;
case "NULLSWAPIF2":
return;
case "NULLSWAPIFNOT2":
return;
case "NULLROTRIF2":
return;
case "NULLROTRIFNOT2":
return;
case "ADDDIVMOD":
return;
case "ADDDIVMODR":
return;
case "ADDDIVMODC":
return;
case "DIV":
return;
case "DIVR":
return;
case "DIVC":
return;
case "MOD":
return;
case "MODR":
return;
case "MODC":
return;
case "DIVMOD":
return;
case "DIVMODR":
return;
case "DIVMODC":
return;
case "QADDDIVMOD":
return;
case "QADDDIVMODR":
return;
case "QADDDIVMODC":
return;
case "QDIV":
return;
case "QDIVR":
return;
case "QDIVC":
return;
case "QMOD":
return;
case "QMODR":
return;
case "QMODC":
return;
case "QDIVMOD":
return;
case "QDIVMODR":
return;
case "QDIVMODC":
return;
case "ADDRSHIFTMOD":
return;
case "ADDRSHIFTMODR":
return;
case "ADDRSHIFTMODC":
return;
case "RSHIFTR":
return;
case "RSHIFTC":
return;
case "MODPOW2":
return;
case "MODPOW2R":
return;
case "MODPOW2C":
return;
case "RSHIFTMOD":
return;
case "RSHIFTMODR":
return;
case "RSHIFTMODC":
return;
case "QADDRSHIFTMOD":
return;
case "QADDRSHIFTMODR":
return;
case "QADDRSHIFTMODC":
return;
case "QRSHIFTR":
return;
case "QRSHIFTC":
return;
case "QMODPOW2":
return;
case "QMODPOW2R":
return;
case "QMODPOW2C":
return;
case "QRSHIFTMOD":
return;
case "QRSHIFTMODR":
return;
case "QRSHIFTMODC":
return;
case "MULADDDIVMOD":
return;
case "MULADDDIVMODR":
return;
case "MULADDDIVMODC":
return;
case "MULDIV":
return;
case "MULDIVR":
return;
case "MULDIVC":
return;
case "MULMOD":
return;
case "MULMODR":
return;
case "MULMODC":
return;
case "MULDIVMOD":
return;
case "MULDIVMODR":
return;
case "MULDIVMODC":
return;
case "QMULADDDIVMOD":
return;
case "QMULADDDIVMODR":
return;
case "QMULADDDIVMODC":
return;
case "QMULDIV":
return;
case "QMULDIVR":
return;
case "QMULDIVC":
return;
case "QMULMOD":
return;
case "QMULMODR":
return;
case "QMULMODC":
return;
case "QMULDIVMOD":
return;
case "QMULDIVMODR":
return;
case "QMULDIVMODC":
return;
case "MULADDRSHIFTMOD":
return;
case "MULADDRSHIFTRMOD":
return;
case "MULADDRSHIFTCMOD":
return;
case "MULRSHIFT":
return;
case "MULRSHIFTR":
return;
case "MULRSHIFTC":
return;
case "MULMODPOW2":
return;
case "MULMODPOW2R":
return;
case "MULMODPOW2C":
return;
case "MULRSHIFTMOD":
return;
case "MULRSHIFTRMOD":
return;
case "MULRSHIFTCMOD":
return;
case "QMULADDRSHIFTMOD":
return;
case "QMULADDRSHIFTRMOD":
return;
case "QMULADDRSHIFTCMOD":
return;
case "QMULRSHIFT":
return;
case "QMULRSHIFTR":
return;
case "QMULRSHIFTC":
return;
case "QMULMODPOW2":
return;
case "QMULMODPOW2R":
return;
case "QMULMODPOW2C":
return;
case "QMULRSHIFTMOD":
return;
case "QMULRSHIFTRMOD":
return;
case "QMULRSHIFTCMOD":
return;
case "LSHIFTADDDIVMOD":
return;
case "LSHIFTADDDIVMODR":
return;
case "LSHIFTADDDIVMODC":
return;
case "LSHIFTDIV":
return;
case "LSHIFTDIVR":
return;
case "LSHIFTDIVC":
return;
case "LSHIFTMOD":
return;
case "LSHIFTMODR":
return;
case "LSHIFTMODC":
return;
case "LSHIFTDIVMOD":
return;
case "LSHIFTDIVMODR":
return;
case "LSHIFTDIVMODC":
return;
case "QLSHIFTADDDIVMOD":
return;
case "QLSHIFTADDDIVMODR":
return;
case "QLSHIFTADDDIVMODC":
return;
case "QLSHIFTDIV":
return;
case "QLSHIFTDIVR":
return;
case "QLSHIFTDIVC":
return;
case "QLSHIFTMOD":
return;
case "QLSHIFTMODR":
return;
case "QLSHIFTMODC":
return;
case "QLSHIFTDIVMOD":
return;
case "QLSHIFTDIVMODR":
return;
case "QLSHIFTDIVMODC":
return;
case "STIX":
return;
case "STUX":
return;
case "STIXR":
return;
case "STUXR":
return;
case "STIXQ":
return;
case "STUXQ":
return;
case "STIXRQ":
return;
case "STUXRQ":
return;
case "STILE4":
return;
case "STULE4":
return;
case "STILE8":
return;
case "STULE8":
return;
case "LDIX":
return;
case "LDUX":
return;
case "PLDIX":
return;
case "PLDUX":
return;
case "LDIXQ":
return;
case "LDUXQ":
return;
case "PLDIXQ":
return;
case "PLDUXQ":
return;
case "LDSLICEX":
return;
case "PLDSLICEX":
return;
case "LDSLICEXQ":
return;
case "PLDSLICEXQ":
return;
case "LDILE4":
return;
case "LDULE4":
return;
case "LDILE8":
return;
case "LDULE8":
return;
case "PLDILE4":
return;
case "PLDULE4":
return;
case "PLDILE8":
return;
case "PLDULE8":
return;
case "LDILE4Q":
return;
case "LDULE4Q":
return;
case "LDILE8Q":
return;
case "LDULE8Q":
return;
case "PLDILE4Q":
return;
case "PLDULE4Q":
return;
case "PLDILE8Q":
return;
case "PLDULE8Q":
return;
case "DICTIGETJMP":
return;
case "DICTUGETJMP":
return;
case "DICTIGETEXEC":
return;
case "DICTUGETEXEC":
return;
case "DICTIGETJMPZ":
return;
case "DICTUGETJMPZ":
return;
case "DICTIGETEXECZ":
return;
case "DICTUGETEXECZ":
return;
case "DICTGET":
return;
case "DICTGETREF":
return;
case "DICTIGET":
return;
case "DICTIGETREF":
return;
case "DICTUGET":
return;
case "DICTUGETREF":
return;
case "DICTSET":
return;
case "DICTSETREF":
return;
case "DICTISET":
return;
case "DICTISETREF":
return;
case "DICTUSET":
return;
case "DICTUSETREF":
return;
case "DICTSETGET":
return;
case "DICTSETGETREF":
return;
case "DICTISETGET":
return;
case "DICTISETGETREF":
return;
case "DICTUSETGET":
return;
case "DICTUSETGETREF":
return;
case "DICTREPLACE":
return;
case "DICTREPLACEREF":
return;
case "DICTIREPLACE":
return;
case "DICTIREPLACEREF":
return;
case "DICTUREPLACE":
return;
case "DICTUREPLACEREF":
return;
case "DICTREPLACEGET":
return;
case "DICTREPLACEGETREF":
return;
case "DICTIREPLACEGET":
return;
case "DICTIREPLACEGETREF":
return;
case "DICTUREPLACEGET":
return;
case "DICTUREPLACEGETREF":
return;
case "DICTADD":
return;
case "DICTADDREF":
return;
case "DICTIADD":
return;
case "DICTIADDREF":
return;
case "DICTUADD":
return;
case "DICTUADDREF":
return;
case "DICTADDGET":
return;
case "DICTADDGETREF":
return;
case "DICTIADDGET":
return;
case "DICTIADDGETREF":
return;
case "DICTUADDGET":
return;
case "DICTUADDGETREF":
return;
case "DICTDELGET":
return;
case "DICTDELGETREF":
return;
case "DICTIDELGET":
return;
case "DICTIDELGETREF":
return;
case "DICTUDELGET":
return;
case "DICTUDELGETREF":
return;
case "DICTMIN":
return;
case "DICTMINREF":
return;
case "DICTIMIN":
return;
case "DICTIMINREF":
return;
case "DICTUMIN":
return;
case "DICTUMINREF":
return;
case "DICTMAX":
return;
case "DICTMAXREF":
return;
case "DICTIMAX":
return;
case "DICTIMAXREF":
return;
case "DICTUMAX":
return;
case "DICTUMAXREF":
return;
case "DICTREMMIN":
return;
case "DICTREMMINREF":
return;
case "DICTIREMMIN":
return;
case "DICTIREMMINREF":
return;
case "DICTUREMMIN":
return;
case "DICTUREMMINREF":
return;
case "DICTREMMAX":
return;
case "DICTREMMAXREF":
return;
case "DICTIREMMAX":
return;
case "DICTIREMMAXREF":
return;
case "DICTUREMMAX":
return;
case "DICTUREMMAXREF":
return;
case "DICTSETB":
return;
case "DICTISETB":
return;
case "DICTUSETB":
return;
case "DICTSETGETB":
return;
case "DICTISETGETB":
return;
case "DICTUSETGETB":
return;
case "DICTREPLACEB":
return;
case "DICTIREPLACEB":
return;
case "DICTUREPLACEB":
return;
case "DICTREPLACEGETB":
return;
case "DICTIREPLACEGETB":
return;
case "DICTUREPLACEGETB":
return;
case "DICTADDB":
return;
case "DICTIADDB":
return;
case "DICTUADDB":
return;
case "DICTADDGETB":
return;
case "DICTIADDGETB":
return;
case "DICTUADDGETB":
return;
case "DICTDEL":
return;
case "DICTIDEL":
return;
case "DICTUDEL":
return;
case "DICTGETOPTREF":
return;
case "DICTIGETOPTREF":
return;
case "DICTUGETOPTREF":
return;
case "DICTSETGETOPTREF":
return;
case "DICTISETGETOPTREF":
return;
case "DICTUSETGETOPTREF":
return;
case "SUBDICTGET":
return;
case "SUBDICTIGET":
return;
case "SUBDICTUGET":
return;
case "SUBDICTRPGET":
return;
case "SUBDICTIRPGET":
return;
case "SUBDICTURPGET":
return;
case "THROWANY":
return;
case "THROWARGANY":
return;
case "THROWANYIFNOT":
return;
case "THROWARGANYIFNOT":
return;
case "DICTGETNEXT":
return;
case "DICTGETNEXTEQ":
return;
case "DICTGETPREV":
return;
case "DICTGETPREVEQ":
return;
case "DICTIGETNEXT":
return;
case "DICTIGETNEXTEQ":
return;
case "DICTIGETPREV":
return;
case "DICTIGETPREVEQ":
return;
case "DICTUGETNEXT":
return;
case "DICTUGETNEXTEQ":
return;
case "DICTUGETPREV":
return;
case "DICTUGETPREVEQ":
return;
case "ADDINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "MULINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "QADDINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "QMULINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "EQINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "LESSINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "GTINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "NEQINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "QEQINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "QLESSINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "QGTINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "QNEQINT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PUSHPOW2DEC":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PUSHNEGPOW2":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "FITS":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "UFITS":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "QFITS":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "QUFITS":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "SETCONTCTRMANY":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "CALLCCARGS":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
return;
case "TRYARGS":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
return;
case "PLDREFIDX":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "CHASHI":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "CDEPTHI":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "JMPDICT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PREPAREDICT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "THROWARG":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "THROWARGIF":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "THROWARGIFNOT":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "JMPXARGS":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "RETARGS":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "RETURNARGS":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "BLKDROP":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "TUPLE":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "INDEX":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "UNTUPLE":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "UNPACKFIRST":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "EXPLODE":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "SETINDEX":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "INDEXQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "SETINDEXQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "XC2PU":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
p.append(" ");
p.append("s");
p.append(instr.arg2.toString());
return;
case "XCPU2":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
p.append(" ");
p.append("s");
p.append(instr.arg2.toString());
return;
case "PUSH3":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
p.append(" ");
p.append("s");
p.append(instr.arg2.toString());
return;
case "XCHG2":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
return;
case "XCPU":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
return;
case "PUSH2":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
return;
case "PUXC":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
return;
case "XCPUXC":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
p.append(" ");
p.append("s");
p.append(instr.arg2.toString());
return;
case "PUXC2":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
p.append(" ");
p.append("s");
p.append(instr.arg2.toString());
return;
case "PUXCPU":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
p.append(" ");
p.append("s");
p.append(instr.arg2.toString());
return;
case "PU2XC":
p.append(" ");
p.append("s");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
p.append(" ");
p.append("s");
p.append(instr.arg2.toString());
return;
case "BLKSWAP":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
return;
case "REVERSE":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
return;
case "SETCONTARGS":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
return;
case "BLESSARGS":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
return;
case "STIR":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "STUR":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "STIQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "STUQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "STIRQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "STURQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PLDI":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PLDU":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "LDIQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "LDUQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PLDIQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PLDUQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PLDUZ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PLDSLICE":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "LDSLICEQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PLDSLICEQ":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "IFBITJMP":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "IFNBITJMP":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "INDEX2":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
return;
case "INDEX3":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
p.append(" ");
p.append(instr.arg2.toString());
return;
case "PUSHPOW2":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "BLKPUSH":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append("s");
p.append(instr.arg1.toString());
return;
case "BLKDROP2":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
p.append(instr.arg1.toString());
return;
case "GETGLOB":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "SETGLOB":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "GETPARAM":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "PUSHREF":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "PUSHREFSLICE":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "PUSHREFCONT":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "CALLREF":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "JMPREF":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "JMPREFDATA":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "IFREF":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "IFNOTREF":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "IFJMPREF":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "IFNOTJMPREF":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "IFREFELSE":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "IFELSEREF":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "IFREFELSEREF":
p.append(" ");
$.printCode(p, instr.arg0);
p.append(" ");
$.printCode(p, instr.arg1);
return;
case "fIF":
p.append(" ");
p.append(`"` + instr.kind + `"`);
p.append(" ");
$.printCode(p, instr.trueBranch);
if (instr.falseBranch !== undefined) {
p.append(" ");
$.printCode(p, instr.falseBranch);
}
return;
case "IFBITJMPREF":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
$.printCode(p, instr.arg1);
return;
case "IFNBITJMPREF":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
$.printCode(p, instr.arg1);
return;
case "DICTPUSHCONST":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
$.printDictionary(p, instr.arg1);
return;
case "PFXDICTSWITCH":
p.append(" ");
p.append(instr.arg0.toString());
p.append(" ");
$.printDictionary(p, instr.arg1);
return;
case "SDBEGINSX":
return;
case "SDBEGINSXQ":
return;
case "SDBEGINS":
p.append(" ");
$.printSlice(p, instr.arg0);
return;
case "SDBEGINSQ":
p.append(" ");
$.printSlice(p, instr.arg0);
return;
case "STREFCONST":
p.append(" ");
$.printCode(p, instr.arg0);
return;
case "STREF2CONST":
p.append(" ");
$.printCode(p, instr.arg0);
p.append(" ");
$.printCode(p, instr.arg1);
return;
case "THROWANYIF":
return;
case "THROWARGANYIF":
return;
case "DEBUGSTR":
p.append(" ");
$.printSlice(p, instr.arg0);
return;
case "SETCONTCTR":
p.append(" ");
p.append("c");
p.append(instr.arg0.toString());
return;
case "SETRETCTR":
p.append(" ");
p.append("c");
p.append(instr.arg0.toString());
return;
case "SETALTCTR":
p.append(" ");
p.append("c");
p.append(instr.arg0.toString());
return;
case "POPSAVE":
p.append(" ");
p.append("c");
p.append(instr.arg0.toString());
return;
case "SAVECTR":
p.append(" ");
p.append("c");
p.append(instr.arg0.toString());
return;
case "SAVEALTCTR":
p.append(" ");
p.append("c");
p.append(instr.arg0.toString());
return;
case "SAVEBOTHCTR":
p.append(" ");
p.append("c");
p.append(instr.arg0.toString());
return;
case "RUNVM":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "SWAP2":
return;
case "DROP2":
return;
case "DUP2":
return;
case "OVER2":
return;
case "ADDRSHIFT_MOD":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "ADDRSHIFTR_MOD":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "ADDRSHIFTC_MOD":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "RSHIFT_":
p.append(" ");
p.append(instr.arg0.toString());
return;
case "RSH