applied patch fixing GCC 4.1 build submitted by the Debian SDCC maintainer Aurelien...
[fw/sdcc] / ChangeLog
index 6b86ebf096086f764416a3e53b5ece75e721c90b..8bb494c7b7fc7cf65332f22cfed1625886f363bc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,767 @@
+2006-03-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * sim/ucsim/cmd.src/newcmdcl.h: applied patch fixing GCC 4.1 build
+       submitted by the Debian SDCC maintainer Aurelien Jarno: 
+       "Credits goes to Martin Michlmayr, who rebuilt the whole Debian
+       archive with gcc 4.1 on mips and wrote the patch"
+
+2006-03-16 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/genarith.c (genAddLit): simplified and fixed case where
+         the left operand is shorter than the result (c* = lit-c* + int),
+         fixes bug #1450796
+       * src/pic16/gen.c (genRightShift): check IS_SYMOP before accessing
+         OP_SYMBOL
+
+2006-03-14 Vangelis Rokas <vrokas AT users.sourceforge.net>
+
+       * src/.version: increased version number to 2.5.5
+       * src/SDCCmain.c (linkEdit): do not test for PIC16 target since, PIC16
+       linking is done manually in pic16 port's _linkEdit,
+       * src/SDCCsymt.c (compStructSize): for target PIC16 and shell variable
+       PIC16_PACKED_BITFIELDS, compact bitfield structures as much as possible,
+       * src/pic16/gen.c (aopForSym): when direct register name is WREG then
+       allocate asmop as AOP_ACC,
+       (aopForRemat): added parameter 'bool result' in function declaration,
+       (pic16_aopGet): return AOP_ACC when accessing WREG,
+       (pic16_popGetTempReg): minor modification,
+       (pic16_popRegFromIdx): first try with 'pic16_regWithIdx' then with
+       'pic16_allocWithIdx',
+       (genPcall): removed ftype, usage of OP_SYM_TYPE asserted error when
+       calling function in absolute addresses,
+       (genAssign): take into account AOP_ACC asmop,
+       * src/pic16/pcode.c (pic16_newpCodeOpReg): minor modifications,
+       * src/pic16/pcoderegs.c: some debug functions and lines added,
+       * src/pic16/ralloc.c (decodeRegType): added but commented out,
+       * (pic16_typeRegWithIdx): search 'pic16_dynInternalRegs' for given
+       register too,
+       * (pic16_findFreeReg, pic16_findFreeRegNext): allocate new register via
+       call to allocReg, not by manually allocating a new one,
+       (pic16_assignRegisters): now before going through the register
+       allocating functions mark all registers as free. This eliminates some
+       side effects resulting from peephole parser done earlier in the backbone
+
+2006-03-13 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCicode.c (geniCodeLogic),
+       * src/SDCCast.c (decorateType): applied patch by Bernhard for rfe 1422617
+
+2006-03-10 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/mcs51/gen.c (sameReg): new, checks if two aop regs are the same,
+         (genSend): bugfix, do not allocate and free twice,
+         (shiftRLong): handle partially overlapping aops
+       * support/regression/tests/bitopcse.c: fixed warning redefined idata
+
+2006-03-08 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/fwk/include/testfwk.h: added defines for xdata, idata
+         for pic16
+
+2006-03-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * support/regression/tests/bug1409955.c: new, added
+       * src/mcs51/gen.h: changed asmop.freed:1 to asmop.allocated for tracking
+       * src/mcs51/gen.c (newAsmop): set asmop.allocated to 1,
+         (aopForSym, aopOp): increment asmop.allocated if reused,
+         (freeAsmop): decrement asmop.allocated and check for zero instead of
+         using asmop.freed,
+         (freeForBranchAsmop): use asmop.allocated instead of asmop.freed,
+         (genNot, genCpl, genUminus, genMinus, genMult, genDiv, genMod, genCmpGt,
+          genCmpLt, genAndOp, genOrOp, genAnd, genOr, genXor, genRRC, genRLC,
+          genGetHbit, genGetAbit, genGetByte, genGetWord, genSwap,
+          genLeftShiftLiteral, genLeftShift, genRightShiftLiteral,
+          genSignedRightShift, genRightShift, genDataPointerGet,
+          genPagedPointerGet, genFarPointerGet, genCodePointerGet,
+          genGenPointerGet, genDataPointerSet, genAssign, genCast): free asmop's
+           in reverse order from allocation,
+         (genPlus, genCmpEq): free asmop's in reverse order from allocation and
+           added swappedLR to keep track
+       * support/regression/fwk/include/testfwk.h: added defines for xdata, idata,
+         pdata & code for GCC, z80, gbz80 & hc08
+       * support/regression/tests/zeropad.c: moved defines to testfwk.h
+
+2006-03-08 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/main.c (_hasNativeMulFor): fixed bug #1444425
+
+2006-03-07 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/mcs51/c8051f410.h: new SiLabs mcu
+       * src/ds390/peeph.def: disabled 186.d and 227.a as fix for #1434401
+       * support/regression/tests/array.c: added parenthesis, made arrays unsigned
+
+2006-03-06 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/ports/pic16/spec.mk: link with libm18f.lib,
+         made the linker quiet
+
+2006-03-06 Vangelis Rokas <vrokas AT users.sourceforge.net>
+
+       * src/pic16/gen.c (genPcall): fixed bug #1443644
+       * src/pic16/device.h (struct pic16_options_t): added 'int CATregs' flag
+       which dumps before the function entry point a data byte which represents
+       the number of the local variables used by the specified function, added
+       'xinst' for initial support for Extended Instruction Support,
+       * src/pic16/gen.c (aopForSym, pic16_aopGet): beautifications,
+       (pic16_testStackOverflow): do not prefix GSTACK_TEST_NAME with
+       port->fun_prefix anymore (may change later),
+       (genFunction, genEndFunction): do not store/restore local registers for
+       _main (this should take care the --main-return command line option in
+       the future),
+       (genOr): removed some legacy pic-port instructions,
+       * src/pic16/genarith.c (genAddLit): re-enabled old code because
+       performing operations with SFR's causes data to be written more than
+       once to each SFR. Perhaps SFRs should be handled in special cases...
+       * src/pic16/glue.c: macros BIG_ENDIAN and BYTE_IN_LONG are moved to
+       pcode.h
+       * src/pic16/main.c (_process_pragma): stack bound checking did not take
+       into account for stack starting position,
+       (struct OPTIONS pic16_optionsTable): added command line argument
+       --extended or -y for Extended Instruction Support,
+       * src/pic16/ralloc.c (pic16_decodeOp): added case for FUNCTION,
+       (deassignLRs): *** perhaps the most important change, old 'for' code
+       (commented out for reference), didn't account for some registers which
+       were left marked 'not free' after a pointer operation. The change
+       reduces register usage a lot in some cases
+
+2006-03-04 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/ports/hc08/spec.mk: remove *.asm in traget
+         _clean
+       * support/regression/tests/bug-524697.c: decreased array size for
+         mcs51 to fit into the internal RAM
+       * support/regression/Makefile.in: a little bit more verbose
+
+2006-03-03 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/fwk/lib/testfwk.c,
+         support/regression/fwk/include/testfwk.h: introduced function
+         _prints(), nonrecursive _printn(), call _initEmu() from main()
+       * support/regression/ports/gbz80/support.asm,
+         support/regression/ports/ucz80/support.asm,
+         support/regression/ports/z80/support.asm,
+         support/regression/ports/ds390/support.c,
+         support/regression/ports/hc08/support.c,
+         support/regression/ports/host/support.c,
+         support/regression/ports/mcs51/support.c,
+         support/regression/ports/xa51/support.c: added empty _initEmu()
+         function
+       * support/regression/ports/pic16/gpsim.cmd,
+         support/regression/ports/pic16/spec.mk,
+         support/regression/ports/pic16/support.c,
+         support/regression/Makefile.in: added pic16 regression test
+
+2006-03-01 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c (genPcall,pic16_derefPtr,genGenPointerGet,
+         genConstPointerGet): use safe way of generating MOVFF to cover
+           literals as well as registers, fixes bug #1440527
+       * src/pic16/glue.c (pic16_printIvalBitFields): prevent NULL pointer
+           dereference
+         (pic16_printIvalUnion,pic16_isUnion): NEW, handle initialized unions
+           more correctly, fixes bug #1232186
+         (pic16_printIval): use pic16_printIvalUnion() for initialized unions
+       * src/pic16/main.c (_pic16_linkEdit): reorder linker arguments to make
+           gplink guess the correct processor in more cases, applied patch
+           from Till Riedel attached to and fixing bug #1436552
+
+2006-02-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * support/regression/tests/array.c: added, contains check for #1434401
+       * src/mcs51/peeph.def: disabled 186.d as temporary fix for #1434401
+
+2006-02-16 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/mcs51/at89s8253.h: new, thanks to Krzysztof Polomka
+       * device/include/mcs51/at89S8252.h: fixed, thanks to Krzysztof Polomka
+       * device/include/mcs51/c8051f326.h,
+       * device/include/mcs51/c8051f340.h: new SiLabs mcu's
+       * device/include/mcs51/c8051f000.h,
+       * device/include/mcs51/c8051f018.h,
+       * device/include/mcs51/c8051f020.h: used () with __at, renamed IDLE,STOP to
+         PCON_IDLE,PCON_STOP and added sfr16 definitions
+
+2006-02-14 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/mcs51/gen.c (genPlus, genMinus, genMult, genGetAbit, genGetByte,
+         genGetWord): fixed bug 1409955
+
+2006-02-14 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/hc08/mc68hc908gp32.h,
+       * device/include/hc08/mc68hc908jb8.h: removed AWUL, added PTA6 & PTA7
+
+2006-02-13 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCast.c (constExprValue): return NULL if not a value
+       * src/SDCCglue.c (printIvalArray): fixed bug 1225568
+       * src/hc08/gen.c(genUnpackBits, genUnpackBitsImmed): fixed bug 1019480
+       * support/regression/tests/bitfields.c: enabled signed bitfield for all
+
+2006-02-13 Borut Razem <borut.razem AT siol.net>
+
+       * src/regression/ptrarg.c: added, fails due to bug #1430967
+       * src/regression/Makefile: ptrarg.c added, ...
+
+2006-02-12 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/z80/gen.c (genUnpackBits): fixed bug 1019480
+       * support/regression/tests/bitfields.c: enabled signed bitfield for z80
+
+2006-02-11 Borut Razem <borut.razem AT siol.net>
+
+       * src/SDCCmain.c: Added "sdcc: Calling linker..." if --verbose,
+         print "Processor: xxx" message to stdout only if --verbose
+
+2006-02-11 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCglue.c (printIvalStruct): fixed bug 1426356 union initializer
+       * support/regression/tests/bug1426356.c: added
+       * support/regression/tests/bitfields.c: removed 2 tests
+
+2006-02-10 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/include/mcs51/at89c51snd1c.h: updated comments, see patch 1428901
+       * device/include/mcs51/c8051f330.h,
+       * device/include/mcs51/c8051f350.h: used () with __at, renamed IDLE,STOP to
+         PCON_IDLE,PCON_STOP and added sfr16 definitions
+       * device/lib/_divsint.c,
+       * device/lib/_divuint.c,
+       * device/lib/_divulong.c,
+       * device/lib/_divulong.c: renamed a,b to x,y to avoid confusion, fixed
+         register bank bug for small stackauto
+
+2006-02-09 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * support/regression/fwk/lib/timeout.c: include <stdlib.h> for exit()
+
+2006-02-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * support/regression/ports/mcs51-xstack-auto/spec.mk: forgot -I(...)/mcs51
+       * all.dsp: corrected several bin paths
+       * device/include/mcs51/c8051f120.h,
+       * device/include/mcs51/c8051f300.h,
+       * device/include/mcs51/c8051f310.h: used () with __at and renamed IDLE,STOP
+         to PCON_IDLE,PCON_STOP
+       * device/include/mcs51/c8051f320.h: see above, also added sfr16 definitions
+       * device/lib/printf_large.c (output_float): fixed bug 1388703
+       * support/regression/tests/bug1057979.c: added test for bug 1388703
+
+2006-02-08 Raphael Neider <rneider AT web.de>
+
+       * src/pic/pcode.c (pciTRIS): fixed typo,
+         (BuildFlow,LinkFlow_pCode): added (disabled) debug output,
+         (LinkFlow): fixed handling of flows that end in a call,
+         (ReuseReg): perform safety check earlier
+       * src/pic/pcoderegs.c (pCodeRegMapLiveRangesInFlow): fixed
+           to work with flows at the beginning of a pBlock,
+           fixes #1426557 (Symbol not previously defined),
+         (pic14_ReMapLiveRanges): NEW, destroy and rebuild register
+           usage information
+         (RemoveUnusedRegisters): update register usage info
+       * src/pic/ralloc.c (newReg): prevent duplicate registers from being
+           created, reuse existing ones instead
+       * src/pic/gen.c (genPcall): fixed #1424719
+
+2006-02-07 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * link/z80/lkmain.c,
+       * link/z80/lklex.c,
+       * link/z80/lkdata.c,
+       * link/z80/aslink.h: fixed build on current cygwin:
+       replaced getline() by lk_getline()
+
+2006-02-01 Borut Razem <borut.razem AT siol.net>
+
+       * src/regression/add.c, src/regression/add2.c, src/regression/add3.c,
+         src/regression/add4.c, src/regression/and1.c, src/regression/and2.c,
+         src/regression/arrays.c, src/regression/b.c, src/regression/bank1.c,
+         src/regression/bool1.c, src/regression/bool2.c,
+         src/regression/bool3.c, src/regression/call1.c,
+         src/regression/compare.c, src/regression/compare10.c,
+         src/regression/compare2.c, src/regression/compare3.c,
+         src/regression/compare4.c, src/regression/compare5.c,
+         src/regression/compare6.c, src/regression/compare7.c,
+         src/regression/compare8.c, src/regression/compare9.c,
+         src/regression/configword.c, src/regression/for.c,
+         src/regression/inline.c, src/regression/mult1.c,
+         src/regression/nestfor.c, src/regression/or1.c,
+         src/regression/pointer1.c, src/regression/ptrfunc.c,
+         src/regression/rotate1.c, src/regression/rotate2.c,
+         src/regression/rotate3.c, src/regression/rotate4.c,
+         src/regression/rotate5.c, src/regression/rotate6.c,
+         src/regression/rotate7.c, src/regression/string1.c,
+         src/regression/struct1.c, src/regression/sub.c,
+         src/regression/sub2.c, src/regression/switch1.c,
+         src/regression/while.c, src/regression/xor.c,
+         src/regression/create_stc, src/regression/simulate,
+         src/regression/rt.sh, src/regression/Makefile: reenabled Scott's PIC14
+         regression tests
+       * src/regression/gpsim_assert.h: added
+
+2006-01-28 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/ds390/gen.c (unsaveRegisters): fixed literal function pointer
+       ((void (code *) (void)) 0) ();
+       * as/hc08/aslex.c,
+       * as/hc08/aslink.h,
+       * as/hc08/asm.h,
+       * as/hc08/asmain.c,
+       * as/hc08/lkdata.c,
+       * as/hc08/lklex.c,
+       * as/hc08/lkmain.c,
+       * as/mcs51/aslex.c,
+       * as/mcs51/aslink.h,
+       * as/mcs51/asm.h,
+       * as/mcs51/asmain.c,
+       * as/mcs51/lkdata.c,
+       * as/mcs51/lklex.c,
+       * as/mcs51/lkmain.c,
+       * as/z80/aslex.c,
+       * as/z80/asm.h,
+       * as/z80/asmain.c: fixed build on current cygwin:
+       replaced getline() by as_getline()
+
+2006-01-27 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCC.y: fixed bug #716242, exchanged pointer and function
+       declarator in the symbol chain
+       * src/SDCCsymt.h,
+       * src/SDCCsymt.c (processFuncPtrArgs): added, removes "(void)"
+       parameter list for function pointers
+       * src/SDCCast.c (decorateType): added call of processFuncPtrArgs()
+       * support/regression/tests/bug-716242.c: added
+
+2006-01-20 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCicode.c (geniCodeAdd, geniCodeArray): use char for array
+       offset if possible
+       * src/SDCCast.c (getLeftResultType): 255 fits in char, not 256
+
+2006-01-18 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCast.c (backPatchLabels): fixed bug #1408066: made it
+       inifinitely recurseable, added static
+       * support/regression/tests/bug-1408066.c: added
+
+2006-01-17 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCicode.h,
+       * src/SDCCicode.c (newiTempPreheaderLabel, newiTempLoopHeaderLabel):
+       renamed, added possibility to create "postLoopLbl"-labels
+       * src/SDCCBBlock.c (iCodeBreakDown): renamed newiTempPreheaderLabel to
+       newiTempLoopHeaderLabel
+       * src/SDCCloop.c (newInduction, newRegion, backEdges, insertIntoLoop,
+       isNotInBlocks, addToExitsMarkDepth, createLoop, dominatedBy,
+       addDefInExprs, assignmentsToSym, isOperandInvariant, pointerAssigned,
+       hasNonPtrUse, loopInvariants, addressTaken, findInduction,
+       findDefInRegion, mergeRegions, ifMerged, mergeInnerLoops): made static,
+       (pinduction, pregion, hasIncomingDefs, findLoopEndSeq): disabled,
+       (basicInduction): fixed bug #136564, made static,
+       (loopInduction): changed parameter of basicInduction, made static,
+       (addPostLoopBlock): added
+       * src/SDCCloop.h: removed backEdges, pregion, pinduction,
+       loopOptimizations, addressTaken, findDefInRegion, hasIncomingDefs,
+       findLoopEndSeq
+       * support/regression/tests/bug-136564.c: added
+       * support/regression/ports/mcs51-xstack-auto/spec.mk: added
+       --std-sdcc99 to LIBSDCCFLAGS
+
+2006-01-16 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCicode.c (geniCodeIfx): fix bug 1406131: always false
+       while loop
+       * support/regression/tests/bug-1406131.c: added
+
+2005-12-31 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCast.c (decorateType): fix promotion of unary minus
+       * src/SDCCsymt.c (computeType): beautified
+       * src/SDCCval.c (cheapestVal): beautified, old non-Ansi version removed,
+       (valUnaryPM, valComplement): fix sign and promotion,
+       (valNot): ANSI: result type is int (SDCC: unsigned char)
+       * support/regression/tests/uminus.c: speedup by removing superflous
+       test case 'int'
+       * support/regression/tests/onebyte.c: added promotion and signedness
+       tests for unary minus
+       * support/regressions/tests/bug-477927.c: disable warning about
+       uninitialized variables
+       * support/regression/tests/not.c: added
+
+2005-12-28 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * device/lib/Makefile.in: added --std-sdcc99 to CFLAGS
+       * src/mcs51/gen.c (gen51Code): show final register usage after
+       fillGaps in asm with --i-code-in-asm
+       * src/SDCClrange.c (sequenceiCode, setLiveFrom, setLiveTo,
+       markLiveRanges, markAlive, findNextUseSym, findNextUse, unvisitBlocks,
+       incUsed, rliveClear, adjustIChain): made static,
+       (setFromRange): excluded because it's unused,
+       (findPrevUseSym, markWholeLoop): added,
+       (findPrevUse): rewritten; fixes bug 895992; now a complete search
+       through all branches of predecessors enables sdcc to emit the warning
+       W_LOCAL_NOINIT, marking of outermost loop was incomplete,
+       (rlivePoint): made static, added parameter emitWarnings which is only
+       true during the first run out of two,
+       (findRecursiveSucc, findRecursivePred): removed,
+       (computeLiveRanges): made static, added parameter emitWarnings,
+       (dumpIcRlive): added for debugging only
+       * src/SDCClrange.h: added boolean parameter to computeLiveRanges(),
+       removed prototype of setFromRange()
+       * src/SDCCopt.c (eBBlockFromiCode): added new parameter emitWarnings
+       in call of computeLiveRanges()
+       * support/regression/tests/bug-895992.c: added
+       * support/regression/tests/bug-971834.c: added
+       * support/valdiag/tests/bug-895992.c: added
+       * support/valdiag/tests/bug-971834.c: added
+
+2005-12-18 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/gen.c: added IS_DIRECT macro for "direct" operands,
+         (genUnpackBits): improved code for direct operands,
+         (genPackBits): improved code for literal assignment to bitfields
+           and for direct destination operands (no FSR indirection),
+           prevented redundant AND, fixes #1362800,
+         (AccLsh): added parameter to disable masking of the result
+       * src/pic16/pcode.c (pic16_safepCodeUnlink): fixed to work with
+         skip instructions with side-effects (like incfsz),
+         (pic16_pCodeIsAlive): suppress verbose output unless pcode_verbose,
+       * src/pic16/pcoderegs.c (RemoveRegsFromSet): removed annoying warning
+       * device/lib/pic16/Makefile.common.in: added --asm=@GPASM@ to CC,
+         fixes #1375263
+
+2005-12-11 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCicode.c (geniCodeAssign): fixed bug 11369874, don't use
+       volatile variables as spill location
+
+2005-12-10 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCcse.c (findCheaperOp): fixed bug 1376320, copy signedness to
+       replacing literals
+       * support/regression/tests/bug-1376320.c: added
+
+2005-12-08 Raphael Neider <rneider AT web.de>
+
+       * src/pic/device.c: renamed is_shared to pic14_is_shared
+       * src/pic/gen.c (genIfx): re-enabled handling of sbits
+       * src/pic/glue.c (emitSymbolToFile): added workaround for sbits,
+         (is_valid_identifier): added for above workaround
+
+2005-12-07 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/Makefile.in: fixed to enable port-specific-objects
+       * device/lib/ds390/i2c390.c (BitOutI2C): optimized by making bout unsigned
+         char, thanks Hubert Sack
+       * doc/sdccman.lyx: documented --xstack-loc,
+         elaborated a bit more on interrupts and pitfalls,
+         removed "setjmp/longjmp unsupported",
+         documented some unsupported C99 features
+       * src/SDCCmain.c (linkEdit): adapted default lib path for --stack-auto
+       * src/SDCCpeeph.c (readRules): inserted patch 1367130 for finding missing
+         if, thanks Hubert Sack
+       * src/mcs51/gen.c (genEndFunction): enabled "pop psw" for regbank 0 isr
+       * support/regression/Makefile.in: test-mcs51-stack-auto no longer needs to
+         make make_library
+       * support/regression/get_ticks.py: new, get cpu cycles and code size, so
+         regression tests can report resource usage (rfe 700441)
+       * support/regression/collate-results.py: report resource usage
+       * support/regression/ports/ds390/spec.mk,
+       * support/regression/ports/hc08/spec.mk,
+       * support/regression/ports/mcs51/spec.mk,
+       * support/regression/ports/ucz80/spec.mk: run sim output through get_ticks
+       * support/regression/ports/ds390/uCsim.cmd,
+       * support/regression/ports/hc08/uCsim.cmd,
+       * support/regression/ports/mcs51/uCsim.cmd,
+       * support/regression/ports/ucz80/uCsim.cmd: inserted "state" to report time
+       * support/regression/ports/mcs51-stack-auto/spec.mk: no need to build the
+         library, use the default one
+       * support/regression/ports/mcs51-xstack-auto/spec.mk: inserted rules for
+         building the library
+
+2005-12-06 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * config.dsp: added dependency on .version and configure_vc.awk
+       * device/include/setjmp.h: updated for --stack-auto and --xstack
+       * device/include/mcs51/at89c51snd1c.h: corrected line endings
+       * device/include/mcs51/XC866.h: added, thanks Llewellyn van Zyl
+       * device/lib/_setjmp.c: updated for --stack-auto and --xstack
+       * device/lib/libsdcc.lib: added _setjmp
+       * src/SDCCast.c (createIvalCharPtr): fixed warnings,
+         (decorateType): fixed bug 1372851,
+         (optimizeGetHbit): fixed warning
+       * src/SDCCglue.c (printIvalChar, printIvalArray): adapted for flexible
+         array initialisation
+       * support/regression/tests/bug1057979.c: added test for bug 1358192
+       * support/regression/tests/setjmp.c: added, test for setjmp/longjmp
+
+2005-12-03 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/sdcc.nsi: added /SOLID option to "SetCompressor lzma"
+         command since the NSIS was upgraded to version 2.11 on CF x86-linux2
+
+2005-11-29 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCast.c (createIvalStruct, createIvalArray, createIvalPtr,
+       createIval): implement symbol independant "flexible array member",
+       (createIvalCharPtr): implemented flexible array initialisation with a
+       string
+       * src/SDCCsymt.c (copyStruct): removed,
+       (getSize): fixed misleading comment,
+       (getAllocSize): removed, the additional allocation size is now in
+       sym->flexArrayLength,
+       (checkStructFlexArray): new, syntax checks for flexible array members,
+       (compStructSize): added syntax checks for "flexible array members"
+       (copyStruct): removed,
+       (copyLinkChain): removed inefficient fix for bug 770487
+       * src/SDCCglue.c (emitRegularMap): getAllocSize has been removed
+       * src/SDCCsymt.h: added structdef.b_flexArrayMember and
+       symbol->flexArrayLength
+       * src/SDCCerr.c,
+       * src/SDCCerr.h: added W_INVALID_FLEXARRAY, W_C89_NO_FLEXARRAY,
+       E_FLEXARRAY_NOTATEND and E_FLEXARRAY_INEMPTYSTRCT
+       * support/regression/tests/structflexarray.c: added
+       * support/valdiag/tests/structflexiblearray.c: added
+
+2005-11-29 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCast.c (decorateType): fixed bug 1368489
+       * support/Util/SDCCerr.c,
+       * support/Util/SDCCerr.h: added warning W_CMP_SU_CHAR
+
+2005-11-28 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * device/include/mcs51/at89c51snd1c.h: added file submitted by
+         Weston T. Schmidt <schmidtw AT users.sourceforge.net>, patch #1368001
+
+2005-11-27 Borut Razem <borut.razem AT siol.net>
+
+       * support/cpp2/cppinit.c, support/cpp2/cpplib.h, support/cpp2/mkdeps.c,
+         support/cpp2/mkdeps.h: added command line option
+         -obj-ext=<extension> to SDCPP to define object file externion, used
+         for generation of make dependencies (-M)
+       * src/SDCCmain.c: pass -obj-ext=<extension> to SDCPP
+
+2005-11-26 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/sdcc.nsi: added small-stack-auto libraries,
+         added missing device/lib/mcs51/crt*.asm, pic and pic16 sources,
+         added pic and pic16 libraries
+
+2005-11-26 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
+
+       * device/include/float.h: Corrected typo in prototype of __fsgt
+
+2005-11-25 Borut Razem <borut.razem AT siol.net>
+
+       * sdcc/device/lib/Makefile.in, sdcc/device/lib/incl.mk:
+         added creation of model-mcs51-stack-auto libraries
+
+2005-11-24 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCsymt.c (copyLinkChain): fixed bug 770487, copy structdef
+       and fields-list too
+       * src/SDCCast.c (createIvalArray): removed obsolete comment
+
+2005-11-24 Borut Razem <borut.razem AT siol.net>
+
+       * sdcc/device/lib/Makefile.in: remove all unnecessary files, 2nd try...,
+         added missing device/lib/mcs51/crt*.asm sources
+
+2005-11-23 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCast.c (createIvalCharPtr): fixed bug 1348271
+
+2005-11-22 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/_fs2schar.c,
+       * device/lib/_fs2sint.c,
+       * device/lib/_fs2slong.c: optimized inline asm
+
+2005-11-21 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
+
+       * device/lib/_fs2slong.c, device/lib/_fs2sint.c, device/lib/_fs2char.c:
+         Better handling of floats between -1.0 and 0.0.
+
+2005-11-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * src/mcs51/peeph.def: added missing "if"s as noted by Hubert Sack.
+         (the missing "if"s prohibited removal of redundant labels)
+
+2005-11-19 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
+
+       * device/lib/_fs2slong.c, device/lib/_fs2sint.c, device/lib/_fs2char.c:
+         Properly convert floats between -1.0 and 0.0 to long, int, and char
+         types (max integer value of negative floats tends to zero).
+       * device/lib/modff.c, device/lib/ceilf.c, device/lib/floorf.c:
+         Removed changes made so to work properly with floats between
+         -1.0 and 0.0, as the problem is fixed in _fs2slong.c, _fs2sint.c,
+         and _fs2char.c
+
+2005-11-18 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCcse.c (ReplaceOpWithCheaperOp): minor fix for debugging only
+       * src/mcs51/gen.c (genUnpackBits): better code and a fix,
+       (genCast) cosmetic change
+       * src/ds390/gen.c (genUnpackBits, ): ported from mcs51
+       * src/ds390/ralloc.c (packRegsForAssign): ported fix for bitfields
+       from mcs51
+       * support/regression/tests/bitfields (testSignedBitfields): added
+
+2005-11-18 Borut Razem <borut.razem AT siol.net>
+
+       * sdcc/device/lib/Makefile.in: remove all unnecessary files
+       * device/lib/pic/Makefile.rules, device/lib/pic16/Makefile.subdir:
+         introduced SILENT option to make building of pic16 libraries less
+
+2005-11-18 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
+
+       * device/lib/modff.c, device/lib/ceilf.c, device/lib/floorf.c:
+         Now they work properly with floats between -1.0 and 0.0
+       * device/lib/printf_large.c: Removed temporary patch for bug 1358192
+
+2005-11-18 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCicode.c (printOperand): added missing else
+
+2005-11-18 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCsymt.c (computeType): fixed bug 1358192: added missing else,
+       reformatted for better readability
+       * src/mcs51/gen.c (genUnpackBits): initial, incomplete support for
+       signed bitfields
+
+2005-11-17 Borut Razem <borut.razem AT siol.net>
+
+       * device/lib/pic16/Makefile.rules, device/lib/pic16/Makefile.subdir:
+         introduced SILENT option to make building of pic16 libraries less
+         verbose - used for nightly snapshot build
+       * doc/sdccman.lyx: documented that SDCDB and ucSim are currently not
+         available on Win32 platforms.
+       * sdcc/device/lib/Makefile.in: added library sources for mcs51, small,
+         medium, large, pic and pic16
+
+2005-11-16 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
+
+       * device/lib/printf_large.c: Temporary patch for bug 1358192:
+         printf("%f"...) sets fraction to zero.
+
+2005-11-16 Raphael Neider <rneider AT web.de>
+
+       * src/pic/pcode.c (LinkFlow): handle empty flows correctly,
+         fixes #1357221
+       * src/pic/gen.c (genIfx): implemented for CARRY bit
+       * src/pic16/gen.c (genAssign,genCast): fixed assigning/casting
+         to generic pointers, fixes #1357332,
+         (pic16_movLit2f): NEW,
+         (pic16_storeForReturn,genDataPointerSet): use pic16_movLit2f
+
+2005-11-14 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCmain.c (parseCmdLine): fixed bug 1356800, thanks rsudjian
+
+2005-11-11 Raphael Neider <rneider AT web.de>
+
+       * src/pic/gen.c: handle FPOINTERS like POINTERS everywhere
+       * src/pic16/gen.c (pic16_derefPtr): now works for non-pointers as well,
+         compute pointer's type from operand,
+         (genUnpackBits,genPackBits): handle FPOINTERS correctly, re-indented,
+         improved single bit reads, fixes bug #1353379
+
+2005-11-09 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/sdcc.nsi: added lib/pic to the package
+
+2005-11-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCval.c (valUnaryPM): fixed bug 1350699
+
+2005-11-06 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * support/regression/tests/bug1348008.c: added
+       * src/mcs51/gen.c (saveRBank, unsaveRBank): fixed bug 1348008
+       * support/regression/tests/bug1337835.c: updated comment
+
+2005-11-06 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/error.cc, sim/ucsim/errorcl.h,
+         sim/ucsim/sim.src/stack.cc, sim/ucsim/sim.src/stackcl.h,
+         sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
+         sim/ucsim/sim.src/mem.cc, sim/ucsim/sim.src/memcl.h,
+         sim/ucsim/cmd.src/set.cc, sim/ucsim/cmd.src/show.cc:
+         dynamic construction of cl_error_class and derivates - 2.nd try
+
+2005-11-05 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/sim.src/error.cc: fixed uninitialized class member variable
+         bug, which caused Bus Errors on sparc solaris
+
+2005-11-04 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/error.cc, sim/ucsim/errorcl.h,
+         sim/ucsim/sim.src/stack.cc, sim/ucsim/sim.src/stackcl.h,
+         sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
+         sim/ucsim/sim.src/mem.cc, sim/ucsim/sim.src/memcl.h,
+         sim/ucsim/cmd.src/cmdconf.cc: dynamic construction of cl_error_class
+         and derivates to resolve the initialization problem on OSX
+
+2005-11-02 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/newcmd.cc:
+         corrected typo - #include <winsock2.h>
+
+2005-11-02 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/asm.c (printILine): always close tmpFile, thanks Beau E. Cox,
+         (_asxxxx_mapping): added org directive for future enhancements
+
+2005-11-01 Borut Razem <borut.razem AT siol.net>
+
+       * sim/ucsim/app.cc, sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/newcmd.cc:
+         enabled sockets on WIN32
+       * sim/ucsim/cmd.src/newcmd.cc: fixed bug with uninitialized variables
+
+2005-10-31 Borut Razem <borut.razem AT siol.net>
+
+       * support/regression/generate-cases.py: escape backslashes in {testcase}:
+         WIN32 backslash path delimiters should be escaped when used in C strings
+       * support/regression/tests/bitfields.c: exclude failing assertions for
+         __CYGWIN32__ and __MINGW32__ hosts
+
+2005-10-30 Borut Razem <borut.razem AT siol.net>
+
+       * src/SDCCutil.c: corrected double comparison typo
+
+2005-10-30 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * device/lib/medium/Makefile: added for new memory model medium
+       * device/include/asm/mcs51/features.h: updated for medium/pdata
+       * device/include/mcs51/c8051f120.h: added sfr16/sfr32 definitions,
+         added Multiply & Accumulate sbit's and MAC0_PAGE define
+       * device/include/mcs51/c8051f300.h: added sfr16 definitions
+       * device/include/mcs51/c8051f310.h: added sfr16 definitions
+       * device/lib/_mullong.c: update for medium model
+       * device/lib/incl.mk: added medium model
+       * doc/sdccman.lyx: documented medium model
+       * src/SDCCast.c (isBitAndPow2): simplified using updated powof2
+       * src/SDCCicode.c (geniCodeMultiply, geniCodeDivision): use updated powof2
+       * src/SDCCmain.c (optionsTable, linkEdit): enabled medium model
+       * src/SDCCmem.c (allocIntoSeg): set iaccess for pdata symbols,
+         (allocParms): set SCLS and OCLS to pdata for medium model
+       * src/SDCCsymt.c (processFuncArgs): use default_local_map and set iaccess
+         for pdata,
+         (powof2): return <0 if not power of 2
+       * src/avr/gen.c (genBitWise): use updated powof2
+       * src/mcs51/gen.c (genMinusDec): use acc if necessary,
+         (shiftR2Left2Result): small optimization in setup, save acc when storing,
+         (shiftLLeftOrResult): use B if necessary
+       * src/mcs51/main.c (_mcs51_finaliseOptions, mcs51_port): added medium model
+       * src/mcs51/peeph.def: renamed 226 to 226.b, added 226.a
+       * src/pic/main.c (_pic14_do_link): made void parameter list explicit
+       * support/regression/Makefile.in: added test-mcs51-medium
+       * support/regression/ports/mcs51-medium/spec.mk: added to test medium model
+
 2005-10-28 Bernhard Held <bernhard AT bernhardheld.de>
 
        * src/SDCCsymt.c (compStructSize): make bitfields without (un)signed