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];
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);
/* 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);
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;