* src/SDCCmain.c: added predefined macros SDCC_REVISION (RFE #1907229),
authorfrief <frief@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Tue, 4 Mar 2008 22:37:58 +0000 (22:37 +0000)
committerfrief <frief@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Tue, 4 Mar 2008 22:37:58 +0000 (22:37 +0000)
  and (depending on corresponding compiler option) SDCC_PARMS_IN_BANK1,
  SDCC_FLOAT_REENT, SDCC_INT_LONG_REENT
* device/include/mcs51/compiler.h: removed umlauts, added double
   underscore

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@5070 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
device/include/mcs51/compiler.h
src/SDCCmain.c

index 323fbf18719c1f41955389f59e8a4270a0864827..366f910526c992e8cd6964115dbdc4261b848ee7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-03-04 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * src/SDCCmain.c: added predefined macros SDCC_REVISION (RFE #1907229),
+          and (depending on corresponding compiler option) SDCC_PARMS_IN_BANK1, 
+          SDCC_FLOAT_REENT, SDCC_INT_LONG_REENT 
+       * device/include/mcs51/compiler.h: removed umlauts, added double
+         underscore
+
 2008-03-04 Maarten Brock <sourceforge.brock AT dse.nl>
 
        * src/SDCCptropt.c (ptrPseudoSymConvert): fixed bug 1536762
@@ -21,7 +29,7 @@
 
        * src/pic/gen.c: removed unused prototypes, prevent internal errors
          on accessing OP_SYM_TYPE(op)
-       * src/pic/gen.h: removed unused protorype of genMinusDec()
+       * src/pic/gen.h: removed unused prototype of genMinusDec()
        * src/pic/genarith.c (genMinus): cosmetic changes, rewritten to
          fix #1876953 (invalid subtraction code), removed unused code
 
index 425f311488241ef59aa44baef408b36c7810e41b..747d4a56b63062bb23f28b5eba6a116916548c3c 100644 (file)
@@ -21,7 +21,7 @@
   *
   * Header file to overcome 8051 compiler differences for specifying
   * special function registers. The following compilers are supported:
-  * SDCC, Keil, Raisonance, IAR, Hi-Tech, Tasking, Crossware, Wickenhäuser.
+  * SDCC, Keil, Raisonance, IAR, Hi-Tech, Tasking, Crossware, Wickenhaeuser.
   * Unfortunately not for use with Dunfield. The compilers are identified by
   * their unique predefined macros. See also:
   * http://predef.sourceforge.net/precomp.html
@@ -65,7 +65,7 @@
 #if defined SDCC
 # define SBIT(name, addr, bit)  __sbit  __at(addr+bit)                  name
 # define SFR(name, addr)        __sfr   __at(addr)                      name
-# define SFRX(name, addr)       xdata volatile unsigned char __at(addr) name
+# define SFRX(name, addr)       __xdata volatile unsigned char __at(addr) name
 # define SFR16(name, addr)      __sfr16 __at(((addr+1U)<<8) | addr)     name
 # define SFR16E(name, fulladdr) __sfr16 __at(fulladdr)                  name
 # define SFR32(name, addr)      __sfr32 __at(((addr+3UL)<<24) | ((addr+2UL)<<16) | ((addr+1UL)<<8) | addr) name
 # define SFR32(name, fulladdr)  /* not supported */
 # define SFR32E(name, fulladdr) /* not supported */
 
-/** Wickenhäuser
+/** Wickenhaeuser
   * http://www.wickenhaeuser.de
  */
 #elif defined __UC__
index 77b695a107fbf95fef67b09e6f057e9129437e46..fd52d5920beb95903d9167125226e85b8c49c391 100644 (file)
@@ -186,8 +186,8 @@ optionsTable[] = {
     { 0,    OPTION_SMALL_MODEL,     NULL, "internal data space is used (default)" },
     { 0,    "--stack-auto",         &options.stackAuto, "Stack automatic variables" },
     { 0,    "--xstack",             &options.useXstack, "Use external stack" },
-    { 0,    "--int-long-reent",     &options.intlong_rent, "Use reenterant calls on the int and long support functions" },
-    { 0,    "--float-reent",        &options.float_rent, "Use reenterant calls on the float support functions" },
+    { 0,    "--int-long-reent",     &options.intlong_rent, "Use reentrant calls on the int and long support functions" },
+    { 0,    "--float-reent",        &options.float_rent, "Use reentrant calls on the float support functions" },
     { 0,    "--main-return",        &options.mainreturn, "Issue a return after main()" },
     { 0,    "--xram-movc",          &options.xram_movc, "Use movc instead of movx to read xram (xdata)" },
     { 0,    OPTION_CALLEE_SAVES,    &options.calleeSavesSet, "<func[,func,...]> Cause the called function to save registers insted of the caller", CLAT_SET },
@@ -2014,6 +2014,18 @@ preProcess (char **envp)
           break;
         }
 
+      /* set macro corresponding to compiler option */
+      if (options.intlong_rent)
+        addSet(&preArgvSet, Safe_strdup("-DSDCC_INT_LONG_REENT"));
+
+      /* set macro corresponding to compiler option */
+      if (options.float_rent)
+        addSet(&preArgvSet, Safe_strdup("-DSDCC_FLOAT_REENT"));
+
+      /* set macro corresponding to compiler option */
+      if (options.parms_in_bank1)
+        addSet(&preArgvSet, Safe_strdup("-DSDCC_PARMS_IN_BANK1"));
+
       /* add SDCC version number */
       {
         char buf[20];
@@ -2022,6 +2034,13 @@ preProcess (char **envp)
         addSet(&preArgvSet, Safe_strdup(buf));
       }
 
+      /* add SDCC revision number */
+      {
+        char buf[25];
+        SNPRINTF(buf, sizeof(buf), "-DSDCC_REVISION=%s", getBuildNumber());
+        addSet(&preArgvSet, Safe_strdup(buf));
+      }
+
       /* add port (processor information to processor */
       addSet(&preArgvSet, Safe_strdup("-DSDCC_{port}"));
       addSet(&preArgvSet, Safe_strdup("-D__{port}"));