|
|
1.1 ! root 1: #include "c2.h" ! 2: #define readonly ! 3: ! 4: readonly char revbr[] = { ! 5: JNE, JEQ, JGT, JLT, JGE, JLE, ! 6: JNE, JEQ, JHI, JLO, JHIS, JLOS, ! 7: JBS, JBC, }; ! 8: ! 9: /* cursed be the preprocessor, whose impotence and stupidity ! 10: /* prevented this table being macro-generated from ../as/instrs ! 11: */ ! 12: ! 13: readonly struct optab optab[] = { ! 14: "jbr",JBR,0, ! 15: "jeql",CBR,JEQ, ! 16: "jneq",CBR,JNE, ! 17: "jleq",CBR,JLE, ! 18: "jgeq",CBR,JGE, ! 19: "jlss",CBR,JLT, ! 20: "jgtr",CBR,JGT, ! 21: "jbc",CBR,JBC, ! 22: "jbs",CBR,JBS, ! 23: "jlequ",CBR,JLOS, ! 24: "jgequ",CBR,JHIS, ! 25: "jlssu",CBR,JLO, ! 26: "jgtru",CBR,JHI, ! 27: "adda",ADDA,LONG, ! 28: "addb2",ADD,U(BYTE,OP2), ! 29: "addb3",ADD,U(BYTE,OP3), ! 30: "addl2",ADD,U(LONG,OP2), ! 31: "addl3",ADD,U(LONG,OP3), ! 32: "addw2",ADD,U(WORD,OP2), ! 33: "addw3",ADD,U(WORD,OP3), ! 34: "aobleq",AOBLEQ,0, ! 35: "aoblss",AOBLSS,0, ! 36: "shal",SHAL,LONG, ! 37: "shar",SHAR,LONG, ! 38: "shll",SHL,LONG, ! 39: "shrl",SHR,LONG, ! 40: "shlq",SHL,QUAD, ! 41: "shrq",SHR,QUAD, ! 42: "bbc",CBR,JBC, ! 43: "bbs",CBR,JBS, ! 44: "bcc",CBR,JHIS, ! 45: "bcs",CBR,JLO, ! 46: "beql",CBR,JEQ, ! 47: "beqlu",CBR,JEQ, ! 48: "bgeq",CBR,JGE, ! 49: "bgequ",CBR,JHIS, ! 50: "bgtr",CBR,JGT, ! 51: "bgtru",CBR,JHI, ! 52: "andb2",AND,U(BYTE,OP2), ! 53: "andb3",AND,U(BYTE,OP3), ! 54: "andl2",AND,U(LONG,OP2), ! 55: "andl3",AND,U(LONG,OP3), ! 56: "andw2",AND,U(WORD,OP2), ! 57: "andw3",AND,U(WORD,OP3), ! 58: "orb2",OR,U(BYTE,OP2), ! 59: "orb3",OR,U(BYTE,OP3), ! 60: "orl2",OR,U(LONG,OP2), ! 61: "orl3",OR,U(LONG,OP3), ! 62: "orw2",OR,U(WORD,OP2), ! 63: "orw3",OR,U(WORD,OP3), ! 64: "bitb",BIT,BYTE, ! 65: "bitl",BIT,LONG, ! 66: "bitw",BIT,WORD, ! 67: "bleq",CBR,JLE, ! 68: "blequ",CBR,JLOS, ! 69: "blss",CBR,JLT, ! 70: "blssu",CBR,JLO, ! 71: "bneq",CBR,JNE, ! 72: "bnequ",CBR,JNE, ! 73: "brb",JBR,0, ! 74: "brw",JBR,0, ! 75: "bvc",CBR,0, ! 76: "bvs",CBR,0, ! 77: "callf",CALLF,0, ! 78: "calls",CALLS,0, ! 79: "casel",CASE,LONG, ! 80: "clrb",CLR,BYTE, ! 81: "clrl",CLR,LONG, ! 82: "clrw",CLR,WORD, ! 83: "cmpb",CMP,BYTE, ! 84: "cmpl",CMP,LONG, ! 85: "cmpw",CMP,WORD, ! 86: "cvtbl",CVT,U(BYTE,LONG), ! 87: "cvtbw",CVT,U(BYTE,WORD), ! 88: "cvtlb",CVT,U(LONG,BYTE), ! 89: "cvtlw",CVT,U(LONG,WORD), ! 90: "cvtwb",CVT,U(WORD,BYTE), ! 91: "cvtwl",CVT,U(WORD,LONG), ! 92: "decb",DEC,BYTE, ! 93: "decl",DEC,LONG, ! 94: "decw",DEC,WORD, ! 95: "divl2",DIV,U(LONG,OP2), ! 96: "divl3",DIV,U(LONG,OP3), ! 97: "ediv",EDIV,LONG, ! 98: #ifdef EMOD ! 99: "emod",EMOD,LONG, ! 100: #endif EMOD ! 101: "emul",EMUL,LONG, ! 102: "incb",INC,BYTE, ! 103: "incl",INC,LONG, ! 104: "incw",INC,WORD, ! 105: "jmp",JMP,0, ! 106: "mcomb",COM,BYTE, ! 107: "mcoml",COM,LONG, ! 108: "mcomw",COM,WORD, ! 109: "mnegb",NEG,BYTE, ! 110: "mnegl",NEG,LONG, ! 111: "mnegw",NEG,WORD, ! 112: "movab",MOVA,BYTE, ! 113: "moval",MOVA,LONG, ! 114: "movaw",MOVA,WORD, ! 115: "movb",MOV,BYTE, ! 116: "movl",MOV,LONG, ! 117: "movw",MOV,WORD, ! 118: "movzbl",MOVZ,U(BYTE,LONG), ! 119: "movzbw",MOVZ,U(BYTE,WORD), ! 120: "movzwl",MOVZ,U(WORD,LONG), ! 121: "mull2",MUL,U(LONG,OP2), ! 122: "mull3",MUL,U(LONG,OP3), ! 123: "pushab",PUSHA,BYTE, ! 124: "pushal",PUSHA,LONG, ! 125: "pushaw",PUSHA,WORD, ! 126: "pushb",PUSH,BYTE, ! 127: "pushl",PUSH,LONG, ! 128: "pushw",PUSH,WORD, ! 129: "ret",JBR,U(RET,2), ! 130: "ret#0",JBR,RET, ! 131: "ret#1",JBR,U(RET,1), ! 132: "ret#2",JBR,U(RET,2), ! 133: "suba",SUBA,LONG, ! 134: "subb2",SUB,U(BYTE,OP2), ! 135: "subb3",SUB,U(BYTE,OP3), ! 136: "subl2",SUB,U(LONG,OP2), ! 137: "subl3",SUB,U(LONG,OP3), ! 138: "subw2",SUB,U(WORD,OP2), ! 139: "subw3",SUB,U(WORD,OP3), ! 140: "tstb",TST,BYTE, ! 141: "tstl",TST,LONG, ! 142: "tstw",TST,WORD, ! 143: "xorb2",XOR,U(BYTE,OP2), ! 144: "xorb3",XOR,U(BYTE,OP3), ! 145: "xorl2",XOR,U(LONG,OP2), ! 146: "xorl3",XOR,U(LONG,OP3), ! 147: "xorw2",XOR,U(WORD,OP2), ! 148: "xorw3",XOR,U(WORD,OP3), ! 149: "movblk",MOVBLK,0, ! 150: "ldf",LDF,FLOAT, ! 151: "ldd",LDF,DOUBLE, ! 152: "lnf",LNF,FLOAT, ! 153: "lnd",LNF,DOUBLE, ! 154: "stf",STF,FLOAT, ! 155: "std",STF,DOUBLE, ! 156: "cmpf",CMPF,FLOAT, ! 157: "cmpd",CMPF,DOUBLE, ! 158: "cmpf2",CMPF2,FLOAT, ! 159: "cmpd2",CMPF2,DOUBLE, ! 160: "tstf",TSTF,FLOAT, ! 161: "tstd",TSTF,DOUBLE, ! 162: "pushd",PUSHD,DOUBLE, ! 163: "cvlf",CVLF,U(LONG,FLOAT), ! 164: "cvld",CVLF,U(LONG,DOUBLE), ! 165: "cvfl",CVFL,U(FLOAT,LONG), ! 166: "cvdl",CVFL,U(DOUBLE,LONG), ! 167: "ldfd",LDFD,U(FLOAT,DOUBLE), ! 168: "cvdf",CVDF,U(DOUBLE,FLOAT), ! 169: "negf",NEGF,FLOAT, ! 170: "negd",NEGF,DOUBLE, ! 171: "addf",ADDF,FLOAT, ! 172: "addd",ADDF,DOUBLE, ! 173: "subf",SUBF,FLOAT, ! 174: "subd",SUBF,DOUBLE, ! 175: "mulf",MULF,FLOAT, ! 176: "muld",MULF,DOUBLE, ! 177: "divf",DIVF,FLOAT, ! 178: "divd",DIVF,DOUBLE, ! 179: "sinf",SINF,FLOAT, ! 180: "cosf",COSF,FLOAT, ! 181: "atanf",ATANF,FLOAT, ! 182: "logf",LOGF,FLOAT, ! 183: "sqrtf",SQRTF,FLOAT, ! 184: "expf",EXPF,FLOAT, ! 185: ".globl",EROU,0, ! 186: ".text",TEXT,0, ! 187: ".data",DATA,0, ! 188: ".bss",BSS,0, ! 189: ".align",ALIGN,0, ! 190: ".word",WGEN,0, ! 191: ".long",LGEN,0, ! 192: ".set",SET,0, ! 193: ".lcomm",LCOMM,0, ! 194: ".comm",COMM,0, ! 195: ".end",END,0, ! 196: "mfpr",MFPR,LONG, ! 197: "mtpr",MTPR,LONG, ! 198: "probe",PROBE,BYTE, ! 199: "adwc",0,0, ! 200: "movob",MOVO,BYTE, ! 201: "movow",MOVO,WORD, ! 202: "bbssi",0,0, ! 203: "bicpsw",0,0, ! 204: "bispsw",0,0, ! 205: "bpt",0,0, ! 206: "btcs",0,0, ! 207: "cmps2",0,0, ! 208: "cmps3",0,0, ! 209: "emul",0,0, ! 210: "ffc",0,0, ! 211: "ffs",0,0, ! 212: "halt",0,0, ! 213: "insque",0,0, ! 214: "kcall",0,0, ! 215: "ldpctx",0,0, ! 216: "loadr",0,0, ! 217: "movpsl",0,0, ! 218: "movs2",0,0, ! 219: "movs3",0,0, ! 220: "nop",0,0, ! 221: "rei",0,0, ! 222: "remque",0,0, ! 223: "sbwc",0,0, ! 224: "storer",0,0, ! 225: "svpctx",0,0, ! 226: "sinf",0,0, ! 227: "cosf",0,0, ! 228: "atanf",0,0, ! 229: "logf",0,0, ! 230: "sqrtf",0,0, ! 231: "expf",0,0, ! 232: 0,0,0};
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.