// OPCODE, MNEMONIC, TYPE, DOC; 0, UN, N, "Cause an unreachable code trap" ; 1, TX, N, "Termiante execution" ; 2, NOP, N, "Do nothing" ; 3, ADD, RRR, "Addition" ; 4, SUB, RRR, "Subtraction" ; 5, MUL, RRR, "Multiplication" ; 6, AND, RRR, "Bitand" ; 7, OR, RRR, "Bitor" ; 8, XOR, RRR, "Bitxor" ; 9, SL, RRR, "Unsigned left bitshift" ; 10, SR, RRR, "Unsigned right bitshift" ; 11, SRS, RRR, "Signed right bitshift" ; 12, CMP, RRR, "Signed comparsion" ; 13, CMPU, RRR, "Unsigned comparsion" ; 14, DIR, RRRR, "Merged divide-remainder" ; 15, NEG, RR, "Bit negation" ; 16, NOT, RR, "Logical negation" ; 17, ADDI, RRD, "Addition with immediate" ; 18, MULI, RRD, "Multiplication with immediate" ; 19, ANDI, RRD, "Bitand with immediate" ; 20, ORI, RRD, "Bitor with immediate" ; 21, XORI, RRD, "Bitxor with immediate" ; 22, SLI, RRW, "Unsigned left bitshift with immedidate"; 23, SRI, RRW, "Unsigned right bitshift with immediate"; 24, SRSI, RRW, "Signed right bitshift with immediate" ; 25, CMPI, RRD, "Signed compare with immediate" ; 26, CMPUI, RRD, "Unsigned compare with immediate" ; 27, CP, RR, "Copy register" ; 28, SWA, RR, "Swap registers" ; 29, LI, RD, "Load immediate" ; 30, LRA, RRO, "Load relative address" ; 31, LD, RRAH, "Load from absolute address" ; 32, ST, RRAH, "Store to absolute address" ; 33, LDR, RROH, "Load from relative address" ; 34, STR, RROH, "Store to relative address" ; 35, BMC, RRH, "Copy block of memory" ; 36, BRC, RRB, "Copy register block" ; 37, JMP, O, "Relative jump" ; 38, JAL, RRA, "Linking absolute jump" ; 39, JALR, RRO, "Linking relative jump" ; 40, JEQ, RRP, "Branch on equal" ; 41, JNE, RRP, "Branch on nonequal" ; 42, JLT, RRP, "Branch on lesser-than (signed)" ; 43, JGT, RRP, "Branch on greater-than (signed)" ; 44, JLTU, RRP, "Branch on lesser-than (unsigned)" ; 45, JGTU, RRP, "Branch on greater-than (unsigned)" ; 46, ECA, N, "Environment call trap" ; 47, EBP, N, "Environment breakpoint" ; 48, ADDF, RRR, "Floating addition" ; 49, SUBF, RRR, "Floating subtraction" ; 50, MULF, RRR, "Floating multiply" ; 51, DIRF, RRRR, "Merged floating divide-remainder" ; 52, FMAF, RRRR, "Fused floating multiply-add" ; 53, NEGF, RR, "Floating sign negation" ; 54, ITF, RR, "Int to float" ; 55, FTI, RR, "Float to int" ; 56, ADDFI, RRD, "Floating addition with immediate" ; 57, MULFI, RRD, "Floating multiplication with immediate"; 58, LRA16 , RRP, "Load relative immediate (16 bit)" ; 59, LDR16 , RRPH, "Load from relative address (16 bit)" ; 60, STR16 , RRPH, "Store to relative address (16 bit)" ; 61, JMPR16, P, "Relative jump (16 bit)" ;