-- FOpTable.mesa
-- last edited by Sweet, 8-Oct-81 14:04:14
-- last edited by JGS,  3-Nov-81  9:36:15
-- last edited by Satterthwaite, December 14, 1982 12:15 pm

DIRECTORY
  P5: TYPE USING [];

FOpTable: PROGRAM EXPORTS P5 = {

-- generated by OpDefsGenerator from tFOpCodes.txt, 14-Dec-82 12:11

  Q: TYPE = PRIVATE RECORD [
    push, pop: [0..7], length: [0..3]];

  OpParms: PRIVATE ARRAY [0..256) OF Q = [
--      NULL        ACD        ADC        ADD   000-003
    Q[0,0,0],  Q[2,3,0],  Q[2,3,0],  Q[1,2,0],
--     ADDSB         AF      AL0IB       AMUL   004-007
    Q[1,1,1],  Q[1,1,0],  Q[1,0,1],  Q[1,2,0],
--       AND         BC     BITBLT        BLT   010-013
    Q[1,2,0],  Q[0,2,0],  Q[0,1,0],  Q[0,3,0],
--      BLTC      BLTCL      BLTEL     BLTECL   014-017
    Q[0,3,0],  Q[0,4,0],  Q[0,5,0],  Q[0,4,0],
--      BLTL      BNDCK        BRK      CATCH   020-023
    Q[0,5,0],  Q[1,2,0],  Q[0,0,0],  Q[0,0,1],
--  CATCHFSI       DADD       DAND         DB   024-027
    Q[0,0,1],  Q[2,4,0],  Q[2,4,0],  Q[1,0,1],
--       DBL        DBS       DCMP       DDBL   030-033
    Q[1,1,0],  Q[1,1,1],  Q[1,4,0],  Q[2,2,0],
--      DDIV       DDUP        DEC      DEXCH   034-037
    Q[2,4,0],  Q[4,2,0],  Q[1,1,0],  Q[4,4,0],
--        DI       DINC       DIOR        DIS   040-043
    Q[0,0,0],  Q[2,2,0],  Q[2,4,0],  Q[0,1,0],
--      DIS2       DMOD       DMUL     DSHIFT   044-047
    Q[0,2,0],  Q[2,4,0],  Q[2,4,0],  Q[2,3,0],
--       DSK       DSUB      DUDIV      DUMOD   050-053
    Q[0,0,1],  Q[2,4,0],  Q[2,4,0],  Q[2,4,0],
--       DUP       DXOR        EFC         EI   054-057
    Q[2,1,0],  Q[2,4,0],  Q[0,0,1],  Q[0,0,0],
--       ESC       ESCL       EXCH      EXDIS   060-063
    Q[0,0,0],  Q[0,0,1],  Q[2,2,0],  Q[1,2,0],
--      FADD      FCOMP       FDIV         FF   064-067
    Q[2,4,0],  Q[1,4,0],  Q[2,4,0],  Q[0,1,0],
--       FIX       FIXC       FIXI      FLOAT   070-073
    Q[2,2,0],  Q[2,2,0],  Q[2,2,0],  Q[2,2,0],
--      FMUL       FREM        FSC    FSTICKY   074-077
    Q[2,4,0],  Q[2,4,0],  Q[2,3,0],  Q[0,1,0],
--      FSUB         GA        GMF        INC   100-103
    Q[2,4,0],  Q[1,0,1],  Q[3,2,0],  Q[1,1,0],
--       IOR          J       JREL         JS   104-107
    Q[1,2,0],  Q[0,0,0],  Q[0,2,0],  Q[0,1,0],
--      KFCB         LA        LCO        LFC   110-113
    Q[0,0,1],  Q[1,0,1],  Q[1,0,1],  Q[0,0,1],
--        LG        LGD         LI        LID   114-117
    Q[1,0,1],  Q[2,0,1],  Q[1,0,1],  Q[2,0,1],
--      LINT        LIO        LKB         LL   120-123
    Q[2,1,0],  Q[1,0,1],  Q[0,0,1],  Q[1,0,1],
--       LLD        LLK       LLOB         LP   124-127
    Q[2,0,1],  Q[1,0,1],  Q[1,0,1],  Q[2,1,0],
--       LST       LSTE       LSTF      LUDIV   130-133
    Q[0,0,1],  Q[0,0,1],  Q[0,0,1],  Q[1,3,0],
--        ME         MR        MUL         MW   134-137
    Q[1,2,0],  Q[1,4,0],  Q[1,2,0],  Q[0,5,0],
--        MX         NC        NEG         PI   140-143
    Q[0,2,0],  Q[0,2,0],  Q[1,1,0],  Q[0,0,0],
--        PL        PLD         PO        POR   144-147
    Q[1,1,1],  Q[2,2,1],  Q[0,1,0],  Q[0,1,0],
--        PS        PSD       PSDL        PSF   150-153
    Q[1,2,1],  Q[1,3,1],  Q[2,4,1],  Q[1,2,2],
--       PSL       PSLF          R         RC   154-157
    Q[2,3,1],  Q[2,3,2],  Q[1,1,1],  Q[1,1,1],
--       RCF       RCFS         RD        RDL   160-163
    Q[1,1,2],  Q[1,2,0],  Q[2,1,1],  Q[2,2,1],
--       REC       REC2        REQ        RET   164-167
    Q[1,0,0],  Q[2,0,0],  Q[0,5,0],  Q[0,0,0],
--        RF       RGDI      RGDIL        RGI   170-173
    Q[1,1,2],  Q[2,0,2],  Q[2,0,2],  Q[1,0,2],
--      RGIF       RGIL      RGILF       RKDI   174-177
    Q[1,0,3],  Q[1,0,2],  Q[1,0,3],  Q[2,0,1],
--       RKI         RL       RLDI      RLDIL   200-203
    Q[1,0,1],  Q[1,2,1],  Q[2,0,2],  Q[2,0,2],
--       RLF       RLFS        RLI       RLIF   204-207
    Q[1,2,2],  Q[1,3,0],  Q[1,0,2],  Q[1,0,3],
--      RLIL      RLILF        ROB     ROTATE   210-213
    Q[1,0,2],  Q[1,0,3],  Q[1,1,1],  Q[1,2,0],
--     ROUND     ROUNDC     ROUNCI       RSTR   214-217
    Q[2,2,0],  Q[2,2,0],  Q[2,2,0],  Q[1,2,1],
--     RSTRL       SDIV      SELFC        SFC   220-223
    Q[1,3,1],  Q[1,2,0],  Q[0,0,0],  Q[0,1,0],
--        SG        SGD      SHIFT    SHIFTSB   224-227
    Q[0,1,1],  Q[0,2,1],  Q[1,2,0],  Q[1,1,1],
--        SL        SLD       SLOB        SUB   230-233
    Q[0,1,1],  Q[0,2,1],  Q[0,1,1],  Q[1,2,0],
--      TRPL      UDCMP       UDIV          W   234-237
    Q[1,1,0],  Q[1,4,0],  Q[1,2,0],  Q[0,2,1],
--        WD        WDL         WF       WGDI   240-243
    Q[0,3,1],  Q[0,4,1],  Q[0,2,2],  Q[0,2,2],
--     WGDIL        WGI       WGIF       WGIL   244-247
    Q[0,2,2],  Q[0,1,2],  Q[0,1,3],  Q[0,1,2],
--     WGILF         WL       WLDI      WLDIL   250-253
    Q[0,1,3],  Q[0,3,1],  Q[0,2,2],  Q[0,2,2],
--       WLF       WLFS        WLI       WLIF   254-257
    Q[0,3,2],  Q[0,4,0],  Q[0,1,2],  Q[0,1,3],
--      WLIL      WLILF        WOB         WS   260-263
    Q[0,1,2],  Q[0,1,3],  Q[0,2,1],  Q[0,2,1],
--       WSD       WSDL        WSF        WSL   264-267
    Q[0,3,1],  Q[0,4,1],  Q[0,2,2],  Q[0,3,1],
--      WSLF       WSTR      WSTRL        XOR   270-273
    Q[0,3,2],  Q[0,3,1],  Q[0,4,1],  Q[1,2,0],
--     NILCK     NILCKL      WCIDL       WCDL   274-277
    Q[1,1,0],  Q[2,2,0],  Q[0,4,1],  Q[0,4,1],
--    PSCIDL      PSCDL     WSCIDL      WSCDL   300-303
    Q[2,4,1],  Q[2,4,1],  Q[0,4,1],  Q[0,4,1],
--      GCRT       BLZL                         304-307
    Q[1,2,0],  Q[2,3,0],  Q[0,0,0],  Q[0,0,0],
--                                              310-313
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              314-317
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              320-323
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              324-327
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              330-333
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              334-337
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              340-343
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              344-347
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              350-353
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              354-357
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              360-363
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              364-367
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              370-373
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0],
--                                              374-377
    Q[0,0,0],  Q[0,0,0],  Q[0,0,0],  Q[0,0,0]];

  PushEffect: PUBLIC PROC [b: [0..256)] RETURNS [[0..7]] = {RETURN [OpParms[b].push]};

  PopEffect: PUBLIC PROC [b: [0..256)] RETURNS [[0..7]] = {RETURN [OpParms[b].pop]};

  NumberOfParams: PUBLIC PROC [b: [0..256)] RETURNS [[0..3]] = {RETURN [OpParms[b].length]};

  }.