X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fizt%2Fi186.c;h=da67d9efc095d2349ceeb14eaeeeecf7d0f7db93;hb=80972b2e54c9b88f11c27b878874fd2a6a681391;hp=8da5f08242de94f60a7037bac388097243409489;hpb=7899677e61d2e5f44cfb329b8d8326a7a0acdcaa;p=fw%2Fsdcc diff --git a/src/izt/i186.c b/src/izt/i186.c index 8da5f082..da67d9ef 100644 --- a/src/izt/i186.c +++ b/src/izt/i186.c @@ -136,7 +136,9 @@ PORT i186_port = { TARGET_ID_I186, "i186", "Intel 80186", /* Target name */ + NULL, { + glue, FALSE, /* Emit glue around main */ MODEL_SMALL, MODEL_SMALL @@ -145,12 +147,15 @@ PORT i186_port = { _asmCmd, NULL, NULL, + NULL, 0, - ".s" + ".s", + NULL /* no do_assemble function */ }, { _linkCmd, NULL, + NULL, ".o" }, { @@ -160,6 +165,9 @@ PORT i186_port = { /* Sizes: char, short, int, long, ptr, fptr, gptr, bit, float, max */ 1, 2, 2, 4, 2, 2, 2, 1, 4, 4 }, + /* tags for generic pointers */ + { 0x00, 0x40, 0x60, 0x80 }, /* far, near, xstack, code */ + { ".BSS", ".BSS", @@ -173,6 +181,8 @@ PORT i186_port = { ".DATA", ".TEXT", ".TEXT", + NULL, // xidata + NULL, // xinit NULL, NULL, 1 @@ -187,22 +197,34 @@ PORT i186_port = { "_", _i186_init, _i186_parseOptions, + NULL, _i186_finaliseOptions, _i186_setDefaultOptions, izt_assignRegisters, _i186_getRegName , _i186_keywords, _i186_genAssemblerPreamble, + NULL, /* no genAssemblerEnd */ _i186_genIVT , + NULL, // _i186_genXINIT _i186_reset_regparm, _i186_regparm, NULL, + NULL, + NULL, FALSE, + TRUE, /* little endian */ 0, /* leave lt */ 0, /* leave gt */ 1, /* transform <= to ! > */ 1, /* transform >= to ! < */ 1, /* transform != to !(a == b) */ 0, /* leave == */ + FALSE, /* No array initializer support. */ + 0, /* no CSE cost estimation yet */ + NULL, /* no builtin functions */ + GPOINTER, /* treat unqualified pointers as "generic" pointers */ + 1, /* reset labelKey to 1 */ + 1, /* globals & local static allowed */ PORT_MAGIC };