Now the regression tests could go online again
authorjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Sun, 2 Feb 2003 12:39:12 +0000 (12:39 +0000)
committerjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Sun, 2 Feb 2003 12:39:12 +0000 (12:39 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2200 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
as/z80/asm.h
src/z80/gen.c
support/regression/fwk/lib/testfwk.c
support/regression/ports/ds390/spec.mk
support/regression/ports/mcs51/spec.mk

index 132a899077fe558abafbd7fb24c37ef90a610fa9..32313a470d2818539c369d139616fde70690f43f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2003-02-02    <johan@balder>
+
+       * src/mcs51/ralloc.c (packForPush): fixed bug #631653, maybe other ports need this too? At least now some new alerts in SDCCBBlock.c and SDCCicode.c gives an early warning
+       * support/regression/fwk/lib/testfwk.c: div and mod isn't broken anymore
+       * regressions ds390/spec.mk and mcs51/spec.mk (timeout): my good old balder isn't fast enough for some tests
+       * src/z80/gen.c (genZ80Code): added c-lines in asm comments
+       * as/z80/asm.h (NINPUT): increased for long c-comments in regression tests
+       * src/z80/gen.c (genRightShiftLiteral): fixed the (char)(-3)>>8 (I think)
+
 2003-02-01  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
 
        * src/SDCCmain.c: Fixed bug 678574: "ds390: ASlink-Error-Stack overlaps
index 520f52c4416e74a90c0fa5dc5d45381438c07057..57e68e783737d2b3f5829bbb17d724ba82cc8ba1 100644 (file)
@@ -72,7 +72,7 @@
 /* #define     NCPS    32 */   /* Chars. per symbol */
 #define        HUGE    1000            /* A huge number */
 #define NERR   3               /* Errors per line */
-#define NINPUT 128             /* Input buffer size */
+#define NINPUT 1024            /* Input buffer size */
 #define NCODE  128             /* Listing code buffer size */
 #define NTITL  64              /* Title buffer size */
 #define        NSBTL   64              /* SubTitle buffer size */
index 09e50849dd2fa59b94174340d7cbbbb9e57708ba..60e46b11d00da2a1614411a8f3ca74095ff53b08 100644 (file)
@@ -5890,9 +5890,19 @@ genRightShiftLiteral (operand * left,
       wassert (0);
     }
 
-  else if (shCount >= (size * 8))
+  else if (shCount >= (size * 8)) {
+    const char *s;
+    if (!SPEC_USIGN(getSpec(operandType(left)))) {
+      _moveA(aopGet (AOP (left), 0, FALSE));
+      emit2 ("rlc a");
+      emit2 ("sbc a,a");
+      s=ACC_NAME;
+    } else {
+      s="!zero";
+    }
     while (size--)
-      aopPut (AOP (result), "!zero", size);
+      aopPut (AOP (result), s, size);
+  }
   else
     {
       switch (size)
@@ -7238,7 +7248,8 @@ genZ80Code (iCode * lic)
 
       if (cln != ic->lineno)
        {
-         emit2 ("; %s %d", ic->filename, ic->lineno);
+         emit2 ("; %s:%d: %s", ic->filename, ic->lineno,
+                printCLine(ic->filename, ic->lineno));
          cln = ic->lineno;
        }
       /* if the result is marked as
index 5d393386c250423d8e06b6511b34b464868bf79f..766954a697bc171d4641df4e649fd41deb704569 100644 (file)
@@ -10,7 +10,7 @@
 /** Define this if the port's div or mod functions are broken.
     A slow loop based method will be substituded.
 */
-#define BROKEN_DIV_MOD         1
+//#define BROKEN_DIV_MOD               1
 
 void _putchar(char c);
 void _exitEmu(void);
index 9f1d6f56fef6696508542ea4351c0023788721c3..8b2368a3e4c89ecaeed5b3649a699272f15c2a4f 100644 (file)
@@ -26,7 +26,7 @@ $(PORTS_DIR)/$(PORT)/testfwk$(OBJEXT): fwk/lib/testfwk.c
 # run simulator with 10 seconds timeout
 %.out: %$(EXEEXT) fwk/lib/timeout
        mkdir -p `dirname $@`
-       -fwk/lib/timeout 10 $(S51) -tds390f -S in=/dev/null,out=$@ $< < $(PORTS_DIR)/ds390/uCsim.cmd >/dev/null || \
+       -fwk/lib/timeout 20 $(S51) -tds390f -S in=/dev/null,out=$@ $< < $(PORTS_DIR)/ds390/uCsim.cmd >/dev/null || \
           echo -e --- FAIL: \"timeout, simulation killed\" in $(<:$(EXEEXT)=.c)"\n"--- Summary: 1/1/1: timeout >> $@
        -grep -n FAIL $@ /dev/null || true
 
index eb84828ed94b92a42266c613e2d9aea26e9e2f71..48a03216afeaf4f4304198c651a9aca293d668fb 100644 (file)
@@ -28,7 +28,7 @@ $(PORTS_DIR)/$(PORT)/testfwk$(OBJEXT): fwk/lib/testfwk.c
 # run simulator with 10 seconds timeout
 %.out: %$(EXEEXT) fwk/lib/timeout
        mkdir -p `dirname $@`
-       -fwk/lib/timeout 10 $(S51) -t32 -S in=/dev/null,out=$@ $< < $(PORTS_DIR)/mcs51/uCsim.cmd >/dev/null \
+       -fwk/lib/timeout 20 $(S51) -t32 -S in=/dev/null,out=$@ $< < $(PORTS_DIR)/mcs51/uCsim.cmd >/dev/null \
          || echo -e --- FAIL: \"timeout, simulation killed\" in $(<:$(EXEEXT)=.c)"\n"--- Summary: 1/1/1: timeout >> $@
        -grep -n FAIL $@ /dev/null || true