X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fz80%2Fmain.c;h=248e31b5112d41f835028b0e24168c598309ed36;hb=116a1bfc169e441ed10267f1b0fe8a2336b6dc78;hp=44cd21e372a12822924cf40b903877e9b6ea2c31;hpb=7702dd8254d5530b7a6b3e102c2e8bcf20dc1269;p=fw%2Fsdcc diff --git a/src/z80/main.c b/src/z80/main.c index 44cd21e3..248e31b5 100644 --- a/src/z80/main.c +++ b/src/z80/main.c @@ -81,6 +81,8 @@ static char *_keywords[] = "banked", "at", //.p.t.20030714 adding support for 'sfr at ADDR' construct "_naked", //.p.t.20030714 adding support for '_naked' functions + "critical", + "interrupt", NULL }; @@ -111,13 +113,13 @@ _gbz80_init (void) } static void -_reset_regparm () +_reset_regparm (void) { _G.regParams = 0; } static int -_reg_parm (sym_link * l) +_reg_parm (sym_link * l, bool reentrant) { if (options.noRegParams) { @@ -602,6 +604,7 @@ PORT z80_port = "CODE", "DATA", "ISEG", + NULL, /* pdata */ "XSEG", "BSEG", "RSEG", @@ -611,6 +614,7 @@ PORT z80_port = "HOME", NULL, /* xidata */ NULL, /* xinit */ + NULL, /* const_name */ NULL, NULL, 1 @@ -623,10 +627,24 @@ PORT z80_port = { 0, 2 }, + { + z80_emitDebuggerSymbol + }, + { + 255, /* maxCount */ + 3, /* sizeofElement */ + /* The rest of these costs are bogus. They approximate */ + /* the behavior of src/SDCCicode.c 1.207 and earlier. */ + {4,4,4}, /* sizeofMatchJump[] */ + {0,0,0}, /* sizeofRangeCompare[] */ + 0, /* sizeofSubtract */ + 3, /* sizeofDispatch */ + }, "_", _z80_init, _parseOptions, _z80_options, + NULL, _finaliseOptions, _setDefaultOptions, z80_assignRegisters, @@ -636,6 +654,7 @@ PORT z80_port = NULL, /* no genAssemblerEnd */ 0, /* no local IVT generation code */ 0, /* no genXINIT code */ + NULL, /* genInitStartup */ _reset_regparm, _reg_parm, _process_pragma, @@ -702,6 +721,7 @@ PORT gbz80_port = "CODE", "DATA", "ISEG", + NULL, /* pdata */ "XSEG", "BSEG", "RSEG", @@ -711,6 +731,7 @@ PORT gbz80_port = "HOME", NULL, /* xidata */ NULL, /* xinit */ + NULL, /* const_name */ NULL, NULL, 1 @@ -723,10 +744,24 @@ PORT gbz80_port = { 0, 2 }, + { + z80_emitDebuggerSymbol + }, + { + 255, /* maxCount */ + 3, /* sizeofElement */ + /* The rest of these costs are bogus. They approximate */ + /* the behavior of src/SDCCicode.c 1.207 and earlier. */ + {4,4,4}, /* sizeofMatchJump[] */ + {0,0,0}, /* sizeofRangeCompare[] */ + 0, /* sizeofSubtract */ + 3, /* sizeofDispatch */ + }, "_", _gbz80_init, _parseOptions, _gbz80_options, + NULL, _finaliseOptions, _setDefaultOptions, z80_assignRegisters, @@ -736,6 +771,7 @@ PORT gbz80_port = NULL, /* no genAssemblerEnd */ 0, /* no local IVT generation code */ 0, /* no genXINIT code */ + NULL, /* genInitStartup */ _reset_regparm, _reg_parm, _process_pragma,