Tidied up the build, install, and regression tests.
[fw/sdcc] / ChangeLog
index fef60af27abef53bb8905e166ee48588093359e5..9197149e86d3828c0db0d442d4911439ff8741f3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,399 @@
+2004-01-26  Michael Hope  <michaelh@juju.net.nz>
+
+       * support/regression/tests/literalop.c (mulWrapper): Added a
+       wrapper to remove integer overflow warnings.
+
+       * support/regression/tests/float_trans.c: Made work on host.
+
+       * support/regression/ports/ucz80/spec.mk (UCZ80): Made detect the
+       location of sz80.
+
+       * support/regression/generate-cases.py (main): Changed from inline
+       to a main method.
+
+       * doc/Makefile (install): Changed to depth first to get rid of
+       missing directory install warning.
+
+       * as/Makefile (install-doc): Made work on Mac.
+
+2004-01-25 Bernhard Held <bernhard@bernhardheld.de>
+
+       * src/SDCCast.c: added an additional type flow in decorateType() of
+       opposite direction, see feature request #860006; it's enabled at runtime
+       by setting the environment variable SDCC_NEWTYPEFLOW
+       * src/SDCCast.h: changed prototype of decorateType()
+       * src/SDCCglue.c (emitRegularMap): updated call of decorateType()
+       * src/SDCCicode.c (geniCodeDivision) (geniCodeModulus): promotion from
+       'char' to 'int' can be omitted, if both operands are 'unsigned char';
+       see feature request #877103
+       * src/SDCCval.c: updated call of decorateType()
+       (valBitwise): fixed bug #882876
+       (valMinus): added promotion
+       (valLogicAndOr): result is unsigned
+       (cheapestVal) (constVal): literals from 0...255 are 'unsigned char' now
+       * src/SDCCsymt.c (computeType),
+       * src/mcs51/gen.c (genCmpGt) (genCmpLt): literal 'unsigned char'
+       must not cause an unsigned operation
+       * src/pic/glue (pic14emitRegularMap),
+       * src/pic16/glue.c (pic16emitRegularMap): updated call of decorateType()
+
+2004-01-23 Bernhard Held <bernhard@bernhardheld.de>
+
+       * src/pic/pcode.c (PCodeID): commented out left over debug code
+
+2004-01-20 Bernhard Held <bernhard@bernhardheld.de>
+
+       * support/valdiag/tests/overflow.c: added shift tests
+       * src/pic/device.c,
+       * src/pic/gen.c,
+       * src/pic/gen.h,
+       * src/pic/glue.c,
+       * src/pic/main.c,
+       * src/pic/pcode.c,
+       * src/pic/pcode.h,
+       * src/pic/pcodepeep.c,
+       * src/pic/pcoderegs.c,
+       * src/pic/ralloc.c,
+       * src/pic/ralloc.h: applied patch from Slade Rich;
+       added support for multiple code pages and multiple RAM banks on the
+       PIC 14 port. The ASM files now no longer simply assume all the
+       code / RAM are in the same page / bank. This means the linker can
+       safely allocate code/RAM of separate ASM files to different pages/banks.
+       * doc/sdccman.lyx: added Slade's tips
+       * src/mcs51/peeph.def: fixed bug #880768
+
+2004-01-20 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * src/hc08/ralloc.c (rematStr): fixed bug #879282
+       * src/SDCCast.c (decorateType): fixed bug #880197
+
+2004-01-20  Michael Hope  <michaelh@juju.net.nz>
+
+       * sim/ucsim/gui.src/serio.src/main.cc: Fixed unconditional use of
+       getopt.h.
+
+       * debugger/mcs51/cmd.c (getValBasic): Changed strtof to strtod as
+       strtof is not part of C89 and isn't included with Mac OS X.
+
+2004-01-20 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * src/hc08/gen.c (genPlusIncr, genUminus, genMinusDec, genCmp,
+       shiftL2Left2Result): fixed bug #879326
+       (genAnd, genOr, genXor): fixed bug when result was of type AOP_CRY
+       (genMultOneByte): fixed bug in signed vs unsigned multiplication
+       * sim/ucsim/hc08.src/inst.cc (inst_clr): added missing effective
+       address fetch for clr instruction
+       * device/lib/hc08/_mulint.c: created optimized assembly version
+       * src/SDCCdflow.c (computeDataFlow): fixed bug #878209
+
+2004-01-19 Bernhard Held <bernhard@bernhardheld.de>
+
+       * src/SDCCicode.c (geniCodeArray): applied patch from Stas Sergeev
+       proposed in FR #877103
+
+2004-01-18 Bernhard Held <bernhard@bernhardheld.de>
+
+       * src/SDCCval.c (cheapestVal): added missing checks
+       * src/SDCCicode.c (usualBinaryConversions): fixed condition
+       * src/SDCCicode.c (geniCodeAdd): fixed part of bug #877103
+
+2004-01-16 Klaus Flittner <klaus_flittner@gmx.de>
+
+       * src/ds390/gen.c (aopOp3): fixed the assignment of different dptrs to
+       equal operands
+
+2004-01-16 Vangelis Rokas <vrokas@otenet.gr>
+
+       * src/SDCCmain.c (linkEdit): variable $3 of the linker command is
+       loaded with the linker search paths (-L arguments) and the libraries
+       to be linked with the current source (-l arguments). Changes
+       currently will affect only the pic16 port.
+       * src/pic16/main.c (_pic16_finaliseOptions): add to the linker
+       include path the port specific paths and port specific libraries,
+       * gplink command now contains the $3 argument,
+       * src/pic16/device.h,
+       * src/pic16/device.c,: structure PIC_device is made public and
+       renamed to PIC16_device, the same for variable Pics which is renamed
+       to Pics16. Updated all references to them.
+       * src/pic16/glue.c (pic16glue): corrected bug with code
+       initialization which bypassed the variable initializations block.
+
+       * device/lib/pic16/Makefile.rules: removed --penable-stack from
+       COMPILE_FLAGS and added the --nostdinc option
+
+2004-01-15 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * device/include/mc68hc908jb8.h: Register defs for another member
+       of the hc08 family. Contributed by Bjorn Bringert - thanks!
+
+2004-01-14 Vangelis Rokas <vrokas@otenet.gr>
+
+       Documenting changes from previous commits.
+       * configure.in (version 1.56),
+       * configure: initially I've added AC_CONFIG_SUBDIRS(device/lib/pic16)
+       when generating output files to configure the pic16 library,
+       but now I've commented it out, since gputils aren't installed in the
+       SF compile farm, so library won't compile
+
+       * device/lib/Makefile.in (version 1.56): initially I've added in
+       target 'all' the prerequestive 'model-pic16' so it compiled the
+       pic16 library, but now I've commented it out for the same reasons
+       above,
+       * added targets 'model-pic16' and 'objects-pic16' to compile the
+       library
+       * added target 'port-specific-objects-pic16' to handle the
+       generated libraries and copy them into the build/ directory
+       * added target 'clean-intermediate-pic16' to clean intermediate
+       files into pic16 directory
+       * in target 'installdirs' added line to create directory pic16 in
+       the installation path
+
+       * device/include/Makefile.in (version 1.11): in target 'install'
+       added lines to copy all header files to installation path,
+       * in target 'installdirs' added line create directory for pic16
+       headers in the installation path
+
+2004-01-13 Klaus Flittner <klaus_flittner@gmx.de>
+
+       * src/ds390/gen.c (genCall): fixed a double use of acc and b after
+        a function call
+
+2004-01-13 Bernhard Held <bernhard@bernhardheld.de>
+
+       * configure,
+       * device/lib/configure.in,
+       * device/lib/configure: fixed for autoconf 2.57
+
+2004-01-13 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * src/z80/main.c (_parseOptions): fixed the portmode= command line
+       option so that it actually works. Made it specific to the z80, since
+       the gbz80 doesn't have these kinds of I/O ports.
+
+2004-01-13 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * device/include/z180.h,
+       * device/lib/_memcpy.c,
+       * device/lib/_memmove.c,
+       * device/lib/_mulint.c,
+       * device/lib/ser_ir.c,
+       * device/lib/ser_ir_cts_rts.c,
+       * device/lib/_strcmp.c,
+       * device/lib/_strtok.c: fixed pragmas to non-deprecated form
+       * src/z80/main.c (_process_pragma): add support for pragmas bank and
+       portmode; added deprecation warning for bank= and protmode= forms.
+       Also, guard against buffer overflow.
+       * src/z80/gen.c (aopGet): generate better code for sfr banked read
+
+2004-01-13 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * src/hc08/main.c (_hc08_genAssemblerPreamble): fixed bug #875487. Also
+       changed interrupt vector table generation to only emit declared vectors.
+       * device/include/Makefile.in: added missing backslash
+       * device/lib/pic16/Makefile.rules: add $(MODELFLAGS) to $(CFLAGS)
+
+2004-01-13 Vangelis Rokas <vrokas@otenet.gr>
+
+       Mainly changes to support compilation of the device libraries
+       * src/pic16/device.c: stack is allocated via symbol and not
+       via literal number. The symbol is placed in the corresponding
+       position of the data ram
+       * (pic16_dump_section): relocatable and absolute uninitialized
+       data are now emitted in sorted order to reduce section naming,
+       * src/pic16/ralloc.c (newReg): fixed bug with SFR's that
+       weren't marked as being in the access bank,
+
+2004-01-13 Vangelis Rokas <vrokas@otenet.gr>
+
+       Added portion of GNU PIC Library under the directory
+       device/include/pic16 and device/lib/pic16. These files
+       contain the declarations of SFRs for the PIC18Fxx2 devices.
+       The directory is initialized via configure from toplevel.
+       
+2004-01-12 Klaus Flittner <klaus_flittner@gmx.de>
+
+       * src/ds390/gen.c (operandsEqu): fixed a little typo, that prevented
+       the spilllocations to be compared correctly
+
+2004-01-12 Bernhard Held <bernhard@bernhardheld.de>
+
+       * src/SDCCast.c (decorateType): fixed bug introduced today
+
+2004-01-12  Borut Razem <borut.razem@siol.net>
+
+       * src/SDCC.lex, support/Util/SDCCerr.h, support/Util/SDCCerr.c,
+       doc/sdccman.lyx: upper case pragmas are deprecated
+
+2004-01-12 Bernhard Held <bernhard@bernhardheld.de>
+
+       * src/SDCCast.c (decorateType): replacing 'ul > 0' by  '!ul' results
+       in simpler and even better code
+
+2004-01-11 Bernhard Held <bernhard@bernhardheld.de>
+
+       * src/SDCCicode.c (operandOperation): fixed bug #874819
+       * src/SDCCast.c (decorateType): fixed
+       char foo (unsigned long ul) { return ul > 0; }
+
+2004-01-11 Frieder Ferlemann <Frieder.Ferlemann@web.de>
+
+       * doc/sdccman.lyx: Moved and added some sections, small changes
+       all over. Telling LaTeX to be less strict with word spacing
+       to better keep the right margin. Changed some notes about
+       maintainance of the ports in section 3.2.1 - is it OK like this?
+
+2004-01-11 Vangelis Rokas <vrokas@otenet.gr>
+
+       SDCC source changes:
+       * src/SDCCopt.c (cntToFcall, cnvToFloatCast, cnvFromFloatCast,
+       convilong): modified to inform the pic16 port that builtin functions
+       are external
+
+       PIC16 PORT specific changes:
+       * src/pic16/device.c pic16_dump_equates() added,
+       processor registers declared internally by the port are emitted in
+       the translation as equates,
+       * src/pic16/gen.c: inline code is passed unprocessed to the
+       translation,
+       * (pic16_popGetLit2): fnuction modified to take second operand as
+       pCodeOp pointer and not as literal,
+       * (popRegFromIdx): prefixed with pic16_,
+       * (pic16_popCombine2): modified to receive already allocated pCode
+       operands,
+       * (pic16_pushpCodeOpReg, pic16_poppCodeOpReg): added
+       * (genFunction): initializes local stack frame and pushes on stack
+       all the registers used by this function,
+       * (genEndFunction): restores all registers from stack and restores
+       stack frame,
+       * src/pic16/glue.c (pic16emitRegularMap): various changes and
+       improvements,
+       * (pic16glue): changed the program startup sequence,
+       * added new dbName code 'A' for functions placed in absolute section
+       * src/pic16/main.c: added function attribute _naked,
+       * added pragma 'code' to place a fnuction at an absolute address,
+       * added command line arguments --debug-ralloc and --pcode-verbose,
+       * (_pic16_finiliseOptions): options.all_callee_saves is set by default
+       * src/pic16/pcode.c (pic16_pBlockConvert2Absolute) added,
+       * (pic16_newpCodeOpLit2): modified to take the second operand as
+       pCodeOp pointer,
+       * (pic16_printpBlock): modified to emit each function in a separate
+       section,
+       * (pic16_get_op): modified to use the gpasm modifiers LOW,HIGH and
+       UPPER for immediate operands,
+       * src/pic16/pcodepeeph.c: added peephole support for the LFSR
+       instruction,
+       * src/pic16/peeph.def: all peepholes with movff are commented out,
+       because there is a problem in the pcode peep optimizer,
+       * src/pic16/ralloc.c: the register allocator can now reuse local
+       function symbols for another function. This saves register usage.
+       * src/pic16/ralloc.h: added flag isLocal in structure regs,
+
+       Added file src/pic16/NOTES with information about program writing on
+       the current port version.
+
+2004-01-11 Frieder Ferlemann <Frieder.Ferlemann@web.de>
+
+       * src/mcs51/peephole.def: added peepholes 177.c,d (redundant moves)
+       and peephole 252 (array access)
+
+2004-01-09  Borut Razem <borut.razem@siol.net>
+
+       * src/SDCCmain.c : fixed #872250: -l command line defined library
+         files are scanned before standard library files
+
+2004-01-10 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * src/SDCCast.c (decorateType): fixed bug #874046
+
+2004-01-09  Borut Razem <borut.razem@siol.net>
+
+       * support/scripts/sdcc.nsi: remove previous installation
+
+2004-01-09 Frieder Ferlemann <Frieder.Ferlemann@web.de>
+
+       * src/SDCCglue.c (createInterruptVect): don't append 7(5) padding
+       bytes for last interrupt vector (mcs51)
+       * sdcc.spec: fixed typo
+
+2004-01-09 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * src/mcs51/gen.c (genFunction, genEndFunction, genReceive, getTempRegs,
+       gen51Code): more efficient parameter receive for --model-large
+       ("bug" #845294)
+
+2004-01-09 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * src/ds390/main.c,
+       * src/z80/main.c: added missed needLinkerScript flags (more than
+       one port structure defined in these file)
+       * src/ds390/gen.c (aopForSym, aopOp, operandsEqu, aopOp3): fixed
+       bug #795325
+
+2004-01-08 Vangelis Rokas <vrokas@otenet.gr>
+
+       * src/SDCCmain.c: removed various references to DEFAULT_PORT
+       * src/port.h: added flag needLinkerScript in port->linker
+       structure to inform whether to create a .lnk file or not,
+       * src/avr/main.c,
+       * src/ds390/main.c,
+       * src/hc08/main.c,
+       * src/mcs51/main.c,
+       * src/pic/main.c,
+       * src/pic16/main.c,
+       * src/xa51/main.c,
+       * src/z80/main.c: changed appropriately to configure
+       needLinkerScript flag
+       * src/pic/gen.c,
+       * src/pic16/gen.c (genAddrOf): fixed bug #863624
+       * src/pic/glue.c: added variable udata_section_name to
+       override default uninitialized data segment definition for
+       devices only with SHAREBANK memory (reported from Erik Epetrich)
+       * (pic14emitOverlay): modified to emit a commented overlay segment
+       directive when no overlay data exist
+       * (picglue): modified to emit uninitialized data segment
+       according to udata_section_name
+       * src/pic/main.c (_pic14_parseOptions): added command line
+       options --udata-section-name=[name] to override default
+       udata definition name
+       * modified _linkCmd and _asmCmd to include compiler passed
+       arguments via -W option
+       * src/pic16/main.c: added $l in _asmCmd, changed extension for
+       object file from '.rel' to '.o' in port->linker structure,
+       changed size of fptr from 2 to 3 in port structure
+
+2004-01-07  Borut Razem <borut.razem@siol.net>
+
+       * support/scripts/sdcc.nsi: update PATH
+       * support/scripts/sdcc.ico: craeted
+
+2004-01-07 Bernhard Held <bernhard@bernhardheld.de>
+
+       * device/include/Makefile.in: fix install
+       * doc/Makefile: fix install
+
+2004-01-07 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+       * src/SDCCsymt.c (processFuncArgs): fixed superflous allocation noted
+       in bug #860505
+       * src/SDCCmem.c (printAllocInfoSeg, printAllocInfo): minor changes to
+       how the function variable allocation summary is displayed; also
+       include information about variables allocated to the overlay
+       segment
+
+2004-01-06  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
+
+       * as/mcs51/lkmain.c: Help about -Y option
+       * as/mcs51/lkarea.c: Fixed gcc warnings
+
+2004-01-06 Bernhard Held <bernhard@bernhardheld.de>
+
+       * src/SDCCval.c (valShift): changed from 16 to 32 bit shift count,
+       fixed warning
+       * support/valdiag/tests/overflow.c: added
+       * src/SDCCast.c (decorateType),
+       * src/SDCCicode.c (geniCodeLeftShift): added promotion to int for
+       LEFT_OP (left shift)
+
 2004-01-06  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
 
        * as/mcs51/lkmain.c: stack must be after data when option -Y is not used
        * src/common.h: added ifndef/define/endif macros
        around the header file.
        Bug reported from Jesus Calvino-Fraga
-       
+
 2004-01-06 Bernhard Held <bernhard@bernhardheld.de>
 
        * sdcc.spec: updated