* src/SDCCmain.c: #fixed bug 2224960: sdcc -MM no working correctly
[fw/sdcc] / ChangeLog
index adc96c243e4d8c3d468cf5c4ce5854b2489556de..80ce246cfee0251ae47bd513959e911fc6bdea99 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
-2008-06-12 Borut Razem <borut.razem AT siol.net>
+2008-11-06 Borut Razem <borut.razem AT siol.net>
+
+       * src/SDCCmain.c: #fixed bug 2224960: sdcc -MM no working correctly
+         pass system include paths with -isystem to sdcpp
+       * src/SDCCglue.c, src/pic/glue.c, src/pic16/glue.c: removed unneded
+         functions (closePipes), (closeTmpFiles) and (rmTmpFiles)
+
+2008-11-02 Raphael Neider <rneider AT web.de>
+
+       * doc/sdccman.lyx: updated the sections on the library build process
+         and on how to add support for new devices, and documented known
+         problems with the extended instruction set including a workaround
+
+2008-11-01 Raphael Neider <rneider AT web.de>
+
+       * device/include/pic16/adc.h,
+         device/include/pic16/pic16devices.txt,
+         device/include/pic16/pic18f2410.h,
+         device/include/pic16/pic18f2510.h,
+         device/include/pic16/pic18f2515.h,
+         device/include/pic16/pic18f2610.h,
+         device/include/pic16/pic18f4410.h,
+         device/include/pic16/pic18f4510.h,
+         device/include/pic16/pic18f4515.h,
+         device/include/pic16/pic18f4610.h,
+         device/include/pic16/pic18fregs.h,
+         device/lib/pic16/libdev/Makefile.am,
+         device/lib/pic16/libdev/Makefile.in,
+         device/lib/pic16/libdev/pic18f2410.c,
+         device/lib/pic16/libdev/pic18f2510.c,
+         device/lib/pic16/libdev/pic18f2515.c,
+         device/lib/pic16/libdev/pic18f2610.c,
+         device/lib/pic16/libdev/pic18f4410.c,
+         device/lib/pic16/libdev/pic18f4510.c,
+         device/lib/pic16/libdev/pic18f4515.c,
+         device/lib/pic16/libdev/pic18f4610.c,
+         device/lib/pic16/libio/Makefile.am,
+         device/lib/pic16/libio/Makefile.in,
+         device/lib/pic16/pics.all: added support for 18f[24][456]10
+         and 18f[24]515 devices
+       * doc/sdccman.lyx: updated list of supported PIC16 devices
+
+       * src/pic/glue.c, src/pic/pcode.c, src/pic/pcodeflow.c,
+         src/pic16/glue.c, src/pic16/pcode.c, src/pic16/pcodeflow.c,
+         src/xa51/gen.c: avoid compiler warnings
+       * support/scripts/inc2h-pic16.pl: removed trailing whitespace
+
+2008-10-22 Gudjon I. Gudjonsson <gudjon AT gudjon.org>
+
+       * device/include/mcs51/p89v66x.h: NXP header file
+       * device/include/mcs51/p89c66x.h: fixed an SBIT definition
+         (svn commit by Frieder Ferlemann <Frieder.Ferlemann AT web.de>)
+
+2008-10-14 Raphael Neider <rneider AT web.de>
+
+       * device/lib/pic16/libdev/Makefile.am,
+         device/lib/pic16/libio/Makefile.am: enable building libraries for
+         18f2321, 18f4321, 18f2523, 18f4620, 18f66j60, 18f66j65, 18f67j60,
+         18f86j60, 18f86j65, 18f87j60, 18f96j60, 18f96j65, and 18f97j60
+       * device/lib/pic16/libdev/Makefile.in,
+         device/lib/pic16/libio/Makefile.in: regenerated
+
+2008-10-14 Raphael Neider <rneider AT web.de>
+
+       * device/include/pic16/pic18f2450.h,
+         device/include/pic16/pic18f4450.h,
+         device/lib/pic16/libdev/pic18f2450.c,
+         device/lib/pic16/libdev/pic18f4450.c,
+         device/include/pic16/adc.h,
+         device/include/pic16/pic16devices.txt,
+         device/include/pic16/pic18fregs.h,
+         device/lib/pic16/libdev/Makefile.am,
+         device/lib/pic16/libdev/Makefile.in,
+         device/lib/pic16/libio/Makefile.am,
+         device/lib/pic16/libio/Makefile.in,
+         device/lib/pic16/pics.all: added 18f2450 and 18f4450, closes #1844525
+
+       * device/lib/pic16/libsdcc/stack/stack.S: there is no need to pin the
+         stack to a fixed location, relax it to automatically work with all
+         but the smallest devices (256 byte RAM devices need #pragma stack)
+
+2008-10-09 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * debugger/mcs51/break.c: bugfix from patch 1989966, thanks Risto Huotari
+       * debugger/mcs51/simi.c: bugfix from patch 1989972, thanks Risto Huotari
+       * device/lib/_strcspn.c: fixed bug 2140931
+
+2008-10-06 Raphael Neider <rneider AT web.de>
+
+       * device/include/pic16/stdio.h,
+         device/lib/pic16/libc/stdio/putchar.c: putchar should not be
+         declared __naked for convenience, named all arguments
+       * device/lib/pic16/libc/stdio/strmgpsim.c,
+         device/lib/pic16/libc/stdio/strmmssp.c,
+         device/lib/pic16/libc/stdio/strmusart.c: cosmetic changes
+
+       * src/pic16/pcode.c (createReachingDefinitions): avoid segfault on
+         empty __naked functions,
+       * (pCodeLabelDestruct, pic16_unlinkpCode, pic16_pCodeUnlink): fix
+         corner cases (unlink first/last pCode in list), reuse more code
+
+2008-10-05 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/ds390/main.c (_ds390_genInitStartup): added
+       * src/SDCCpeeph.c (getPatternVar): new, added,
+         (labelInRange): fixed bug 2115959
+       * src/mcs51/peeph.def (rules 193.x to 198.x): check for labelInRange
+       * src/SDCCicode.h: added newiTempOperand
+       * src/SDCCcse.c (algebraicOpts): fixed bug for x*-1,
+         added optimizations for 0/x and x/-1, see also patch 2142900
+       * support/regression/tests/onebyte.c (testMul): added test cases
+
+2008-09-20 Borut Razem <borut.razem AT siol.net>
+
+       * src/pic16/glue.c:
+         definition of absolute address symbols without initial value,
+         fixed SDCC crash "do not know how to intialize symbol"
+
+2008-09-16 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/z80/mul.s (__mulsuchar_rrx_s, __muluschar_rrx_s),
+       * device/lib/z80/div.s (__divsuchar_rrx_s, __modsuchar_rrx_s,
+         __divuschar_rrx_s, __moduschar_rrx_s): added mixed signedness versions
+       * device/lib/z80/stubs.s: added stubs for above functions
+       * src/SDCCopt.c (convilong),
+       * src/SDCCsymt.c (initCSupport): fixed bug 1900961
+       * src/SDCCsymt.h (__muldiv): enlarged for mixed signedness
+       * src/z80/main.c (_hasNativeMulFor): fixed bug, I think
+       * support/regression/tests/onebyte.c: enabled all tests for z80
+
+2008-09-15 Borut Razem <borut.razem AT siol.net>
+
+       * device/include/pic16/stdio.h, device/lib/pic16/libc/stdio/streams.c,
+         device/lib/pic16/libc/stdio/printf.c,
+         device/lib/pic16/libc/stdio/strmusart.c,
+         device/lib/pic16/libc/stdio/printf_tiny.c,
+         device/lib/pic16/libc/stdio/sprintf.c,
+         device/lib/pic16/libc/stdio/strmgpsim.c,
+         device/lib/pic16/libc/stdio/putchar.c,
+         device/lib/pic16/libc/stdio/fprintf.c,
+         device/lib/pic16/libc/stdio/strmmssp.c,
+         device/device/lib/pic16/libc/stdio/vprintf.c,
+         device/lib/pic16/libc/stdio/printf_small.c,
+         device/lib/pic16/libc/stdio/vsprintf.c,
+         device/lib/pic16/libc/stdio/strmputchar.c,
+         device/lib/pic16/libc/Makefile.am,
+         device/lib/pic16/libc/Makefile.in:
+         *printf now returns int, puchar.c moved from stdlib to stdio,
+         *printf format parameter type changed from char * to const char *,
+         added GNU link excetion text to library source files,
+         applyed GNU coding style, removed useless svn ids,
+         added BINARY_SPECIFIER macro re-enables the use of the removed 'b'
+         binary specifier: "%b", "%hb" and "%lb"
+       * device/lib/pic16/libc/stdio/vfprintf.c:
+         applied patch #2044424: PIC16: vfprintf
+         thanks Mauro Giachero
+       * support/regression/tests/bug1057979.c:
+         removed old pic16 sprintf specifics
+       * .version, doc/sdccman.lyx: bumped sdcc version to 2.8.4
+       * doc/sdccman.lyx: documented 'b' binary format specifier removal
+
+2008-09-15 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/device.c (pic16_dump_usection): force udata sections
+         into the addressable range (0..0xFFF), workaround for a gpsim
+         bug preventing simulation of regtest bug1750318
+       * src/pic16/ralloc.c (deassignLRs): cosmetic changes,
+         (serialRegAssign): fixed regtest bug-971834,
+         (pic16_packRegisters): avoid null-pointer dereference
+
+2008-09-14 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c, src/pic16/ralloc.c: use
+         SYM_SPIL_LOC/SPIL_LOC macros, no functional changes
+       * src/pic16/ralloc.c (rematStr): reimplemented, fixes #1818857
+
+2008-09-12 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/fwk/testfwk.h:
+         define pdata as data for pic16 target
+         thanks Mauro Giachero
+
+2008-09-11 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/tests/bug-221100.c, support/regression/shifts.c,
+         support/regression/absolute.c:
+         applied patch #2105615: Some PIC16 testcase fixlets
+         thanks Mauro Giachero
+
+2008-09-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/z80/gen.c (genCmpGt, genCmpLt): fixed bug 2094505
+       * support/regression/tests/bug2094505.c: new, added
+
+2008-09-07 Borut Razem <borut.razem AT siol.net>
+
+       * src/SDCCglue.c, src/SDCCast.c:
+         fixed throw of "excess elements" warning for char arrays
+       * support/regression/tests/nullstring.c:
+         disable warning about excess elements in array of chars initializer
+
+2008-09-07 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/z80/aslist.c (lstsym): changed old K&R to ANSI
+       * src/SDCCicode.c (geniCodeCritical): fixed bug for hc08
+       * src/z80/gen.c (genCritical, genEndCritical): fixed bug 2077267
+       * support/regression/tests/bug2077267.c: new, added
+
+2008-09-05 Raphael Neider <rneider AT web.de>
+
+       * configure.in, Makefile.common.in: add support for ccache,
+         remove spurious $VERSION output, detect doc-tools even without
+         --enable-doc to facilitate later manual doc-builds, minor cleanup
+       * configure: regenerated
+
+       * doc/Makefile.in: quieten pdflatex, makeindex, and latex2html,
+         avoid races in parallel VPATH builds
+       * doc/clean.mk: remove .lyx files in the builddir for VPATH builds
+       * doc/sdccman.lyx: mention --without-ccache configure option
+
+2008-09-01 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c (pic16_derefPtr): handle CPOINTERs as well
+       * (genConstPointerGet): fix reading bitfields from __code space
+       * src/pic16/glue.c (pic16_printIvalBitFields): correctly mask
+         bitfield initializers (fix regression test bug1856409.c)
+       * (pic16_printIvalCharPtr,pic16_printIvalPtr): generalized to support
+         arbitrary sizes
+
+2008-08-31 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c (genAssign): removed useless compiler output
+       * (genPointerGet,genPointerSet,genCast),
+         src/pic16/glue.c (pic16_printGPointerType):
+         also handle PPOINTERs just to avoid spurious asserts
+       * (pic16_printIvalType,pic16_printIvalBitFields):
+         generalized to arbitrary type/bitfield sizes, allows compilation of
+         regression test bug-1981238.c
+       * (pic16_printIvalChar): fix regression test structflexarray.c
+       * (pic16_printIvalArray): avoid SIGSEGV on uninitialized strings
+         in initialized structs and fix #1843745
+       * (pic16_printIvalStruct): always output initializers for all fields,
+         even those not explicitly given, fixes zeropad.c regression test
+       * (pic16_printIvalUnion): fix union initializers (bug1426356.c,
+         #2073635, #1567098, and #1485812)
+       * src/pic16/main.c (_pic16_keywords): remove unsupported 'pdata'
+
+2008-08-31 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/tests/bug-895992.c,
+         support/regression/tests/onebyte.c:
+         enabled pic16 regression testing since the bugs
+         1511794: pic16: regression test bug-895992.c fails
+         1444425: onebyte.c regression tes fails on pic16
+         are fixed, probably by fixing
+         2048464: PIC16: fix genUminus - addresses not.c regression test
+       * src/SDCCsymt.c, src/SDCCglue.c,
+         support/regression/tests/bug-1981238.c:
+         applied patch 2076664: fix #1981238 + SIGSEGV in SDCCGlue.c
+         thanks to RvS
+
+2008-08-30 Borut Razem <borut.razem AT siol.net>
+
+       * support/cpp/libcpp/files.c: SDCPP synchronized with GCC CPP
+         release version 4.3.2
+
+2008-08-24 Raphael Neider <rneider AT web.de>
+
+       * device/lib/pic16/configure, device/lib/pic16/configure.ac:
+         always use the sdcc from the current build tree (ignore $CC from
+         the environment, fixes compile farm builds)
+       * device/lib/Makefile.in: rename .a into .lib for compatibility,
+         remove more build products from install directory
+       * sdcc/src/pic16/main.c (_pic16_linkEdit,_pic16_finaliseOptions)
+       * sdcc/support/scripts/sdcc.nsi: revert to .lib extension for libs
+
+2008-08-24 Borut Razem <borut.razem AT siol.net>
+
+       * src/SDCC.y: applied patch
+         2050245: Fix # 1963382
+         for bug
+         1963382: Listing File - C file comment is incorrect
+         thanks to RvS
+
+2008-08-23 Borut Razem <borut.razem AT siol.net>
+
+       * src/pic16/gen.c: applied patch
+         2048464: PIC16: fix genUminus - addresses not.c regression test
+         thanks Mauro Giachero
+
+2008-08-22 Borut Razem <borut.razem AT siol.net>
 
-       * src/pic16/gen.c: applied patches :
+       * device/lib/pic16/configure, device/lib/pic16/configure.ac,
+         src/pic16/main.c: allow spaces in gpasm and gplink paths
+
+2008-08-15 Philipp Klaus Krause <pkk AT spth.de>
+
+       * src/z80/peep.c,
+       * src/z80/peeph-z80.def: minor peephole improvement
+
+2008-08-15 Raphael Neider <rneider AT web.de>
+
+       * src/z80/gen.c (_vemit2): suppress compiler warning
+
+       * src/pic/*.[ch]: make proper use of header files and avoid
+         ad-hoc extern declarations, mark module-local helpers 'static',
+         removed dead/replaced code, no functional changes
+       * src/pic16/pcode.c: disentangled from pic14 backend
+
+2008-08-14 Philipp Klaus Krause <pkk AT spth.de>
+
+       * src/z80/gen.c: fixed #2051348
+       * support/regression/tests/bug-2051348.c: regression test for #2051348
+
+2008-08-10 Raphael Neider <rneider AT web.de>
+
+       * configure.in,
+       * Makefile.common.in: export PACKAGE for $docdir,
+         fixes #1957036, avoid some "underquoted definition" warnings
+       * configure: regenerated
+
+2008-08-10 Raphael Neider <rneider AT web.de>
+
+       * device/lib/pic16/**: build pic16 library using autotools for
+         improved dependency tracking
+
+       * device/lib/Makefile.in,
+       * src/pic16/main.c,
+       * support/scripts/sdcc.nsi: adapt to changes in filenames (s/.lib/.a/)
+
+2008-08-10 Raphael Neider <rneider AT web.de>
+
+       * src/pic/pcode.c (ReuseReg): do not overlay the registers used for
+         local variables if --nooverlay is given, workaround for #2023121
+
+2008-08-08 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/genarith.c (genAddLit): fix structure access (#1888004)
+
+2008-08-08 Raphael Neider <rneider AT web.de>
+
+       * src/pic/pcoderegs.c,
+       * src/pic/pcode.c,
+       * src/pic16/pcode.c: replace own SAFE_snprintf with common SNPRINTF
+
+2008-08-07 Borut Razem <borut.razem AT siol.net>
+
+       * src/SDCCval.c, src/SDCCmain.c, src/SDCC.lex,
+         device/lib/pic/Makefile.rules, device/lib/ds390/Makefile.in,
+         device/lib/ds400/Makefile.in, device/lib/hc08/Makefile.in,
+         support/cpp/libcpp/lex.c,  doc/sdccman.lyx:
+         applied modified patch 2038174: Add support for binary constants v2
+         thanks Mauro Giachero
+       * .version, doc/sdccman.lyx: bumped sdcc version to 2.8.3
+
+2008-08-04 Raphael Neider <rneider AT web.de>
+
+       * doc/sdccman.lyx,
+       * src/pic16/device.h,
+       * src/pic16/glue.c,
+       * src/pic16/main.c: enable --optimize-goto by default
+
+       * device/lib/pic16/Makefile.common.in: suppress removed option
+
+       * src/pic16/gen.c,
+       * src/pic16/genutils.c: avoid too long relative branches (#2031890)
+
+2008-07-30 Borut Razem <borut.razem AT siol.net>
+
+       * src/pic16/device.c, src/pic16/glue.c, src/pic16/pcode.c:
+         applied patch 22032433: PIC16: fix constant strings,
+         thanks Mauro Giachero
+
+2008-07-29 Borut Razem <borut.razem AT siol.net>
+
+       * src/pic16/gen.c: applied patches:
          2030306: [1/3] PIC16: fix failing rotate.c tests on 16-bit variables,
          2030307: [2/3] PIC16: fix failing rotate.c tests for 32-bit var (1),
          2030310: [3/3] PIC16: fix failing rotate.c tests for 32-bit var (2),
          thanks Mauro Giachero
 
 2008-07-13 Philipp Klaus Krause <pkk AT spth.de>
+
        * src/port.h: Fixed typo in comment
 
 2008-07-12 Philipp Klaus Krause <pkk AT spth.de>
+
        * src/z80/mappings.i: Implemented RFE #1919415
        * src/z80/peeph-z80.def: Implemented RFE #1919415, #1861376,
-          #1880202, #1914434, prepared for RFE #1703943
+         #1880202, #1914434, prepared for RFE #1703943
 
 2008-07-12 Philipp Klaus Krause <pkk AT spth.de>
 
 
 2007-11-12 Borut Razem <borut.razem AT siol.net>
 
-       * as\z80\asmain.c, as\z80\asm.h, as\z80\assym.c, as\z80\asdata.c,
-         as\z80\asout.c, as\z80\aslist.c:
+       * as/z80/asmain.c, as/z80/asm.h, as/z80/assym.c, as/z80/asdata.c,
+         as/z80/asout.c, as/z80/aslist.c:
          fixed bug #1817005 - as-z80 chokes on long labels
 
 2007-11-11 Maarten Brock <sourceforge.brock AT dse.nl>
 
 2006-04-18 Borut Razem <borut.razem AT siol.net>
 
-       * support/scripts/sdcc.nsi: removed unexisting ${DEV_ROOT}\lib\pic\*.o,
-         ${DEV_ROOT}\lib\src\pic\libdev\*.S, ${DEV_ROOT}\lib\src\pic\libdev\*.inc
+       * support/scripts/sdcc.nsi: removed unexisting ${DEV_ROOT}/lib/pic/*.o,
+         ${DEV_ROOT}/lib/src/pic/libdev/*.S, ${DEV_ROOT}/lib/src/pic/libdev/*.inc
 
 2006-04-17 Borut Razem <borut.razem AT siol.net>