X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fz80%2Fpeeph.def;h=365e5531f59afbbf262457e11cec9a12e4ba6214;hb=fd94924a3d743c1c82f4b370d9401d7239172789;hp=ee3597876774958cbecbefd1aae2be36fa12f299;hpb=3c3375d0477d692290f05334d4cb858ee1205369;p=fw%2Fsdcc diff --git a/src/z80/peeph.def b/src/z80/peeph.def index ee359787..365e5531 100644 --- a/src/z80/peeph.def +++ b/src/z80/peeph.def @@ -1,203 +1,7 @@ -replace { - ld (hl),(hl) -} by { - ERROR - peephole - caught (hl),(hl) -} -replace restart { - ld %1,%1 -} by { - ; Removed redundent load -} -replace restart { - 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 -} by { - or a,a - jp nz,%1 -} -replace restart { - jp nz,%1 - jp %2 -%1: - jp %3 -%2: -} by { - jp z,%2 -%1: - jp %3 -%2: -} -replace restart { - jp nz,%1 - jp %2 -%1: -} by { - jp z,%2 -%1: -} -replace restart { - jp z,%1 - jp %2 -%1: -} by { - jp nz,%2 -%1: -} -replace restart { - or a,%1 - or a,a -} by { - or a,%1 -} -replace restart { - or a,%1) - or a,a -} by { - or a,%1) -} -replace restart { - xor a,a - or a,%1 - jp nz,%2 - xor a,a - or a,%3 - jp z,%2 -} by { - xor a,a - or a,%1 - jp nz,%2 - or a,%3 - jp z,%2 -} -replace restart { - jp nz,%1 - inc %3) -%1: - jp %2 -} by { - jp nz,%2 - inc %3) -%1: - jp %2 -} -replace restart { - xor a,a - ld a,#0x00 -} by { - xor a,a -} -replace { - ld e,#0x00 - ld d,#0x00 -} by { - ld de,#0x0000 -} -replace { - ld l,#0x00 - ld h,#0x00 -} by { - ld hl,#0x0000 -} -replace restart { - ld %1,a - ld a,%1 -} by { - ld %1,a -} -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 -} +// peeph.def - Common Z80 and gbz80 peephole rules + +// This file should contain common Z80/GBZ80 peepholes. +// However the GBZ80 port is currently unmaintained; +// a GBZ80 expert could extract peepholes that are useful for both Z80 and GBZ80 +// from peeph-z80.def and peeph-gbz80.def and move them here. +