home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1992 March / Source_Code_CD-ROM_Walnut_Creek_March_1992.iso / usenet / altsrcs / 2 / 2431 / 387opcodes.h < prev    next >
Encoding:
Text File  |  1991-01-01  |  3.0 KB  |  207 lines

  1.  
  2. char *float_mem[] = {
  3.     /* d8 */
  4.     "fadds",
  5.     "fmuls",
  6.     "fcoms",
  7.     "fcomps",
  8.     "fsubs",
  9.     "fsubrs",
  10.     "fdivs",
  11.     "fdivrs",
  12.     /*  d9 */
  13.     "flds",
  14.     "(bad)",
  15.     "fsts",
  16.     "fstps",
  17.     "fldenv",
  18.     "fldcw",
  19.     "fNstenv",
  20.     "fNstcw",
  21.     /* da */
  22.     "fiaddl",
  23.     "fimull",
  24.     "ficoml",
  25.     "ficompl",
  26.     "fisubl",
  27.     "fisubrl",
  28.     "fidivl",
  29.     "fidivrl",
  30.     /* db */
  31.     "fildl",
  32.     "(bad)",
  33.     "fistl",
  34.     "fistpl",
  35.     "(bad)",
  36.     "fldt",
  37.     "(bad)",
  38.     "fstpt",
  39.     /* dc */
  40.     "faddl",
  41.     "fmull",
  42.     "fcoml",
  43.     "fcompl",
  44.     "fsubl",
  45.     "fsubrl",
  46.     "fdivl",
  47.     "fdivrl",
  48.     /* dd */
  49.     "fldl",
  50.     "(bad)",
  51.     "fstl",
  52.     "fstpl",
  53.     "frstor",
  54.     "(bad)",
  55.         "fNsave",
  56.     "fNstsw",
  57.     /* de */
  58.     "fiadd",
  59.     "fimul",
  60.     "ficom",
  61.     "ficomp",
  62.     "fisub",
  63.     "fisubr",
  64.     "fidiv",
  65.     "fidivr",
  66.     /* df */
  67.     "fild",
  68.     "(bad)",
  69.     "fist",
  70.     "fistp",
  71.     "fbld",
  72.     "fildll",
  73.     "fbstp",
  74.     "fistpll",
  75.  };
  76.  
  77.  #define ST OP_ST, 0
  78.  #define STi OP_STi, 0
  79.  int OP_ST(), OP_STi();
  80.  
  81.  #define FGRPd9_2 NULL, NULL, 0
  82.  #define FGRPd9_4 NULL, NULL, 1
  83.  #define FGRPd9_5 NULL, NULL, 2
  84.  #define FGRPd9_6 NULL, NULL, 3
  85.  #define FGRPd9_7 NULL, NULL, 4
  86.  #define FGRPda_5 NULL, NULL, 5
  87.  #define FGRPdb_4 NULL, NULL, 6
  88.  #define FGRPde_3 NULL, NULL, 7
  89.  #define FGRPdf_4 NULL, NULL, 8
  90.  
  91.  struct dis386 float_reg[][8] = {
  92.      {
  93.          { "fadd",    ST, STi },
  94.         { "fmul",    ST, STi },
  95.         { "fcom",    STi },
  96.         { "fcomp",    STi },
  97.         { "fsub",    ST, STi },
  98.         { "fsubr",    ST, STi },
  99.         { "fdiv",    ST, STi },
  100.         { "fdivr",    ST, STi },
  101.     },
  102.      {
  103.         { "fld",    STi },
  104.         { "fxch",    STi },
  105.         { FGRPd9_2 },
  106.         { "(bad)" },
  107.         { FGRPd9_4 },
  108.         { FGRPd9_5 },
  109.         { FGRPd9_6 },
  110.         { FGRPd9_7 },
  111.     },
  112.      {
  113.         { "(bad)" },
  114.         { "(bad)" },
  115.         { "(bad)" },
  116.         { "(bad)" },
  117.         { "(bad)" },
  118.         { FGRPda_5 },
  119.         { "(bad)" },
  120.         { "(bad)" },
  121.     },
  122.      {
  123.         { "(bad)" },
  124.         { "(bad)" },
  125.         { "(bad)" },
  126.          { "(bad)" },
  127.          { FGRPdb_4 },
  128.          { "(bad)" },
  129.          { "(bad)" },
  130.         { "(bad)" },
  131.     },
  132.      {
  133.         { "fadd",    STi, ST },
  134.         { "fmul",    STi, ST },
  135.         { "(bad)" },
  136.         { "(bad)" },
  137.         { "fsub",    STi, ST },
  138.         { "fsubr",    STi, ST },
  139.         { "fdiv",    STi, ST },
  140.         { "fdivr",    STi, ST },
  141.     },
  142.      {
  143.         { "ffree",    STi },
  144.         { "(bad)" },
  145.         { "fst",    STi },
  146.         { "fstp",    STi },
  147.         { "fucom",    STi },
  148.         { "fucomp",    STi },
  149.         { "(bad)" },
  150.         { "(bad)" },
  151.     },
  152.      {
  153.         { "faddp",    STi, ST },
  154.         { "fmulp",    STi, ST },
  155.         { "(bad)" },
  156.         { FGRPde_3 },
  157.         { "fsubp",    STi, ST },
  158.         { "fsubrp",    STi, ST },
  159.         { "fdivp",    STi, ST },
  160.         { "fdivrp",    STi, ST },
  161.     },
  162.      {
  163.         { "(bad)" },
  164.         { "(bad)" },
  165.         { "(bad)" },
  166.         { "(bad)" },
  167.         { FGRPdf_4 },
  168.         { "(bad)" },
  169.         { "(bad)" },
  170.         { "(bad)" },
  171.     },
  172. };
  173.  
  174.  
  175. char *fgrps[][8] = {
  176. {
  177.     "fnop","(bad)","(bad)","(bad)","(bad)","(bad)","(bad)","(bad)",
  178. },
  179. {
  180.     "fchs","fabs","(bad)","(bad)","ftst","fxam","(bad)","(bad)",
  181. },
  182. {
  183.     "fld1","fldl2t","fldl2e","fldpi","fldlg2","fldln2","fldz","(bad)",
  184. },
  185. {
  186.     "f2xm1","fyl2x","fptan","fpatan","fxtract","fprem1","fdecstp","fincstp",
  187. },
  188. {
  189.     "fprem","fyl2xp1","fsqrt","fsincos","frndint","fscale","fsin","fcos",
  190. },
  191. {
  192.     "(bad)","fucompp","(bad)","(bad)","(bad)","(bad)","(bad)","(bad)",
  193. },
  194. {
  195.     "feni(287 only)","fdisi(287 only)","fNclex","fNinit",
  196.     "fNsetpm(287 only)","(bad)","(bad)","(bad)",
  197. },
  198. {
  199.     "(bad)","fcompp","(bad)","(bad)","(bad)","(bad)","(bad)","(bad)",
  200. },
  201. {
  202.     "fNstsw","(bad)","(bad)","(bad)","(bad)","(bad)","(bad)","(bad)",
  203. },
  204. };
  205.  
  206.  
  207.