projects
/
fw
/
sdcc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* sim/ucsim/cmd.src/cmdutil.cc: NUL device is detected as CG_FILE type
[fw/sdcc]
/
src
/
z80
/
peeph-gbz80.def
diff --git
a/src/z80/peeph-gbz80.def
b/src/z80/peeph-gbz80.def
index 8f1977d5e5db2fdb22164632b05fa26e2f6ec2c5..9341d6b77f0aa28a5ac8152cbca47e1b46c6ce2c 100644
(file)
--- a/
src/z80/peeph-gbz80.def
+++ b/
src/z80/peeph-gbz80.def
@@
-1,76
+1,73
@@
-replace restart {
- ld %1,%1
+replace {
+ ld (hl),a
+ dec hl
} by {
} by {
- ; Removed redundent load
+ ld (hl-),a
}
}
-replace restart {
- xor a,a
- or a,%1
- or a,a
- jp %2,%3
+replace {
+ ld (hl),a
+ inc hl
} by {
} by {
- ; Removed redundent or a,a
- xor a,a
- or a,%1
- jp %2,%3
+ ld (hl+),a
}
}
-replace
restart
{
- cp a,#0x00
- jp nz,%1
+replace {
+ ld a,(hl)
+ inc hl
} by {
} by {
- ; Rule 3
- or a,a
- jp nz,%1
+ ld a,(hl+)
}
}
-replace restart {
- jp nz,%1
- jp %2
-%1:
- jp %3
-%2:
+replace {
+ ld a,[hl]
+ inc hl
} by {
} by {
- ; Rule 4
- jp z,%2
-%1:
- jp %3
-%2:
+ ld a,[hl+]
}
}
-replace restart {
- jp nz,%1
- jp %2
-%1:
+replace {
+ ld a,[hl]
+ inc hl
} by {
} by {
- ; Rule 5
- jp z,%2
-%1:
+ ld a,[hl+]
}
}
-replace restart {
- jp z,%1
- jp %2
-%1:
+replace {
+ ld [hl],a
+ inc hl
} by {
} by {
- ; Rule 6
- jp nz,%2
-%1:
+ ld [hl+],a
}
}
-replace restart {
-%1:
- jp %2
- jp %3
+replace {
+ ld [hl],a
+ dec hl
} by {
} by {
- ; Weird Rule 7
-%1:
- jp %2
+ ld [hl-],a
}
}
-replace restart {
- ld (hl),a
+replace {
+ ld (hl+),a
+ ld (hl),d
+ dec hl
+ ld e,(hl)
inc hl
inc hl
+ ld d,(hl)
+ ld a,(de)
} by {
ld (hl+),a
} by {
ld (hl+),a
+ ld (hl),d
+ ld e,a
+ ld a,(de)
}
}
-replace restart {
- ld a,(hl)
+replace {
+ ld (hl),a
+ ld %1,(hl)
+} by {
+ ld (hl),a
+ ld %1,a
+}
+replace {
+ ld (hl),a
+ inc de
+ ld a,(de)
inc hl
} by {
inc hl
} by {
- ld a,(hl+)
+ ld (hl+),a
+ inc de
+ ld a,(de)
}
}