+2004-02-10 Hans-Juergen Dorn <hans.dorn AT apl-landau.de>
+ patch committed by Vangelis Rokas <vrokas AT otenet.gr>
+
+ * pcode.c,
+ * pcode.h,
+ * ralloc.h: added FSR0L, FSR0H and other missing PIC16 SFR's for
+ indirect addressing. Marked FSR0 as deprecated
+ * gen.c (pointerCode): commented out, not needed now
+ (pic16_popGet2p): new MOVFF helper function
+ (genGenPointerGet),
+ (genGenPointerSet): reimplemented with MOVFF and POSTINC0
+ (shiftRLong): removed duplicate debugging info
+
+2004-02-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/ds390/gen.c (genNearPointerGet),
+ * src/mcs51/gen.c (genNearPointerGet): allow the genDataPointerGet()
+ optimization with bits, but not bitfields.
+ * src/ds390/ralloc.c (packRegisters),
+ * src/mcs51/ralloc.c (packRegisters): fixed bug #884453 & #880832
+
+2004-02-09 Bernhard Held <bernhard AT bernhardheld.de>
+
+ * src/SDCCcse.c (algebraicOpts): copy operands before modification
+
+2004-02-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/SDCCsymt.h,
+ * src/SDCCicode.c (operandFromSymbol),
+ * src/mcs51/ralloc.c (verifyRegsAssigned, serialRegAssign),
+ * src/ds390/ralloc.c (verifyRegsAssigned, serialRegAssign),
+ * src/z80/ralloc.c (verifyRegsAssigned, serialRegAssign),
+ * src/hc08/ralloc.c (verifyRegsAssigned, serialRegAssign),
+ * src/pic/ralloc.c (verifyRegsAssigned, serialRegAssign),
+ * src/pic16/ralloc.c (verifyRegsAssigned, serialRegAssign): fixed
+ bug #892038
+ * src/SDCCast.c (createIvalStruct, createIvalArray, gatherAutoInit),
+ * src/SDCCglue.c (emitRegularMap, printIvalStruct, printIvalArray,
+ printIvalCharPtr, printIvalPtr, printIval, emitStaticSeg, emitOverlay)
+ * src/SDCCsymt.c (newSymbol),
+ * src/SDCC.y (struct_or_union_specifier, enum_specifier,
+ enumerator_list),
+ * src/SDCCval.h,
+ * src/SDCCval.c (newiList): fixed bug #885705
+
+2004-02-08 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
+
+ * doc/sdccman.lyx: added section 3.1.4: sdcclib.
+ * as/mcs51/lkmem.c: report the size of the stack in .mem file.
+
+2004-02-08 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+ * device/include/c8051f120.h,
+ * device/include/c8051f300.h,
+ * device/include/c8051f310.h: added/updated header files for Silicon
+ Laboratories (formerly Cygnal) CPUs. Contributed by Maarten Brock.
+ * doc/sdccman.lyx: minor changes, recommended diff -Naur and diff -u
+ in new section Submitting patches
+
+2004-02-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/mcs51/gen.c (genNearPointerGet, genPagedPointerGet,
+ genFarPointerGet, genCodePointerGet, genGenPointerGet,
+ genNearPointerSet, genPagedPointerSet, genFarPointerSet,
+ genGenPointerSet),
+ * src/ds390/gen.c (genNearPointerGet, genPagedPointerGet,
+ genFarPointerGet, genCodePointerGet, genGenPointerGet,
+ genNearPointerSet, genPagedPointerSet, genFarPointerSet,
+ genGenPointerSet),
+ * src/pic16/gen.c (genNearPointerGet, genPagedPointerGet,
+ genFarPointerGet, genCodePointerGet, genGenPointerGet,
+ genNearPointerSet, genPagedPointerSet, genFarPointerSet,
+ genGenPointerSet),
+ * src/pic/gen.c (genNearPointerGet, genPagedPointerGet,
+ genFarPointerGet, genCodePointerGet, genGenPointerGet,
+ genNearPointerSet, genPagedPointerSet, genFarPointerSet,
+ genGenPointerSet): fixed bug #892400
+ * src/pic16/gen.c (genSkipz, AccRol): disabled functions with #if 0
+ to eliminate build warnings.
+ * src/SDCCast.c (processParms),
+ * src/SDCC.y (function_declarator2, declarator2_function_attributes):
+ fixed bug 751859
+ * support/valdiag/valdiag.py: added GCC to the list of defines active
+ when compiling with gcc
+
+2004-02-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * support/Util/SDCCerr.h,
+ * support/Util/SDCCerr.c,
+ * src/SDCCast.c (decorateType, sizeofOp): complain when sizeof is used
+ with an incomplete type (fixed bug #883734)
+ * src/SDCCicode.c (geniCodeCast): fixed bug #890510
+
+2004-02-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/pic16/gen.c (genCmpEq, shiftRLong): fixed declarations
+
+2004-02-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/SDCCast.c (decorateType),
+ * src/SDCCicode.c (geniCodeParms, geniCodeCall): fixed bugs in my ANSI
+ function pointer implementation
+ * support/regression/tests/funptrs.c: added tests to verify both forms
+ of function pointers work correctly. Added tests to verify parameters
+ are passed in the correct order.
+
+2004-02-06 Vangelis Rokas <vrokas AT otenet.gr>
+
+ * device.c (regCompare): registers are sorted by ascending
+ address and increasing size,
+ * main.c (_pic16_finaliseOptions): removed the declaration
+ of compiler macro MCU. Now a macro of the format pic18fxxxx
+ will be defined from the command line
+
+2004-02-06 Hans-Juergen Dorn <hans.dorn AT apl-landau.de>
+ patch committed by Vangelis Rokas <vrokas AT otenet.gr>
+
+ * pcode.c (pic16initMnemonics): fixed typo in assignment to PCOP_RLNCF
+ PCOP_RLCF was overwritten!
+ * gen.c (genSkip): commented out calls to pic16_emitcode,
+ * (genCmpEQ): fixed "long" compares, only high word did get compared,
+ * (genlshTwo),
+ * (genRRC): added debugging info,
+ * (shiftL2Left2Result): Fixed bug, if offr > offl. Result got
+ overwritten while shifting,
+ * (shiftR2Left2Result): Fixed bug, if offr < offl. Result got
+ overwritten while shifting,
+ * (AccLsh),
+ * (AccRsh),
+ * (shiftLLeftOrResult),
+ * (shiftRLeftOrResult),
+ * (shiftRLong),
+ * (shiftLLong): Implemented with pic16_emitpcode
+ * (genlshFour): Replaced pic16_aopPut with pic16_emitpcode,
+ * (genLeftShift): Fixed bug, operand for shift by variable always
+ was "and"ed with 0x0f,
+ * (genLeftShiftLiteral),
+ * (genrshTwo),
+ * (genRightShiftLiteral): added debugging info,
+ * (genrshFour): added comment,
+ * (genRightShift): determined signedness from operand "left"
+ instead of "result"
+
+2004-02-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/SDCCicode.c (geniCodeParms),
+ * src/SDCCast.c (decorateType, processParms): support for ANSI-style
+ function pointers, fixed function pointer bugs #861242 and #861896
+
+2004-01-31 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+ * device/include/c8051f000.h,
+ * device/include/c8051f120.h,
+ * device/include/c8051f300.h: added header files for Silicon
+ Laboratories (formerly Cygnal) CPUs. Contributed by Maarten Brock.
+
+2004-01-31 Bernhard Held <bernhard AT bernhardheld.de>
+
+ * src/SDCCast.c (processParams): added new type flow and restructured
+ (gatherAutoInit): added new type flow
+ (addCast): cosmetic changes
+ (getLeftResultType): added new type flow for array indices, patch
+ provided by Stas, see FR #877103
+ (decorateType): SDCC_NEWTYPEFLOW removed, new type flow is now standard;
+ array index patch by Stas
+ * src/SDCCast.h: added prototype getResultTypeFromType()
+ * src/SDCCval.h,
+ * src/SDCCval.c (resolveIvalSym) (resolveIvalSym),
+ * src/pic/glue.c (pic14emitStaticSeg),
+ * src/pic16/glue.c (pic16emitStaticSeg),
+ * src/SDCCglue.c (emitRegularMap) (emitStaticSeg): added new type flow
+ for initialization of symbols
+ * src/SDCCicode.c (geniCodeArray): removed warning W_ARRAY_BOUND
+ * support/Util/SDCCerr.h:
+ * support/Util/SDCCerr.c: replaced W_ARRAY_BOUND by W_IDX_OUT_OF_BOUNDS
+ * .version: bumped version number to 2.3.8
+ * device/include/Makefile.in (install),
+ * doc/Makefile (install): changed to 'rm `find ...`' construct to
+ avoid warnings
+
+2004-01-30 Bernhard Held <bernhard AT bernhardheld.de>
+
+ * support/regression/tests/libmullong.c: fixed for 64 bit hosts
+ Slade Rich fixed an optimization bug
+ * src/pic/pcodepeep.c,
+ * src/pic/pcoderegs.c
+ * doc/Makefile (install): added test for directory
+
+2004-01-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/mcs51/ralloc.c (getRegPtr, getRegGpr),
+ * src/ds390/ralloc.c (getRegPtr, getRegGpr),
+ * src/pic/ralloc.c (getRegPtr, getRegGpr),
+ * src/pic16/ralloc.c (getRegPtr, getRegGpr),
+ * src/z80/ralloc.c (getRegGpr): fixed bug #883361
+ * as/mcs51/asexpr.c (term),
+ * as/hc08/asexpr.c (term): fixed bug #887146
+
+2004-01-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/z80/gen.c (genMult): handle single byte result product
+ * src/SDCCopt.c (killDeadCode): never convert ADDRESS_OF iCode to
+ DUMMY_READ_VOLATILE (fixed bug #886367)
+
+2004-01-27 Bernhard Held <bernhard AT bernhardheld.de>
+
+ * support/regression/tests/libmullong.c: fixed logic, on little endian
+ hosts we ended without a mullong_wrapper()
+
+2004-01-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * ChangeLog: changed "@" to " AT " in hopes of reducing spam and
+ virus/worm forged address usage.
+
+2004-01-27 Bernhard Held <bernhard AT bernhardheld.de>
+
+ Fixed promotion, it should be done on AST level:
+ * src/SDCCast.c (addCast): added promotion to int
+ (decorateType): updated call to upCast()
+ * src/SDCCicode.c (geniCodeLeftShift): removed call to
+ usualUnaryConversions()
+
+2004-01-26 Michael Hope <michaelh AT 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 AT 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 AT bernhardheld.de>
+
+ * src/pic/pcode.c (PCodeID): commented out left over debug code
+
+2004-01-20 Bernhard Held <bernhard AT 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 AT 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 AT 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 AT 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 AT bernhardheld.de>
+
+ * src/SDCCicode.c (geniCodeArray): applied patch from Stas Sergeev
+ proposed in FR #877103
+
+2004-01-18 Bernhard Held <bernhard AT 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 AT gmx.de>
+
+ * src/ds390/gen.c (aopOp3): fixed the assignment of different dptrs to
+ equal operands
+
+2004-01-16 Vangelis Rokas <vrokas AT 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 AT 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 AT 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 AT 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 AT bernhardheld.de>
+
+ * configure,
+ * device/lib/configure.in,
+ * device/lib/configure: fixed for autoconf 2.57
+
+2004-01-13 Erik Petrich <epetrich AT 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 AT 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 AT 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 AT 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 AT 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 AT 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 AT bernhardheld.de>
+
+ * src/SDCCast.c (decorateType): fixed bug introduced today
+
+2004-01-12 Borut Razem <borut.razem AT 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 AT bernhardheld.de>
+
+ * src/SDCCast.c (decorateType): replacing 'ul > 0' by '!ul' results
+ in simpler and even better code
+
+2004-01-11 Bernhard Held <bernhard AT 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 AT 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 AT otenet.gr>
+