added seperate segments for initialized data
[fw/sdcc] / src / izt / tlcs900h.c
index 8e106a838a01890443199a93618862a6c5f61761..02b37b38b9b020ea415ec034a54653f08369a6c9 100644 (file)
@@ -33,6 +33,7 @@ static IZT_PORT _tlcs900h_port =
 static char _defaultRules[] =
 {
     //#include "peeph.rul"
+    ""
 };
 
 static char *_tlcs900h_keywords[] =
@@ -143,12 +144,14 @@ PORT tlcs900h_port =
     _asmCmd,
     NULL,
     NULL,
+    NULL,
     0,
     NULL
   },
   {
     _linkCmd,
     NULL,
+    NULL,
     ".o"
   },
   {
@@ -171,6 +174,8 @@ PORT tlcs900h_port =
     "OSEG    (OVR,DATA)",
     "GSFINAL (CODE)",
     "HOME       (CODE)",
+    NULL, // xidata
+    NULL, // xinit
     NULL,
     NULL,
     1
@@ -180,7 +185,7 @@ PORT tlcs900h_port =
   },
     /* tlcs900h has an 16 bit mul */
   {
-    2, 0
+    2, -1
   },
   "_",
   _tlcs900h_init,
@@ -192,9 +197,12 @@ PORT tlcs900h_port =
   _tlcs900h_keywords,
   _tlcs900h_genAssemblerPreamble,
   _tlcs900h_genIVT,
+  0, // _tlcs900h_genXINIT
   _tlcs900h_reset_regparm,
   _tlcs900h_regparm,
   NULL,
+  NULL,
+  NULL,
   FALSE,
   0,                           /* leave lt */
   0,                           /* leave gt */
@@ -202,5 +210,8 @@ PORT tlcs900h_port =
   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 */
   PORT_MAGIC
 };