* machine dependent back end routines for the Motorola 68000
*/
-#define IEEEFLOAT
+/* #define IEEEFLOAT */
#ifdef IEEEFLOAT
#include "FP.h"
if (sz != 4)
fatal("bad icon/ucon size");
- fprintf(codefile,".long %s\n",str);
+ fprintf(codefile,".data4 %s\n",str);
}
#ifdef IEEEFLOAT
sz = argval;
if (sz!= 4 && sz!= 8) {
- sprintf(mesg,"con_float(): bad fcon size %d %D\nstr: %s\n\0",
+ sprintf(mesg,"con_float(): bad fcon size %d %ld\nstr: %s\n\0",
sz,sz,str);
fatal(mesg);
}
#endif IEEEFLOAT
while ( sz ) {
- fprintf(codefile,"\t.word 0x%x,0x%x !float test %s\n",
+ fprintf(codefile,"\t.data2 0x%x,0x%x !float test %s\n",
(int)(*l)&0xFFFF,(int)(*l>>16)&0xFFFF,str);
sz -=4 ;
l++;
prolog(nlocals) full nlocals; {
- fprintf(codefile,"tst.b -%D(sp)\nlink\ta6,#-%D\n",nlocals+40,nlocals);
+ fprintf(codefile,"tst.b -%ld(sp)\nlink\ta6,#-%ld\n",nlocals+40,nlocals);
}
char *segname[] = {
- ".text", /* SEGTXT */
- ".data", /* SEGCON */
- ".data", /* SEGROM */
- ".bss" /* SEGBSS */
+ ".sect .text", /* SEGTXT */
+ ".sect .data", /* SEGCON */
+ ".sect .rom", /* SEGROM */
+ ".sect .bss" /* SEGBSS */
};
#define newilb(x) fprintf(codefile,"%s:\n",x)
#define newdlb(x) fprintf(codefile,"%s:\n",x)
#define dlbdlb(x,y) fprintf(codefile,"%s = %s\n",x,y)
-#define newlbss(l,x) fprintf(codefile,"%s:.space\t%D\n",l,x);
+#define newlbss(l,x) fprintf(codefile,"%s:.space\t%ld\n",l,x);
#define pop_fmt "(sp)+"
-#define cst_fmt "%D"
-#define off_fmt "%D"
+#define cst_fmt "%ld"
+#define off_fmt "%ld"
#define ilb_fmt "I%03x%x"
#define dlb_fmt "_%d"
#define hol_fmt "hol%d"
#define arg_off "8+%d(a6)"
#define hol_off "%d+hol%d"
-#define con_cst(x) fprintf(codefile,".short\t%d\n",x)
-#define con_ilb(x) fprintf(codefile,".long\t%s\n",x)
-#define con_dlb(x) fprintf(codefile,".long\t%s\n",x)
+#define con_cst(x) fprintf(codefile,".data2\t%d\n",x)
+#define con_ilb(x) fprintf(codefile,".data4\t%s\n",x)
+#define con_dlb(x) fprintf(codefile,".data4\t%s\n",x)
-#define modhead ""
+#define modhead ".sect .text;.sect .rom;.sect .data;.sect .bss\n"
#define id_first '_'
#define BSS_INIT 0