* src/mcs51/gen.c (genCpl): quick fix for bug #974835
authorbernhardheld <bernhardheld@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Mon, 21 Jun 2004 11:13:43 +0000 (11:13 +0000)
committerbernhardheld <bernhardheld@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Mon, 21 Jun 2004 11:13:43 +0000 (11:13 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3363 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
src/mcs51/gen.c

index db4b211571f3b3de61bddef332c62a7b1252daa6..9fedf455838e919b7d7235127c49b1995e8ec3db 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2004-06-21 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/mcs51/gen.c (genCpl): quick fix for bug #974835
+
 2004-06-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
 
        * src/SDCClrange.c (computeClash): fixed bug #971834
index 8e5f49cff20d9039d2c5830a34d92d8630473ea7..ecd3bf860305d963f9ca599b1542dcedb369bd9b 100644 (file)
@@ -1611,9 +1611,8 @@ genCpl (iCode * ic)
     {
       if (AOP_TYPE (IC_LEFT (ic)) == AOP_CRY)
        {
-         emitcode ("mov", "c,%s", IC_LEFT (ic)->aop->aopu.aop_dir);
-         emitcode ("cpl", "c");
-         emitcode ("mov", "%s,c", IC_RESULT (ic)->aop->aopu.aop_dir);
+         /* promotion rules are responsible for this strange result: */
+         emitcode ("setb", "%s", IC_RESULT (ic)->aop->aopu.aop_dir);
          goto release;
        }