PIC Port - Totally rewrote signed comparisons. It was a horrendously hideous bitch...
[fw/sdcc] / src / pic / genarith.c
index c932153768122eb46a36e875d4f5e35b39fbf6a0..a35f558983201b034eaa47aa7e91a625854f70a8 100644 (file)
@@ -1267,9 +1267,11 @@ void genMinus (iCode *ic)
       /* res = 0 - right */
       if (pic14_sameRegs(AOP(IC_RIGHT(ic)), AOP(IC_RESULT(ic))) ) {
        emitpcode(POC_COMF,  popGet(AOP(IC_RIGHT(ic)),0));
+       emitpcode(POC_INCF,  popGet(AOP(IC_RIGHT(ic)),0));
       } else { 
-       emitpcode(POC_MOVFW,  popGet(AOP(IC_RIGHT(ic)),0));
+       emitpcode(POC_COMFW,  popGet(AOP(IC_RIGHT(ic)),0));
        emitpcode(POC_MOVWF,  popGet(AOP(IC_RESULT(ic)),0));
+       emitpcode(POC_INCF,   popGet(AOP(IC_RESULT(ic)),0));
       }
       goto release;
     }