* sim/ucsim/configure.in, sim/ucsim/configure, sim/ucsim/ddconfig_in.h:
[fw/sdcc] / ChangeLog
index 291934cad4da9c90d97e6bde35d53208a54509b6..2c1367ac85f149f25d8bb3f5068824a14e03f941 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,344 @@
+2007-06-28 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/configure.in, sim/ucsim/configure, sim/ucsim/ddconfig_in.h:
+         find out the endianess of host machine for ucsim
+
+2007-06-27 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/generate-cases.py: corrected the file name
+         in warning
+       * configure.in, configure, sdccconf_in.h: find out the endianess of
+         host machine
+       * src/SDCC.y: fixed bug #1744146: Crash when compiling array of
+         negative size
+
+2007-06-27 Gudjon I. Gudjonsson <gudjon AT gudjon.org>
+
+       * device/include/mcs51/p89c66x.h: NXP header file, OK to change licence
+
+2007-06-26 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/generate-cases.py: display warning if function
+         list is empty; implemented more flexible rule for detection of
+         testing functions, allowing return type 'void' in the same line as
+         the function name in the function definition
+       * support/regression/tests/bug-1654060.c: corrected test
+       * support/librarian/sdcclib.c: fixed warning:
+         format '%s' expects type 'char *', but argument 2 has type 'int'
+
+2007-06-25 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
+
+       * support/librarian/sdcclib.c: Added feature Requests [1510635]
+         Multiple infiles for sdcclib.
+
+2007-06-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+       * src/SDCCast.c (inlineFindMaxBlockno, createFunction): fixed
+         bug 1731741
+
+2007-06-18 Borut Razem <borut.razem AT siol.net>
+
+       * src/SDCCmain.c: removed option -C since SDCC compiler doesn't know
+         how to handle comments, so they have to be removed by the
+         preprocessor; fixed bug #1738926:SDCC #4852: broken option -V
+       * src/SDCCmain.c, src/SDCCargs.h, src/ds390/main.c, src/mcs15/main.c,
+         src/pic16/main.c, src/pic/main.c, src/z80/main.c,
+         support/Util/SDCCerr.c, support/Util/SDCCerr.h:
+         table driven option hadling
+
+2007-06-16 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCast.c (decorateType),
+       * src/SDCCicode.c (geniCodeConditional): moved optimization for '?' from
+         iCode to ast level to fix bug 1738367
+       * support/regression/tests/bug1738367.c: new, added
+
+2007-06-15 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/devices.inc,
+       * device/lib/pic16/pics.all,
+       * device/include/pic16/pic18fregs.h,
+       * device/include/pic16/pic18f[24][45]20.h,
+       * device/lib/pic16/libdev/pic18f[24][45]20.c: added support for
+         18f2420, 18f2520, and 18f4420 devices, updated 18f4520 definitions
+       * device/lib/pic16/Makefile.in: faster cleanup
+
+2007-06-13 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * src/mcs51/peeph.def: added 177.i (mov from a is slightly cheaper)
+
+2007-06-13 Raphael Neider <rneider AT web.de>
+
+       * src/SDCCmain.c: prevent NULL pointer dereference, avoid warning
+
+2007-06-12 Raphael Neider <rneider AT web.de>
+
+       * support/scripts/inc2h.pl: conditionally emit defines for SFR bits,
+         suppress bit defines if NO_BIT_DEFINES is #define'd
+       * device/include/pic/pic*.h: recreated all headers to include
+         conditional bit defines
+       * device/include/pic/pic16f886.h,
+       * device/include/pic/pic16f887.h: fixed based on newer .inc file
+       * device/include/pic/recreate.sh: script to recreate the complete
+         device library files based on the currently supported devices
+
+2007-06-12 Borut Razem <borut.razem AT siol.net>
+
+       * src/pic16/main.c, src/SDCCargs.h, SDCCmain.c,
+         support/regression/Makefile.in, support/scripts/build.mak,
+         support/scripts/Makefile.snapshot:
+         use new svn URL scheme
+       * doc/sdccman.lyx: SDCC Wiki moved to
+         http://sdcc.wiki.sourceforge.net/
+
+2007-06-10 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * src/mcs51/peeph.def: disabled rule 132.d to fix #1734654
+       * support/regression/tests/bug1734654.c: added
+
+2007-06-10 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCast.c (decorateType): optimized '?' for equal operands
+       * src/SDCCicode.c (geniCodeConditional): optimization for bit result
+         with literal operands
+
+2007-06-10 Borut Razem <borut.razem AT siol.net>
+
+       * as/link/z80/lklibr.c: fixed mingw build warning
+         lklibr.c:575: warning: implicit declaration of function 'tolower'
+       * src/SDCCmain.c, src/ds390/main.c, src/mcs51/main.c, src/pic/main.c,
+         src/z80/main.c: move target specific options from src/SDCCmain.c
+         to src/<target>/main.c
+
+2007-06-09 Borut Razem <borut.razem AT siol.net>
+
+       * src/z80/gen.c: fixed bug #1294691: nested ifs make compiler crash;
+         removed unused swap_sense; removed outBitCLong, replaced with outBitC
+       * support/regression/tests/bug-1294691.c: added
+
+2007-06-09 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCmem.c (allocDefault): removed check sym->level==0 for SPEC_ABSA,
+         can also be static, fixes bug 1733438
+       * src/SDCCsymt.c (checkSClass): static local vars in reentrant funcs can
+         have absolute address too
+         (computeType): added optimization for 'cond ? true : false'
+       * support/regression/tests/absolute.c: added test for static absolute var
+
+2007-06-08 Raphael Neider <rneider AT web.de>
+
+       * src/regression/Makefile: suppress parallel builds, allow easy
+         switching between pic14/pic16 ports
+       * src/regression/picregs.h: added pic14/16 header file switch
+       * src/regression/{compare7.c,compare8.c,compare9.c,compare10.c,
+         inline.c,nestfor.c,string1.c}: include "picregs.h"
+
+2007-06-07 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/*.[ch], sim/ucsim/configure, sim/ucsim/configure.in:
+         permanent solution to suppress GCC 4.2.0 c++ warning:
+         deprecated conversion from string constant to `char *'
+         use 'const char *' where ever required
+       * support/regression/generate-cases.py: implemented more flexible rule
+         for detection of testing functions, allowing white-spaces surrounding
+         the function name and the 'void' parameter.
+       * support/regression/tests/constantRange.c,
+         support/regression/tests/scott-compare3.c: fixed failing regression
+         tests, uncovered by implementation of more flexible rule for detection
+         of testing functions
+
+2007-06-04 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCast.c(decorateType): better optimize '!!' and comparisons
+
+2007-06-04 Borut Razem <borut.razem AT siol.net>
+
+       * configure.in, configure, config_vc.awk: sdcc version number is now
+         stored in configure.in; removed .version
+       * configure.in, configure, sdcc.spec, doc/sdccman.lyx, doc/sdccman.lyx,
+         doc/INSTALL.txt: version bumped to 2.7.2
+       * sim/ucsim/configure.in, sim/ucsim/configure:
+         use "read" to read from .version
+
+2007-06-03 Borut Razem <borut.razem AT siol.net>
+
+       * */Makefile.in: removed annoying warning:
+         Makefile:xx: Makefile.dep: No such file or directory
+
+2007-06-02 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/mcs51/gen.c (outBitC, genRet): used IS_OP_RUONLY,
+         (genNot, genXor): used toCarry, also fixes a bug for c = bit ^ val
+       * src/mcs51/ralloc.c: removed IS_OP_RUONLY + some cosmetic changes
+       * src/SDCCast.c (resultTypePropagate): propagate for '!',
+         (decorateType): also optimize comparisons with RESULT_TYPE_BIT,
+         bugfix: only use newBoolLink for bit result type
+       * src/SDCCicode.c (geniCodeLogic): added param tree,
+         bugfix: use newBoolLink if tree is bit type, bug appears when ruonly,
+         (geniCodeLogicAndOr): use IS_BIT,
+         (geniCodeJumpTable, geniCodeSwitch): added NULL param to geniCodeLogic,
+         (ast2iCode): added tree param to geniCodeLogic for comparisons
+       * src/SDCCsymt.h: added IS_OP_RUONLY and IS_OP_ACCUSE
+       * support/regression/tests/bug1723128.c: added test NotZero
+
+2007-06-01 Borut Razem <borut.razem AT siol.net>
+
+       * SDCPP synchronized with GCC CPP release version 4.2.0,
+         currently the latest release:
+       * support/cpp2/c-incpath.c, support/cpp2/c-incpath.h,
+         support/cpp2/c-ppoutput.c, support/cpp2/cppdefault.c,
+         support/cpp2/cppdefault.h, support/cpp2/except.h,
+         support/cpp2/libcpp/directives.c, support/cpp2/libcpp/expr.c,
+         support/cpp2/libcpp/files.c, support/cpp2/libcpp/include/cpplib.h,
+         support/cpp2/libcpp/init.c, support/cpp2/libcpp/internal.h,
+         support/cpp2/libcpp/lex.c, support/cpp2/libcpp/macro.c,
+         support/cpp2/libcpp/mkdeps.c, support/cpp2/libiberty/getpwd.c,
+         support/cpp2/libiberty/hashtab.c, support/cpp2/optc-gen.awk,
+         support/cpp2/opth-gen.awk, support/cpp2/opts.c,
+         support/cpp2/opts.h, support/cpp2/output.h,
+         support/cpp2/prefix.c, support/cpp2/sdcpp-opts.c,
+         support/cpp2/sdcpp.dsp, support/cpp2/sdcpp.opt,
+         support/cpp2/system.h, support/cpp2/version.c,
+         support/cpp2/Makefile.in: modified
+       * support/cpp2/opts-common.c: added
+       * device/lib/pic16/libdev/pic18f[24][45]j10.c: fixed svn atrributes
+       * device/lib/pic16/libdev/pic18f[24]5j10.c:
+         search for included source file in local directory
+       * sim/ucsim/configure, sim/ucsim/configure.in:
+         temporary solution to suppress GCC 4.2.0 c++ warning:
+         deprecated conversion from string constant to `char *'
+
+2007-06-01 Raphael Neider <rneider AT web.de>
+
+       * device/lib/pic/libdev/pic12f683.c,
+       * device/include/pic/pic12f683.h: added GPIO bits
+
+2007-06-01 Raphael Neider <rneider AT web.de>
+
+       * doc/sdccman.lyx: added --disable-pic16-port, fixed some `--' and
+         quotation marks, clarified role of PIC14 vs. PIC16 ports
+       * src/pic16/devices.inc,
+       * device/include/pic16/pic18fregs.h,
+       * device/include/pic16/pic18f[24][45]j10.h,
+       * device/lib/pic16/pics.all,
+       * device/lib/pic16/libdev/pic18f[24][45]j10.c: added support for
+         18f24j10, 18f25j10, 18f44j10, and 18f45j10
+       * device/lib/pic16/libio/{i2c,adc,usart}.ignore: do not build IO libs
+         for new devices as they are not yet supported by gputils
+
+2007-05-31 Borut Razem <borut.razem AT siol.net>
+
+       * Small Device C Compiler 2.7.0 released
+       * .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt:
+         changed sdcc version to 2.7.1
+       * support/scripts/sdcc.nsi: added How to create WIN32 release
+         setup.exe package
+
+2007-05-29 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * doc/sdccman.lyx: documented initialization and allocation of absolute
+         variables, bit parameter passing, the need for function pointers to be
+         reentrant and alpha quality support of inline and retrict
+
+2007-05-26 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/tests/bug1057979.c, support/regression/tests/malloc.c,
+         support/regression/fwk/include/testfwk.h: fixed compilation on Mac OS x
+       * docs/knownbugs.html: updated
+
+2007-05-25 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * doc/sdccman.lyx: inserted footnotes about inline assembler labels,
+         thanks Jan Waclawek
+       * src/mcs51/gen.c (aopPut): fixed part of bug 1723128 when result is
+         AOP_CRY and ruonly
+         (gencjneshort): optimized when left is AOP_DIR
+       * src/SDCCglue.c (printIvalStruct): fixed other part of bug 1723128 for
+         initializing unions in a struct/array
+       * support/regression/fwk/include/testfwk.h: added defines for data, near
+         and far for host and z80
+       * support/regression/tests/bug1723128.c: new, added
+
+2007-05-22 Borut Razem <borut.razem AT siol.net>
+
+       * doc/knownbugs.html: updated
+
+2007-05-21 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/glue.c (pic16_initPointer): avoid assertion, emit better
+         error message instead
+       * src/pic/pcoderegs.c (pCodeOptime2pCodes): keep register state intact
+
+2007-05-21 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/mcs51/peeph.def (257.b): disabled to fix bug 1721024
+
+2007-05-21 Raphael Neider <rneider AT web.de>
+
+       * src/pic/pcoderegs.c (pCodeOptime2pCodes): fixed bogus optimization,
+         closes #1722392
+       * src/regression/gpsim_assert.h,
+       * src/regression/Makefile,
+       * src/regression/pcodeopt.c: regression test for the above fix
+
+2007-05-11 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCpeeph.c (labelIsUncondJump): ignore identical labels for
+         jumps to self, fixed bug 1717281
+
+2007-05-10 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/gen_known_bugs.pl: cosmetic fix
+       * doc/knownbugs.html: generated by gen_known_bugs.pl
+
+2007-05-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/SDCCast.c (createFunction): also generate non-inlined version of
+         function for functions declared as "static inline"
+       * src/SDCCast.c (fixupInline, inlineAddDecl): reset symbol state so
+         function can be inlined after non-inlined version generated.
+
+2007-05-10 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/gen_known_bugs.pl: added script
+         which generates knownbugs.html
+
+2007-05-09 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * doc/knownbugs.html: updated for release 2.7.0
+
+2007-05-09 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
+
+       * device/include/mcs51/uPSD33xx.h: Added patch by Jan Waclawek.
+
+2007-05-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/ds390/gen.c (emitcode): don't change properties of previous lines,
+         (throughout): updated generating comments
+       * src/mcs51/gen.c (emitcode): don't change properties of previous lines,
+         (throughout): updated generating comments
+       * src/SDCCpeeph.c (peepHole): continue searching at the first replaced
+         rule instead of at the second, or it might skip lines when removing the
+         complete match
+       * support/regression/tests/bug1714204.c: changed test to foo
+
+2007-05-08 Borut Razem <borut.razem AT siol.net>
+
+       * doc/sdccman.lyx: changed sdcc version to 2.7.0,
+         thanks to SDCC Distributed Compile Farm members,
+         added Z80 and GBZ80 command line options
+       * .version, doc/INSTALL.txt, sdcc.spec: changed sdcc version to 2.7.0
+
+2007-05-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/mcs51/crtxinit.asm: added disabled version for dual dptr
+       * device/include/mcs51/uPSD33xx.h: added sfr DPS as alias for DPTC
+       * support/regression/tests/longlit.c: modified to be tested at all and
+         to pass the actual test
+
+2007-05-07 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
+
+       * device/include/mcs51/uPSD33xx.h: Added.
+
 2007-05-07 Maarten Brock <sourceforge.brock AT dse.nl>
 
        * device/lib/_gptrput.c,
          clarified sone points, added sections on how to add devices to the
          PIC14/PIC16 ports
 
-2007-05-05 Maarten Brock <sourceforge.brock AT dse.nl>
+2007-05-06 Maarten Brock <sourceforge.brock AT dse.nl>
 
        * src/z80/peeph.def: fixed bug in rule 2