eliminate need of flex
[fw/sdcc] / ChangeLog
index 36d2c9d3bd71b61fbe5ad22ee6cbe08fafab3fb5..f4bb390c8ce54c8a80af6024de1c51961934a9b8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,196 @@
+2004-07-11 Maarten Brock <sourceforge.brock AT dse.nl>
+
+       * src/SDCCglue.c (printIvalArray): fixed bug #984229, thanks to Phuah
+          Yee Keat for the patch
+        * src/SDCCast.c (decorateType): fixed bug #979599
+        * src/ds390/gen.h: removed local fReturnSizeDS390
+        * src/ds390/gen.c: made fReturnSizeDS390 signed short to remove a warning
+        * src/ds390/gen.c (genAnd, genOr, genXor),
+        * src/mcs51/gen.c (genAnd, genOr, genXor): generate better optimized code
+
+2004-07-04 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * src/SDCCmain.c (linkEdit): modifications only for pic16 port,
+       add relFilesSet to $3, manipulate $2 to handle linking of object
+       files without source files in command line,
+       * device/include/pic16 (all headers): added ID location macros,
+       * src/pic16/device.c (struct PIC16_device Pics16[]): added field
+       entries for ID location bytes,
+       * (pic16_assignIdByteValue): NEW,
+       * src/pic16/device.h: new structures idRegInfo_t and idBytesInfo_t,
+       added field dumpcalltree to pic16_options_t,
+       * src/pic16/gen.c (genCmp): fixed bug case so a temporary register
+       is used instead of pic16_Gstack_base_addr, check if (ifx) before
+       emitting rFalseIfx label after check_carry label,
+       * src/pic16/glue.c (PIC16_IS_IDLOC_ADDRESS, PIC16_IS_HWREG_ADDRESS,
+       pic16_emitDIRegs), NEW
+       * (pic16glue): dump .calltree file when option --calltree found,
+       * src/pic16/main.c (OPTION _pic16_optionsTable): new option --calltree
+       * (_pic16_genAssemblerPreamble): emit ID locations after
+       configuration registers,
+       * (pic16_linkCmd): modifications of the link command,
+       * src/pic16/pcode.c (pic16_pciMOVFF): PCC_REGISTER replaces PCC_REGISTER2
+       * (pic16_pCodeInitRegisters): don't init stack registers,
+       * (pic16_findPrevInstruction): fixed bug,
+       * (pic16_getRegFromInstruction, pic16_getRegFromInstruction2): fixed
+       bug with immediate registers,
+       * (buildCallTree): traces stack push and pop,
+       * (pct2): dump also stack usage for each function,
+       * src/pic16/ralloc.c (dynrIdx): registers names start from 0x00
+       * (pic16_allocDirReg): various modifications,
+       * (pic16_typeRegWithIdx): when searching pic16_dynProcessorRegs set
+       fixed to 1,
+
+2004-07-02 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * src/pic16/pcode.c: removed buggy double colon
+
+2004-07-01 Borut Razem <borut.razem AT siol.net>
+
+       * support/scripts/sdcc.nsi: added include/pic16 to setup
+
+2004-06-30 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * device/lib/Makefile.in: fixed bug in target objects-pic16,
+       * device/lib/pic16/Makefile: prefixed with dash (-) command under
+       target 'clean',
+       * doc/sdccman.lyx: changed version to 2.4.2 and added some port
+       specific command line arguments. Also added sample lkr script
+       for placing a variable at a specific memory bank.
+       * src/pic16/device.c (pic16_dump_gsection): NEW, to dump variables
+       at a specific memory bank,
+       * (pic16_dump_isection): fixed bug which caused string literals to
+       be omitted when dumping idata section,
+       * (pic16_groupRegistersInSection): added code to handle registers
+       in specific memory banks,
+       * src/pic16/gen.c: labelOffset is prefixed with pic16_ and made
+       public, all references are renamed too,
+       * (pic16_aopGet): removed switch cases for AOP_R0,AOP_R1,AOP_DPTR,
+       AOP_DPTR2,
+       * (pic16_storeForReturn): added case to handle when dest is WREG,
+       * src/pic16/genarith.c (pic16_pCodeOpSubType): NEW,
+       * src/pic16/glue.c (pic16emitRegularMap): when adding a register in
+       pic16_rel_udata, check to see if that register is marked as being
+       a member of a specific memory bank,
+       * (pic16_printIvalCharPtr): added code to add string literals either
+       to code or the idata sections,
+       * src/pic16/main.c (_process_pragma): added \n to WHITE constant,
+       also accept the 'udata' pragma,
+       * src/pic16/main.h: new structure types sectName and sectSym
+       * src/pic16/pcode.c: added new pCodeInstruction entry for BANKSEL
+       * (newpCodeOpBit): added PIC_OPTYPE subt in function prototype,
+       * (pic16_findPrevInstruction): fixed, it returned nothing,
+       * (insertBankSwitch): fixed to emit banksel/skip and skip/banksel
+       instruction combinations,
+       * (pic16_FixRegisterBanking): heavily reorganised,
+       * (pic16_AnalyzeBanking): if generating banksel directives is
+       disabled, then don't call FixRegisterBanking at all,
+       * src/pic16/ralloc.c (bitEQUs, aliasEQUs, allDefsOutOfRange):
+       completely removed,
+       * (pic16_writeUsedRegisters): added call to pic16_dump_gsection
+
+2004-06-29 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/SDCCglue.c (printChar): fixed bug #973350, patch provided by
+       Phuah Yee Keat <yk.phuah AT nestac.com>
+
+2004-06-28 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * src/pic16/glue.c (pic16createInterruptVect): function now emits
+       correctly the IVT even if it is relocated to some other location
+
+2004-06-28 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * device/include/pic16/pic18fregs.h: added case for pic18f2220.h
+       * device/include/pic16/pic18f2220.h: NEW,
+       * device/lib/pic16/libdev/pic18f2220.c: NEW,
+       * device/lib/pic16/libdev/Makefile: added 18f2220 in DEVS,
+       * src/pic16/device.c (struct Pics16): added info for 18f2220,
+       * src/pic16/device.h (struct pic16_options): added ivt_loc and
+       nodefaultlibs, ivt_loc is the location of the interrupt vector
+       table, and nodefaultlibs signs that default libraries should not be
+       linked in link stage,
+       * src/pic16/gen.c (genFunction): relocate interrupt vector functions
+       according to --ivt-loc argument,
+       * src/pic16/main.c (_process_pragma): emit '_stack' as public symbol
+       when pragma stack is found,
+
+2004-06-25 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * src/mcs51/peeph.def: added peepholes 182.d (return 0.0), 
+       256 (range check), 257 (do while), 258.a-f (bit banging 
+       f.e. on 3-wire SPI bus)
+
+2004-06-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/SDCClrange.c (findNextUseSym): fixed a live range bug with
+       variables used exclusively within a loop
+
+2004-06-21 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * src/mcs51/gen.c (genCpl): quick fix for bug #974835
+
+2004-06-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/SDCClrange.c (computeClash): fixed bug #971834
+
+2004-06-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/mcs51/gen.c (genCmp): fixed bug #975903
+       * src/hc08/gen.c (operandsEqu),
+       * src/ds390/gen.c (operandsEqu),
+       * src/z80/gen.c (operandsEqu),
+       * src/pic/gen.c (operandsEqu),
+       * src/pic16/gen.c (operandsEqu),
+       * src/mcs51/gen.c (operandsEqu): fixed bug #976283
+       * src/SDCCmain.c (parseCmdLine): report --unknown-option only once
+
+2004-06-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/SDCCcse.c (cseBBlock): fixed bug #966963
+
+2004-06-12 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * src/pic16/gen.c (genPointerGet): added E_INTERNAL_ERROR for
+       default case in switch statement,
+       * glue.c (pic16_initPointer): expr is initialised via decoarteType
+       to eliminate problem with initialisation of pointers, but problem
+       still exists,
+       * (pic16_pointerTypeToGPByte): removed, no needed for pic16,
+       * (emitStaticSegment): removed various lines emitting debug info,
+       * src/pic16/pcode.c, src/pic16/pcode.h, src/pic16/ralloc.h:
+       added processor registers for utilizing EEPROM,
+       * src/pic16/pcode.c (pic16_emitDB): number of DBs emitted is not
+       configurable and set 8
+
+2004-06-08 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * .version: increased version number to 2.4.2,
+
+       Cumulative patch for pic16 port
+       * src/pic16/device.c: changed scheme to dump initial values for
+       variables in idata segment, all print_idata* functions were removed,
+       now the pic16_printIval* will be called,
+       * src/pic16/glue.c: (pic16_initPointer, pic16_pointerTypeToGPByte,
+       * _pic16_printPointerType, pic16_printPointerType,
+       * pic16_printGPointerType, pic16_printIvalArray, pic16_printIvalStruct,
+       * pic16_printIvalBitFields, pic16_printIvalFuncPtr, pic16_printIvalPtr:
+       NEW, similar to the respective functions in SDCCglue.c,
+       * src/pic16/pcode.c (pic16_emitDB, pic16_flushDB): reverted to old
+       way, emitting hex bytes,
+       * (pic16_emitDS): NEW, emits a string for pointer initialisation,
+
+2004-06-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/avr/ralloc.c (serialRegAssign),
+       * src/xa51/ralloc.c (serialRegAssign),
+       * src/pic/ralloc.c (serialRegAssign),
+       * src/pic16/ralloc.c (serialRegAssign),
+       * src/hc08/ralloc.c (serialRegAssign),
+       * src/z80/ralloc.c (serialRegAssign),
+       * src/ds390/ralloc.c (serialRegAssign),
+       * src/mcs51/ralloc.c (serialRegAssign): fixed bug #964479
+       
 2004-06-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
 
        * src/SDCCicode.c (geniCodeJumpTable): fixed bug #967601
   * as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
   * as/mcs51/lklex.c:  accept everything as symbol name in rel-files, bug fix ID 452601
   * as/mcs51/lksym.c:  accept everything as symbol name in rel-files, bug fix ID 452601
+
+$Revision$