add dump_reg on next, breakpt
[fw/sdcc] / ChangeLog
index 4624cb9faf6aa1319ae4e15fed1997f14ef89ad2..7b9af512964e0475a0817c5f7eaadec6aae684a3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,324 @@
+2002-02-10  Karl Bongers <karl@turbobit.com>
+
+       * debugger/*:
+       Fixed up SDCDB debugger somewhat.  Updated debugger/README
+       with lots of comments and notes.
+
+       * device/examples/test2.c:
+       Fix bug, "red" variable not being initialized(compiler complained).
+
+       * device/examples/Makefile, examples/test3.c:
+       Add Makefile in device/examples folder, compiles test3.c
+       for use as a multiple module SDCDB test case.
+
+       * sim/ucsim/cmd.src/cmdset.cc:
+       Took out debug printfs in ucsim "next" command.
+
+       * sim/ucsim/xa.src:
+       Karl and Johan start ucsim XA support.  Most dissassembly working,
+       about 75% emulation done(plenty of work remaining).
+
+       * sim/ucsim/z80.src:
+       Add Z80 support to ucsim, add test-ucz80 regression test,
+       notice ucsim/z80 emulation fails on examples/test3.c/itoa code.
+       Notice z80 compiler fails on examples/test3.c/crc code.
+
+2002-01-30  Sandeep Dutta  <sandeep@ddi.com>
+
+       * src/mcs51/gen.c, src/mcs51/main.c, src/mcs51/ralloc.c:
+       Added support for --parms-in-bank1
+
+       * src/ds390/peeph.def:
+       added a few more peephole optimzations
+
+       * src/ds390/main.c:
+       1) added __builtin_inp & __builtin_outp used to read in data of given length
+          from a memory mapped port
+       2) added __builtin_memcmp
+       3) added __builtin_swapw swap bytes of a short
+
+       * src/ds390/gen.c, src/ds390/gen.h, src/ds390/ralloc.c:
+       1) handle multiple send & receives from register bank1
+       2) ralloc can now allocate DPTR1 to some liveRanges
+
+       * src/SDCCsymt.c, src/SDCCsymt.h:
+       changes to handle multiple sends & receives
+
+       * src/SDCCptropt.h:
+       added some pointer arithmetic optimization
+
+       * src/SDCCptropt.c:
+       added some pointer arithmetic optimizations but not stable yet so not
+       called from anywhere (will get this working shortly)
+
+       * src/SDCCopt.c: fixed for multiple sends & receives
+
+       * src/SDCCmain.c:
+       1) added options --parms-in-bank1 (ds390/mcs51) & --protect-sp-update
+       2) preprocessing done AFTER port->finalizeoptions . This allows ports to
+          set preprocessor defines (depending on options)
+
+       * src/SDCCicode.c, src/SDCCicode.h:
+       changes made to handle multiple sends & receives
+
+       * src/SDCCglobl.h:
+       Added options --protect-sp-update (ds390) and --parms-in-bank1 (ds390/mcs51)
+
+       * src/SDCCcse.c, src/SDCCcse.h:
+       added function findbackward def (to be used in upcoming optimization)
+
+       * src/SDCCcflow.c, src/SDCCcflow.h:
+       added function returnAtEnd - to determine if a basic block terminates with
+       a RETURN iCode
+
+       * src/SDCCast.c, src/SDCCast.h:
+       added option parms-in-bank1
+
+       * device/lib/_divsint.c, device/lib/_divslong.c, device/lib/_divuint.c 
+       * device/lib/_divulong.c, device/lib/_modsint.c, device/lib/_modslong.c 
+       * device/lib/_modulong.c, device/lib/_mulint.c, device/lib/_mullong.c:
+       adjusted for --parms-in-bank1 option
+
+       * device/include/string.h:
+       donot redefine "reentrant" keyword
+
+       * device/include/ds80c390.h: Added some more SFRs
+
+2002-01-28  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * sim/ucsim: Merged branch ucsim-034-pre3 to main trunk; new version 0.4 
+
+2002-01-26  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * src/SDCCast.c (funcOfType): fix usage of double --float-reent
+
+2002-01-22  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * support/regression/fwk/lib/testfwk.c (main): Removed workaround for bug #505387
+
+2002-01-18  Paul Stoffregen  <paul@pjrc.com>
+
+       * Added --xram-movc option
+
+2002-01-13  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * support/regression/Makefile: don't include test-mcs51-stack-auto in target all
+
+2002-01-11  Johan Knol
+
+       * Added math lib of Jesus Calvino-Fraga
+
+2002-01-08  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * src/SDCCmain.c (processFile): fix processing of ../../src.c
+       * support/regression/Makefile: new target test-mcs51-stack-auto
+       * support/regression/ports/mcs51-stack-auto/spec.mk: added
+
+2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * src/SDCCglue.h: printIvalCharPtr(), not printIvalChar()
+
+2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * support/regression/ports/mcs51/support.c: correct setup of timer / UART
+
+2002-01-03  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * src/SDCCsymt.c (processFuncArgs): fix #498307 by Johan
+
+       * src/SDCCglue.h: add definition for printIvalChar()
+
+2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * src/SDCCast.c: fix #498138 by Johan
+
+       * src/SDCCglue.c: fix #498138 by Johan
+
+2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * support/regression/Makefile: fix clean
+
+       * support/regression/ports/ds390/support.c: fix transmission of last character
+
+2001-12-29  Sandeep Dutta  <sandeep@ddi.com>
+
+       * /sdcc/src/ds390/gen.c:
+       a) improved computing address of stack variable
+       b) took out some #if 0 code
+       c) improved parmBytes adjustment
+       d) improved genPlusIncr & genMinusIncr
+       e) genCmp could generate bad code (when left assigned to DPTR)
+       f) Fixed bug in hasInc
+
+       * /sdcc/src/ds390/ralloc.c:
+       a) packRegsForSupport could mess up live information (Fixed)
+       b) packRegsDPTRuse could be incorrect for left & right shift
+
+       * /sdcc/src/mcs51/ralloc.c:
+       packRegsForSupport could mess up the live information (Fixed)
+
+       * /sdcc/src/mcs51/gen.c: Fixed a bug in hasInc
+
+       * /sdcc/src/SDCCast.c:
+       can reverse a loop even if function call is present as long
+       as the loop control variable is local & is not passed as parameter
+
+2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
+
+       * /sdcc/ChangeLog: *** empty log message ***
+
+       * /sdcc/src/ds390/gen.c, /sdcc/src/ds390/main.c:
+       More builtin function additions for TININative
+
+       * /sdcc/src/ds390/ralloc.c:
+       Had broken the regression testsuite
+
+       * /sdcc/src/SDCCast.c: Fixed a bug in dumptree
+
+       * /sdcc/src/SDCCsymt.c, /sdcc/src/SDCCsymt.h:
+       Added funcattr hasStackParms will be set for reentrant functions when there
+       are paramteres on the stack, this helps in minimizing frame pointer generation
+       typeFromStr can handle function pointers now
+
+       * /sdcc/doc/builtins.txt, /sdcc/doc/TININative.txt:
+       *** empty log message ***
+
+2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
+
+       * /src/ds390/gen.c, /src/ds390/main.c:
+       More builtin function additions for TININative
+
+       * /src/ds390/ralloc.c:
+       Had broken the regression testsuite
+
+       * /src/SDCCast.c: Fixed a bug in dumptree
+
+       * /src/SDCCsymt.c, /src/SDCCsymt.h:
+       Added funcattr hasStackParms will be set for reentrant functions when there
+       are paramteres on the stack, this helps in minimizing frame pointer generation
+       typeFromStr can handle function pointers now
+
+       * /doc/builtins.txt, /doc/TININative.txt:
+       *** empty log message ***
+
+
+2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
+
+       * /src/ds390/gen.c, /src/ds390/main.c, /src/ds390/peeph.def, /src/ds390/ralloc.c:
+       ALPHA version for -mTININative
+
+       * /src/izt/i186.c, /src/izt/tlcs900h.c, /src/mcs51/main.c, /src/pic/main.c, /src/z80/main.c, /src/avr/main.c:
+       updated to reflect changes in the port structure
+
+       * /src/port.h:
+       added function do_assemble (similar to do_link) if non-null this function
+       will be called to do assembly (-mTININative) requires a multi command
+       assembly
+       added function genAssemblerEnd will be called to generate assembler Epilogue
+
+       * /src/SDCCsymt.c:
+       added _JavaNative to debug info printing
+
+       * /src/SDCCmain.c: added option --tini-libid
+       added port->do_assemble function (-mTININative) has a multi command assemble
+
+       * /src/SDCCglue.c: Disabled "constExpr" check
+       added port->genAssemblerEnd function
+
+       * /src/SDCCglobl.h: Added option --tini-libid value
+
+       * /src/SDCCast.h:
+       tookout optimizeCompare from the header (has no external references)
+
+       * /src/SDCCast.c: made one more function "static"
+
+2001-12-23  Michael Hope  <michaelh@juju.net.nz>
+
+       * src/z80/mappings.i: Added z80asm support.
+
+       * src/z80/main.c: Added z80asm support on --asm=z80asm
+
+       * src/z80/gen.c: Fixed asm portability issues.
+
+       * src/asm.c (tvsprintf): Removed old code, added 'N' for function name.  For extern support.
+
+       * src/SDCCglue.c (printExterns): Added global/extern split.
+
+2001-12-17  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * support/regression/Makefile: added test for mcs51 model large
+
+       * support/regression/ports/mcs51-large/spec.mk: added test for mcs51 model large
+
+       * support/regression/ports/gbz80/spec.mk: added -mgbz80
+
+2001-12-05  Michael Hope  <michaelh@juju.net.nz>
+
+       * src/diff.1 (Index): Many, many optmisiations.  Dhrystone up to 201.
+
+1904-01-06  Michael Hope  <michaelh@juju.net.nz>
+
+       * src/z80/ralloc.c (packRegsForIYUse): Fixed the case where an operand is in direct space.
+
+       * src/z80/gen.c (makeFreePairId): Optimised IY load by using a spare pair.
+
+2001-12-02  Bernhard Held  <bernhard@bernhardheld.de>
+
+       * src/mcs51/gen.c (genFunction): avoid excess "inc sp"
+
+       * support/regression/tests/simplefloat.c: Port to mcs51.
+
+2001-11-25  Michael Hope  <michaelh@juju.net.nz>
+       * support/regression/tests/bug-485362.c: Added.
+
+       * support/regression/tests/simplefloat.c (testDivNearOne): Added.
+
+       * src/z80/gen.c (aopOp): Fixed case where left and result are in the same spill loc and they have different sizes.
+
+       * src/z80/peeph.def: Added rules for optimising two byte compares on the same thing, and to optimise two ptr assign.
+
+       * src/z80/gen.c (aopDump): Added a dump function.
+
+2001-11-25  Bernhard Held  <bernhard@bernhardheld.de>
+       * sim/ucsim/s51.src/glob.cc: DS390 SFRs and bits added.
+
+       * sim/ucsim/s51.src/port.cc: Port 4 and 5 added.
+
+       * sim/ucsim/s51.src/regs51.h: DS390 SFRs added.
+
+       * sim/ucsim/s51.src/uc390.cc: Some details improved, CKRDY works for tinibios.
+
+       * sim/ucsim/s51.src/uc390cl.h: Work in progress.
+
+       * sim/ucsim/sim.src/uccl.h: 6 ports for DS390.
+
+       * support/regression/fwk/lib/testfwk.c: Run with tinibios.
+
+       * support/regression/ports/mcs51/spec.mk: Fine tuninig.
+
+       * support/regression/ports/ds390/support.c: Use tinibios.
+
+       * support/regression/ports/ds390/spec.mk: Fine tuning, use tinibios.
+
+2001-11-23  Michael Hope  <michaelh@juju.net.nz>support/regression/tests/bug-460010.c
+
+       * src/z80/ralloc.c (packRegsForHLUse3): Changed to not pack into HL if anything is in direct space.
+       (packRegsForHLUse3): Added packing support for send, cast, and return value from a call.
+
+       * src/z80/peeph.def: Added rules for optimising pushes of part of a pair.
+
+       * src/z80/gen.c (emitCall): Changed the stack fixup to not use HL.
+
+2001-11-18  Michael Hope  <michaelh@juju.net.nz>
+
+       * src/z80/gen.c (genCmp): Fixed compare on unsigned.
+
+       * src/z80/ralloc.c (packRegsForHLUse3): Created and optimised.
+       (packRegsForIYUse): Created and optimised.
+
+2001-11-07  Michael Hope  <michaelh@juju.net.nz>
+
+       * support/regression/tests/float.c (testFloatAdd): Fixed up warning.
 2001-11-18  Bernhard Held  <bernhard@bernhardheld.de>
 
        * sdcc/support/regression/tests/bug-460010.c: fix seg violation on host