replace {
- ld (hl),(hl)
+ ld (hl),(hl)
} by {
ERROR - peephole - caught (hl),(hl)
}
-replace {
- ld %1,%1
+replace restart {
+ ld %1,%1
} by {
- ; Removed redundent load
+ ; Removed redundent load
}
replace restart {
- xor a,a
- or a,%1
- or a,a
- jp %2,%3
+ xor a,a
+ or a,%1
+ or a,a
+ jp %2,%3
} by {
xor a,a
or a,%1
jp %2,%3
}
replace restart {
- cp a,#0x00
- jp nz,%1
+ cp a,#0x00
+ jp NZ,%1
} by {
or a,a
- jp nz,%1
+ jp NZ,%1
}
replace restart {
- jp nz,%1
+ jp NZ,%1
jp %2
%1:
jp %3
%2:
} by {
- jp z,%2
+ jp Z,%2
%1:
jp %3
%2:
}
replace restart {
- jp nz,%1
+ jp NZ,%1
jp %2
%1:
} by {
- jp z,%2
+ jp Z,%2
%1:
}
replace restart {
- jp z,%1
+ jp Z,%1
jp %2
%1:
} by {
- jp nz,%2
+ jp NZ,%2
%1:
}
replace restart {
}
replace restart {
or a,%1)
- or a,a
+ or a,a
} by {
or a,%1)
}
replace restart {
xor a,a
or a,%1
- jp nz,%2
+ jp NZ,%2
xor a,a
or a,%3
- jp z,%2
+ jp Z,%2
} by {
xor a,a
or a,%1
- jp nz,%2
+ jp NZ,%2
or a,%3
- jp z,%2
+ jp Z,%2
}
replace restart {
- jp nz,%1
+ jp NZ,%1
inc %3)
%1:
jp %2
} by {
- jp nz,%2
+ jp NZ,%2
inc %3)
%1:
jp %2
xor a,a
ld a,#0x00
} by {
- xor a,a
+ xor a,a
}
-replace restart {
- ld e,#0x00
- ld d,#0x00
+replace {
+ ld e,#0x00
+ ld d,#0x00
+} by {
+ ld de,#0x0000
+}
+replace {
+ ld l,#0x00
+ ld h,#0x00
} by {
- ld de,#0x0000
+ ld hl,#0x0000
+}
+replace {
+ ld c,#0x00
+ ld b,#0x00
+} by {
+ ld bc,#0x0000
}
replace restart {
ld %1,a
ld a,%1
} by {
- ld %1,a
+ ld %1,a
+} if notVolatile %1
+replace restart {
+ jp %1,%2
+ jr %3
+%2:
+ jp %4
+} by {
+ jp %1,%4
+ jr %3
+%2:
+ jp %4
+}
+replace {
+ ld l,e
+ ld h,d
+ push hl
+ ld l,c
+ ld h,b
+ push hl
+} by {
+ push de
+ push bc
+}
+replace {
+ and a,#%1
+ or a,a
+} by {
+ and a,#%1
+}
+replace {
+ ld b,l
+ ld a,b
+ pop bc
+ ld b,a
+} by {
+ ld a,l
+ pop bc
+ ld b,a
+}
+replace {
+ ld d,l
+ ld a,d
+ pop de
+ ld d,a
+} by {
+ ld a,l
+ pop de
+ ld d,a
+}
+replace {
+ ld a,b
+ push af
+ inc sp
+} by {
+ push bc
+ inc sp
+}
+replace {
+ ld a,d
+ push af
+ inc sp
+} by {
+ push de
+ inc sp
+}
+replace {
+ ld a,%1
+ sub a,#%2
+ jp M,%3
+ ld a,%1
+ sub a,#%4
+ jp P,%5
+} by {
+ ld a,%1
+ cp a,#%2
+ jp M,%3
+ cp a,#%4
+ jp P,%5
+}
+replace {
+ ld e,l
+ ld d,h
+ ld l,e
+ ld h,d
+} by {
+ ld e,l
+ ld d,h
+}
+replace {
+ ld %1,%2
+ ld %3,%4
+ ld %2,%1
+ ld %4,%3
+} by {
+ ld %1,%2
+ ld %3,%4
}
+