* src/avr/gen.c (aopop),
[fw/sdcc] / src / pic16 / peeph.def
index c0e7b81cf4c37711fb73852a13ad8f595717fbc3..dffb192d06220ae967e400ac03e3cd0b5cdcf433 100644 (file)
 // Also, notice that this snippet is not valid if
 // it follows another skip
 
+
 replace restart {
         _NOTBITSKIP_   %1
        _BITSKIP_       %2
@@ -161,16 +162,16 @@ replace restart {
 } if NZ
 
 // peep 3
-replace restart {
-       decf    %1,f
-       movf    %1,w
-       btfss   _STATUS,z
-       goto    %2
-} by {
-       ;     peep 3 - decf/mov/skpz to decfsz
-       decfsz  %1,f
-        goto   %2
-}
+//replace restart {
+/      decf    %1,f
+///    movf    %1,w
+//     btfss   _STATUS,z
+//     goto    %2
+//} by {
+//     ;     peep 3 - decf/mov/skpz to decfsz
+//     decfsz  %1,f
+//      goto   %2
+//}
 
 
 replace restart {
@@ -283,3 +284,25 @@ replace restart {
         ;     peep 11 - Removed redundant move
         movf    %1,w
 }
+
+replace restart {
+        movf    %1,w
+        movf    %2,w
+} by {
+        ;     peep 12 - Removed redundant move
+        movf    %2,w
+}
+
+replace restart {
+       movf    %1,w
+       xorlw   %2
+       bz      %3
+       bra     %4
+%3:    %5
+} by {
+       ;       peep 101 - test for equality
+       movlw   %2
+       cpfseq  %1
+       bra     %4
+%3:    %5
+}