X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ChangeLog;h=7491832e12858777aa82a9561450f72a2251d71a;hb=d137bf9a7fd5152cdc5f2cd817b56da9b40e6b44;hp=d3ddd8700083b3d646b8e84a703df10d8a030613;hpb=344553f6c8b36ab814dd921a5be6642a8babdf66;p=fw%2Fsdcc diff --git a/ChangeLog b/ChangeLog index d3ddd870..7491832e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,10 +1,404 @@ +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 + +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 + static instead auto + * support/regression/ports/pic16/support.c: increase stack size + from default 64 bytes to 128 bytes + * support/regression/tests/staticinit.c, + support/regression/tests/float.c: regression tests fully enabled + for pic16 port by putting the initialized data arrays into the code + section + * support/regression/ports/pic16/spec.mk: don't link default libraries. + This was changed by mistake in the previous version. + +2006-05-28 Vangelis Rokas + + * src/pic16/gen.c (genFunction, genEndFunction): some + beautifications, fixed bug with falsely restoring FSR2 in large + stack model, thanks to Beau E. Cox for reporting the bug + +2006-05-26 Maarten Brock + + * debugger/mcs51/break.c, + * debugger/mcs51/cmd.c (throughout): removed unused variables and labels, + use %p to print pointers, made address variables unsigned + * debugger/mcs51/cmd.c (infoSymbols): added missing parameter to printf + * debugger/mcs51/symtab.c (parseSymbol): must return something + * src/mcs51/gen.c (aopForSym): small optimization, + moved declarations mcs51_ptrRegReq and mcs51_nRegs to ralloc.h, + (freeAsmop): added missing break, + (aopPut): removed parameter bvolatile, determine it inside the function, + (saveRegisters, unsaveRegisters): small optimization, + (genIpush): removed pointless check, + (throughout): replaced Safe_calloc, strcpy with Safe_strdup, + replaced sprintf with SNPRINTF, + replaced strcpy with strncpyz, + updated aopPut calls, + replaced D(emitcode("; genXXX", "")) with D(emitcode(";", "genXXX")) + * src/mcs51/ralloc.h: added declarations mcs51_ptrRegReq and mcs51_nRegs + +2006-05-24 Borut Razem + + * support/regression/tests/bug-221100.c: fixed xdata problem caused by + modification of test for the pic16 port, put the array to the code + memory for pic16port; thanks to Maarten Brock and Frieder Ferlemann + +2006-05-23 Jesus Calvino-Fraga + + * src/pic/gen.c: MSC 6 does not have . Use pstdint.h instead. + * support/Util/pstdint.h: added + +2006-05-22 Borut Razem + + * src/regression/Makefile: removed bool2.c test, added -q linker option + * src/regression/add2.c, src/regression/add3.c, src/regression/bool1.c, + src/regression/bool3.c, src/regression/nestfor.c, src/regression/ptrfunc.c, + src/regression/compare.c, src/regression/or1.c, src/regression/compare2.c, + src/regression/while.c, src/regression/compare3.c, src/regression/compare4.c, + src/regression/compare5.c, src/regression/sub2.c, src/regression/rotate1.c, + src/regression/rotate2.c, src/regression/rotate3.c, src/regression/rotate4.c, + src/regression/switch1.c, src/regression/rotate5.c, src/regression/for.c, + src/regression/add.c, src/regression/sub.c, src/regression/call1.c: + define SUPPORT_BIT_TYPES 0, removed unused bit variables + +2006-05-22 Raphael Neider + + * src/pic16/gen.c (pic16_storeForReturn): fragile fix for + bug #1492360 (problematic due to generic pointers, see code) + +2006-05-22 Borut Razem + + * support/regression/ports/pic16/specs.mk: removed stack size linker + directive + * support/regression/tests/array.c, + support/regression/tests/bitopcse.c, + support/regression/tests/bug-908454.c, + support/regression/tests/malloc.c: modified for pic16 regression test + * support/regression/tests/bitfields.c: + pic16 - excluded bitfileds of size > 8 + * support/regression/tests/bp.c: pic16 - reduced data size + * support/regression/tests/bug-221100.c: pic16 - reduced data size + * support/regression/tests/bug-460010.c: + pic16 - used the absolute address the fits in memory + * support/regression/tests/bug-716242.c: + bug [ 1443651 ] pic 16: redefining symbol that cannot be redefined. + * support/regression/tests/float.c: + pic16 - excluded - data size too big + * support/regression/tests/onebyte.c: + pic16 - bug [ 1444425 ] onebyte.c regression tes fails on pic16 + * support/regression/tests/shifts.c: + pic16 - function names probably have to differ in first X characters + (gpasm limitation?) + * support/regression/tests/staticinit.c: + pic16 - excluded some tests due error: no target memory available for + section ".idata" + +2006-05-22 Borut Razem + + * support/Util/dbuf.c: fixed bug #1489008 fix dbuf_c_str(), + second try. Thanks Stas Sergeev once more. + +2006-05-21 Maarten Brock + + * src/hc08/gen.c (transferAopAop): aop forced to stack was not restored, + (genLeftShift, genRightShift): fixed bug 1491627 + * src/hc08/peeph.def (rules 7, 8.x): added + * support/regression/tests/shifts.c (ShiftLeftByParam, + ShiftRightByParam, testShiftByParam): added to test variable shifting + +2006-05-20 Raphael Neider + + * src/pic/gen.c (bitpatternFromVal): fixed for 64-bit machines + * src/pic16/ralloc.c (newReg): use correct name in hashtable, + (allocReg): add only new registers to dynAllocRegs, + (pic16_assignRegisters): do not reset dynrIdx, fixes bugs + #1489055, #1445850, and probably #1483693 + +2006-05-19 Vangelis Rokas + + * src/pic16/glue.c (pic16_emitConfigRegs, pic16_emitIDRegs): fixed + bug in for-loop that didn't emit the last of CONFIG and ID registers + +2006-05-18 Maarten Brock + + * src/mcs51/gen.c (genCodePointerGet): inc dptr instead of loading acc + with offset + * src/mcs51/peeph.def (186.x): updated and reenabled to fix bugs + 1489016, 1434401 and 1490124 + * src/ds390/peeph.def (186.x, 227.x): updated and reenabled to fix bugs + 1489016, 1434401 and 1490124 + +2006-05-17 Borut Razem + + * support/Util/dbuf.c: fixed bug #1489008 fix dbuf_c_str(), + thanks Stas Sergeev + +2006-05-15 Maarten Brock + + * device/include/mcs51/P89c51RD2.h, + * device/include/mcs51/P89LPC901.h, + * device/include/mcs51/P89LPC922.h, + * device/include/mcs51/P89LPC932.h: added, thanks Omar Espinosa + +2006-05-14 Vangelis Rokas + + * device/lib/pic16/libsdcc/stack/{stack.S, Makefile.in}: add workaround + to fix missing stack pragma in compiled binary object file, + +2006-05-14 Bernhard Held + + * support/packihx/configure.in, + * support/packihx/configure: removed warning, autoconf >= 2.5x can + determine sizeof basic types even while cross compiling + +2006-05-13 Bernhard Held + + * src/avr/gen.c (aopop), + * src/ds390/gen.c (aopOp), + * src/hc08/gen.c (aopOp), + * src/mcs51/gen.c (aopop), + * src/pic16/gen.c (pic16_aopOp), + * src/pic/gen.c (aopOp), + * src/z80/gen.c (aopop): fix for bug #1479882; use new, exclusive asmop + if size of operand is smaller than spill location + +2006-05-12 Borut Razem + + * *.dsw, *.dsp: changed property svn:eol-style to CRLF since they + have to have CR/LF line endings even if they are checked out on *nix + or on WIN32 in cygwin binmode + +2006-05-12 Maarten Brock + + * doc/sdccman.lyx: documented numeric ranges, WEBDOC #1442369 + * device/include/ds80c390.h: added sfr16 definitions + * src/ds390/gen.c, + * src/ds390/gen.h, + * src/ds390/main.c, + * src/ds390/ralloc.c, + * src/ds390/ralloc.h: changes all over the place to sync with mcs51 + fixing several bugs and adding sfr16/sfr32, reentrant bit params, + bit returning functions + * support/regression/tests/sfr16.c: enabled test on ds390 + +2006-05-11 Erik Petrich + + * src/hc08/gen.c (asmopToBool, genIfx): fix for bug #1429722 + * src/hc08/gen.c (storeRegToAop): fix for bug #1439894 + +2006-05-11 Maarten Brock + + * sim/ucsim/sim.src/memcl.h: added get_decoder() to cl_address_space + * sim/ucsim/sim.src/mem.cc: implemented cl_address_space::get_decoder, + (cl_address_space constructor): removed expensive initialization, + (cl_address_space::get_cell): extended for late initialization, + (cl_address_space::*): use late initialization, + (cl_address_decoder::activate): removed expensive initialization, + This reduced regression test running time by 25% + +2006-05-11 Bernhard Held + + * packihx/, + * configure.in, + * configure, + * sdcc.dsw, + * Makefile.bcc, + * Makefile.in, + * support/packihx/Makefile.in, + * support/packihx/clean.mk, + * support/packihx/Makefile.bcc, + * support/packihx/PackIhx.dsp: moved packihx to support/packihx + +2006-05-11 Erik Petrich + + * src/SDCCval.c (valNot): fix for regression test failure + of not.c on big endian hosts + +2006-05-10 Maarten Brock + + * device/inlcude/mcs51/msc1210.h: new, added, thanks Philippe Latu + +2006-05-10 Erik Petrich + + * device/lib/mcs51/Makefile.in: changed string comparison operator + to = for POSIX compliance; == is bash extension + +2006-05-10 Maarten Brock + + * device/lib/hc08/_mulint.c: applied patch 1485428, thanks + kosmonaut_pirx + +2006-05-09 Vangelis Rokas + + * src/pic16/gen.c (pic16_freeAsmop): release any temp registers + allocated by aopForSym thus fixing bug #1478657 about failed testfwk.c + * src/pic16/main.c (_pic16_keywords): added 'sfr16' keyword, + * src/pic16/ralloc.c (pic16_allocWithIdx): also a fix for bug exposed by + bug report #1478657, + +2006-05-05 Borut Razem + + * doc/Makefile.in: remove of WARNINGS and labels.pl immediately after + making the html + +2006-05-02 Borut Razem + + * doc/Makefile.in: removed *.ind dependency since there is no rule to + create *.ind, which made make to fail if invoked with -j 2 + +2006-05-01 Maarten Brock + + * src/SDCCglue.c (emitRegularMap): partial fix for bug 1477149, thanks + Hubert Sack for patch 1479782 + +2006-05-01 Vangelis Rokas + + * src/pic16/glue.c (pic16_printIvalStruct): fixed bug #1445929 + +2006-05-01 Raphael Neider + + * src/pic/device.c (sanitise_processor_name): only remove p(ic) prefix, + (create_pic): store only prefix-free device name, + (init_pic): check for device names with "16" prefix, + (list_valid_pics), + * src/pic/device.h (struct PIC_device), + * src/pic/main.c (_pic14_genAssemblerPreamble): adapted to single + stored device name, + * device/include/pic/pic12f{635,675,629,683}.h, + * device/lib/pic/libdev/pic12f{635,675,629,683}.c: NEW device libraries + * device/lib/pic/libdev/Makefile.in: allow pic12* devices, + * device/include/pic/pic16f505.h, + * device/lib/pic/libdev/pic16f505.c: removed + * device/include/pic/pic14devices.txt: added support for pic12f + devices, removed unsupported non 16-bit devices + [above changes provided by patch from Zik Saleeba] + * src/pic/*, src/pic16/*, device/include/pic16/*, + device/lib/pic/**, device/lib/pic16/**: obfuscated email address + +2006-05-01 Borut Razem + + * configure.in, configure, doc/Makefile.in: + sync with nightly build makefile - latex, dvipdf and dvips + not needed any more + +2006-04-30 Bernhard Held + + * support/scripts/sdcc.nsi: removed all Readmes and Makefiles + in the library source + +2006-04-30 Maarten Brock + + * support/regression/ports/hc08/spec.mk: fixed bug 1478892 + +2006-04-28 Raphael Neider + + * src/pic16/pcode.c (pic16_newpCodeOpLit12), + * src/pic16/gen.c (pic16_popGetLit12): NEW, create 12 bit literal, + (pic16_loadFSR0): handle 12 bit literals correctly, fixes #1440527 + * src/pic16/pcode.h: added prototype for pic16_newpCodeOpLit12() + 2006-04-28 Bernhard Held + * device/lib/pic/libdev/Makefile.in, + * device/lib/hc08/Makefile.in, * device/lib/gbz80/Makefile.in, * device/lib/z80/Makefile.in, * device/lib/ds390/Makefile.in, * device/lib/ds400/Makefile.in: added srcdir to include search path, thanks to Borut for the bug report + * configure.in, + * configure: always create doc/Makefile independent from --enable-doc + * Makefile.in: always install from directory doc independent from + --enable-doc + * device/lib/pic/Makefile.in: added libdev again, it was erroneously + removed + * device/lib/pic/libdev/Makefile.in: fixed VPATH build + * doc/Makefile.in: install *.txt if present + * device/include/Makefile.in (install): added installation of pic/*.inc + and pic/*.txt files again, they were erroneously removed 2006-04-28 Raphael Neider @@ -11187,4 +11581,3 @@ * as/mcs51/lksym.c: accept everything as symbol name in rel-files, bug fix ID 452601 $Revision$ -