mov dptr,#%2
movx @dptr,a
}
-
replace {
mov a,acc
} by {
orl a,r%2
}
-replace {
- mov %1,a
- mov dpl,%2
- mov dph,%3
- mov dpx,%4
- mov a,%1
-} by {
- ; Peephole 136a removed redundant moves
- mov %1,a
- mov dpl,%2
- mov dph,%3
- mov dpx,%4
-} if 24bitMode
-
replace {
mov %1,a
mov dpl,%2
mov %1,@r%2
}
-replace {
- mov %1,%2
- mov %2,%1
-} by {
- ; Peephole 177 removed redundant mov
- mov %1,%2
-}
+// this one will screw assignes to volatile/sfr's
+//replace {
+// mov %1,%2
+// mov %2,%1
+//} by {
+// ; Peephole 177 removed redundant mov
+// mov %1,%2
+//}
replace {
mov a,%1
clr a
}
-replace {
- mov dpl,#0x00
- mov dph,#0x00
- mov dpx,#0x00
-} by {
- ; Peephole 181a used 24 bit load of dptr
- mov dptr,#0x0000
-} if 24bitMode
-
// saving 3 byte, 2 cycles, return(NULL) profits here
replace {
mov dpl,#0x00
mov dptr,#0x0000
}
-// saves 2 bytes, ?? cycles.
+// saving 3 bytes, 2 cycles
+// provided by Bernhard Held <bernhard.held@de.westinghouse.com>
replace {
- mov dpl,#%1
- mov dph,#(%1 >> 8)
- mov dpx,#(%1 >> 16)
+ mov dpl,#%1
+ mov dph,#(%1 >> 8)
} by {
- ; Peephole 182a used 24 bit load of dptr
- mov dptr,#%1
-} if 24bitMode
+ ; Peephole 182a use 16 bit load of DPTR
+ mov dptr,#%1
+}
// saving 3 byte, 2 cycles, return(float_constant) profits here
replace {
inc %1
}
-replace {
- mov dptr,#((((%1 >> 16)) <<16) + (((%1 >> 8)) <<8) + %1)
-} by {
- ; Peephole 210a simplified expression
- mov dptr,#%1
-} if 24bitMode
-
replace {
mov dptr,#((((%1 >> 8)) <<8) + %1)
} by {
} by {
; removed dec/inc pair
}
-
-replace {
- mov dps, #0x00
- mov dp%1,a
- mov dps, #0x01
-} by {
- ; Peephole 222 removed DPS abuse.
- mov dp%1,a
- mov dps, #0x01
-}