diff options
Diffstat (limited to 'ipl/procs/opnames.icn')
-rw-r--r-- | ipl/procs/opnames.icn | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/ipl/procs/opnames.icn b/ipl/procs/opnames.icn new file mode 100644 index 0000000..42aaac3 --- /dev/null +++ b/ipl/procs/opnames.icn @@ -0,0 +1,130 @@ +############################################################################ +# +# File: opnames.icn +# +# Subject: Procedure to produce opcode/names table +# +# Author: Ralph E. Griswold +# +# Date: December 2, 1991 +# +############################################################################ +# +# This file is in the public domain. +# +############################################################################ +# +# opnames() produces a table that maps virtual-machine instruction numbers +# to instruction names. +# +############################################################################ + +procedure opnames() + local opmap + + initial { + opmap := table("") + + opmap[1] := "Asgn" + opmap[2] := "Bang" + opmap[3] := "Cat" + opmap[4] := "Compl" + opmap[5] := "Diff" + opmap[6] := "Div" + opmap[7] := "Eqv" + opmap[8] := "Inter" + opmap[9] := "Lconcat" + opmap[10] := "Lexeq" + opmap[11] := "Lexge" + opmap[12] := "Lexgt" + opmap[13] := "Lexle" + opmap[14] := "Lexlt" + opmap[15] := "Lexne" + opmap[16] := "Minus" + opmap[17] := "Mod" + opmap[18] := "Mult" + opmap[19] := "Neg" + opmap[20] := "Neqv" + opmap[21] := "Nonnull" + opmap[22] := "Null" + opmap[23] := "Number" + opmap[24] := "Numeq" + opmap[25] := "Numge" + opmap[26] := "Numgt" + opmap[27] := "Numle" + opmap[28] := "Numlt" + opmap[29] := "Numne" + opmap[30] := "Plus" + opmap[31] := "Power" + opmap[32] := "Random" + opmap[33] := "Rasgn" + opmap[34] := "Refresh" + opmap[35] := "Rswap" + opmap[36] := "Sect" + opmap[37] := "Size" + opmap[38] := "Subsc" + opmap[39] := "Swap" + opmap[40] := "Tabmat" + opmap[41] := "Toby" + opmap[42] := "Unions" + opmap[43] := "Value" + opmap[44] := "Bscan" + opmap[45] := "Ccase" + opmap[46] := "Chfail" + opmap[47] := "Coact" + opmap[48] := "Cofail" + opmap[49] := "Coret" + opmap[50] := "Create" + opmap[51] := "Cset" + opmap[52] := "Dup" + opmap[53] := "Efail" + opmap[54] := "Eret" + opmap[55] := "Escan" + opmap[56] := "Esusp" + opmap[57] := "Field" + opmap[58] := "Goto" + opmap[59] := "Init" + opmap[60] := "Int" + opmap[61] := "Invoke" + opmap[62] := "Keywd" + opmap[63] := "Limit" + opmap[64] := "Line" + opmap[65] := "Llist" + opmap[66] := "Lsusp" + opmap[67] := "Mark" + opmap[68] := "Pfail" + opmap[69] := "Pnull" + opmap[70] := "Pop" + opmap[71] := "Pret" + opmap[72] := "Psusp" + opmap[73] := "Push1" + opmap[74] := "Pushn1" + opmap[75] := "Real" + opmap[76] := "Sdup" + opmap[77] := "Str" + opmap[78] := "Unmark" + opmap[80] := "Var" + opmap[81] := "Arg" + opmap[82] := "Static" + opmap[83] := "Local" + opmap[84] := "Global" + opmap[85] := "Mark0" + opmap[86] := "Quit" + opmap[87] := "FQuit" + opmap[88] := "Tally" + opmap[89] := "Apply" + opmap[90] := "Acset" + opmap[91] := "Areal" + opmap[92] := "Astr" + opmap[93] := "Aglobal" + opmap[94] := "Astatic" + opmap[95] := "Agoto" + opmap[96] := "Amark" + opmap[98] := "Noop" + opmap[100] := "SymEvents" + opmap[108] := "Colm" + } + + return opmap + +end |