* Added support for doing shifts by helper functions
[fw/sdcc] / src / ds390 / main.c
index ee85833acdc0c44c981e111a8218840950cbfb1d..3bafacb7ce2cff0a826d7a1fe8c2b3aa65988fe9 100644 (file)
@@ -39,6 +39,7 @@ static char *_ds390_keywords[] =
   "_xdata",
   "_pdata",
   "_idata",
+  "_naked",
   NULL
 };
 
@@ -192,7 +193,7 @@ static const char *_linkCmd[] =
 
 static const char *_asmCmd[] =
 {
-  "asx8051", "-plosgff", "$1.asm", NULL
+  "asx8051", "$l", "-plosgff", "$1.asm", NULL
 };
 
 /* Globals */
@@ -210,7 +211,8 @@ PORT ds390_port =
     _asmCmd,
     "-plosgffc",               /* Options with debug */
     "-plosgff",                        /* Options without debug */
-    0
+    0,
+    ".asm"
   },
   {
     _linkCmd,
@@ -222,7 +224,7 @@ PORT ds390_port =
   },
   {
        /* Sizes: char, short, int, long, ptr, fptr, gptr, bit, float, max */
-    1, 1, 2, 4, 1, 2, 3, 1, 4, 4
+    1, 2, 2, 4, 1, 2, 3, 1, 4, 4
   },
   {
     "XSEG    (XDATA)",
@@ -246,7 +248,7 @@ PORT ds390_port =
   },
     /* ds390 has an 8 bit mul */
   {
-    1, 0
+    1, -1
   },
   "_",
   _ds390_init,
@@ -261,6 +263,7 @@ PORT ds390_port =
   _ds390_reset_regparm,
   _ds390_regparm,
   NULL,
+  NULL,
   FALSE,
   0,                           /* leave lt */
   0,                           /* leave gt */