* sim/ucsim/sim.src/memcl.h: added get_decoder() to cl_address_space
[fw/sdcc] / ChangeLog
index 4b06da0b6ae4c486defa0aa75426f1d2a076bbcd..433e7b30d6645587e6e6599510edcfadb0d225e2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,390 @@
+2006-05-11 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * sim/ucsim/sim.src/memcl.h: added get_decoder() to cl_address_space
+       * sim/ucsim/sim.src/mem.cc: implemented cl_address_space::get_decoder,
+         (cl_address_space constructor): removed expensive initialization,
+         (cl_address_space::get_cell): extended for late initialization,
+         (cl_address_space::*): use late initialization,
+         (cl_address_decoder::activate): removed expensive initialization,
+         This reduced regression test running time by 25%
+
+2006-05-11 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * packihx/,
+       * configure.in,
+       * configure,
+       * sdcc.dsw,
+       * Makefile.bcc,
+       * Makefile.in,
+       * support/packihx/Makefile.in,
+       * support/packihx/clean.mk,
+       * support/packihx/Makefile.bcc,
+       * support/packihx/PackIhx.dsp: moved packihx to support/packihx
+
+2006-05-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/SDCCval.c (valNot): fix for regression test failure
+         of not.c on big endian hosts
+
+2006-05-10 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/inlcude/mcs51/msc1210.h: new, added, thanks Philippe Latu
+
+2006-05-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * device/lib/mcs51/Makefile.in: changed string comparison operator
+         to = for POSIX compliance; == is bash extension
+
+2006-05-10 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/hc08/_mulint.c: applied patch 1485428, thanks
+         kosmonaut_pirx
+
+2006-05-09 Vangelis Rokas <vrokas AT users.sourceforge.net>
+
+       * src/pic16/gen.c (pic16_freeAsmop): release any temp registers
+       allocated by aopForSym thus fixing bug #1478657 about failed testfwk.c
+       * src/pic16/main.c (_pic16_keywords): added 'sfr16' keyword,
+       * src/pic16/ralloc.c (pic16_allocWithIdx): also a fix for bug exposed by
+       bug report #1478657,
+
+2006-05-05 Borut Razem <borut.razem AT siol.net>
+
+       * doc/Makefile.in: remove of WARNINGS and labels.pl immediately after
+         making the html
+
+2006-05-02 Borut Razem <borut.razem AT siol.net>
+
+       * doc/Makefile.in: removed *.ind dependency since there is no rule to
+         create *.ind, which made make to fail if invoked with -j 2
+
+2006-05-01 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCglue.c (emitRegularMap): partial fix for bug 1477149, thanks
+         Hubert Sack for patch 1479782
+
+2006-05-01 Vangelis Rokas <vrokas AT users.sourceforge.net>
+
+       * src/pic16/glue.c (pic16_printIvalStruct): fixed bug #1445929
+
+2006-05-01 Raphael Neider <rneider AT web.de>
+
+       * src/pic/device.c (sanitise_processor_name): only remove p(ic) prefix,
+         (create_pic): store only prefix-free device name,
+         (init_pic): check for device names with "16" prefix,
+         (list_valid_pics),
+       * src/pic/device.h (struct PIC_device),
+       * src/pic/main.c (_pic14_genAssemblerPreamble): adapted to single
+           stored device name,
+       * device/include/pic/pic12f{635,675,629,683}.h,
+       * device/lib/pic/libdev/pic12f{635,675,629,683}.c: NEW device libraries
+       * device/lib/pic/libdev/Makefile.in: allow pic12* devices,
+       * device/include/pic/pic16f505.h,
+       * device/lib/pic/libdev/pic16f505.c: removed
+       * device/include/pic/pic14devices.txt: added support for pic12f
+           devices, removed unsupported non 16-bit devices
+           [above changes provided by patch from Zik Saleeba]
+       * src/pic/*, src/pic16/*, device/include/pic16/*,
+         device/lib/pic/**, device/lib/pic16/**: obfuscated email address
+
+2006-05-01 Borut Razem <borut.razem AT siol.net>
+
+       * configure.in, configure, doc/Makefile.in:
+         sync with nightly build makefile - latex, dvipdf and dvips
+         not needed any more
+
+2006-04-30 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * support/scripts/sdcc.nsi: removed all Readmes and Makefiles
+       in the library source
+
+2006-04-30 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * support/regression/ports/hc08/spec.mk: fixed bug 1478892
+
+2006-04-28 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/pcode.c (pic16_newpCodeOpLit12),
+       * src/pic16/gen.c (pic16_popGetLit12): NEW, create 12 bit literal,
+         (pic16_loadFSR0): handle 12 bit literals correctly, fixes #1440527
+       * src/pic16/pcode.h: added prototype for pic16_newpCodeOpLit12()
+
+2006-04-28 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * device/lib/pic/libdev/Makefile.in,
+       * device/lib/hc08/Makefile.in,
+       * device/lib/gbz80/Makefile.in,
+       * device/lib/z80/Makefile.in,
+       * device/lib/ds390/Makefile.in,
+       * device/lib/ds400/Makefile.in: added srcdir to include search path,
+       thanks to Borut for the bug report
+       * configure.in,
+       * configure: always create doc/Makefile independent from --enable-doc
+       * Makefile.in: always install from directory doc independent from
+       --enable-doc
+       * device/lib/pic/Makefile.in: added libdev again, it was erroneously
+       removed
+       * device/lib/pic/libdev/Makefile.in: fixed VPATH build
+       * doc/Makefile.in: install *.txt if present
+       * device/include/Makefile.in (install): added installation of pic/*.inc
+       and pic/*.txt files again, they were erroneously removed
+
+2006-04-28 Raphael Neider <rneider AT web.de>
+
+       * src/pic/{gen.c,main.h,pcode.c},
+       * src/pic16/{gen.c,pcode.c}: quietened compiler warnings
+           concerning signedness with casts
+
+2006-04-28 Raphael Neider <rneider AT web.de>
+
+       * src/pic/gen.c (genFunction): set global pic14_hasInterrupt on
+           definition of an interrupt handler,
+       * src/pic/glue.c (pic14_emitInterruptHandler): moved output of
+           interrupt handler stuff from picglue() to separate routine,
+         (picglue): enabled definition of intr handlers in files w/o main()
+
+2006-04-26 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * support/librarian/sdcclib.c: moved include <limits.h> up to enable
+         compilation with MSVC 2005 Express Edition (VC8)
+
+2006-04-26 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * device/lib/Makefile: fixed build of gbz80 lib
+
+2006-04-26 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * support/regression/tests/bug-460010.c,
+       * support/regression/tests/bug-524691.c,
+       * support/regression/tests/bug-716242.c: removed conditional defines
+         that are already in testfwk.h
+
+2006-04-25 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/ds390/gen.c (AccAXRrl1, AccAXLrl1): changed to real rotate by 1,
+         (AccAXRsh1): added, shift right by 1,
+         (AccAXLsh, AccAXRsh, AccAXRshS): updated for AccAXRrl1, AccAXRsh1 and
+          AccAXLrl1
+       * support/regression/tests/rotate.c: use <stdint.h> and enabled ds390
+
+2006-04-25 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCast.c (decorateType): partial fix for RFE 1475769,
+       remove cast to same type
+       * src/SDCCast.c (decorateType): fix for RFE 1475742,
+       optimize 'ifx (op == 0)' resp. 'ifx (op != 0)'
+       * as/z80/Makefile,
+       * link/z80/Makefile: removed, they have moved to
+       Makefile.in files
+       * configure,
+       * configure.in: replaced duplicate message about ucsim by missing sdcpp
+       * install-sh: fix bug #1204398 by setting umask 0022
+       * device/lib/Makefile: separate build of z80 and gbz80 lib
+
+2006-04-24 Bernhard Held <bernhard AT bernhardheld.de>
+
+       Enabled VPATH feature: changed nearly all Makefiles (149 files).
+       See sdccman.lyx '2.4.10 VPATH feature' about how to use it.
+
+       One basic decision: e.g. src/clean.mk includes further files. In order
+       to make this work there are two solutions:
+       - rename another dozen clean.mk to clean_in.mk, add srcdir to them and
+         run configure on them. This way they can use
+         'include $(srcdir)/port-clean.mk'
+       - always include clean.mk by the Makefile at the same level. To avoid
+         that `make clean` tries to include and build Makefile.dep the
+         MAKECMDGOALS are examined (see e.g. src/Makefile.in). This has been
+         implemented, because now even `make uninstall` doesn't create
+         Makefile.in. clean.mk could be eliminated by pasting it in
+         Makefile.in.
+
+       * debugger/mcs51/Makefile.in: build own objects from library sources
+       (SLIB, SDCC) in current directory
+
+       * configure, configure.in: renamed --disable-device-lib-build in
+       --disable-device-lib; added --enable-doc, the required tools are
+       searched by configure; added result message; the toolchain for the
+       belonging ports are now only built, if the port is enabled.
+
+       * support/regression/*: all output is written in directory gen, because
+       the fwk and ports directories don't livet in the build tree using vpath
+
+       * doc/sdccman.lyx: renamed --disable-device-lib-build to
+       --disable-device-lib, added --enable-doc, added section VPATH
+
+       * sim/ucsim/configure.in,
+       * sim/ucsim/configure.in: hc08 couldn't be disabled, now hc08 and
+       z80 are enabled by default
+
+2006-04-24 Raphael Neider <rneider AT web.de>
+
+       * src/pic/device.c (pic14_assignConfigWordValue): remember assignments
+           to config word, "pic14_"-prefixed some extern functions
+         (pic14_emitConfigWord): emit __config directive(s) if assignment to
+           config word has been found
+       * src/pic/device.h: added prototypes
+       * src/pic/pcode.c: added "pic14_"-prefix where needed
+       * src/pic/ralloc.c (IS_CONFIG_ADDRESS,pic14_assignRegisters): cosmetic
+           fixup
+       * src/pic/glue.c (pic14_constructAbsMap): handle assignments to config
+           words,
+         (pic14emitRegularMap): ignore config words,
+         (pic14createInterruptVect): moved generating __config directives away
+         (picglue): have __config directives emitted
+
+2006-04-24 Borut Razem <borut.razem AT siol.net>
+
+       * doc/Makefile: sync with nightly build makefile
+
+2006-04-24 Raphael Neider <rneider AT web.de>
+
+       * src/pic/pcoderegs.c (OptimizeRegUsage): do not optimize
+           registers that have not been assigned proper liveranges,
+           fixes #1469504 and #1474602,
+         (pCodeRegOptimizeRegUsage): fixed typo in comment
+
+2006-04-24 Borut Razem <borut.razem AT siol.net>
+
+       * device/examples/main8051.c: deleted - it was removed from CVS
+         24.mar.2000 and after that modified 18.feb.2001, so it reappered
+         after the transition to Subversion
+       * src/SDCCalloc.h: deleted - it was removed  from CVS
+         3.feb.2001 and after that modified 18.feb.2001, so it reappered
+         after the transition to Subversion
+       * sim/ucsim/cpu.gif, sim/ucsim/interrupt.gif, sim/ucsim/new.gif,
+         sim/ucsim/serial1.gif, sim/ucsim/serial2.gif,
+         sim/ucsim/term_cpuopt.gif, sim/ucsim/timers.gif, sim/ucsim/wins.gif,
+         sim/ucsim/post.jpg, sim/ucsim/UCsim.jpg: corrected
+
+2006-04-22 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * as/asx8051.dsp: added mcs51/strcmpi.h
+       * as/hc08/as_hc08.dsp: added asm.h, m6808.h, strcmpi.h
+       * as/hc08/aslink.h: updated lnksect prototype
+       * as/hc08/asm.h,
+       * as/mcs51/asm.h: added a_addr to struct area and s_org to struct sym
+       * as/hc08/asmain.c,
+       * as/mcs51/asmain.c (asmbl): init dot.s_org for S_ORG,
+         (newdot): handle A_ABS
+       * as/hc08/asout.c,
+       * as/mcs51/asout.c (outarea): output address
+       * as/hc08/lkaomf51.c,
+       * as/mcs51/lkaomf51.c: disabled unused array UsageType
+       * as/hc08/m08pst.c,
+       * as/mcs51/i51pst.c,
+       * as/z80/z80pst.c: "ABS" is not A_OVR
+       * as/hc08/lkarea.c (newarea): read a_addr,
+         (lnkarea): added codemap array, sort absolute areas to the front,
+          combine all GSINITx/GSFINAL,
+         (find_empty_space, allocate_space): new functions,
+         (lnksect): return next address, handle absolute sections
+       * as/mcs51/lkarea.c (newarea): read a_addr,
+         lnksect2 prototype changed,
+         (lnkarea2): define codemap unsigned, combine all GSINITx/GSFINAL,
+         (find_empty_space, allocate_space): new, factored out of lnksect2,
+         (lnksect2): return next address, handle absolute sections
+       * as/hc08/lkhead.c,
+       * as/mcs51/lkhead.c (newhead): head is absolute but not overlay
+       * as/hc08/lklibr.c (addfile, fndsym),
+       * as/mcs51/lklibr.c (addfile, buildlibraryindex, fndsym): prevent
+         index out of range and detect both '\' and '/'
+       * device/include/mcs51/c8051f200.h: added _XPAGE, removed bad comment
+       * device/include/stdbool.h: removed SDCC_ds390 from check to pass
+         regression tests (ds390 cannot return bool yet)
+       * doc/sdccman.lyx: changed version number, document changed --no-peep,
+         document critical interrupts on z80, document changed SDCC define
+       * src/asm.c (_asxxxx_mapping): fixed .org directive,
+         (_a390_mapping): added .org directive
+       * src/hc08/gen.c (transferAopAop): made bytemask log to fix warning,
+         (genMultOneByte): fixed warnings
+       * src/hc08/hc08.dsp: lowered warning level to 2 to suppress pedantic
+         ones
+       * src/pic16/device.c: removed newReg prototype, removed BYTE_IN_LONG
+       * src/pic16/gen.c (pic16_popGetLabel): made parameter key signed,
+         (pic16_genLeftShiftLiteral, genRightShiftLiteral): fixed warnings
+       * src/pic16/gen.h: changed prototype for pic16_popGetLabel
+       * src/pic16/main.c: removed newReg prototype
+       * src/pic16/pcode.c,
+       * src/pic16/pcode.h (pic16_emitDB): changed parameter c to int to fix
+         warnings
+       * src/pic16/pic16.dsp: lowered warning level to 2 to suppress pedantic
+         ones
+       * src/pic16/ralloc.c
+       * src/pic16/ralloc.h (newReg): changed type to int and size to unsigned
+         to fix warnings
+       * src/pic/pcode.c (allocInternalRegister): changed parameter optype
+         from short to PIC_OPTYPE
+       * src/pic/pic.dsp: lowered warning level to 2 to suppress pedantic ones
+       * src/pic/ralloc.c (newReg, allocInternalRegister): changed parameter
+         optype from short to PIC_OPTYPE
+       * src/port.h: made int_size unsigned to fix warnings
+       * src/SDCC.y: fixed warning on MSVC
+       * src/SDCCicode.c (getArraySizePtr): return unsigned int
+       * src/SDCCopt.c (convertToFcall): fixed warnings
+       * src/SDCCsymt.h: removed double prototype for genSymName
+       * src/xa51/ralloc.c (allocReg): made size unsigned int, type int and
+         offset int to fix warnings
+
+2006-04-22 Borut Razem <borut.razem AT siol.net>
+
+       * doc/sdccman.lyx, */Makefile, */Makefile.in:
+         references to CVS replaced with Subversion
+
+2006-04-21 Borut Razem <borut.razem AT siol.net>
+
+       * doc/sdccman.lyx, */Makefile, */Makefile.in:
+         references to CVS replaced with Subversion
+
+2006-04-19 Borut Razem <borut.razem AT siol.net>
+
+       * src/version.awk: adapted for svn
+       * /asxxxx/asxhtml/*.gif: set property svn:mime-type to image/gif
+         sim/ucsim/doc/*.gif: set property svn:mime-type to image/gif
+         sim/ucsim/doc/*.jpg: set property svn:mime-type to image/jpeg
+         /binutils-avr/etc/*.vi, *.jin: removed all properties
+         support/scripts/sdcc.ico: set property svn:mime-type to image/x-icon
+
+2006-04-19 Borut Razem <borut.razem AT siol.net>
+
+       * CVS to Subversion migration completed
+
+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
+
+2006-04-17 Borut Razem <borut.razem AT siol.net>
+
+       * device/include/Makefile.in: added pic/*.inc to the installation
+
+2006-04-15 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * support/regression/collate-results.py: fixed output in case of
+       a valdiag error
+       * support/regression/generate-cases.py: fixed splitting of pathnames
+       with dots
+       * as/hc08/lklibr.c (addfile),
+       * as/mcs51/lklibr.c (addfile): fixed off-by-one bug
+
+2006-04-11 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c (getFreePtr, pic16_popRegFromString),
+       * src/pic16/ralloc.c (pic16_allocregWithName): removed debug output
+       * src/pic16/pcode.c (assignValnums): fixed #1460578
+
+2006-04-11 Raphael Neider <rneider AT web.de>
+
+       * device/lib/pic/libdev/*.c,
+       * device/include/pic/*.h: replaced sfr and data with __sfr and __data,
+         fixes #1468739, enables compilation in --std-c99 mode
+       * support/scripts/inc2h.pl: emit __sfr/__data instead of sfr/data
+
+2006-04-11 Raphael Neider <rneider AT web.de>
+
+       * src/pic/device.c (find_device): removed debug output
+         (list_valid_pics): enabled verbose listing of supported devices
+       * device/include/stdbool.h: define bool as char for pic14/16 as well
+
 2006-04-07 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
 
        * src/SDCC.y: allow using brackets here: "__interrupt (1) __using (1)"