From: MaartenBrock Date: Tue, 17 Feb 2009 19:54:07 +0000 (+0000) Subject: * as/link/mcs51/lkihx.c (hexRecord): bugfix do not insert extended address X-Git-Url: https://git.gag.com/?p=fw%2Fsdcc;a=commitdiff_plain;h=35588413ceb9b505b509d21c92e149b5e2a2264c * as/link/mcs51/lkihx.c (hexRecord): bugfix do not insert extended address when addresses are unsorted git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@5381 4a8a32a2-be11-0410-ad9d-d568d2c75423 --- diff --git a/ChangeLog b/ChangeLog index 08a365a9..efa12743 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-02-17 Maarten Brock + + * as/link/mcs51/lkihx.c (hexRecord): bugfix do not insert extended address + when addresses are unsorted + 2008-02-15 Frieder Ferlemann * device/include/mcs51/p89v66x.h: added ENBOOT thanks @@ -26,7 +31,7 @@ 2008-02-10 Frieder Ferlemann - * support/regression/tests/float_single.c: added regression + * support/regression/tests/float_single.c: added regression test. Some testpoints for probably rarely used functions (acosf, sinhf, tanf, expf) disabled for some targets diff --git a/as/link/mcs51/lkihx.c b/as/link/mcs51/lkihx.c index cce29ff4..bfe383e3 100644 --- a/as/link/mcs51/lkihx.c +++ b/as/link/mcs51/lkihx.c @@ -143,7 +143,8 @@ hexRecord(unsigned addr, int rtvalIndex) if (chksum == 0) return; // nothing to output - if ( (lastHexAddr > addr) && (rflag) ) { + /* Is this record in the same bank as previous? */ + if ( ((lastHexAddr>>16) != (addr>>16)) && (rflag) ) { overrun = hexPageOverrun + 1; ihxExtendedLinearAddress(lastExtendedAddress + overrun); hexPageOverrun = overrun;