X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=src%2FSDCCmain.c;h=710d72be4607391abf4b1895d6da8ffccec385b1;hb=fe0925ff0b8df9ab135dd41c36e88e955999168b;hp=1a7c80ce08a083694c80b9281431d45feb94f975;hpb=e7ac95f6dd864d4d2d8d08ba624708c63597f010;p=fw%2Fsdcc diff --git a/src/SDCCmain.c b/src/SDCCmain.c index 1a7c80ce..710d72be 100644 --- a/src/SDCCmain.c +++ b/src/SDCCmain.c @@ -57,7 +57,7 @@ const char *preArgv[128]; /* pre-processor arguments */ int currRegBank = 0; struct optimize optimize; struct options options; -char *VersionString = SDCC_VERSION_STR /*"Version 2.1.8a" */ ; +char *VersionString = SDCC_VERSION_STR; int preProcOnly = 0; int noAssemble = 0; char *linkOptions[128]; @@ -1119,8 +1119,9 @@ linkEdit (char **envp) WRITE_SEG_LOC (XDATA_NAME, options.xdata_loc); /* indirect data */ - if (IDATA_NAME) + if (IDATA_NAME) { WRITE_SEG_LOC (IDATA_NAME, options.idata_loc); + } /* bit segment start */ WRITE_SEG_LOC (BIT_NAME, 0); @@ -1136,40 +1137,37 @@ linkEdit (char **envp) /* standard library path */ if (!options.nostdlib) { -/**** - if (TARGET_IS_DS390) + switch (options.model) { + case MODEL_SMALL: + c = "small"; + break; + case MODEL_LARGE: + c = "large"; + break; + case MODEL_FLAT24: + /* c = "flat24"; */ c = "ds390"; - } - else -*****/ - { - switch (options.model) - { - case MODEL_SMALL: - c = "small"; - break; - case MODEL_LARGE: - c = "large"; - break; - case MODEL_FLAT24: - /* c = "flat24"; */ - c = "ds390"; - break; - default: - werror (W_UNKNOWN_MODEL, __FILE__, __LINE__); - c = "unknown"; - break; - } + break; + case MODEL_PAGE0: + c = "xa51"; + break; + default: + werror (W_UNKNOWN_MODEL, __FILE__, __LINE__); + c = "unknown"; + break; } mfprintf (lnkfile, getRuntimeVariables(), "-k {libdir}{sep}%s\n", c); /* standard library files */ - /* if (strcmp (port->target, "ds390") == 0) */ if (options.model == MODEL_FLAT24) { fprintf (lnkfile, "-l %s\n", STD_DS390_LIB); } + if (options.model == MODEL_PAGE0) + { + fprintf (lnkfile, "-l %s\n", STD_XA51_LIB); + } fprintf (lnkfile, "-l %s\n", STD_LIB); fprintf (lnkfile, "-l %s\n", STD_INT_LIB); fprintf (lnkfile, "-l %s\n", STD_LONG_LIB); @@ -1288,6 +1286,9 @@ preProcess (char **envp) case MODEL_FLAT24: addToList (preArgv, "-DSDCC_MODEL_FLAT24"); break; + case MODEL_PAGE0: + addToList (preArgv, "-DSDCC_MODEL_PAGE0"); + break; default: werror (W_UNKNOWN_MODEL, __FILE__, __LINE__); break;