4 static char _defaultRules[] =
9 static char *_z80_keywords[] = { NULL };
11 void z80_assignRegisters (eBBlock **ebbs, int count);
13 static bool _z80_parseOptions(int *pargc, char **argv, int *i)
18 static void _z80_finaliseOptions(void)
22 static void _z80_setDefaultOptions(void)
24 options.genericPtr = 1; /* default on */
26 options.stackAuto = 1;
27 options.mainreturn = 1;
28 options.noregparms = 1;
29 /* first the options part */
30 options.intlong_rent = 1;
32 optimize.global_cse = 1;
37 optimize.loopInvariant = 1;
38 optimize.loopInduction = 0;
41 static const char *_z80_getRegName(struct regs *reg)
49 /** $1 is always the basename.
50 $2 is always the output file.
52 $l is the list of extra options that should be there somewhere...
53 MUST be terminated with a NULL.
55 static const char *_linkCmd[] = {
56 "link-z80", "-nf", "$1", NULL
59 static const char *_asmCmd[] = {
60 "as-z80", "-plosgff", "$1.o", "$1.asm", NULL
66 "Zilog Z80", /* Target name */
69 "-plosgff", /* Options with debug */
70 "-plosgff", /* Options without debug */
79 /* Sizes: char, short, int, long, ptr, fptr, gptr, bit, float, max */
80 1, 1, 2, 4, 2, 2, 2, 1, 4, 4
97 /* Z80 has no native mul/div commands */
102 _z80_finaliseOptions,
103 _z80_setDefaultOptions,
107 0, /* no assembler preamble */
108 0, /* no local IVT generation code */