mach1.c 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /*
  2. * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
  3. * See the copyright notice in the ACK home directory, in the file "Copyright".
  4. */
  5. #define RCSID1 "$Id$"
  6. /*
  7. * INTEL 8086 C declarations
  8. */
  9. #define low6(z) (z & 077)
  10. #define fit6(z) (low6(z) == z)
  11. #define low3(z) (z & 07)
  12. #define fit3(z) (low3(z) == z)
  13. #define FESC 0xD8 /* escape for 8087 processor */
  14. extern int mrg_1,mrg_2;
  15. extern expr_t exp_1,exp_2;
  16. #ifndef ASLD
  17. extern int rel_1, rel_2;
  18. #endif
  19. void branch(int opc, expr_t exp);
  20. void pushop(int opc);
  21. void addop(int opc);
  22. void incop(int opc);
  23. void rolop(int opc);
  24. void imul(int opc);
  25. void regsize(int sz);
  26. void ea_1(int param);
  27. void ea_2(int param);
  28. void callop(int opc);
  29. void xchg(int opc);
  30. void test(int opc);
  31. void mov(int opc);
  32. void indexed();
  33. #ifndef extern
  34. extern char sr_m[8];
  35. #else
  36. char sr_m[8] = {
  37. -1, -1, -1, 7, -1, 6, 4, 5
  38. };
  39. #endif
  40. #ifndef extern
  41. extern char dr_m[8][8];
  42. #else
  43. char dr_m[8][8] = {
  44. { -1, -1, -1, -1, -1, -1, -1, -1 },
  45. { -1, -1, -1, -1, -1, -1, -1, -1 },
  46. { -1, -1, -1, -1, -1, -1, -1, -1 },
  47. { -1, -1, -1, -1, -1, -1, 0, 1 },
  48. { -1, -1, -1, -1, -1, -1, -1, -1 },
  49. { -1, -1, -1, -1, -1, -1, 2, 3 },
  50. { -1, -1, -1, -1, -1, -1, -1, -1 },
  51. { -1, -1, -1, -1, -1, -1, -1, -1 }
  52. };
  53. #endif