From bfc7759f7dfb41424ee061a328a22ffcdc7e98ec Mon Sep 17 00:00:00 2001 From: bernhardheld Date: Mon, 17 Mar 2003 21:36:54 +0000 Subject: [PATCH] src/ds390/peeph.def: fix bug #704878: added rule 213.b suggested by Jan Rejlek git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2398 4a8a32a2-be11-0410-ad9d-d568d2c75423 --- ChangeLog | 4 ++++ src/ds390/peeph.def | 12 +++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index fb9d94a9..851fcd62 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2003-03-17 Bernhard Held + + * src/ds390/peeph.def: fix bug #704878: added rule 213.b suggested by Jan Rejlek + 2003-03-16 Undid the hackup of const and volatile, the problem is much bigger diff --git a/src/ds390/peeph.def b/src/ds390/peeph.def index de8567cb..abf84ab6 100644 --- a/src/ds390/peeph.def +++ b/src/ds390/peeph.def @@ -1675,14 +1675,24 @@ replace { replace { mov %1,#(( %2 >> 8 ) ^ 0x80) -} by { +} by { + ; Peephole 213.a inserted fix mov %1,#(%2 >> 8) xrl %1,#0x80 } if portIsDS390 +replace { + mov %1,#(( %2 >> 16 ) ^ 0x80) +} by { + ; Peephole 213.b inserted fix + mov %1,#(%2 >> 16) + xrl %1,#0x80 +} if portIsDS390 + replace { mov %1,#(( %2 + %3 >> 8 ) ^ 0x80) } by { + ; Peephole 213.c inserted fix mov %1,#((%2 + %3) >> 8) xrl %1,#0x80 } if portIsDS390 -- 2.30.2