* src/SDCCmain.c: fixed bug #1744746: SDCC #4867: broken option --xram-size
authorborutr <borutr@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Fri, 29 Jun 2007 17:23:09 +0000 (17:23 +0000)
committerborutr <borutr@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Fri, 29 Jun 2007 17:23:09 +0000 (17:23 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@4871 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
src/SDCCmain.c

index 2c1367ac85f149f25d8bb3f5068824a14e03f941..fbead69253b29952827bbc83e98c6a7f40e66057 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-06-29 Borut Razem <borut.razem AT siol.net>
+
+       * src/SDCCmain.c: fixed bug
+         #1744746: SDCC #4867: broken option --xram-size
+
 2007-06-28 Borut Razem <borut.razem AT siol.net>
 
        * sim/ucsim/configure.in, sim/ucsim/configure, sim/ucsim/ddconfig_in.h:
index ee6cd5305b5b95da0adac5b1ef91f9969a565081..2fec363daafdde6840cb4a99f0f2f7bfa853ec83 100644 (file)
@@ -235,7 +235,7 @@ optionsTable[] = {
     { 0,    OPTION_OUT_FMT_IHX,     NULL, "Output in Intel hex format" },
     { 0,    OPTION_OUT_FMT_S19,     NULL, "Output in S19 hex format" },
     { 0,    OPTION_XRAM_LOC,        &options.xdata_loc, "<nnnn> External Ram start location", CLAT_INTEGER },
-    { 0,    OPTION_XRAM_SIZE,       &options.xram_size, "<nnnn> External Ram size", CLAT_INTEGER },
+    { 0,    OPTION_XRAM_SIZE,       NULL, "<nnnn> External Ram size" },
     { 0,    OPTION_IRAM_SIZE,       &options.iram_size, "<nnnn> Internal Ram size", CLAT_INTEGER },
     { 0,    OPTION_XSTACK_LOC,      &options.xstack_loc, "<nnnn> External Stack start location", CLAT_INTEGER },
     { 0,    OPTION_CODE_LOC,        &options.code_loc, "<nnnn> Code Segment Location", CLAT_INTEGER },
@@ -988,7 +988,14 @@ parseCmdLine (int argc, char **argv)
               continue;
             }
 
-          if (strcmp (argv[i], OPTION_NO_GCSE) == 0)
+          if (strcmp (argv[i], OPTION_XRAM_SIZE) == 0)
+            {
+              options.xram_size = getIntArg(OPTION_XRAM_SIZE, argv, &i, argc);
+              options.xram_size_set = TRUE;
+              continue;
+            }
+
+            if (strcmp (argv[i], OPTION_NO_GCSE) == 0)
             {
               optimize.global_cse = 0;
               continue;
@@ -2284,7 +2291,7 @@ main (int argc, char **argv, char **envp)
   /* turn all optimizations off by default */
   memset (&optimize, 0, sizeof (struct optimize));
 
-  if (NUM_PORTS==0)
+  if (NUM_PORTS == 0)
     {
       fprintf (stderr, "Build error: no ports are enabled.\n");
       exit (EXIT_FAILURE);
@@ -2296,7 +2303,7 @@ main (int argc, char **argv, char **envp)
     {
       signal (SIGABRT, sig_handler);
       signal (SIGTERM, sig_handler);
-      signal (SIGINT , sig_handler);
+      signal (SIGINT, sig_handler);
       signal (SIGSEGV, sig_handler);
     }