X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ChangeLog;h=7b736d0c1c064b31f83fa91304936db56f0f8066;hb=7092353af3fdab4fd24337750d1c52d5d0d6144b;hp=0c5d8b598dd693d520bed2bd0f3c9d4dbeac8179;hpb=bcffce0130d38cca654e3867a632f089ce4cf69e;p=fw%2Fsdcc diff --git a/ChangeLog b/ChangeLog index 0c5d8b59..7b736d0c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,213 @@ +2006-06-13 Maarten Brock + + * as/mcs51/lkarea.c (lnkarea2): clear new xdatamap, bugfix for two + consecutive abs areas + (find_empty_space, allocate_space): added map to handle codemap or + xdatamap, + (lnksect2): renamed rloc to locIndex, fixed bug 960060 by handling + absolute idata and xdata + * as/mcs51/lkmem.c (summary2): updated legend + +2006-06-16 Raphael Neider + + * src/pic16/gen.c (shiftR2Left2Result): fixed bug #1507127 + +2006-06-13 Maarten Brock + + * debugger/mcs51/cmd.c (cmdListFunctions): fixed bugs 1181163 and + 1208515 + * src/SDCClrange.c (findPrevUse): fixed bug 1294475 + +2006-06-13 Vangelis Rokas + + * src/port.h (struct PORT): added field gp_tags, to hold the tag + value of generic pointers, + * src/avr/main.c, + src/ds390/main.c, + src/hc08/main.c, + src/izt/i186.c, + src/izt/tlcs900h.c, + src/mcs51/main.c, + src/pic/main.c, + src/pic16/main.c, + src/xa51/main.c, + src/z80/main.c: PORT structure, added elements for gp_tags field, + * src/SDCCsymt.h: replaced hardwired values of GPTYPE_* macros with + fields in the PORT structure of each port, + * src/SDCCast.c (decorateType): allow processing of generic pointers + for PIC16 port (FPTRSIZE equals GPTRSIZE), also set GPTYPE_NEAR for + S_FIXED symbols + +2006-06-12 Maarten Brock + + * link/z80/lkgb.c, + * link/z80/lkgg.c, + * src/pic16/gen.c, + * src/pic16/main.c, + * src/pic16/pcode.c, + * src/pic/main.c, + * src/pic/pcoderegs.c, + * src/SDCCicode.c, + * src/SDCCmain.c, + * src/SDCCsymt.c: replaced all exit(-1) by exit(EXIT_FAILURE) to fix + bug 1504689 on minGW + +2006-06-12 Frieder Ferlemann + + * device/lib/printf_tiny.c: fixed bug #1465675 (%x format specifier) + +2006-06-12 Bernhard Held + + * src/SDCCast.c (backPatchLabels): fixed bug #1504636 + +2006-06-11 Maarten Brock + + * device/lib/printf_large.c (OUTPUT_CHAR, _output_char): added and used + for optimization + +2006-06-11 Vangelis Rokas + + * src/pic16/gen.c (genCast): fixed bug with assignment of a pointer + to a char variable. Fixed bug #1504211 + * device/include/pic16/adc.h, + device/include/lib/pic16/libio/adc/adcopen.c: applied patch #1364387 + and fixed bug #1364390 + +2006-06-10 Borut Razem + + * CVSROOT: removed the CVS left-over + +2006-06-10 Maarten Brock + + * as/hc08/asmain.c (asexit), + * as/hc08/lkmain.c (lkexit), + * as/mcs51/asmain.c (asexit), + * as/mcs51/lkmain.c (lkexit), + * src/SDCCglue.c (DEFSETFUNC), + * src/SDCCmain.c (linkEdit, assemble), + * support/librarian/sdcclib.c (AddRel), + replaced unlink() by standard C remove() + * src/SDCC.y: replaced removePostIncDecOps() by createRMW() + * src/SDCCast.c (replaceAstWithTemporary, createRMW, + gatherImplicitVariables): new, added to fix bug 608752, + (createFunction): added gatherImplicitVariables() + * src/SDCCast.h: added createRMW prototype + * src/SDCCsymt.h (struct symbol): added infertype + * support/regression/tests/bug608752.c: new, added + +2006-06-10 Raphael Neider + + * src/pic16/gen.c (pic16_aopOp): use WREG as destination even for + multibyte dummy reads (fixes #1503234) + +2006-06-10 Maarten Brock + + * device/include/mcs51/compiler.h: new, added header file to enable + creating common sfr definition header files for different compilers + +2006-06-05 Raphael Neider + + * src/pic16/{pcode.h,genarith.c}: + introduced pCodeOp combining any two pCodeOps (previously only + two register operands could be combined), removed pcop2 from + pCodepReg, replaced pCodeOpReg2 with pCodeOp2, fixes #1492366 + * src/pic16/pcodepeep.c (pic16_pCodeOpCopy): added case for PO_TWO_OPS + * src/pic16/gen.c (pic16_popGet2,pic16_popGet2p,pic16_popCombine2): + rewritten to use new PO_TWO_OPS + * src/pic16/main.c (_hasNativeMulFor): cover more cases natively, + * src/pic16/pcode.c (pic16_newpCodeOpImmd): initialize rIdx field, + (pic16_newpCodeOp): catch invalid attempts on PO_TWO_OPS, + (pic16_newpCodeOp2): NEW, create combined pCodeOp, + (pic16_get_op): embraced return arg to allow #define return(x), + added new case for combined opcodes + (pic16_get_op2): reduced to use pic16_get_op() on second pCodeOp, + (pic16_pCode2str,pic16_getRegFrompCodeOp, + pic16_getRegFromInstruction2): fixed/added handling of new pCodeOp + +2006-06-04 Bernhard Held + + * src/SDCCval.c (checkConstantRange): added + * src/SDCCval.h: added checkConstantRange + * support/Util/SDCCerr.c, + * support/Util/SDCCerr.h: replaced unused W_IF_NEVER_TRUE and + W_IF_ALWAYS_TRUE by W_COMP_RANGE and W_LIT_OVERFLOW + * src/SDCC.y: moved early 'condition transformations' to SDCCast.c + * src/SDCCast.c (decorateType): added checkConstantRange, + added 'condition transformations' from SDCC.y so that now W_COMP_RANGE + can be emitted with the correct always true/false warning, + added optimization for double '!'; + result of decorateType() must be assigned back to the tree, because + decorateType() can change the tree + * src/SDCCicode.c (geniCodeLogic), + (geniCodeAssign): replaced new checkConstantRange, added warnings, + (checkConstantRange): removed, it was only a fragment which never + emitted a warning + * src/SDCCsymt.c (computeType): fixed promotion for + "-1 < (unsigned bit) b" + * src/pic/ralloc.c (packRegsForAssign), + * src/pic16/ralloc.c (packRegsForAssign), + * src/hc08/ralloc.c (packRegsForAssign), + * src/z80/ralloc.c (packRegsForAssign): ported fix for bug #930931 + from mcs51 + * src/mcs51/ralloc.c (packRegsForAssign): removed outcommented source + * support/regression/tests/constantRange.c: added + * support/valdiag/tests/constantRange.c: added + * support/valdiag/valdiag.py: added -DPORT_HOST=1 + +2006-06-02 Borut Razem + + * support/regression/ports/pic16/support.c: increase stack size + to 255 bytes + * support/regression/Makefile.in: sort tests by name so that the + resutlts can be compared on different machines / platforms + +2006-06-02 Maarten Brock + + * device/lib/printf_large.c (output_digit): optimized further, Tnx Frieder + * src/ds390/gen.c (emitLabel): new, added, + (genDjnz): fixed stack overflow bug, + (throughout): cosmetic changes to sync with mcs51/gen.c, + replaced emitcode("", "%05d$:", lbl->key + 100) with emitLabel(lbl) + * src/mcs51/gen.c (genEndFunction): small optimization, + (throughout): cosmetic changes to sync with ds390/gen.c + +2006-06-02 Maarten Brock + + * device/lib/printf_large.c (output_digit, calculate_digit): optimized, + (_print_format): fixed printing pointers + * src/mcs51/gen.c (emitLabel, movb): new, added, + (genAssign): small optimization, + (genDjnz): fixed stack overflow bug, + (throughout): replaced sprintf with SNPRINTF, + replaced mcs51_regWithIdx with REG_WITH_INDEX, + replaced emitcode("mov", "b,...") with MOVB(...), + replaced emitcode("", "%05d$:", lbl->key + 100) with emitLabel(lbl), + replaced D(emitcode("; genXXX", "")) with D(emitcode(";", "genXXX")) + * src/mcs51/peeph.def: added rules 140 and 264 + * src/SDCCmem.c (allocLocal): store register declared locals in DSEG/OSEG + so they may get optimized into registers + +2006-05-30 Maarten Brock + + * src/SDCCmain.c (optionsTable, parseCmdLine): handle --use-stdout + immediately when encountered, + (printUsage): always use stderr even on windows + +2006-05-30 Bernhard Held + + * src/SDCCast.c (isLoopCountable): fixed bug #1478316 + (processParms): fixed bug #1247551 + * src/SDCCmain.c (printVersionInfo, printOptions, printUsage, + parseCmdLine, main): print '--version' to stdout, + print 'help' to stdout if --help is given, + print 'help' to stderr and exit with EXIT_FAILURE if no or bad + arguments are given; fixed --help + +2006-05-27 Bernhard Held + + * src/SDCCcse.c (findPointerSet): fixed bug #1493710 + * support/regression/tests/bug-1493710.c: added + 2006-05-27 Borut Razem * support/regression/fwk/lib/testfwk.c: define array in _printn() as