1faff418ec
This turns EM `con 5000000000I8` into assembly `.data8 5000000000` for machines i386, i80, i86, m68020, powerpc, vc4. These are the only ncg machines in our build. i80 and i86 get con_mult(sz) for sz == 4 and sz == 8. The other machines only get sz == 8, because they have 4-byte words, and ncg only calls con_mult(sz) when sz is greater than the word size. The tab "\t" after .data4 or .data8 is like the tabs in the con_*() macros of mach/*/ncg/mach.h. i86 now uses .data4, like i80. Also, i86 and i386 now use the numeric string without converting it to an integer and back to a string. |
||
---|---|---|
.. | ||
instrmacs.h | ||
mach.c | ||
mach.h | ||
README | ||
table | ||
whichone.h |
The file 'table' in this directory contains a back end table for the MC68020 processor as well as one for the MC68000. Both tables use 2 or 4 bytes for words and 4 bytes for pointers. The table must be preprocessed first by the C preprocessor. The file "whichone.h" specifies which code generator is generated: it #defines either TBL68000 or TBL86020, and it defines WORD_SIZE to either 2 or 4. The m68k4(TBL68000) cg can very well be used for the MC68010 processor, for it makes rather efficient use of the 68010 loop mode. The mach.[ch] files are also suitable for both the m68020 and the m68k[24].