+2004-10-12 Slade Rich <slade_rich AT users.sourceforge.net>
+
+ * src/pic/pcode.c : Applied a code patch supplied by Paul Ashmore in comments for Bugs item #954788.
+
+2004-10-10 Vangelis Rokas <vrokas AT otenet.gr>
+
+ * src/pic16/device.c (pic16_dump_gsection,
+ * pic16_groupRegistersInSection): handle symbols declared to be in
+ access bank differently,
+ * src/pic16/gen.c (struct _G): added field resDirect,
+ * (aopForSym): if symbol on stack and iCode is '=' and result exists,
+ send values read from stack directly to result and don't allocate
+ temporary values,
+ * (pic16_sameRegs): fixed bug that allowed MOVFF to move between
+ same registers,
+ * (pic16_sameRegsOfs): NEW,
+ * (freeAsmop): if _G.resDirect is set then do not mark registers as
+ free because they were not allocated from temporary pool,
+ * pic16_popRegFromString): workaround to fix a problem with
+ allocating variables twice or never,
+ * (genGenPointerGet): using PRODL instead of FSR0H,
+ * (genGenPointerSet): using POSTDEC1 (that is a stack location)
+ instead of FSR0H,
+ * (genAssign): take advantage of the _G.resDirect flag,
+ * (genCast): around line 11844, use mov2f instead of directly
+ MOVFF'ing between operands to account for literal values,
+ * src/pic16/genutils.c: some new debug functions for gpsim have been
+ added,
+ * src/pic16/glue.c (pic16_printIvalType): fixed bug that initialized
+ float with integer part only,
+ * src/pic16/main.c (_process_pragma): handle pragma udata access to
+ place variables in access bank
+ * device/lib/pic16/libsdcc/gptr/gptr*.c: using BRA instead of GOTO,
+ updated sources to reflect recent changes in gen.c
+
+2004-10-06 Vangelis Rokas <vrokas AT otenet.gr>
+
+ * device/lib/pic16/libsdcc/Makefile.rules: fixed bug concerning
+ sources that searched for headers in installation path, now the
+ device/include/pic16 is used,
+ * src/pic16/glue.c (pic16glue),
+ * src/pic16/pcode.c (pCode2str, genericPrint): don't print .file or
+ .line directives if not in debug mode, this suppresses assembler's
+ warnings for ignored directives
+
+2004-10-05 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/port.h: made reset_regparms prototype void parameter explicit.
+ * src/SDCCsymt.c (processFuncArgs): removed argument "func".
+ * src/mcs51/ralloc.c (packRegisters): new fix for bugs 898889 & 979599.
+ * doc/sdccman.lyx: documented warning disabling and how to use
+ printf_large to make it print floats.
+ * device/include/stdbool.h: NEW
+ * device/lib/_atof.c,
+ * device/lib/_divuint.c,
+ * device/lib/_divulong.c,
+ * device/lib/expf.c,
+ * device/lib/printf_large.c,
+ * device/lib/sincosf.c,
+ * device/lib/sincoshf.c: used stdbool.h, all compile with stack-auto now
+ * device/lib/Makefile.in: added target for model-mcs51-reentrant to build
+ a completely reentrant lib.
+
+2004-10-05 Vangelis Rokas <vrokas AT otenet.gr>
+
+ * device/lib/pic16/libsdcc/gptr/gptr*.c: added return statements
+ * device/include/pic16/stdio.h: fixed bug with colon
+
+2004-10-03 Vangelis Rokas <vrokas AT otenet.gr>
+
+ * device/include/pic16/stdio.h,
+ * device/include/pic16/stdlib.h,
+ * device/include/pic16/math.h: NEW
+ * device/lib/pic16/libsdcc/gptr/*.c (gptrget*, gptrput*): functions
+ declared as _naked to reduce overhead
+ * device/lib/Makefile.in (target port-specific-objects-pic16):
+ changed * to *.* so to ignore the CVS directory,
+ * src/pic16/gen.c (pic16_freeAsmop): added code to store result of
+ stacked variables back in stack,
+ * (genEndFunction): fixed bug reported by G.M. Gallant with stack
+ corruption
+
+2004-10-01 Vangelis Rokas <vrokas AT otenet.gr>
+
+ * .version: bumped version number to 2.4.5
+ * support/Util/SDCCerr.h: added warning W_POSSBUG2.
+ * support/Util/SDCCerr.c (messages structure): added entry for
+ W_POSSBUG2
+
+ Large cumulative patch for pic16 port and libraries.
+ * device/include/pic16/sdcc-lib.h,
+ * device/include/pic16/stdarg.h,
+ * device/include/asm/pic16/features.h,
+ * device/include/lib/pic16/libsdcc/gptr/{*.c, Makefile}: NEW,
+ * device/include/pic16/float.h: changes reentrant keyword with
+ _FS_REENTRANT, added prototype for __fsneq, included sdcc-lib.h
+ * device/lib/pic16/libsdcc/Makefile: added target directory gptr,
+ updated target build-libraries to include objects from gptr,
+ * device/lib/pic16/libsdcc/{char,int,long}/*.c: added macro
+ _IL_REENTRANT to all function headings, included sdcc-lib.h header,
+ * device/lib/pic16/libsdcc/float/*.c: added macro _FS_REENTRANT to
+ all function headings,
+ * src/SDCCmain.c: added global parameter userIncDirsSet,
+ * (parseCmdLine): when option -I is encountered add directory to
+ userIncDirsSet too,
+ * src/version.awk: added space between control and long,
+ * src/pic16/NOTES: added some notes for the port,
+ * src/pic16/gen.c: added prototype for mov2fp function,
+ * (fReturnpic16[]): properly named return value registers,
+ * (_G structure): added fields stackRegSet, fregsUsed, stack_lat,
+ * (aopForSym): added code to handle symbols with onStack flag set,
+ symbols onStack are allocated PTRSIZE bytes,
+ * (aopFreeAsmop): handles special case where asmops are stack objects,
+ * (aopGet, pic16_popGet): adde cod to handle new asmop AOP_STA,
+ * (pic16_popGetTempReg, pic16_popGetTempRegCond, pic16_popReleaseTempReg):
+ added argument lock to trace flaws in allocating temporary registers
+ when developing port,
+ * (pic16_popGetLit, pic16_popGetLit2): changed lit from unsigned to signed
+ * (pic16_popRegFromString): reenabled allocating a direct register
+ from string,
+ * (assignResultValue): various beautifications,
+ * fixed bug #1037717 (patch from R. Neider & D. Wrinkler) with mistaken
+ referenced function argument,
+ * (genIpush): reenabled to allow stacked arguments, handles only
+ ic->parmPush iCodes,
+ * (genCall, genPcall): major changes to allow for variable argument
+ functions, fixed a bug with falsely restoring stack pointer after
+ returning from call,
+ * (genFunction): pending code for critical function,
+ * (shiftR1Left2ResultSigned, shiftR1Left2Result, shiftL2Left2Result,
+ * (shiftR2Left2Result, shiftLLong) applied patch #1032155 from R.Neider,
+ * (genNearPointerGet): fixed bug with indirect reading, was always
+ reading from INDF0
+ * (genGenPointerGet, genGenPointerSet): rewrote to support generic
+ pointers,
+ * (genAddrOf): rewrote code to take address of a stacked function parameter
+ * (genCast): fixed casting to generic pointer type,
+ * src/pic16/gen.h: added AOP_STA,
+ * (struct asmop): added field stk,
+ * src/pic16/genarith.c (pic16_AopType): handle AOP_STA,
+ * (pic16_genPlusIncr): changed emitSKPNZ to emitSKPNZ,
+ * (pic16_genAddLit, pic16_genPlus): applied patch #1034042 by tecodev,
+ * (pic16_genMinus): fixed bug #1035119 with patch submitted by tecodev,
+ * src/pic16/genutils.c (pic16_genNot): removed symbol *tlbl,
+ * src/pic16/glue.c (pic16_printGPPointerType): fixed to support new
+ generic pointers,
+ * src/pic16/main.c (_pic16_initPaths): ignores default SDCC include
+ and library paths,
+ * (pic16_port structure): generic pointer size is set to 3,
+ * src/pic16/pcode.c (pic16_newpCodeOpLit): correctly print literal integer,
+ * (insertBankSwitch): cast to (char *) to prevent 64bit CPUs'
+ compiler warning,
+ * src/pic16/ralloc.c (allocReg): prevent allocating register when
+ operand is an iTemp,
+
+2004-09-24 Martin Helmling <mh AT octo-soft.de>
+
+ * debugger/mcs51/cmd.c: set PC if a symbol at pc reg is set
+ * debugger/mcs51/simi.c: addapt new syntax of s51
+
+2004-09-23 Vangelis Rokas <vrokas AT otenet.gr>
+
+ * src/pic16/genutils.c (pic16_genNot): fixed bug #1032265,
+ * src/pic16/pcode.c: commented out some calls to free() in order to
+ fix bug #989576,
+
+2004-09-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/SDCCicode.h,
+ * src/SDCCicode.c (isiCodeInFunctionCall),
+ * src/avr/ralloc.c (selectSpil),
+ * src/pic/ralloc.c (selectSpil),
+ * src/pic16/ralloc.c (selectSpil),
+ * src/ds390/ralloc.c (selectSpil),
+ * src/hc08/ralloc.c (selectSpil),
+ * src/xa51/ralloc.c (selectSpil),
+ * src/mcs51/ralloc.c (selectSpil): Don't use remainSpil to spill to the
+ stack in the middle of a function call sequence (fixes bug #1020268)
+ * src/SDCCicode.c (geniCodeJumpTable): fixed error in computing the
+ costs associated with the minimum switch case.
+
+2004-09-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/SDCC.lex: fixed bug #1030549
+
+2004-09-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+ * src/SDCCcse.h (struct cseDef),
+ * src/SDCCcse.c (cseBBlock, newCseDef, ifFromAddrTaken): purge CSEs
+ over a function call if the CSE is derived from a symbol whose
+ address has been taken (fixes bug #1029883)
+ * support/regression/tests/bug-1029883: a new regression test for
+ this bug
+
2004-09-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
* src/hc08/gen.c (emitinline): fixed bug #1029778