mirror of
https://github.com/Interlisp/maiko.git
synced 2026-01-11 23:43:19 +00:00
288 lines
6.5 KiB
C
288 lines
6.5 KiB
C
#ifndef OPCODES_H
|
|
#define OPCODES_H 1
|
|
/* $Id: opcodes.h,v 1.2 1999/01/03 02:06:19 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
|
|
|
/************************************************************************/
|
|
/* */
|
|
/* O P C O D E D E F I N I T I O N S */
|
|
/* */
|
|
/* Symbolic equivalents for Lisp Opcodes */
|
|
/* */
|
|
/************************************************************************/
|
|
|
|
|
|
/************************************************************************/
|
|
/* */
|
|
/* Copyright 1989, 1990 Venue, Fuji Xerox Co., Ltd, Xerox Corp. */
|
|
/* */
|
|
/* This file is work-product resulting from the Xerox/Venue */
|
|
/* Agreement dated 18-August-1989 for support of Medley. */
|
|
/* */
|
|
/************************************************************************/
|
|
|
|
enum opcodes {
|
|
opc_unused_0 = 0,
|
|
opc_CAR = 1,
|
|
opc_CDR = 2,
|
|
opc_LISP = 3,
|
|
opc_NTYPX = 4,
|
|
opc_TYPEP = 5,
|
|
opc_DTEST = 6,
|
|
opc_UNWIND = 7,
|
|
opc_FN0 = 8,
|
|
opc_FN1 = 9,
|
|
opc_FN2 = 10,
|
|
opc_FN3 = 11,
|
|
opc_FN4 = 12,
|
|
opc_FNX = 13,
|
|
opc_APPLYFN = 14,
|
|
opc_CHECKAPPLY = 15,
|
|
opc_RETURN = 16,
|
|
opc_BIND = 17,
|
|
opc_UNBIND = 18,
|
|
opc_DUNBIND = 19,
|
|
opc_RPLPTR_N = 20,
|
|
opc_GCREF = 21,
|
|
opc_ASSOC = 22,
|
|
opc_GVAR_ = 23,
|
|
opc_RPLACA = 24,
|
|
opc_RPLACD = 25,
|
|
opc_CONS = 26,
|
|
opc_CMLASSOC = 27,
|
|
opc_FMEMB = 28,
|
|
opc_CMLMEMBER = 29,
|
|
opc_FINDKEY = 30,
|
|
opc_CREATECELL = 31,
|
|
opc_BIN = 32,
|
|
opc_BOUT = 33,
|
|
opc_POPDISP = 34,
|
|
opc_RESTLIST = 35,
|
|
opc_MISCN = 36,
|
|
opc_unused_37 = 37,
|
|
opc_RPLCONS = 38,
|
|
opc_LISTGET = 39,
|
|
opc_unused_40 = 40,
|
|
opc_unused_41 = 41,
|
|
opc_unused_42 = 42,
|
|
opc_unused_43 = 43,
|
|
opc_EVAL = 44,
|
|
opc_ENVCALL = 45,
|
|
opc_TYPECHECK = 46,
|
|
opc_STKSCAN = 47,
|
|
opc_BUSBLT = 48,
|
|
opc_MISC8 = 49,
|
|
opc_UBFLOAT3 = 50,
|
|
opc_TYPEMASK_N = 51,
|
|
opc_RDPROLOGPTR = 52,
|
|
opc_RDPROLOGTAG = 53,
|
|
opc_WRTPTRTAG = 54,
|
|
opc_WRTPTR0TAG = 55,
|
|
opc_MISC7 = 56,
|
|
opc_DOVEMISC = 57,
|
|
opc_EQL = 58,
|
|
opc_DRAWLINE = 59,
|
|
opc_STORE_N = 60,
|
|
opc_COPY_N = 61,
|
|
opc_RAID = 62,
|
|
opc_SLRETURN = 63,
|
|
opc_IVAR0 = 64,
|
|
opc_IVAR1 = 65,
|
|
opc_IVAR2 = 66,
|
|
opc_IVAR3 = 67,
|
|
opc_IVAR4 = 68,
|
|
opc_IVAR5 = 69,
|
|
opc_IVAR6 = 70,
|
|
opc_IVARX = 71,
|
|
opc_PVAR0 = 72,
|
|
opc_PVAR1 = 73,
|
|
opc_PVAR2 = 74,
|
|
opc_PVAR3 = 75,
|
|
opc_PVAR4 = 76,
|
|
opc_PVAR5 = 77,
|
|
opc_PVAR6 = 78,
|
|
opc_PVARX = 79,
|
|
opc_FVAR0 = 80,
|
|
opc_FVAR1 = 81,
|
|
opc_FVAR2 = 82,
|
|
opc_FVAR3 = 83,
|
|
opc_FVAR4 = 84,
|
|
opc_FVAR5 = 85,
|
|
opc_FVAR6 = 86,
|
|
opc_FVARX = 87,
|
|
opc_PVAR_0 = 88,
|
|
opc_PVAR_1 = 89,
|
|
opc_PVAR_2 = 90,
|
|
opc_PVAR_3 = 91,
|
|
opc_PVAR_4 = 92,
|
|
opc_PVAR_5 = 93,
|
|
opc_PVAR_6 = 94,
|
|
opc_PVARX_ = 95,
|
|
opc_GVAR = 96,
|
|
opc_ARG0 = 97,
|
|
opc_IVARX_ = 98,
|
|
opc_FVARX_ = 99,
|
|
opc_COPY = 100,
|
|
opc_MYARGCOUNT = 101,
|
|
opc_MYALINK = 102,
|
|
opc_ACONST = 103,
|
|
opc_NIL = 104,
|
|
opc_T = 105,
|
|
opc_0 = 106,
|
|
opc_1 = 107,
|
|
opc_SIC = 108,
|
|
opc_SNIC = 109,
|
|
opc_SICX = 110,
|
|
opc_GCONST = 111,
|
|
opc_unused_112 = 112,
|
|
opc_READFLAGS = 113,
|
|
opc_READRP = 114,
|
|
opc_WRITEMAP = 115,
|
|
opc_READPRINTERPORT = 116,
|
|
opc_WRITEPRINTERPORT = 117,
|
|
opc_PILOTBITBLT = 118,
|
|
opc_RCLK = 119,
|
|
opc_MISC1 = 120,
|
|
opc_MISC2 = 121,
|
|
opc_RECLAIMCELL = 122,
|
|
opc_GCSCAN1 = 123,
|
|
opc_GCSCAN2 = 124,
|
|
opc_SUBRCALL = 125,
|
|
opc_CONTEXTSWITCH = 126,
|
|
opc_RETCALL = 127,
|
|
opc_JUMP0 = 128,
|
|
opc_JUMP1 = 129,
|
|
opc_JUMP2 = 130,
|
|
opc_JUMP3 = 131,
|
|
opc_JUMP4 = 132,
|
|
opc_JUMP5 = 133,
|
|
opc_JUMP6 = 134,
|
|
opc_JUMP7 = 135,
|
|
opc_JUMP8 = 136,
|
|
opc_JUMP9 = 137,
|
|
opc_JUMP10 = 138,
|
|
opc_JUMP11 = 139,
|
|
opc_JUMP12 = 140,
|
|
opc_JUMP13 = 141,
|
|
opc_JUMP14 = 142,
|
|
opc_JUMP15 = 143,
|
|
opc_FJUMP0 = 144,
|
|
opc_FJUMP1 = 145,
|
|
opc_FJUMP2 = 146,
|
|
opc_FJUMP3 = 147,
|
|
opc_FJUMP4 = 148,
|
|
opc_FJUMP5 = 149,
|
|
opc_FJUMP6 = 150,
|
|
opc_FJUMP7 = 151,
|
|
opc_FJUMP8 = 152,
|
|
opc_FJUMP9 = 153,
|
|
opc_FJUMP10 = 154,
|
|
opc_FJUMP11 = 155,
|
|
opc_FJUMP12 = 156,
|
|
opc_FJUMP13 = 157,
|
|
opc_FJUMP14 = 158,
|
|
opc_FJUMP15 = 159,
|
|
opc_TJUMP0 = 160,
|
|
opc_TJUMP1 = 161,
|
|
opc_TJUMP2 = 162,
|
|
opc_TJUMP3 = 163,
|
|
opc_TJUMP4 = 164,
|
|
opc_TJUMP5 = 165,
|
|
opc_TJUMP6 = 166,
|
|
opc_TJUMP7 = 167,
|
|
opc_TJUMP8 = 168,
|
|
opc_TJUMP9 = 169,
|
|
opc_TJUMP10 = 170,
|
|
opc_TJUMP11 = 171,
|
|
opc_TJUMP12 = 172,
|
|
opc_TJUMP13 = 173,
|
|
opc_TJUMP14 = 174,
|
|
opc_TJUMP15 = 175,
|
|
opc_JUMPX = 176,
|
|
opc_JUMPXX = 177,
|
|
opc_FJUMPX = 178,
|
|
opc_TJUMPX = 179,
|
|
opc_NFJUMPX = 180,
|
|
opc_NTJUMPX = 181,
|
|
opc_AREF1 = 182,
|
|
opc_ASET1 = 183,
|
|
opc_PVARSETPOP0 = 184,
|
|
opc_PVARSETPOP1 = 185,
|
|
opc_PVARSETPOP2 = 186,
|
|
opc_PVARSETPOP3 = 187,
|
|
opc_PVARSETPOP4 = 188,
|
|
opc_PVARSETPOP5 = 189,
|
|
opc_PVARSETPOP6 = 190,
|
|
opc_POP = 191,
|
|
opc_POP_N = 192,
|
|
opc_ATOMCELL_N = 193,
|
|
opc_GETBASEBYTE = 194,
|
|
opc_INSTANCEP = 195,
|
|
opc_BLT = 196,
|
|
opc_MISC10 = 197,
|
|
opc_P_MISC2 = 198,
|
|
opc_PUTBASEBYTE = 199,
|
|
opc_GETBASE_N = 200,
|
|
opc_GETBASEPTR_N = 201,
|
|
opc_GETBITS_N_FD = 202,
|
|
opc_unused_203 = 203,
|
|
opc_CMLEQUAL = 204,
|
|
opc_PUTBASE_N = 205,
|
|
opc_PUTBASEPTR_N = 206,
|
|
opc_PUTBITS_N_FD = 207,
|
|
opc_ADDBASE = 208,
|
|
opc_VAG2 = 209,
|
|
opc_HILOC = 210,
|
|
opc_LOLOC = 211,
|
|
opc_PLUS2 = 212,
|
|
opc_DIFFERENCE = 213,
|
|
opc_TIMES2 = 214,
|
|
opc_QUOTIENT = 215,
|
|
opc_IPLUS2 = 216,
|
|
opc_IDIFFERENCE = 217,
|
|
opc_ITIMES2 = 218,
|
|
opc_IQUOTIENT = 219,
|
|
opc_IREMAINDER = 220,
|
|
opc_IPLUS_N = 221,
|
|
opc_IDIFFERENCE_N = 222,
|
|
opc_BASE_LESSTHAN = 223,
|
|
opc_LLSH1 = 224,
|
|
opc_LLSH8 = 225,
|
|
opc_LRSH1 = 226,
|
|
opc_LRSH8 = 227,
|
|
opc_LOGOR2 = 228,
|
|
opc_LOGAND2 = 229,
|
|
opc_LOGXOR2 = 230,
|
|
opc_LSH = 231,
|
|
opc_FPLUS2 = 232,
|
|
opc_FDIFFERENCE = 233,
|
|
opc_FTIMES2 = 234,
|
|
opc_FQUOTIENT = 235,
|
|
opc_UBFLOAT2 = 236,
|
|
opc_UBFLOAT1 = 237,
|
|
opc_AREF2 = 238,
|
|
opc_ASET2 = 239,
|
|
opc_EQ = 240,
|
|
opc_IGREATERP = 241,
|
|
opc_FGREATERP = 242,
|
|
opc_GREATERP = 243,
|
|
opc_EQUAL = 244,
|
|
opc_MAKENUMBER = 245,
|
|
opc_BOXIPLUS = 246,
|
|
opc_BOXIDIFFERENCE = 247,
|
|
opc_FLOATBLT = 248,
|
|
opc_FFTSTEP = 249,
|
|
opc_MISC3 = 250,
|
|
opc_MISC4 = 251,
|
|
opc_UPCTRACE = 252,
|
|
opc_SWAP = 253,
|
|
opc_NOP = 254,
|
|
opc_CL_EQUAL = 255,
|
|
|
|
/* A couple of aliases */
|
|
opc_JUMP = opc_JUMP0,
|
|
opc_FJUMP = opc_FJUMP0,
|
|
opc_TJUMP = opc_TJUMP0,
|
|
};
|
|
|
|
#endif /* OPCODES_H */
|