* sim/ucsim/cmd.src/info.cc, sim/ucsim/cmd.src/bp.cc,
[fw/sdcc] / ChangeLog
index c8ad5095acf54be7da2a42ec4448ed6a6ea2c814..28372e8f6ea6e91acdbfb6af3099c901c3411008 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,349 @@
+2008-06-12 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/cmd.src/info.cc, sim/ucsim/cmd.src/bp.cc,
+         sim/ucsim/xa.src/xa.cc, sim/ucsim/xa.src/xacl.h,
+         sim/ucsim/z80.src/z80cl.h, sim/ucsim/z80.src/z80.cc,
+         sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
+         sim/ucsim/hc08.src/hc08.cc, sim/ucsim/hc08.src/hc08cl.h,
+         sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/uc390.cc,
+         sim/ucsim/s51.src/uc51.cc, sim/ucsim/s51.src/uc390cl.h,
+         sim/ucsim/avr.src/avrcl.h, sim/ucsim/avr.src/avr.cc:
+         fixed bug 1990586: s51 simulator, uc::disass() unimplemented
+         by applying the modified patch from Risto Huotari
+
+2008-06-04 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * .version,
+       * doc/sdccman.lyx: bumped sdcc version to 2.8.2
+       * src/ds390/gen.c (aopPutUsesAcc, genAddrOf): fixed bug 1015185
+       * src/mcs51/gen.c (genNearPointerGet, genNearPointerSet): fixed bug 1938300
+       * support/regression/tests/bug1938300.c: new, added
+
+2008-06-03 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/asm/ds390/features.h,
+       * device/include/asm/mcs51/features.h,
+       * device/include/mcs51/regc515c.h: inserted LGPL notice
+
+2008-05-29 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/gbz80/div.s,
+       * device/lib/z80/div.s: fixed bug 1904314 by applying a modified part of
+         patch 1597883, Thanks Robert Ramey
+
+2008-05-29 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCast.c (createIvalType, createIvalStruct, createIvalArray,
+         createIvalCharPtr, createIvalPtr, createIval),
+       * src/SDCCval.h
+       * src/SDCCval.c (convertIListToConstList, list2expr): handle incomplete
+         initializers for local auto variables
+       * support/regression/tests/zeropad.c: added testcase for auto initializers
+
+2008-05-26 Raphael Neider <rneider AT web.de>
+
+       * device/lib/pic16/startup/crt0.c,
+       * device/lib/pic16/startup/crt0i.c,
+       * device/lib/pic16/startup/crt0iz.c: clean up, make use of access bank
+         explicit, fixed curr_entry loop for >= 256 initializer records,
+         removed debug code (write to 0xf7e)
+
+2008-05-25 Raphael Neider <rneider AT web.de>
+
+       * device/include/pic/pic16f627a.h,
+       * device/include/pic/pic16f628a.h,
+       * device/include/pic/pic16f648a.h: added missing ports
+
+2008-05-20 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/float.h: added __INFINITY
+       * device/lib/_fsadd.c: handle overflows
+       * device/lib/_fsmul.c,
+       * device/lib/_fsdiv.c: use __INFINITY
+       * device/lib/_fseq.c,
+       * device/lib/_fsneq.c: handle -0.0
+       * sim/ucsim/s51.src/uc89c51r.cc,
+       * sim/ucsim/s51.src/uc89c51rcl.h: fixed bug 1385430
+       * sim/ucsim/sim.src/hwcl.h: */* confuses VC
+       * src/mcs51/gen.c (genSend): fixed bug with --xstack
+       * support/regression/ports/mcs51-xstack-auto/spec.mk: print floats
+       * support/regression/tests/snprintf.c: test bug with --xstack
+
+2008-05-19  Philipp Klaus Krause <pkk AT spth.de>
+
+       * src/SDCCpeeph.c (callFuncByName):
+         Support nested parenthesis in peephole function arguments (#1967300)
+
+2008-05-19 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c (pic16_emitpLabel,pic16_emitpLabelFORCE):
+         fixed duplicate labels (#1911325)
+
+2008-05-19 Raphael Neider <rneider AT web.de>
+
+       * src/regression/empty.c: suppress warning
+       * src/regression/pointer1.c: enabled index_by_pointer()
+       * src/regression/inline.c: now works for pic16 as well
+
+       * src/pic16/device.c: include dbuf declarations
+       * src/pic16/device.h: removed obsolete prototypes
+
+       * src/pic16/gen.c, src/pic16/gen.h: moved generic pointer tags
+       * src/pic16/glue.c: made purely local functions static,
+         (pic16_printGPointerType, pic16_printIvalCharPtr,
+         pic16_printIvalFuncPtr, pic16_printIvalPtr): fixed initialized
+         generic pointers' tags (#1961866)
+
+       * src/pic16/pcode.c (assignValnums): optimize literal assignments
+
+2008-05-19 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/sdcc.nsi: remove uninstall.exe after uninstallation,
+         fixed typo, uninstall include/pic16/pic16devices.txt
+
+2008-05-18 Borut Razem <borut.razem AT siol.net>
+
+       * support/Utils/dbuf_string.[ch]: added dbuf_chomp(),
+         the buffer is null terminated
+       * src/device/pic16.c:
+         applied modified patch 1965676: Patch for Win32 16 bit PIC
+       * sdcc_vc_in.h: defined YY_NO_UNISTD_H
+
+2008-05-16 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCC.lex (check_type),
+       * src/SDCC.y (type_specifier2 TYPE_NAME): fixed bug 1925942
+       * as/hc08/clean.mk,
+       * as/mcs51/clean.mk,
+       * as/z80/clean.mk: also clean *.dep
+       * device/lib/pic16/libsdcc/stack/Makefile,
+       * sim/ucsim/libtool: removed as they are rebuild by configure
+       * src/clean.mk: removed izt, so Makefile is not deleted for distclean
+
+2008-05-13 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCast.c (fixupInline, createFunction): save currBlockno in
+         fixupInline instead of createFunction to fix bug 1864577
+         (inlineFindMaxBlockno): removed, use global blockNo
+       * src/SDCCglobl.h: added blockNo
+       * src/z80/peep.c,
+       * src/z80/peep.h: modified properties
+       * support/regression/tests/bug1864577.c: new, added
+
+2008-05-07 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/mcs51/asdata.c,
+       * as/mcs51/asm.h: added org_cnt
+       * as/mcs51/asmain.c (main, asmbl): fixed bug 1957716, changed old K&R to ANSI
+       * as/mcs51/asout.c: changed old K&R to ANSI
+       * as/mcs51/Makefile.in: use common identifiers
+       * as/hc08/asdata.c,
+       * as/hc08/asexpr.c,
+       * as/hc08/asm.h,
+       * as/hc08/asmain.c,
+       * as/hc08/asout.c,
+       * as/hc08/Makefile.bcc,
+       * as/hc08/Makefile.in: synchronized with as/mcs51/*
+       * sdcc_vc_in.h: added define __func__
+       * src/SDCCast.c (expandInlineFuncs): applied patch 1957148 to fix bug 1717305,
+         Thanks Ruud van Silfhout
+       * support/regression/tests/bug1717305.c: new, added
+
+2008-05-05 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/Makefile.in,
+         support/regression/ports/ds390/spec.mk,
+         support/regression/ports/hc08/spec.mk,
+         support/regression/ports/mcs51-common/spec.mk,
+         support/regression/ports/pic14/spec.mk,
+         support/regression/ports/pic16/spec.mk,
+         support/regression/ports/ucz80/spec.mk,
+         support/regression/ports/z80/spec.mk:
+         added INC_DIR and LIBDIR paths
+       * src/ds390/gen.c: removed duplicated selicolon
+
+2008-05-04 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/Makefile.in,
+         support/regression/fwk/lib/testfwk.c,
+         support/regression/ports/ds390/spec.mk,
+         support/regression/ports/hc08/spec.mk,
+         support/regression/ports/mcs51-common/spec.mk,
+         support/regression/ports/mcs51-large/spec.mk,
+         support/regression/ports/mcs51-medium/spec.mk,
+         support/regression/ports/mcs51-small/spec.mk,
+         support/regression/ports/mcs51-stack-auto/spec.mk,
+         support/regression/ports/mcs51-xstack-auto/spec.mk,
+         support/regression/ports/pic14/spec.mk,
+         support/regression/ports/pic16/spec.mk,
+         support/regression/ports/ucz80/spec.mk:
+         added possibility to define the sdcc binary directory SDCC_BIN_PATH
+         used to run regeression tests
+
+2008-05-01 Raphael Neider <rneider AT web.de>
+
+       * doc/sdccman.lyx, support/scripts/inc2h-pic16.pl: updated list of
+         supported devices and instructions to add new ones
+
+2008-05-01 Raphael Neider <rneider AT web.de>
+
+       * device/include/pic16/adc.h,
+         device/lib/pic16/libio/adc/adcbusy.c,
+         device/lib/pic16/libio/adc/adcopen.c,
+         device/lib/pic16/libio/adc/adcsetch.c: support old 18f242 and new
+         18f2455 style ADC devices, based on patch #1776197
+       * device/lib/pic16/libio/adc/adcclose.c,
+         device/lib/pic16/libio/adc/adcconv.c,
+         device/lib/pic16/libio/adc/adcread.c: cosmetic changes
+       * device/include/pic16/{pic18f2331.h,pic18f2431.h},
+         device/lib/pic16/libdev/{pic18f2331.c,pic18f2431.c}: reuse 18f4331
+       * device/include/pic16/pic18f4431.h,
+         device/lib/pic16/libdev/pic18f4431.c: remove outdated comments
+       * device/lib/pic16/libio/adc.ignore: forbid unhandled devices
+
+2008-05-01 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/device.h: removed unused field PIC16_device.sfrRange,
+         moved xinst flag into pic16_options_t
+       * src/pic16/device.c (default_device, pic16_list_devices,
+         pic16_find_device): removed references to sfrrange
+       * src/pic16/gen.c (genFunction),
+         src/pic16/glue.c (pic16initialComments),
+         src/pic16/main.c (pic16_optionsTable),
+         src/pic16/ralloc.c (newReg, pic16_writeUsedRegs): updated references
+         to xinst
+       * device/include/pic16/pic16devices.txt: removed sfrrange lines
+
+2008-04-29 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/devices.inc,
+         device/include/pic16/pic16devices.txt: replaced compiled-in list
+         of devices with a variant parsed at runtime
+       * src/pic16/device.c: added support for parsing pic16devices.txt,
+         clean up
+       * src/pic16/device.h: removed (now) unused fields from PIC_device
+       * src/pic16/main.c: removed #pragma maxram,
+         (_pic16_initPaths): removed bogus generation of search paths,
+         setup the port proper only after the search paths (for
+         pic16devices.txt) are set up,
+         (_pic16_finaliseOptions): moved processor dependant code here
+         from _pic16_initPaths(), clean up
+       * src/pic16/ralloc.c (pic16_init_stack),
+       * src/pic16/ralloc.h,
+       * src/pic16/pcode.c: clean up
+       * device/include/Makefile.in,
+         support/scripts/sdcc.nsi: also install/package pic16devices.txt
+       * support/scripts/inc2h-pic16.pl: updated instructions
+
+2008-04-29 Raphael Neider <rneider AT web.de>
+
+       * device/include/pic16/{pic18f2480.h, pic18f2580.h, pic18f4423.h,
+         pic18f4480.h, pic18f4523.h, pic18f4580.h, pic18f6585.h, pic18f8585.h},
+         device/lib/pic16/libdev/{pic18f2480.c, pic18f2580.c, pic18f4423.c,
+         pic18f4480.c, pic18f4523.c, pic18f4580.c, pic18f6585.c, pic18f8585.c}:
+         added missing family members and 18f2480/2580/4480/4580 family
+       * device/include/pic16/{pic18f2423.h, pic18f2523.h}: use 18f4523.h
+       * device/include/pic16/pic18f2525.h: use 18f4620.h
+       * device/include/pic16/pic18f6680.h: use 18f8680.h
+       * device/include/pic16/pic18fregs.h,
+         device/lib/pic16/pics.all,
+         src/pic16/devices.inc: add new devices
+       * device/lib/pic16/libdev/{pic18f2423.c, pic18f2523.c}: use 18f4523.c
+       * device/lib/pic16/libdev/pic18f2525.c: use 18f4620.c
+       * device/lib/pic16/libdev/pic18f6680.c: uso 18f8680.c
+       * device/lib/pic16/libio/{adc.ignore, i2c.ignore, usart.ignore}:
+         prevent attempting to build the libio for some new devices
+
+2008-04-29 Raphael Neider <rneider AT web.de>
+
+       * debugger/mcs51/Makefile.in: fixed paths to sources
+
+2008-04-25 Borut Razem <borut.razem AT siol.net>
+
+       * as/link/lklibr.c: moved from as/link/z80/lklibr.c
+       * as/link/hc08/lklibr.c, as/link/mcs51/lklibr.c: deleted
+       * as/link/hc08/Makefile.bcc, as/link/hc08/Makefile.in,
+       * as/link/hc08/link_hc08.dsp, as/link/mcs51/Makefile.bcc,
+         as/link/mcs51/Makefile.in, as/link/mcs51/aslink.dsp,
+         as/link/z80/Makefile.in, as/link/z80/linkgbz80.dsp,
+         as/link/z80/linkz80.dsp: lklibr.c moved
+       * doc/INSTALL.txt: binary archives in bz2 format
+       * support/cpp/auto-host_vc_in.h: CPP2 replaced with CPP
+
+2008-04-23 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCglue.c (printIvalType, printIvalBitFields): fixed bug 1856409
+       * support/regression/tests/bug1856409.c: new, added
+
+2008-04-20 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/z80/peep.c,
+       * src/mcs51/peep.c: Use werror for error messages.
+       * src/SDCCicode.c (geniCodeConditional),
+       * src/SDCCsymt.c (structElemType): fixed bug 1839321
+       * src/z80/Makefile.bcc,
+       * src/z80/z80.dsp: added src/z80/peep.c/h
+       * support/regression/tests/bug1839321.c: new, added
+
+2008-04-20 Raphael Neider <rneider AT web.de>
+
+       * device/include/pic16/pic18f2455.h: added bitfields for port C
+
+2008-04-20 Philipp Klaus Krause <pkk AT spth.de>
+
+       * src/z80/peep.c: Use werror for error messages.
+
+2008-04-19 Philipp Klaus Krause <pkk AT spth.de>
+
+       * src/z80/peep.h (declaration of notUsed()),
+       * src/z80/main.c (enabled notUsed() for z80 port, documented z80_port
+         struct),
+       * src/z80/z80.h (added dependency on peep.h),
+       * src/z80/peep.c (definition of notUsed()): Implemented RFE #1880202
+         for Z80.
+
+2008-04-19 Philipp Klaus Krause <pkk AT spth.de>
+
+       * src/SDCCpeeph.c (added support for notUsed()),
+       * src/mcs51/main.c (added dependency on peep.h, documented mcs51_port
+         struct),
+       * src/port.h (removed dependency on mcs51/peep.h, added declaration
+         for notUsed()): Implemented generic (that is not port-specific) part
+         of RFE #1880202.
+
+2008-04-17 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/link/mcs51/lkmem.c (summary2): fixed bug 1796077
+       * device/lib/libsdcc.lib,
+       * device/lib/Makefile.in,
+       * support/regression/ports/mcs51-xstack-auto/spec.mk,
+       * device/lib/calloc.c: renamed to _calloc.c
+       * device/lib/free.c: renamed to _free.c
+       * device/lib/malloc.c: renamed to _malloc.c
+       * device/lib/realloc.c: renamed to _realloc.c
+       * src/ds390/gen.c (aopGet, aopPut, genPlusBits, genDataPointerSet,
+         genNearPointerSet, genPagedPointerSet): synchronized with mcs51/gen.c
+       * src/ds390/gen.c (popForBranch, genIfxJump, genCmp, genCmpEq, ifxForOp,
+         genAnd, genOr, genXor, genIfx, gen390Code): fixed bug 1509084
+       * src/mcs51/gen.c (popForBranch, genIfxJump, genCmp, genCmpEq,
+         ifxForOp, genAnd, genOr, genXor, genNearPointerGet,
+         genPagedPointerGet, genFarPointerGet, genCodePointerGet,
+         genGenPointerGet, genIfx, gen51Code): fixed bug 1509084
+       * src/ds390/gen.c,
+       * src/mcs51/gen.c: throughout cosmetic changes for syncing both
+       * src/SDCCsymt.h: updated IS_OP_RUONLY, IS_OP_ACCUSE
+       * support/regression/tests/bug1509084.c: new, added
+
+2008-04-14 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/mcs51/cc2510fx.h: added _XPAGE
+       * device/include/mcs51/compiler.h: cosmetic changes
+
+2008-03-31 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * sdcc.dsw: adapted for moved cpp2, added dependency for as_z80 on
+         config
+
 2008-03-31 Borut Razem <borut.razem AT siol.net>
 
        * support/cpp2 renamed to support/cpp
          support/cpp2/libcpp/lex.c, support/cpp2/libcpp/system.h,
          support/cpp2/libcpp/charset.c: SDCPP synchronized with GCC CPP
          release version 4.3.0
+       * configure.in, configure, Makefile.in, Makefile.bcc:
+         adapted for moved cpp2
 
 2008-03-31 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
 
        * support/regression/tests/bug1717943.c: new, added
 
 2008-03-30 Philipp Klaus Krause <pkk AT spth.de>
-       * src/z80/gen.c (assignResultValue): Reverted reversal of order of bytewise
-         return value assignments introduced in last commit.
+
+       * src/z80/gen.c (assignResultValue): Reverted reversal of order of
+         bytewise return value assignments introduced in last commit.
 
 2008-03-30 Philipp Klaus Krause <pkk AT spth.de>
-       * src/z80/gen.c (emitDebug, assignResultValue, genPlus, genMinus, genMult,
-         genJumpTab):
+
+       * src/z80/gen.c (emitDebug, assignResultValue, genPlus, genMinus,
+         genMult, genJumpTab):
          Use 16-bit instructions for addition in some additional cases,
          implemented RFEs #1914251, #1914245, #1922090, #1921382, #1918323.
 
 2008-03-30 Philipp Klaus Krause <pkk AT spth.de>
+
        * src/z80/ralloc.c (serialRegAssign, allocReg, tryAllocatingRegPair):
          Implemented RFE #1921450, changed some debug messages.
 
 
 2008-03-21 Philipp Klaus Krause <pkk AT spth.de>
 
-       * src/z80/ralloc.c (callFuncByName):
-         Used // instead of /**/ to fix compilation warning about nested comments.
+       * src/z80/ralloc.c (callFuncByName): Used // instead of /**/ to fix
+         compilation warning about nested comments.
 
 2008-03-20 Maarten Brock <sourceforge.brock AT dse.nl>