+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)"
+
+2006-04-07 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * .version: bumped version to 2.5.6
+ * src/pic/ralloc.c (newReg): MSVC doesn't support __builtin_return_address
+
+2006-04-06 Raphael Neider <rneider AT web.de>
+
+ * .version: bumped version to 2.5.6 (pic14 ABI changed)
+ * src/SDCCmain.c: add -DSDCC_PROCESSOR=<id> for pic14 port
+ * src/pic/glue.c (emitSymbolToFile,pic14_constructAbsMap,
+ pic14emitRegularMap,pic14emitMaps): moved output for absolute symbols to
+ pic14_constructAbsMap
+ (pic14printPublics): declare absolute global symbols as global
+ (pic14createInterruptVect),
+ * src/pic/ralloc.c (IS_CONFIG_ADDRESS): support second config word,
+ (newReg): assume new registers unused, use correct name in
+ hashtable (reg->name instead of name), more debugLog output
+ * src/pic/device.h (PIC_device): added fields for verbose output
+ * src/pic/device.c: moved device definition to pic14devices.txt,
+ added routines for runtime parsing of pic14devices.txt,
+ added support for second config word
+ * src/pic/main.c (_process_pragma): removed #pragma maxram,
+ (_pic14_keywords): no longer accept "bit" and "sbit" keywords
+ (_pic14_initPaths): add search paths with "pic" suffix (not "pic14")
+ (_pic14_parseOptions): moved pCodeInitRegisters here
+ (_pic14_do_link): add "pic$(ARCH).lib" to linker arguments
+ * src/pic/pcode.c (AnalyzeBanking): bail out on unset processor,
+ (pCodeInitRegisters): rewrapped comments, perpared new approach to
+ handling the pseudo stack
+ * device/lib/Makefile.in: ignore failures in objects-pic16,
+ * device/lib/pic/{configure,configure.in,Makefile}: added libdev/
+ * device/lib/pic/NEWS: document new dependency on picXXX.lib
+ * device/lib/pic/Makefile.subdir,
+ * device/lib/pic16/Makefile.subdir: improved clean rules
+ * device/lib/pic/libdev/: NEW, pic14 device libraries
+ * device/lib/pic/libsdcc/_gptr{get,put}{1,2,3,4}.S: use _X not X
+ * device/lib/pic/libsdcc/macros.inc: use _X not X, declare default SFRs
+ * device/include/Makefile.in: create subdir and install pic14 headers
+ * device/include/pic/p16f_common.inc: removed unused declarations
+ * device/include/pic/pic16*.h: added header files for 100+ 14 bit
+ PICs from inc2h.pl v1.6,
+ replaced BIT_AT macros with struct declarations
+ * device/include/pic/pic14devices.txt: definition of supported devices,
+ all above improvements contributed by Zik Saleeba, thanks
+ * support/scripts/inc2h.pl: removed BIT_AT, replaced with structs
+ * support/scripts/sdcc.nsi: also install pic14 device libraries and
+ headers
+
+2006-04-06 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * device/include/mcs51/c8051f410.h: added interrupt numbers,
+ * device/include/mcs51/c8051f200.h: old SiLabs mcu completes the list,
+ thanks to Charles Olds
+
+2006-04-06 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+ * debugger/mcs51/cmd.c (infoRegisters): show return address on stack
+
+2006-04-06 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/SDCCpeeph.c (labelIsReturnOnly): fixed bug 1464657
+ * src/mcs51/gen.c (genJumpTab): fixed bug in medium model
+ * support/regression/bug1464657.c: added, new test
+
+2006-04-05 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/SDCCmain.c (preProcess): implemented RFE 1449908, define SDCC as the
+ version number
+
+2006-04-05 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/SDCCpeeph.c (initPeepHole): implemented RFE 1460196, when both
+ --no-peep and --peep-file <file> are used don't use default rules but
+ do use the <file>
+
+2006-04-05 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/mcs51/gen.c (genCall): fixed bug 1457608
+
+2006-03-30 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+ * doc/sdccman.lyx: reverted to version 1.129 of december as my latest
+ changes seem to cause (trigger?) problems with the build system.
+
+2006-03-29 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/SDCCpeeph.c (operandsLiteral): new, added,
+ (callFuncByName): inserted operandsLiteral
+ * src/mcs51/peeph.def: reenabled 132.e, added extra check to 132.x
+
+2006-03-28 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+ * doc/sdccman.lyx: added paragraph "Use of SDCC in Education"
+ * src/mcs51/peeph.def: disabled rule 132.e fixing bug #1453093
+
+2006-03-24 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/z80/gen.c (genFunction, genEndFunction): fixed bug 1160666,
+ implemented patch 1120823 Thanks to Willy De la Court (normal
+ interrupts need an interrupt number now if they are made critical),
+ and enabled nesting of critical functions though not for gbz80
+ (genCritical, genEndCritical): added functions
+ (genZ80Code): added cases for CRITICAL and ENDCRITICAL
+ * src/z80/mappings.i: added "ei" to all mappings
+
+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
--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
- (comented out for reference), didn't account for some registers which
+ (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