+2005-10-24 Bernhard Held <bernhard AT bernhardheld.de>
+
+ * src/SDCCicode.c (ast2iCode): reverted to 1.224 because of regression:
+ all chars are promoted to int; promotion should be handled in SDCCast.c
+
+2005-10-15 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
+
+ * device/lib/_strcmp.c: Fixed bug 1326457
+
+2005-10-11 Raphael Neider <rneider AT web.de>
+
+ * device/lib/pic16/libio/i2c.ignore: added 1320, fixes broken builds
+ * device/lib/pic16/libdev/pic18f1320.c: added 1320's device library
+
+2005-10-05 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/SDCC.y (AT): fixed bug with sfr32 addresses when built with GCC
+ * support/regression/tests/sfr16.c: added test for the sfr32 bug
+
+2005-10-04 Raphael Neider <rneider AT web.de>
+
+ * device/include/pic16/pic18fregs.h, src/pic16/devices.inc,
+ device/lib/pic16/pics.all: added pic18f1320
+ * src/pic16/pcode.c (mnem2key): fixed prototype's argument mismatch
+
+2005-09-30 Raphael Neider <rneider AT web.de>
+
+ * src/pic16/device.c (Pics16[]): moved device descriptions to devices.inc
+ * src/pic16/devices.inc: NEW, provides device descriptions
+ * src/pic16/gen.c (genInline): fixed handling of ';'-comments
+
+2005-09-26 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/SDCCicode.c (operandOperation): added GETABIT, GETBYTE, GETWORD and
+ GETHBIT
+
+2005-09-25 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * doc/sdccman.lyx: updated Highest Order Bit documentation,
+ documented Any Order Bit, Higher Order Byte and Higher Order Word
+ * src/SDCC.y: added tokens GETABIT, GETBYTE, GETWORD
+ * src/SDCCast.c (optimizeGetHbit): updated to also accept bool=expr&(1<<n),
+ (optimizeGetAbit): new, to get any bit, not only the high bit,
+ (optimizeGetByte): new, to get a byte from a (long) int: expr>>(8*n),
+ (optimizeGetWord): new, to get a word from a long int: expr>>(8*n),
+ (isConformingBody): also check GETABIT, GETBYTE, GETWORD,
+ (decorateType): '&': also try GETABIT, GETBYTE, GETWORD optimization,
+ RIGHT_OP: also try GETBYTE, GETWORD optimization,
+ GETABIT, GETBYTE, GETWORD: decorate them,
+ (isShiftRightLitVal, isBitAndPowOf2): new helper functions,
+ (ast_print): added GETABIT, GETBYTE, GETWORD
+ * src/SDCCcse.c (isSignedOp): added GETABIT, GETBYTE, GETWORD
+ * src/SDCCicode.c (codeTable): added GETABIT, GETBYTE, GETWORD,
+ (geniCodeBinary): new generic binary icode,
+ (ast2iCode): added GETABIT, GETBYTE, GETWORD
+ * src/port.h: updated comment for PORT.hasExtBitOp
+ * src/mcs51/gen.c (genGetAbit): new, to get any single bit,
+ (genGetByte): new, to get a single byte,
+ (genGetWord): new, to get a word from a long,
+ (gen51Code): added GETABIT, GETBYTE, GETWORD
+ * src/mcs51/main.c (hasExtBitOp): added GETABIT, GETBYTE, GETWORD
+
+2005-09-23 Raphael Neider <rneider AT web.de>
+
+ * configure.in, configure: have device/lib/pic configured
+ * device/lib/Makefile.in: added model-pic14
+ * device/lib/clean.mk: added pic/ to clean rule
+ * device/lib/pic: added rudimentary pic14 library providing support
+ functions for multiplication/division/generic pointer access
+ * src/SDCCopt.c (convilong): mark support functions as extern
+ for pic14 port as well
+ * src/pic/gen.c (genMult): added assertions,
+ (genpic14Code): emit warning on unhandled iCodes
+ * src/pic/main.c (_hasNativeMulFor): return true only for 8x8 bit
+ * src/pic/pcode.c (pCodeOpCopy),
+ * src/pic16/pcodepeep.c (pic16_pCodeOpCopy): fixed handling of various
+ pCodeOpReg-subtypes (PO_{STATUS,INTCON,PCL,PCLATH,PCLATU,BSR,
+ SFR_REGISTER}), made safe for future extensions
+ * src/pic16/pcode.c (pic16_safepCodeUnlink): allow for removal of
+ instructions even if preceeded by SKIP instructions (also remove
+ them); removed unused code
+ * src/pic16/pcode.h: added arg2 to pCodeOpLit to match pCodeOpLit2,
+ prevents leaving parts of the structure uninitialized after copying
+
+2005-09-22 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/mcs51/gen.c (genMinus): fix for undetected bug introduced 3 months
+ ago by me
+ * support/regression/tests/addsub.c: added test for the bug
+
+2005-09-21 Raphael Neider <rneider AT web.de>
+
+ * device/include/pic16/pic18f1220.h,
+ device/lib/pic16/libdev/pic18f1220.c: added ECCPAS sfr and bitfield
+ * device/lib/pic16/Makefile.rules: added missing opening paren
+ * src/pic16/gen.c (pic16_genNot,pic16_genCpl): removed as these
+ are provided in genutils.c,
+ (genUminusFloat,genUminus,genCmpEq): added asserts on different
+ operand/result sizes,
+ (genCmp): assert on NULL pointers first, then check deref'ed values
+ * src/pic16/genutils.c (pic16_genCpl): fixed for different operand/
+ result size
+
+2005-09-18 Raphael Neider <rneider AT web.de>
+
+ * src/pic16/gen.c (genFarPointerGet,genFarPointerSet): removed
+ as these are now unused,
+ (genPointerGet,genPointerSet): handle FPOINTERs like POINTERs
+ * src/pic16/pcode.c (pic16_symIsSpecial): assume REG_TMPs to be
+ local, avoids uninitialized pointer dereference on r->name
+ * src/pic16/ralloc.c (newReg): fixed indentation
+
+2005-09-13 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/SDCCval.c (constVal): fixed bug 730366
+ * support/Util/SDCCerr.c,
+ * support/Util/SDCCerr.h: added warning W_INVALID_INT_CONST
+
+2005-09-10 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * as/mcs51/lkmem.c (summary2): fixed report for absolute areas (bug 1210220)
+
+2005-09-09 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/mcs51/peeph.def (241.x): fixed bug when comparing generic pointers
+
+2005-09-08 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * as/hc08/lkaomf51.c (OutputName): made name unsigned char,
+ (hex2dec): made hex_digit unsigned char, removed ascii dependance
+ * as/mcs51/lkaomf51.c (OutputName): made name unsigned char,
+ (hex2dec): made hex_digit unsigned char, removed ascii dependance
+ * as/mcs51/lkarea.c (lnkarea2): sort absolute areas to the front
+ * packihx/packihx.c (hexDigit): made c unsigned char
+ * as/mcs51/lklibr.c (fndsym),
+ * link/z80/lkgb.c (gb),
+ * link/z80/lklibr.c (fndsym),
+ * link/z80/lkrloc.c (relr),
+ * sim/ucsim/libltdl/ltdl.c (load_deplibs, try_dlopen),
+ * src/SDCC.lex (checkCurrFile, process_pragma),
+ * src/SDCCglue.c (spacesToUnderscores),
+ * src/SDCCmain.c (setParseWithComma, processFile),
+ * src/asm.c (tvsprintf, printCLine),
+ * src/avr/gen.c (emitcode, aopPut),
+ * src/ds390/gen.c (emitcode),
+ * src/hc08/gen.c (emitcode, emitinline),
+ * src/mcs51/gen.c (emitcode, genInline),
+ * src/pic/pcodepeep.c (cvt_extract_destination, cvt_extract_status,
+ tokenizeLineNode),
+ * src/pic/ralloc.c (debugLog),
+ * src/pic16/pcodepeep.c (cvt_extract_destination, cvt_extract_status,
+ tokenizeLineNode),
+ * src/pic16/ralloc.c (debugLog),
+ * src/z80/main.c (_process_pragma):
+ made all ctype.h function calls safe
+ * src/SDCCopt.c: include math.h for fabs
+ * src/SDCCpeeph.c: added macros ISCHARDIGIT, ISCHARSPACE and ISCHARALNUM
+ and used them throughout the code to make ctype.h function calls safe
+ * src/ds390/main.c (asmLineNodeFromLineNode),
+ * src/mcs51/main.c (asmLineNodeFromLineNode): made p unsigned char*
+ * src/pic/gen.c (DEBUGpic14_emitcode, pic14_emitcode): made lbp
+ unsigned char*
+ * src/pic/pcode.c (mnem2key): made mnem unsigned char*,
+ (newpCodeAsmDir): made ctype.h function calls safe
+ * src/pic16/gen.c (pic16_emitpcomment, DEBUGpic16_emitcode,
+ pic16_emitcode): made lbp unsigned char*
+ * src/pic16/pcode.c (mnem2key): made mnem unsigned char*,
+ (pic16_newpCodeAsmDir): made ctype.h function calls safe
+ * src/xa51/gen.c (emitcode),
+ * src/z80/gen.c (_emit2): made lbp unsigned char*
+ * support/Util/MySystem.c (split_command): made cmd_line and p unsigned
+ char*
+
2005-09-05 Raphael Neider <rneider AT web.de>
* src/pic16/ralloc.c (pic16_allocDirReg): use device specific