* sim/ucsim/cmd.src/cmdutil.cc: #include <sys/time.h> and <unistd.h>
[fw/sdcc] / ChangeLog
index cc8be47d200ba4142f7337cc672a3a98ed364595..f94884a739dd1b90b620a8bbd07016772ead4013 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,692 @@
+2006-09-01 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/cmd.src/cmdutil.cc: #include <sys/time.h> and <unistd.h>
+         to make ppc-osx happy
+
+2006-08-31 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/cmd.src/newcmdposix.cc: #include <assert.h>
+       * sim/ucsim/cmd.src/newcmd.cc: #include <ctype.h>
+       * sim/ucsim/cmd.src/newcmd.cc: #include <ctype.h>
+       * support/regression/ports/ds390/spec.mk,
+         support/regression/ports/mcs51/spec.mk,
+         support/regression/ports/xa51/spec.mk: introduced DEV_NULL variable.
+         To run regression tests in mingw environment:
+         make DEV_NULL=NUL CC=gcc
+
+2006-08-30 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/cmd.src/newcmdposix.cc, sim/ucsim/cmd.src/newcmdposixcl.h,
+         sim/ucsim/cmd.src/newcmdwin32.cc, sim/ucsim/cmd.src/newcmdwin32cl.h,
+         sim/ucsim/app.cc, sim/ucsim/appcl.h, sim/ucsim/configure,
+         sim/ucsim/configure.in, sim/ucsim/ddconfig_in.h, sim/ucsim/error.cc,
+         sim/ucsim/errorcl.h, sim/ucsim/option.cc, sim/ucsim/optioncl.h,
+         sim/ucsim/utils.cc, sim/ucsim/utils.h, sim/ucsim/cmd.src/Makefile.in,
+         sim/ucsim/avr.src/avr.cc, sim/ucsim/avr.src/avrcl.h,
+         sim/ucsim/cmd.src/bp.cc, sim/ucsim/cmd.src/bpcl.h,
+         sim/ucsim/cmd.src/cmdconf.cc, sim/ucsim/cmd.src/cmdgui.cc,
+         sim/ucsim/cmd.src/cmdmem.cc, sim/ucsim/cmd.src/cmdset.cc,
+         sim/ucsim/cmd.src/cmdsetcl.h, sim/ucsim/cmd.src/cmdstat.cc,
+         sim/ucsim/cmd.src/cmduc.cc, sim/ucsim/cmd.src/cmduccl.h,
+         sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/cmdutil.h,
+         sim/ucsim/cmd.src/command.cc, sim/ucsim/cmd.src/commandcl.h,
+         sim/ucsim/cmd.src/get.cc, sim/ucsim/cmd.src/getcl.h,
+         sim/ucsim/cmd.src/info.cc, sim/ucsim/cmd.src/newcmd.cc,
+         sim/ucsim/cmd.src/newcmdcl.h, sim/ucsim/cmd.src/set.cc,
+         sim/ucsim/cmd.src/show.cc, sim/ucsim/cmd.src/timer.cc,
+         sim/ucsim/hc08.src/hc08.cc, sim/ucsim/hc08.src/hc08cl.h,
+         sim/ucsim/s51.src/Makefile.in, sim/ucsim/s51.src/interrupt.cc,
+         sim/ucsim/s51.src/interruptcl.h, sim/ucsim/s51.src/pca.cc,
+         sim/ucsim/s51.src/pcacl.h, sim/ucsim/s51.src/port.cc,
+         sim/ucsim/s51.src/portcl.h, sim/ucsim/s51.src/serial.cc,
+         sim/ucsim/s51.src/serialcl.h, sim/ucsim/s51.src/timer0.cc,
+         sim/ucsim/s51.src/timer0cl.h, sim/ucsim/s51.src/timer1.cc,
+         sim/ucsim/s51.src/timer1cl.h, sim/ucsim/s51.src/timer2.cc,
+         sim/ucsim/s51.src/timer2cl.h, sim/ucsim/s51.src/uc390.cc,
+         sim/ucsim/s51.src/uc390cl.h, sim/ucsim/s51.src/uc390hw.cc,
+         sim/ucsim/s51.src/uc390hwcl.h, sim/ucsim/s51.src/uc51.cc,
+         sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/wdt.cc,
+         sim/ucsim/s51.src/wdtcl.h, sim/ucsim/sim.src/hw.cc,
+         sim/ucsim/sim.src/hwcl.h, sim/ucsim/sim.src/mem.cc,
+         sim/ucsim/sim.src/memcl.h, sim/ucsim/sim.src/obsolete.cc,
+         sim/ucsim/sim.src/obsolete.h, sim/ucsim/sim.src/sim.cc,
+         sim/ucsim/sim.src/simcl.h, sim/ucsim/sim.src/stack.cc,
+         sim/ucsim/sim.src/stackcl.h, sim/ucsim/sim.src/test_mem_speed.cc,
+         sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
+         sim/ucsim/xa.src/xa.cc, sim/ucsim/xa.src/xacl.h,
+         sim/ucsim/z80.src/z80.cc, sim/ucsim/z80.src/z80cl.h:
+         ucsim WIN32 native port
+
+2006-08-30 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
+
+       * doc/sdccman.lyx: added note on dynamic memory heap initialization
+
+2006-08-27 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/mcs51/gen.c (genAnd, genOr, genXor): fixed bug 1546986
+       * src/ds390/gen.c (aopGetUsesAcc): handle AOP_DPTR2 and AOP_DPTRn too
+
+2006-08-26 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/ds390/gen.c (genAnd, genOr, genXor): fixed bug 1546986
+       * support/regression/tests/bug1546986.c: new, added
+       * as/mcs51/.cvsignore,
+       * debugger/mcs51/.cvsignore,
+       * src/.cvsignore: deleted
+
+2006-08-25 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
+
+       * device/include/mcs51/P89c51RD2.h: fixed bug 1546936 (error in sbit
+         definitions)
+
+2006-08-20 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/newcmdcl.h:
+         removed cl_listen_console::match(), cl_console::match(),
+         restructured cl_commander::proc_input()
+
+2006-08-16 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/newcmdcl.h,
+         sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/cmdutil.h,
+         sim/ucsim/sim.src/mem.cc, sim/ucsim/sim.src/uc.cc: code cleaning
+
+2006-08-14 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/Makefile.in,
+         support/regression/ports/pic14/gpsim.cmd,
+         support/regression/ports/pic14/spec.mk,
+         support/regression/ports/pic14/support.c:
+         added pic14 regression test
+
+2006-08-14 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/doc/asxhtm.html: documented changed ABS behaviour
+       * as/doc/README: fixed some typos
+
+2006-08-13 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * support/regression/tests/float_trans.c: disabled test if __STDC_IEC_559__
+         not defined on host
+
+2006-08-12 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/fwk/include/testfwk.h,
+         support/regression/fwk/lib/testfwk.c,
+         support/regression/generate-cases.py,
+         support/regression/Makefile.in:
+         regression test framework does not depend on function pointers and
+         variable arguments
+
+2006-08-09 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/stddef.h: c temporary hack to fix bug 1518273
+
+2006-08-09 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
+
+       * device/include/mcs51/cc2510fx.h: added
+       * src/z80/z80.dsp, src/gbz80/gbz80.dsp: added support/Util/strcmpi.ch
+         to projects.
+
+2006-08-09 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/z80/assym.c (mlookup): ignore case when looking up mnemonics
+       * as/z80/Makefile.in: added strcmpi.c
+       * as/z80/z80adr.c: added upper case registers and lower case conditionals
+       * support/Util/strcmpi.ch: added with intention to remove from mcs51/hc08
+
+2006-08-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/gbz80/asm_strings.s,
+       * device/lib/gbz80/crt0_rle.s,
+       * device/lib/gbz80/div.s,
+       * device/lib/gbz80/mul.s,
+       * device/lib/gbz80/shift.s,
+       * device/lib/z80/asm_strings.s,
+       * device/lib/z80/crt0_rle.s,
+       * device/lib/z80/div.s,
+       * device/lib/z80/mul.s,
+       * device/lib/z80/shift.s: changed to all lower case menmonics except the
+         flags which are all upper case
+
+2006-08-07 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/z80/asm.h: made CASE_SENSITIVE 1
+       * link/z80/aslink.h: made CASE_SENSITIVE 1
+       * src/z80/gen.c (throughout): made all conditionals upper case
+       * support/regression/tests/bug1503067.c: new
+
+2006-08-07 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/z80/gen.c (aopPut): fixed bug !*ixy should be !*iyx,
+         (shiftIntoPair): added case 2 for PAIR_IY,
+         (setupToPreserveCarry): replaced parameters with iCode and check if
+          PAIR_DE is in use to fix bug 1399290,
+         (genPlus, genMinus): updated call to setupToPreserveCarry
+       * support/regression/tests/bug1399290.c: new
+
+2006-08-06 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/Makefile.in (Z80SOURCES): enabled float support
+       * sim/ucsim/z80.src/inst.cc (inst_rst): generate breakpoint on RST8,ACC==0
+       * src/ds390/gen.c (shiftRLong),
+       * src/hc08/gen.c (shiftLLong, shiftRLong): fixed bug 1533966
+       * src/mcs51/gen.c (sameReg): changed to sameByte,
+         (xch_a_aopGet): new,
+         (shiftL2Left2Result, shiftR2Left2Result, shiftRLeftOrResult, shiftLLong,
+          shiftRLong): fixed bug 1533966
+       * src/z80/gen.c (shiftR2Left2Result, shiftL2Left2Result, genlshTwo,
+         genLeftShiftLiteral, genrshTwo, genRightShiftLiteral): fixed bug 1533966
+       * support/regression/Makefile.in: disabled z80, enabled ucz80
+       * support/regression/tests/float_trans.c: enabled test for z80 and host
+       * support/regression/tests/shifts2.c: new, for testing bug 1533966
+
+2006-08-01 Borut Razem <borut.razem AT siol.net>
+
+       * src/mcs51/gen.c, src/dc390/gen.c: fixed warning:
+         comparison is always false due to limited range of data type
+         on PPC64 machine (openpower-linux1) where "char = unsigned char"
+
+2006-08-01 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * sim/ucsim/hc08.src/hc08mac.h: removed faulty and unused add_u16_disp
+       * sim/ucsim/hc08.src/hc08.cc: removed faulty and unused int8
+       * sim/ucsim/z80.src/z80mac.h (add_u16_disp): use explicit signed char cast
+       * sim/ucsim/z80.src/z80.cc: removed faulty and unused int8
+
+2006-07-31 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/configure, sim/ucsim/cmd.src/newcmdcl.h,
+         sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/cmdutil.cc,
+         sim/ucsim/z80.src/Makefile.in, sim/ucsim/configure.in,
+         sim/ucsim/hc08.src/Makefile.in, sim/ucsim/hc08.src/hc08.cc,
+         sim/ucsim/ddconfig_in.h, sim/ucsim/s51.src/Makefile.in,
+         sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/serialcl.h,
+         sim/ucsim/s51.src/uc51.cc, sim/ucsim/s51.src/serial.cc,
+         sim/ucsim/app.cc, sim/ucsim/avr.src/Makefile.in:
+         enable ucsim mingw compilation. Serial port is disabled,
+         since it uses termios.h API, which is not available on native
+         WIN32
+
+2006-07-31 Borut Razem <borut.razem AT siol.net>
+
+       * Small Device C Compiler 2.6.0 released
+       * support/scripts/sdcc.nsi: added FULL_DOC option
+       * .version, doc/sdccman.lyx: changed sdcc version to 2.6.1
+
+2006-07-28 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/sdcc.nsi: remove $INSTDIR/include/asm/pic16/*.h
+       * doc/INSTALL.txt: updated
+
+2006-07-27 Borut Razem <borut.razem AT siol.net>
+
+       * device/lib/pic/Makefile.in, device/lib/pic/Makefile.subdir,
+         device/lib/pic/libdev/Makefile.in: fixed bug
+         [ 1438354 ] pic libsdcc: distclean doesn't work
+       * device/lib/pic16/Makefile.in, device/lib/pic16/Makefile.subdir,
+         device/lib/pic16/libio/Makefile.in: fixed bug
+         [ 1438344 ] pic16 lib: clean doesn't work properly
+       * doc/knownbugs.html removed [ 1438354 ] and [ 1438344 ] from the list
+
+2006-07-26 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/pic/libsdcc/fsdiv.c,
+       * device/lib/pic/libsdcc/fsmul.c,
+       * device/lib/pic16/libsdcc/float/fsdiv.c,
+       * device/lib/pic16/libsdcc/float/fsmul.c,
+       * device/lib/_fsdiv.c,
+       * device/lib/_fsmul.c: bugfix, handle too large and too small numbers
+       * support/regression/tests/bug1520966.c: added
+       * doc/knownbugs.html: removed [ 1520966 ] from the list
+
+2006-07-25 Borut Razem <borut.razem AT siol.net>
+
+       * configure.in, configure, sdccconf_in.h: fixed bug
+         [ 1519095 ] regression test onebyte.c fails on ppc64 host
+       * doc/knownbugs.html: removed [ 1519095 ] from the list
+
+2006-07-25 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * doc/knownbugs.html: added, contains list of known bugs at release
+       * device/include/mcs51/compiler.h: fixed SFR32 for SDCC
+
+2006-07-23 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/mcs51/compiler.h: added SFRX for xdata based special
+         function registers and corrected defaults with additional warning
+       * device/lib/malloc.c: cosmetic changes
+       * device/lib/realloc.c: bugfix for bug #1496907, Thanks Efim Monyak
+       * src/ds390/ralloc.c (getRegBitNoSpil): reenabled,
+         (fillGaps): and used it
+
+2006-07-20 Raphael Neider <rneider AT web.de>
+
+       * src/pic/device.c (addMemRange,assignRegister): suppress verbose
+         output unless SDCCPICDEBUG is set
+       * device/lib/pic16/Makefile.rules (%.lib target): suppress verbose
+         output if SILENT is set
+
+2006-07-11 Borut Razem <borut.razem AT siol.net>
+
+       * doc/README.txt: updated
+
+2006-07-10 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/sdcc.nsi: added device/include/asm/pic/features.h and
+         device/lib/src/pic/libm/*.c and device/lib/src/pic16/libsdcc/stack/*.S
+         in WIN32 installation
+       * .version, sdcc.spec, doc/sdccman.lyx: changed sdcc version to 2.6.0 -
+         release candidate 1
+
+2006-07-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/mcs51/XC866.h: added sbit definitions for Px_x, P1_x, P2_x
+       * src/pic16/glue.c (initPointer): fixed bug 1496419 for pic16
+
+2006-07-06 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/hc08/gen.c (genAddrOf): fixed bug when offset on stack is >127
+
+2006-07-06 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/tests/bitfields.c:
+         fixed bug [ 1518322 ] regression test bitfields fails on ppc hosts
+       * support/regression/tests/constantRange.c:
+         fixed bug [ 1518317 ] regression test constantRange fails on alpha host
+
+2006-07-04 Borut Razem <borut.razem AT siol.net>
+
+       * src/configure.in, src/configure, src/Makefile.in, as/z80/Makefile.in,
+         src/port.mk,
+         src/avr/Makefile.in, src/ds390/Makefile.in, src/ds400/Makefile.in,
+         src/hc08/Makefile.in, src/mcs51/Makefile.in, src/pic16/Makefile.in,
+         src/pic/Makefile.in, src/xa51/Makefile.in, src/z80/Makefile.in:
+         reverted changes from 2006-07-03
+       * Makefile.common.in: added @CPPFLAGS@ to CPPFLAGS
+       * support/regression/Makefile.in, support/regression/ports/host/spec.mk:
+         added CPPFLAGS, used by the host port
+
+2006-07-03 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * support/regression/valdiag/tests/switch.c,
+       * support/regression/valdiag/tests/constantRange.c: adapted to gcc 4
+       * support/regression/tests/libmullong.c: fixed for host
+       * support/regression/ports/host/spec.mk: disable all warnings for host,
+       SDCC runs with --less-pedantic too
+
+2006-07-03 Borut Razem <borut.razem AT siol.net>
+
+       * src/configure.in, src/configure, src/Makefile.in, as/z80/Makefile.in:
+         defined CPPFLAGS
+       * src/port.mk: defined CPPFLAGS, renamed to src/port.mk.in
+       * src/avr/Makefile.in, src/ds390/Makefile.in, src/ds400/Makefile.in,
+         src/hc08/Makefile.in, src/mcs51/Makefile.in, src/pic16/Makefile.in,
+         src/pic/Makefile.in, src/xa51/Makefile.in, src/z80/Makefile.in:
+         include ../port.mk
+       * sim/ucsim/main_in.mk, sim/ucsim/avr.src/Makefile.in,
+         sim/ucsim/gui.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in,
+         sim/ucsim/s52.src/Makefile.in, sim/ucsim/sim.src/Makefile.in,
+         sim/ucsim/xa.src/Makefile.in: ignore header files for dependencies
+
+2006-07-02 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/devices.inc,
+       * device/include/pic16/pic18fregs.h,
+       * device/include/pic16/pic18f4550.h,
+       * device/lib/pic16/pics.all,
+       * device/lib/pic16/libdev/pic18f4550.c: added support for 18f4550
+
+2006-07-01 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * as/hc08/lkaomf51.c (OutputName),
+       * as/mcs51/lkaomf51.c (OutputName),
+       * as/z80/asmain.c (asmbl),
+       * src/ds390/main.c (asmLineNodeFromLineNode),
+       * src/hc08/ralloc.c (hc08_assignRegisters),
+       * src/mcs51/main.c (asmLineNodeFromLineNode),
+       * src/xa51/ralloc.c (checkRegMask),
+       * src/xa51/gen.c (emitcode),
+       * src/z80/gen.c (_emit2),
+       * src/SDCCast.c (searchLitOp),
+       * src/SDCCglobl.h,
+       * support/packihx/packihx.c,
+       * support/Util/MySystem.c (split_command): fix gcc 4 warnings
+       * src/ds390/gen.c (aopPutUsesAcc),
+       * src/ds390/ralloc.c (getRegBitNoSpil): unused, therefore disabled
+       * support/regression/tests/libmullong.c (mullong_wrapper),
+       * src/SDCCsymt.c (powof2),
+       * src/SDCCast.c,
+       * src/SDCCicode.c: renamed TYPE_WORD by TYPE_TARGET_INT and so on
+       * src/SDCCsymt.h: added TYPE_TARGET_*
+       * src/SDCCutil.c (doubleFromFixed16x16, fixed16x16FromDouble),
+       * src/SDCCutil.h (doubleFromFixed16x16, fixed16x16FromDouble): moved to
+       SDCCast because 1) header problems 2) this is the right place
+       * src/SDCCast.c (doubleFromFixed16x16, fixed16x16FromDouble): added
+       * src/SDCCval.h (doubleFromFixed16x16, fixed16x16FromDouble): added
+       prototype
+
+2006-06-29 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCicode.h: removed buggy semicolon in unused macro
+       * src/SDCClrange.c (findPrevUseSym, rlivePoint): fixed bug #1486853,
+       search for previous definiton of auto symbols too,
+       (findPrevUse): fixed logic of emitWarnings
+
+2006-06-26 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c (genFunction, genEndFunction): also preserve
+         PCLATH and PCLATU on interrupts, potentially fixes #1505141
+
+2006-06-25 Raphael Neider <rneider AT web.de>
+
+       * device/lib/pic/libm: NEW, added math library functions
+       * device/lib/pic/libsdcc: NEW; added float support functions
+       * device/lib/pic/{Makefile.in,configure.in,configure}: added libm/
+       * device/include/pic/{limits.h,errno.h,sdcc-lib.h,float.h,math.h}:
+         NEW, added math related headers
+       * device/include/asm/pic/features.h: NEW
+       * src/pic/gen.c (emitpcode_real): emit warning on NULL pCodeOp,
+         (popGet): allow larger offsets for AOP_PCODE,
+         (genDataPointerSet): handle literals explicitly, more debug output,
+         (genAssign): fixed for float using aopLiteral ;-)
+       * src/pic/glue.c (pic14createInterruptVect): inserted pagesel before
+         GOTO initialisation routine
+       * src/pic/pcoderegs.c (pCodeRegMapLiveRangesInFlow): set wasUsed
+         flag on registers, fixes #1469043 (local variables do not work)
+       * src/pic/main.c (_pic14_do_link),
+       * src/pic16/main.c (_pic16_linkEdit): use fullDstFileName if
+         available
+
+2006-06-25 Borut Razem <borut.razem AT siol.net>
+
+       * device/lib/pic16/libc/stdio/sprintf.c: return the number of
+         characters printed (not including the trailing '\0' used to end
+         output to strings). Problem detected in regression test bug-927659.c.
+         NOTE: printf() family functions should return int instead
+         unsigned int!
+       * device/lib/pic16/libc/stdio/vfprintf.c: "%%" prints "%", unknown
+         specifier are printed as themselves
+       * sdcc/support/regression/tests/bug1057979.c: pic16 printf doesn't
+         support flags, width and precision specifiers
+
+2006-06-24 Borut Razem <borut.razem AT siol.net>
+
+       * sdcc/support/regression/tests/bitvars.c: added gbz80, pic16 and pic16
+         to the list of sdcc tagrets not supporting bit type
+       * sdcc/support/regression/tests/bug-905992.c.c: excluded regression
+         testfor pic16 due to bug:
+         [ 1511794 ] pic16: regression test bug-895992.c fails
+
+2006-06-24 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/mcs51/gen.c (genCmp): optimization for RFE 1162453
+       * src/SDCCglue.c (initPointer), fixed bug 1496419
+       * support/regression/tests/bug1496419.c: new, added
+
+2006-06-22 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/ports/pic16/support.c: use gpsim usart module from
+         libgpsim_modules library
+
+2006-06-21 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
+
+       * device/include/mcs51/at89c51ed2.h: Fixed bug 1510144 changed
+       IP0H to IPH0.
+
+2006-06-19 Raphael Neider <rneider AT web.de>
+
+       * src/pic/glue.h,src/pic16/glue.h: added prototypes
+       * src/pic/glue.c,src/pic16/glue.c (pic1x_stringInSet,
+         pic1x_emitSymbolIfNew): NEW, check for a string in a set,
+         (pic14printExterns,pic14printPublics,pic16printPublics,
+         pic16_printExterns): use new functions to emit symbols
+         (picglue,pic16glue): emit publics before emitting externs
+       * src/pic/gen.c,src/pic16/gen.c (genFunction): remember the names of
+         locally defined functions to avoid bug #1443651
+       * support/regression/tests/bug-716242.c: removed pic16 workaround
+       * support/regression/ports/pic16/spec.mk: ignore errors during build
+
+2006-06-19 Raphael Neider <rneider AT web.de>
+
+       * src/pic/glue.h: added pic14aopLiteral prototype
+       * src/pic/glue.c (pic14aopLiteral): return unsigned int
+       * src/pic/gen.c: removed stdint.h dependency
+         (aopGet): use Safe_strdup()
+         (bitpatternFromVal): removed, replaced use with pic14aopLiteral
+         (genDataPointerSet): use pic14aopLiteral()
+       * src/pic16/glue.h, src/pic16/glue.c, src/pic16/gen.c: similar changes
+         for pic16; thanks to Bernhard and Maarten
+
+2006-06-18 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/tests/structflexarray.c: flexible array members
+         not supported by gcc < 3
+       * sim/ucsim/configure, sim/ucsim/configure.in: do not compile serio
+         GUI tool by default
+       * src/pic/gen.c: don't include [p]strdin.h on solaris
+       * support/Util/pstdint.h: addad svn attributes
+       * support/regression/tests/constantRange.c,
+         support/regression/tests/rotate.c: include inttypes.h instead
+         stdint.h on solaris, addad svn attributes
+
+2006-06-18 Raphael Neider <rneider AT web.de>
+
+       * src/SDCCsymt.c (initCSupport): change return type of divschar to
+         int for PIC16
+       * src/pic16/genarith.c (genAddLit): sign-extend via standard routine
+         (pic16_genMinusBits): simplified sign-extension
+         (pic16_genUMult8XLit_8,pic16_genUMult8X8_8): renamed to
+           pic16_genMult8XLit_n resp. pic16_genMult8X8_n, fixed and
+           adjusted to correctly handle mixed-signed operands, disabled
+           now unused multiplciation routines
+       * src/pic16/gen.c (pic16_pushpCodeOp): fixed to handle literals
+         (assignResultValue): added argument denoting the size of the result
+           as returned by the function (fixes upcasts in assigning from
+           function calls: char foo(); int i = foo();)
+         (genCall,genPcall,genGenPointerGet,genReceive): pass size of
+           function result to assignResultValue
+         (genMult): disabled inlined multiplication code
+         (genDiv): augmented to also handle the modulus operator, fixed to
+           handle mixed-signed operands correctly
+         (genMod): simply call genDiv, disabled unused code
+         (genAssign): fixed missing (sign-)extension on result
+       * src/pic16/main.c (_hasNativeMulFor): accept literals [-128..256) as
+           valid char operands, allow signed operands for native code, added
+           division and modulo operator handling
+       * device/lib/pic16/libsdcc/char/divschar.c: divschar returns an int
+
+       As a consequence, onebyte.c (if split into two files) and muldiv.c
+       pass regression tests.
+
+2006-06-17 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * doc/Makefile.in: two runs of makeindex seem needed to get
+       correct page references in the index of sdccman.pdf
+       * doc/sdccman.lyx: mentioned cmon51, added links, small changes
+
+2006-06-17 Borut Razem <borut.razem AT siol.net>
+
+       * sdcc/device/lib/Makefile.in: corrected PORTINCDIR path
+
+2006-06-17 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * doc/sdccman.lyx: updated, added (porting source code, debugging),
+       mentioned ec2drv and paulmon
+
+2006-06-16 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/mcs51/lkarea.c (lnkarea2): clear new xdatamap, bugfix for two
+         consecutive abs areas
+         (find_empty_space, allocate_space): added map to handle codemap or
+          xdatamap,
+         (lnksect2): renamed rloc to locIndex, fixed bug 960060 by handling
+          absolute idata and xdata
+       * as/mcs51/lkmem.c (summary2): updated legend
+
+2006-06-16 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c (shiftR2Left2Result): fixed bug #1507127
+
+2006-06-13 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * debugger/mcs51/cmd.c (cmdListFunctions): fixed bugs 1181163 and
+         1208515
+       * src/SDCClrange.c (findPrevUse): fixed bug 1294475
+
+2006-06-13 Vangelis Rokas <vrokas AT users.sourceforge.net>
+
+       * src/port.h (struct PORT): added field gp_tags, to hold the tag
+       value of generic pointers,
+       * src/avr/main.c,
+         src/ds390/main.c,
+         src/hc08/main.c,
+         src/izt/i186.c,
+         src/izt/tlcs900h.c,
+         src/mcs51/main.c,
+         src/pic/main.c,
+         src/pic16/main.c,
+         src/xa51/main.c,
+         src/z80/main.c: PORT structure, added elements for gp_tags field,
+       * src/SDCCsymt.h: replaced hardwired values of GPTYPE_* macros with
+       fields in the PORT structure of each port,
+       * src/SDCCast.c (decorateType): allow processing of generic pointers
+       for PIC16 port (FPTRSIZE equals GPTRSIZE), also set GPTYPE_NEAR for
+       S_FIXED symbols
+
+2006-06-12 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * link/z80/lkgb.c,
+       * link/z80/lkgg.c,
+       * src/pic16/gen.c,
+       * src/pic16/main.c,
+       * src/pic16/pcode.c,
+       * src/pic/main.c,
+       * src/pic/pcoderegs.c,
+       * src/SDCCicode.c,
+       * src/SDCCmain.c,
+       * src/SDCCsymt.c: replaced all exit(-1) by exit(EXIT_FAILURE) to fix
+         bug 1504689 on minGW
+
+2006-06-12 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * device/lib/printf_tiny.c: fixed bug #1465675 (%x format specifier)
+
+2006-06-12 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCast.c (backPatchLabels): fixed bug #1504636
+
+2006-06-11 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/printf_large.c (OUTPUT_CHAR, _output_char): added and used
+         for optimization
+
+2006-06-11 Vangelis Rokas <vrokas AT users.sourceforge.net>
+
+       * src/pic16/gen.c (genCast): fixed bug with assignment of a pointer
+       to a char variable. Fixed bug #1504211
+       * device/include/pic16/adc.h,
+       device/include/lib/pic16/libio/adc/adcopen.c: applied patch #1364387
+       and fixed bug #1364390
+
+2006-06-10 Borut Razem <borut.razem AT siol.net>
+
+       * CVSROOT: removed the CVS left-over
+
+2006-06-10 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/hc08/asmain.c (asexit),
+       * as/hc08/lkmain.c (lkexit),
+       * as/mcs51/asmain.c (asexit),
+       * as/mcs51/lkmain.c (lkexit),
+       * src/SDCCglue.c (DEFSETFUNC),
+       * src/SDCCmain.c (linkEdit, assemble),
+       * support/librarian/sdcclib.c (AddRel),
+         replaced unlink() by standard C remove()
+       * src/SDCC.y: replaced removePostIncDecOps() by createRMW()
+       * src/SDCCast.c (replaceAstWithTemporary, createRMW,
+         gatherImplicitVariables): new, added to fix bug 608752,
+         (createFunction): added gatherImplicitVariables()
+       * src/SDCCast.h: added createRMW prototype
+       * src/SDCCsymt.h (struct symbol): added infertype
+       * support/regression/tests/bug608752.c: new, added
+
+2006-06-10 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c (pic16_aopOp): use WREG as destination even for
+         multibyte dummy reads (fixes #1503234)
+
+2006-06-10 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/mcs51/compiler.h: new, added header file to enable
+         creating common sfr definition header files for different compilers
+
+2006-06-05 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/{pcode.h,genarith.c}:
+         introduced pCodeOp combining any two pCodeOps (previously only
+         two register operands could be combined), removed pcop2 from
+         pCodepReg, replaced pCodeOpReg2 with pCodeOp2, fixes #1492366
+       * src/pic16/pcodepeep.c (pic16_pCodeOpCopy): added case for PO_TWO_OPS
+       * src/pic16/gen.c (pic16_popGet2,pic16_popGet2p,pic16_popCombine2):
+         rewritten to use new PO_TWO_OPS
+       * src/pic16/main.c (_hasNativeMulFor): cover more cases natively,
+       * src/pic16/pcode.c (pic16_newpCodeOpImmd): initialize rIdx field,
+         (pic16_newpCodeOp): catch invalid attempts on PO_TWO_OPS,
+         (pic16_newpCodeOp2): NEW, create combined pCodeOp,
+         (pic16_get_op): embraced return arg to allow #define return(x),
+           added new case for combined opcodes
+         (pic16_get_op2): reduced to use pic16_get_op() on second pCodeOp,
+         (pic16_pCode2str,pic16_getRegFrompCodeOp,
+          pic16_getRegFromInstruction2): fixed/added handling of new pCodeOp
+
+2006-06-04 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCval.c (checkConstantRange): added
+       * src/SDCCval.h: added checkConstantRange
+       * support/Util/SDCCerr.c,
+       * support/Util/SDCCerr.h: replaced unused W_IF_NEVER_TRUE and
+       W_IF_ALWAYS_TRUE by W_COMP_RANGE and W_LIT_OVERFLOW
+       * src/SDCC.y: moved early 'condition transformations' to SDCCast.c
+       * src/SDCCast.c (decorateType): added checkConstantRange,
+       added 'condition transformations' from SDCC.y so that now W_COMP_RANGE
+       can be emitted with the correct always true/false warning,
+       added optimization for double '!';
+       result of decorateType() must be assigned back to the tree, because
+       decorateType() can change the tree
+       * src/SDCCicode.c (geniCodeLogic),
+       (geniCodeAssign): replaced new checkConstantRange, added warnings,
+       (checkConstantRange): removed, it was only a fragment which never
+       emitted a warning
+       * src/SDCCsymt.c (computeType): fixed promotion for
+       "-1 < (unsigned bit) b"
+       * src/pic/ralloc.c (packRegsForAssign),
+       * src/pic16/ralloc.c (packRegsForAssign),
+       * src/hc08/ralloc.c (packRegsForAssign),
+       * src/z80/ralloc.c (packRegsForAssign): ported fix for bug #930931
+       from mcs51
+       * src/mcs51/ralloc.c (packRegsForAssign): removed outcommented source
+       * support/regression/tests/constantRange.c: added
+       * support/valdiag/tests/constantRange.c: added
+       * support/valdiag/valdiag.py: added -DPORT_HOST=1
+
+2006-06-02 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/ports/pic16/support.c: increase stack size
+         to 255 bytes
+       * support/regression/Makefile.in: sort tests by name so that the
+         resutlts can be compared on different machines / platforms
+
+2006-06-02 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/printf_large.c (output_digit): optimized further, Tnx Frieder
+       * src/ds390/gen.c (emitLabel): new, added,
+         (genDjnz): fixed stack overflow bug,
+         (throughout): cosmetic changes to sync with mcs51/gen.c,
+         replaced emitcode("", "%05d$:", lbl->key + 100) with emitLabel(lbl)
+       * src/mcs51/gen.c (genEndFunction): small optimization,
+         (throughout): cosmetic changes to sync with ds390/gen.c
+
 2006-06-02 Maarten Brock <sourceforge.brock AT dse.nl>
 
        * device/lib/printf_large.c (output_digit, calculate_digit): optimized,
 
 2003-10-31  Borut Razem <borut.razem AT siol.net>
 
-       * support\cpp2\cpplex.c: fixed for SDCPP:
+       * support/cpp2/cpplex.c: fixed for SDCPP:
          comments(when executed with -C option) and _asm blocks
          were included even if they where in skipped #if block.
          Applied solution from GCC cpp 3.3.2
 
        Fixed some warnings when building with MSVC:
 
-       * as\mcs51\asdata.c
-       * as\z80\asdata.c
-       * as\mcs51\asm.h
-       * as\z80\asm.h
-       * link\z80\aslink.h
-       * link\z80\lkdata.c
-       * link\z80\lkeval.c
-       * link\z80\lkgb.c
-       * link\z80\lkihx.c
-       * link\z80\lks19.c
-       * link\z80\lksym.c
-       * support\cpp2\cpplib.c
-       * src\ds390\gen.c
-       * src\mcs51\gen.c
+       * as/mcs51/asdata.c
+       * as/z80/asdata.c
+       * as/mcs51/asm.h
+       * as/z80/asm.h
+       * link/z80/aslink.h
+       * link/z80/lkdata.c
+       * link/z80/lkeval.c
+       * link/z80/lkgb.c
+       * link/z80/lkihx.c
+       * link/z80/lks19.c
+       * link/z80/lksym.c
+       * support/cpp2/cpplib.c
+       * src/ds390/gen.c
+       * src/mcs51/gen.c
 
 2003-08-03  Bernhard Held <bernhard AT bernhardheld.de>
 
 
 2003-08-01  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
 
-       * support\librarian\clean.mk: Do not remove Makefile.
-       * support\librarian\Makefile: added.
+       * support/librarian/clean.mk: Do not remove Makefile.
+       * support/librarian/Makefile: added.
 
 2003-08-01  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
 
        Added librarian to MSVC build:
        * all.dsp
        * sdcc.dsw
-       * support\librarian\librarian.dsp
+       * support/librarian/librarian.dsp
 
        'configure' not needed for librarian, removed:
-       * support\librarian\configure
-       * support\librarian\configure.in
-       * support\librarian\config_in.h
-       * support\librarian\Makefile.in
+       * support/librarian/configure
+       * support/librarian/configure.in
+       * support/librarian/config_in.h
+       * support/librarian/Makefile.in
 
        Hopefully these ones built the librarian and the rest of sdcc properly:
        * Makefile
        Adding sdcclib to the build.  MSVC project coming soon.
        Files added/changed:
 
-       * support\librarian\clean.mk
-       * support\librarian\configure
-       * support\librarian\configure.in
-       * support\librarian\config_in.h
-       * support\librarian\Makefile.bcc
-       * support\librarian\Makefile.in
-       * support\librarian\sdcclib.c
+       * support/librarian/clean.mk
+       * support/librarian/configure
+       * support/librarian/configure.in
+       * support/librarian/config_in.h
+       * support/librarian/Makefile.bcc
+       * support/librarian/Makefile.in
+       * support/librarian/sdcclib.c
        * Makefile.bcc
        * Makefile
        * Makefile.common.in
        example, one compiled using --model-large and another one compiled with
        --model-small.  The following files were modified:
 
-       * as\mcs51\asdata.c
-       * as\mcs51\aslink.h
-       * as\mcs51\asm.h
-       * as\mcs51\asmain.c
-       * as\mcs51\asout.c
-       * as\mcs51\i51pst.c
-       * as\mcs51\lkdata.c
-       * as\mcs51\lklibr.c
-       * as\mcs51\lkmain.c
-       * as\z80\asdata.c
-       * as\z80\asm.h
-       * as\z80\asmain.c
-       * as\z80\asout.c
-       * as\z80\z80pst.c
-       * link\z80\aslink.h
-       * link\z80\lkdata.c
-       * link\z80\lklibr.c
-       * link\z80\lkmain.c
-       * src\SDCCglue.c
+       * as/mcs51/asdata.c
+       * as/mcs51/aslink.h
+       * as/mcs51/asm.h
+       * as/mcs51/asmain.c
+       * as/mcs51/asout.c
+       * as/mcs51/i51pst.c
+       * as/mcs51/lkdata.c
+       * as/mcs51/lklibr.c
+       * as/mcs51/lkmain.c
+       * as/z80/asdata.c
+       * as/z80/asm.h
+       * as/z80/asmain.c
+       * as/z80/asout.c
+       * as/z80/z80pst.c
+       * link/z80/aslink.h
+       * link/z80/lkdata.c
+       * link/z80/lklibr.c
+       * link/z80/lkmain.c
+       * src/SDCCglue.c
 
 2003-07-28  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
 
        * src/SDCC.lex: Fix for bug #711240: dynamic buffer handling of C
           literal strings in stringLiteral()
        * support/Util/dbuf.c, support/Util/dbuf.h: added: dynamic buffer handling
-       * src/Makefile.bcc, src/Makefile.in, src\src.dsp: added support/Util/dbuf.c
+       * src/Makefile.bcc, src/Makefile.in, src/src.dsp: added support/Util/dbuf.c
           to the project
 
 2003-03-27  Paul Stoffregen <paul AT pjrc.com>
 
 2002-12-10  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
 
-    * in \sdcc\as\mcs51\ changed these files in order to create an
+    * in /sdcc/as/mcs51/ changed these files in order to create an
     aomf51 file: aslink.h, lkdta.c, lklex.c, lklibr.c, lklist.c,
     lkmain.c.  Also added: lkmem.c and lkaomf51.c.  Changed the
     following files to include the previous two files: aslink.dsp,
     Makefile.aslink, Makefile.bcc, and Makefile.in.
 
-    * Changed \sdcc\src\SDCCmain.c so it creates files with extension
+    * Changed /sdcc/src/SDCCmain.c so it creates files with extension
     .adb instead of .cdb
 
 2002-11-09  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
 
-       * \sdcc\as\mcs51\lklist.c: Now reports memory usage using the
+       * /sdcc/as/mcs51/lklist.c: Now reports memory usage using the
        value from option --iram-size.
 
 2002-09-20  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
 
-       * \sdcc\as\mcs51\lklist.c: added boundary check before using
+       * /sdcc/as/mcs51/lklist.c: added boundary check before using
        dram[] array.
 
 2002-09-18    <wiml AT hhhh.org>
          compact code for X = LITERAL - Y
 
 2002-09-00  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
-       * \sdcc\as\mcs51\lklist.c: Fixed incorrect number of parameters to
+       * /sdcc/as/mcs51/lklist.c: Fixed incorrect number of parameters to
        sprintf() in line 1267.
 
 2002-09-08  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
-       * \sdcc\src\SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051
+       * /sdcc/src/SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051
        like ports.
 
 2002-09-04  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
        Changes to aslink (All the changes are marked with 'JCF'):
 
-       * \sdcc\as\mcs51\aslink.h: External definition of sflag and
+       * /sdcc/as/mcs51/aslink.h: External definition of sflag and
        summary().
 
-       * \sdcc\as\mcs51\lkarea.c: Computes the size of area BSEG_BYTES from
+       * /sdcc/as/mcs51/lkarea.c: Computes the size of area BSEG_BYTES from
        area BSEG.  Also moves, if possible, the DATA area down into the internal
        ram so more space is available.
 
-       * \sdcc\as\mcs51\lkdata.c: Definition of memory summary output flag
+       * /sdcc/as/mcs51/lkdata.c: Definition of memory summary output flag
        sflag.
 
-       * \sdcc\as\mcs51\lklist.c: For the BSEG area report the size in bits,
+       * /sdcc/as/mcs51/lklist.c: For the BSEG area report the size in bits,
        not bytes.  Function summary() which creates a memory usage summary
        file with extension .mem.  Reports of overlaping stack and small stack
        size.  If the space for the stack is less than 16 bytes aslink trows a
        warning.
 
-       * \sdcc\as\mcs51\lkmain.c: Creation of some of the default areas for
+       * /sdcc/as/mcs51/lkmain.c: Creation of some of the default areas for
        the 8051.  Option 'y' for memory summary output file.
 
        Changes to sdcc (All the changes are marked with 'JCF'):
 
-       * \sdcc\src\SDCCglobl.h: External definition of RegBankUsed[4].
+       * /sdcc/src/SDCCglobl.h: External definition of RegBankUsed[4].
 
-       * \sdcc\src\SDCCglue.c:  If a register bank is used, creates an
+       * /sdcc/src/SDCCglue.c:  If a register bank is used, creates an
        overlaying area for it (uses RegBankUsed[4]).
 
-       * \sdcc\src\SDCCmain.c: Definition RegBankUsed[4]; marks register
+       * /sdcc/src/SDCCmain.c: Definition RegBankUsed[4]; marks register
        bank zero as used by default.  By default aslink locates the stack
        (equivalent to --stack-after-data).  Pass option 'y' to aslink for
        the creation of the .mem file.  Delegates the allocation of data area
        to aslink (it is not longer 0x30 by default).  If --stack-loc passes
        the begining of the stack area to aslink.
 
-       * \sdcc\src\SDCCmem.c:  If a register bank is used, marks it so
+       * /sdcc/src/SDCCmem.c:  If a register bank is used, marks it so
        glue() in SDCCglue.c creates an area for it.
 
 2002-09-03  Borut Razem <borut.razem AT siol.net>