* src/mcs51/peeph.def: renamed rule 400 to 500, moved rule 253.x to 400.x for better...
[fw/sdcc] / ChangeLog
index 55e07d058c8454762d79a434e58e0a4499d35389..1247abc86b8f7e4cda340bac47d20fb75896dfb0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,108 @@
+2006-12-30 Bernhard Held <bernhard AT bernhardheld.de>
+       * src/mcs51/peeph.def: renamed rule 400 to 500, moved rule 253.x to
+       400.x for better code in RFE 899102
+
+2006-12-30 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCpeeph.c (deadMove),
+       * src/port.h,
+       * src/mcs51/peep.h: renamed 'op' by 'reg'
+       * src/mcs51/peep.c (isFunc, isCallerSaveFunc): added,
+       (scan4op): small change for removeDeadMove(), added support for
+       'callee saves' and/or PACLL function calls,
+       (removeDeadMove): added, removes superflous 'mov r%1,%2',
+       (removeDeadPopPush): renamed from mcs51DeadMove(), common parts
+       left in new dispatcher mcs51DeadMove()
+       (mcs51DeadMove): dispatcher for removeDeadPopPush() and new
+       removeDeadMove()
+       * src/mcs51/peeph.def: added rule 301 removing superflous 'mov r%1,%2'
+
+2006-12-30 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
+
+       * support/cpp2/options_vc_in.h, support/cpp2/options_vc_in.c,
+         support/cpp2/sdcppa.dsp: create 'options.h' and 'options.c' under MSVC.
+
+2006-12-30 Borut Razem <borut.razem AT siol.net>
+
+       * support/cpp2/spacs.h: deleted from svn
+
+2006-12-21 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/z80/gen.c (assignResultValue): fixed bug when registers overlap,
+         with this z80 passes printf float test when enabled
+       * support/regression/tests/bug1057979.c: typo disabled ds390 float test
+
+2006-12-28 Borut Razem <borut.razem AT siol.net>
+
+       * support/cpp2/config.in, support/cpp2/configure.in,
+         support/cpp2/configure, support/cpp2/Makefile.in:
+         fix for the solaris build
+
+2006-12-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/SDCC.y (type_specifier2, pointer),
+       * src/SDCCsymt.h,
+       * src/SDCCsymt.c (mergeSpec, checkSClass),
+       * support/Util/SDCCerr.c,
+       * support/Util/SDCCerr.h: Parse and validate the restrict keyword
+       * support/valdiag/valdiag.py: Allow test cases to specify
+         required language standard
+       * support/valdiag/tests/restrict.c: New file to test restrict keyword
+       * support/valdiag/tests/tentdecl.c: Supress empty source file error
+
+2006-12-27 Borut Razem <borut.razem AT siol.net>
+
+       * support/cpp2/cppmain.c, support/cpp2/mbchar.[ch]: removed
+       * support/cpp2/libiberty/Makefile.in, support/cpp2/libiberty/sdcpp.dsp:
+         mbchar removed
+       * support/cpp2/libiberty/getpwd.c, support/cpp2/sdcpp.h:
+         fixed for borland C
+       * support/cpp2/libiberty/Makefile.bcc: updated
+       * src/pic16/main.c: fixed #pragma udata handling
+       * src/mcs51/mcs51.dsp: added peep.[ch] to the project
+
+2006-12-26 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCpeeph.c: made labelHashEntry global,
+       made pcDistance, FBYNAME static,
+       (pcDistance): made static, use isComment and isLabel,
+       (deadMove): added,
+       (getLabelRef): added, extracted from labelRefCount(),
+       (labelRefCount): use new getLabelRef(),
+       (callFuncByName): made static, added deadMove,
+       use isComment and isLabel,
+       (newPeepRule): made static, set isLabel,
+       (isLabelDefinition): added parameter isPeepRule to allow '%' in
+       labels from peephole rules,
+       (buildLabelRefCountHash): speed up by running isLabelDefinition() only
+       when isComment or isLabel is set
+       * src/SDCCpeeph.h: added "isLabel" and "visited" to struct lineNode,
+       added labelHashEntry, isLabelDefinition, labelHash and getLabelRef
+       to make them global
+       * src/mcs51/peep.h: added
+       * src/mcs51/peep.c: added, implements mcs51DeadMove()
+       * src/port.h: added peep->deadMove to port structure
+       * src/mcs51/main.c: initialize peep->deadMove with mcs51DeadMove
+       * src/mcs51/peeph.def: renumbered rule 300 to 400, added new rule 300
+       deadMove, finally removed no. 1 and 2
+       * src/mcs51/gen.c,
+       * src/pic/gen.c,
+       * src/z80/gen.c,
+       * src/z80/ralloc.c,
+       * src/pic16/gen.c,
+       * src/ds390/gen.c,
+       * src/hc08/gen.c: mark lines with isComment or isLabel
+       * sim/ucsim/s51.src/uc390hw.cc: don't waist 65535 ticks before CKRDY
+       * .version,
+       * sdcc.spec: bumped version to 2.6.3
+
+2006-12-26 Borut Razem <borut.razem AT siol.net>
+
+       * support/cpp2/Makefile.in: added dependency on options.h
+       * configure: regenerated
+       * support/cpp2/sdcpp.opt, support/cpp2/move-if-change: svn:eol-style native
+       * support/cpp2/Makefile.in: added vasprintf.c
+
 2006-12-25 Borut Razem <borut.razem AT siol.net>
 
        * SDCPP synchronized with GCC CPP release version 3.4.6,
          hopefully fixes #1604915 (other device libraries are still affected)
 
 2006-12-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
        * src/mcs51/ralloc.c (packRegsForAssign),
        * src/hc08/ralloc.c (packRegsForAssign): fixed bug #1605880