* sim/ucsim/configure.in,
[fw/sdcc] / ChangeLog
index cd8d86a97a395fb34fa65c4341b71e9970cc5bff..d467f9349afa561a6148ddbda87c5776bba8fd17 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,133 @@
+2004-03-06 Bernhard Held <bernhard AT bernhardheld.de>
+
+       * sim/ucsim/configure.in,
+       * sim/ucsim/configure,
+       * sim/ucsim/doc/Makefile.in: use docdir
+       * src/SDCC.y: fixed sbit atrributes
+       * src/SDCCast.c (getResultTypeFromType): added support for bitfields
+       * src/SDCCast.c (decorateType): |^& need special promotion handling
+       * src/SDCCast.h,
+       * src/SDCCsymt.h: moved definition of RESULT_TYPE
+       * src/SDCCsymt.h (computeType),
+       * src/SDCCicode.c: computeType() needs op
+       * src/SDCCsymt.c (checkTypeSanity),
+       * doc/sddman.lyx: "plain" bitfields are unsigned
+       * src/SDCCsymt.c (computeTypeOr): added
+       * src/SDCCsymt.c (computeType): added support for bitfields, fixed
+       |^& ops
+       * src/SDCCval.c (val*): computeType() needs op
+       * src/SDCCval.c (valCastLiteral): fixed casting of bitfields
+       * support/regression/tests/onebyte.c: added tests for |^&
+
+2004-03-06 Hans Dorn <hjdorn AT users.sourceforge.net>
+
+       * src/pic16/gen.c: (genpic16Code) use copy of printILine's output
+       for writing icode into asm output.
+
+2004-03-05 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * src/pic16/device.c: added some debug lines enabled
+       with macro DEBUG_CHECK,
+       * src/pic16/genarith.c: more debug in genPlus,
+       * (pic16_genUMult8XLit_16, pic16_genUMult8X8_16): removed,
+       * (pic16_genUMult16X16_16, pic16_genUMult16XLit_16): NEW,
+       * src/pic16/gen.c: added prototypes for pic16_genMult16X16_16,
+       * (aopForSym): onStack symbols are re-placed in data memspace,
+       and onStack flag is cleared,
+       * (pic16_popGetTempReg, pic16_popReleaseTempReg): modified to
+       copy temporary pcodeop,
+       * (genPcall): added warning for not updating PCLATU,
+       * (genFunction): removed test with IFFUNC_CALLEESAVES, its
+       always true for pic16 port,
+       * (genMultOneWord): NEW, supports integer multiplication,
+       * (genMult): modified to call genMultOneWord,
+       * (ifxForOp): added warning when return NULL,
+       * src/pic16/glue.c (pic16emitRegularMap): symbol implicit
+       flag is set before call to operandFromSymbol for implicit
+       added structures,
+       * src/pic16/main.c (_pic16_finaliseOptions): options.float_rent,
+       options.intlong_rent are set by default,
+       * (_hasNativeMulFor): modified to allow port generation of integer
+       multiplication,
+       * src/pic16/ralloc.c (pic16_allocDirReg): commented out line which
+       set regtype to REG_SFR for all registers, restricting seting the
+       accessBank flag for registers 0<= r < 0x80 and 0xf80<=r<=0xfff,
+
+2004-03-05 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
+
+       * src/mcs51/peephole.def: added 251.b and 253.x. 253.x are applied
+       more than 500 times in the regression tests
+
+2004-03-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * support/Util/SDCCerr.h,
+       * support/Util/SDCCerr.c,
+       * src/SDCC.y (struct_or_union_specifier, enum_specifier,
+       enumerator_list),
+       * src/SDCCsymt.c (addSymChain): show location of oriignal definition
+       for symbol conflicts.
+       * support/valdiags/tests/enum.c,
+       * support/valdiags/tests/tentdecl.c,
+       * support/valdiags/tests/struct.c: expect possible error messages
+       referring to original symbol definitions.
+       * src/SDCC.y (struct_or_union_specifier, struct_declarator),
+       * src/SDCCsymt.h,
+       * src/SDCCsymt.c (promoteAnonStructs): support anonymous struct/union
+
+2004-03-03 Hans Dorn <hjdorn AT users.sourceforge.net>
+
+       * src/pic16/gen.c (gencjne): fixed for right=REG / left=LIT
+
+2004-02-03 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * src/pic16/ralloc.c (newReg): fixed bug #908929
+
+2004-03-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/ds390/gen.c: added missing #include "main.h"
+
+2004-03-02 Vangelis Rokas <vrokas AT otenet.gr>
+
+       * src/pic16/device.c (checkAddSym): NEW, adds a symbol to set while
+       checking if symbol is already in set,
+       * src/pic16/device.h: prototype for checkAddSym,
+       * src/pic16/gen.c: (_G): added entry interruptvector,
+       * (assignResultValue): removed some commented out lines,
+       * (genFunction): check for ISR via sym->type, absolute section for
+       interrupt code is created via a new pBlock, the goto instruction is
+       placed now correctly at the interrupt vector position, changed all
+       references from ivec to _G.interruptvector,
+       * WREG,STATUS,BSR are not saved in stack upon an entry to interrupt
+       is the interrupt is a high priority one, same for return from ISR,
+       * src/pic16/glue.c: changed all calls of addSetHead for publics and
+       externs to calls of checkAddSym,
+       * src/pic16/pcode.c (pic16_pBlockConvert2*): emit warning when
+       pic16_pcode_verbose flag is set,
+       * src/pic16/pcode.h: extern to pic16_pcode_verbose,
+       * src/pic16/pcoderegs.c: message about how many registers are saved
+       will only be emitted if pic16_pcode_verbose flag is set,
+
+2004-03-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/ds390/ralloc.h,
+       * src/ds390/ralloc.c (ds390_regWithIdx),
+       * src/ds390/gen.c (emitcode),
+       * src/ds390/main.h,
+       * src/ds390/main.c (instructionSize, ds390newAsmLineNode, updateOpRW,
+       ds390opcodeCompare, asmLineNodeFromLineNode, getInstructionSize,
+       ds390operandCompare, getRegsRead, getRegsWritten,
+       initializeAsmLineNode): customized instruction size calculation for
+       ds390, started basis for some register optimizations
+       * src/ds390/gen.c (gen390Code, emitcode): associate iCodes with
+       corresponding assembly output
+       * src/ds390/gen.c (genFunction, genEndFunction): added case to handle
+       missing push/pop of r0/r1. Optimized push/pops
+
+2004-03-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
+
+       * src/mcs51/main.c (instructionSize): fixed ACALL size
+       * src/mcs51/main.c (updateOpRW): fixed bug with @dptr, @a+dptr operands
+
 2004-03-01 Vangelis Rokas <vrokas AT otenet.gr>
 
        * src/pic16/device.c (pic16_dump_section): fixed a bug that allowed
@@ -5,7 +135,7 @@
        * (print_idataType, print_idata): NEW to create idata sections
        * src/pic16/device.h: idataSymSet new variable
        * src/pic16/gen.c (genFunction): fixed some bugs in string
-       comparing, improved the aboslute section creation for ISRs,
+       comparing, improved the absolute section creation for ISRs,
        added FSR0L/FSR0H in registers that are saved in an ISR,
        * (genInline): fixed the processing of inline snippets,
        now they undergo no process by the peephole optimizer