mach.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /* $Id$ */
  2. /*
  3. * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
  4. * See the copyright notice in the ACK home directory, in the file "Copyright".
  5. */
  6. #include <whichone.h>
  7. #ifndef TBL68020
  8. #ifndef TBL68000
  9. Something is very wrong here. You must specify the machine: either
  10. TBL68000 or TBL68020, in the file whichone.h, then REMOVE tables.c
  11. and then run "make" again
  12. #endif
  13. #endif
  14. #if WORD_SIZE!=2 && WORD_SIZE!=4
  15. You must specify the appropriate word size, then REMOVE tables.c
  16. #endif
  17. #define ex_ap(y) fprintf(codefile,".extern %s\n",y)
  18. #define in_ap(y) /* nothing */
  19. #define newilb(x) fprintf(codefile,"%s:\n",x)
  20. #define newdlb(x) fprintf(codefile,"%s:\n",x)
  21. #define dlbdlb(x,y) fprintf(codefile,"%s = %s\n",x,y)
  22. #define newlbss(l,x) fprintf(codefile,".comm %s,%ld\n",l,x);
  23. #define pop_fmt "(sp)+"
  24. #define cst_fmt "%ld"
  25. #define off_fmt "%ld"
  26. #define ilb_fmt "I%x_%x"
  27. #define dlb_fmt "I_%d"
  28. #define hol_fmt "hol%d"
  29. #define hol_off "%ld+hol%d"
  30. #if WORD_SIZE==2
  31. #define con_cst(x) fprintf(codefile,".data2\t%ld\n",x)
  32. #else
  33. #define con_cst(x) fprintf(codefile,".data4\t%ld\n",x)
  34. #endif
  35. #define con_ilb(x) fprintf(codefile,".data4\t%s\n",x)
  36. #define con_dlb(x) fprintf(codefile,".data4\t%s\n",x)
  37. #define modhead ".sect .text\n.sect .rom\n.sect .data\n.sect .bss\n"
  38. #define fmt_id(sf,st) sprintf(st,"_%s",sf)
  39. #define BSS_INIT 0
  40. #define MACH_OPTIONS