X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ChangeLog;h=014ca6b3d3b9b6a83d6b0d972e85bf5f0311128a;hb=f970f0e6603401042048d98927927133a0f9f255;hp=f65be90839345bd0af9e89cea6208c128b91bb74;hpb=76f5c1f588c9d887958d74fb7aa7b5832ee41a67;p=fw%2Fsdcc diff --git a/ChangeLog b/ChangeLog index f65be908..014ca6b3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,336 @@ +2006-12-13 Raphael Neider + + * src/pic/device.h: removed AssignedMemory structure and macros + * src/pic/device.c: removed global finalMapping (linker assigns + memory locations), + (register_map): add SFRs to remembered memRanges + (addMemRange,isSFR,dump_map,dump_sfr,mapRegister,assignRegister, + assignFixedRegisters,assignRelocatableRegisters): removed, + (setMaxRAM,validAddress): adapted accordingly, + (pic14_hasSharebank,pic14_getSharedStack): only report and use + reasonably sized sharebanks, + * src/pic/ralloc.c (writeUsedRegs): stripped down (remove?), + (allDefsOutOfRange): removed unused code, + * src/pic/main.c (_process_pragma): removed memmap/maxram pragma + handling + * src/pic/pcode.c (register_reassign): removed recursion warning, + fired far too often, + * src/pic/glue.c (emitSymbolToFile,pic14_constructAbsMap): modified + to use existing pic14_stringInSet() to avoid duplicate symbols, + tidied up the code a bit, + (pic14printLocals): added in symmetry to printExterns, replaces + writeUsedRegs more or less, + (picglue): call new pic14_printLocals(), + * device/include/pic/pic*.h: removed #pragma memmap directives, + information gathered from include/pic/pic14devices.txt + * support/scripts/inc2h.pl: do not emit #pragma memmap lines + +2006-12-10 Maarten Brock + + * device/include/mcs51/C8051F520.h: fixed buggy CPT0MX + +2006-12-11 Jesus Calvino-Fraga + + * device/include/mcs51/cc2430.h: fixed missing ';' + +2006-12-10 Raphael Neider + + * device/lib/pic16/libc/stdio/vfprintf.c, + * device/lib/pic16/libc/stdio/printf_small.c, + * device/lib/pic16/libc/stdio/printf_timy.c: pop int from stack for + char arguments, as char varargs are cast to int by the caller, + hopefully fixes #1604915 (other device libraries are still affected) + +2006-12-10 Erik Petrich + * src/mcs51/ralloc.c (packRegsForAssign), + * src/hc08/ralloc.c (packRegsForAssign): fixed bug #1605880 + +2006-12-10 Maarten Brock + + * device/include/malloc.h: removed init_dynamic_memory + * device/lib/malloc.c: made init_dynamic_memory static and automatically + call it once from malloc. Also use _sdcc_heap[] from _heap.c + * device/lib/_heap.c: new, added, contains _sdcc_heap[] + * device/lib/libsdcc.lib, + * device/lib/Makefile.in, + * support/regression/ports/mcs51-xstack-auto/spec.mk: added _heap.c + * doc/sdccman.lyx: documented use of new _heap.c + * support/regression/tests/malloc.c: removed init_dynamic_memory + * src/cdbFile.c(spacesToUnderscores): new function, + (cdbWriteEndFunction, cdbWriteCLine): use spacesToUnderscores, fixes bug + 1068030 + * device/include/tinibios.h: removed defines for putchar and getchar + * device/lib/ds390/Makefile.in: added putchar.c + * device/lib/ds390/putchar.c: new, added, fixes bug 1465671 + +2006-12-09 Borut Razem + + * support/cpp2/sdcc.h: prevent multiple inclusion + * support/cpp2/options.h: deleted + +2006-12-08 Borut Razem + + * support/cpp2/sdcc.h: removed x*alloc() macros + * support/cpp2/libiberty.h: uncommented out x*alloc() declarations + * support/cpp2/Makefile.bcc, support/cpp2/Makefile.in, + support/cpp2/sdcpp.sdc: x*alloc files added to the project + * support/cpp2/system.h: moved #include "sdcc.h" + * support/cpp2/libiberty/xexit.c, support/cpp2/libiberty/xmalloc.c, + support/cpp2/libiberty/xstrdup.c, support/cpp2/libiberty/xstrerror.c: + added + * support/cpp2/sdcppinit.c: added -isysroot, -fsigned-char, + -funsigned-char options + * support/cpp2/sdcppmain.c: fixed bug 1611411 + +2006-12-07 Borut Razem + + * support/cpp2/cpplib.c: reverted sdcpp special handling of _Pragma() + directive + +2006-12-06 Maarten Brock + + * src/SDCCsymt.c (addDecl): fixed bug 1609244 + * src/SDCCmain.c (linkEdit): fixed bug 1609279 + * doc/sdccman.lyx, + * .version: bumped to 2.6.2 because a) it's been a while + b) the linker sources have moved c) the preprocessor is upgraded + +2006-12-04 Frieder Ferlemann + + * support/regression/tests/snprintf.c: some checks + * lib/src/printf_large.c: %bc: read char instead of int from stack + +2006-12-03 Maarten Brock + + * device/include/mcs51/cc2430.h: inserted _XPAGE + +2006-12-02 Jesus Calvino-Fraga + + * device/include/mcs51/cc2430.h: added + +2006-12-02 Maarten Brock + + * device/include/asm/default/features.h, + * device/include/asm/ds390/features.h, + * device/include/mcs51/at89s53.h, + * device/include/ser.h, + * device/include/ser_ir.h, + * device/include/serial.h: changed keywords to double underscore variants, + fixes bug 1590261 some more, thanks Steven Borley + +2006-12-01 Raphael Neider + + * src/pic/pcode.c (register_reassign): do not crash on recursive code + but emit warning (recursion is not supported for pic14) + +2006-11-30 Frieder Ferlemann + + * src/mcs51/peeph.def: added 101.a,b (moves to int/long xdata) + * doc/sdccman.lyx: various small changes, acknowledged Sourceforge + +2006-11-30 Raphael Neider + + * src/pic/device.c (dump_sfr): always emit symbols + * src/pic/glue.c (pic14printPublics): fixed typo + +2006-11-30 Raphael Neider + + * src/pic/device.c (create_pic,ram_map): add memRange entries to PIC + (pic14_getSharebankSize, pic14_getSharebankAddress): replaced with + (pic14_hasSharebank,pic14_isShared,pic14_allRAMShared, + pic14_getSharedStack): NEW, evaluate the memRange entries to locate + a sharebank, use a non-shared bank for the stack if none available + * src/pic/device.h (struct memRange): added linked list next field, + added prototypes for above functions + * src/pic/ralloc.c (initStack): handle shared and banked stacks, + (typeRegWithIdx): accept fixed and unfixed stack registers + * src/pic/pcode.c (pCodeInitRegisters): use new functions to create + the stack, handle shared and banked stack (except for WSAVE), + (insertBankSel): removed useless optimization (will never fire), + (FixRegisterBanking): added optimization for devices with only one + possibly aliased bank of memory, like 16f84 + * src/pic/glue.c (pic14_constructAbsMap): back to udata_ovr, as some + devices have no SHAREBANK in the linker script + * device/include/pic/pic14devices.txt: documented memmap + * device/lib/pic/libdev/Makefile.in: removed --stack-loc again + +2006-11-30 Erik Petrich + + * src/hc08/gen.c (transferRegReg, loadRegFromAop, forceStackedAop, + storeRegToAop, freeAsmop, genPlusIncr, genPlus, genPointerGetSetOfs, + genAnd, genOr, genXor, genLeftShiftLiteral, genRightShiftLiteral, + genhc08Code): switched most of the D (debug) macros to DD (detailed + debug) macros to better control clutter in the generated .asm file. + * src/hc08/gen.c: (forceStackedAop, genUminus, genLeftShift, + genRightShift): fixed bug with non-constant bit shift stored to + a volatile result (SF Open Discussion forum thread #1616749). + Single byte case is not yet optimized. + +2006-11-28 Maarten Brock + + * device/include/asm/mcs51/features.h, + * device/include/malloc.h, + * device/include/stdio.h: changed keywords to double underscore variants, + fixes bug 1590261 + +2006-11-27 Borut Razem + + * support/cpp2/cppexp.c, support/cpp2/hashtable.h, + support/cpp2/Makefile.in, support/cpp2/cppfiles.c, + support/cpp2/output.h, support/cpp2/cppinit.c, + support/cpp2/cpplib.c, support/cpp2/cpplib.h, + support/cpp2/Makefile.bcc, support/cpp2/cpphash.c, + support/cpp2/cppdefault.c, support/cpp2/system.h, + support/cpp2/cpphash.h, support/cpp2/cpplex.c, + support/cpp2/cppdefault.h, support/cpp2/mbchar.c, + support/cpp2/prefix.c, support/cpp2/except.h, + support/cpp2/hwint.h, support/cpp2/cppmacro.c, + support/cpp2/line-map.h, support/cpp2/sdcpp.dsp, + support/cpp2/sdcc.h, support/cpp2/mkdeps.c, + support/cpp2/version.c, support/cpp2/cppmain.c, + support/cpp2/version.h, support/cpp2/hashtable.c, + support/cpp2/cpperror.c: + synchronized with GCC CPP release version 3.3.6, + the latest where cppmain.c still exists. + * support/cpp2/cpptrad.c, support/cpp2/sdcppmain.c, + support/cpp2/sdcppinit.c: added + +2006-11-27 Borut Razem + + * support/cpp2/cpplex.c: + fixed _asm ... _endasm handling bug, introduce with GCC CPP + synchronization + * support/cpp2/cpplib.c: removed definitions of unused variables + +2006-11-26 Borut Razem + + * support/cpp2/libiberty.h: commented out x*alloc() declarations + since they are redefined by macros in support/cpp2/sdcc.h + * support/cpp2/sdcc.h: x*alloc macro redefinition + +2006-11-25 Borut Razem + + * support/cpp2/cppexp.c, support/cpp2/hashtable.h, + support/cpp2/configure, support/cpp2/Makefile.in, + support/cpp2/cppfiles.c, support/cpp2/output.h, + support/cpp2/cppinit.c, support/cpp2/cpplib.c, + support/cpp2/config.h, support/cpp2/cpplib.h, + support/cpp2/Makefile.bcc, support/cpp2/cpphash.c, + support/cpp2/cppdefault.c, support/cpp2/config.in, + support/cpp2/system.h, support/cpp2/cpplex.c, + support/cpp2/cpphash.h, support/cpp2/mbchar.c, + support/cpp2/cppdefault.h, support/cpp2/prefix.c + support/cpp2/hwint.h, support/cpp2/mbchar.h, + support/cpp2/prefix.h, support/cpp2/cppmacro.c, + support/cpp2/configure.in, support/cpp2/intl.h, + support/cpp2/sdcpp.dsp, support/cpp2/acconfig.h, + support/cpp2/sdcc.h, support/cpp2/mkdeps.c, + support/cpp2/version.c, support/cpp2/cppmain.c, + support/cpp2/ansidecl.h, support/cpp2/libiberty.h, + support/cpp2/hashtable.c, support/cpp2/aclocal.m4, + support/cpp2/cpperror.c, + support/cpp2/libiberty/safe-ctype.c, + support/cpp2/libiberty/safe-ctype.h, + support/cpp2/libiberty/splay-tree.c, + support/cpp2/libiberty/obstack.c, + support/cpp2/libiberty/lbasename.c, + support/cpp2/libiberty/splay-tree.h, + support/cpp2/libiberty/obstack.h: + synchronized with GCC CPP release version 3.2.3, + the latest before integration of cpp into gcc + * support/cpp2/except.h, support/cpp2/line-map.c, + support/cpp2/line-map.h, + support/cpp2/libiberty/hex.c, + support/cpp2/libiberty/concat.c, + support/cpp2/libiberty/filenames.h: added + * support/cpp2/intl.c: deleted + +2006-11-24 Borut Razem + + * src/SDCC.y: enabled compilation of empty source file + * support/Util/SDCCerr.[ch]: added sdcc warning 190 - + "ISO C forbids an empty source file" + * device/lib/_startup.c, device/lib/printf_tiny.c: disable warning 190 + if all the code is ifdefed out. + +2006-11-24 Erik Petrich + + * src/hc08/gen.c (genPcall): fix for bug #1601032 + +2006-11-23 Maarten Brock + + * device/include/mcs51/c8051f000.h, device/include/mcs51/C8051F000.h, + * device/include/mcs51/c8051f018.h, device/include/mcs51/C8051F018.h, + * device/include/mcs51/c8051f020.h, device/include/mcs51/C8051F020.h, + * device/include/mcs51/c8051f040.h, device/include/mcs51/C8051F040.h, + * device/include/mcs51/c8051f060.h, device/include/mcs51/C8051F060.h, + * device/include/mcs51/c8051f120.h, device/include/mcs51/C8051F120.h, + * device/include/mcs51/c8051f200.h, device/include/mcs51/C8051F200.h, + * device/include/mcs51/c8051f300.h, device/include/mcs51/C8051F300.h, + * device/include/mcs51/c8051f310.h, device/include/mcs51/C8051F310.h, + * device/include/mcs51/c8051f320.h, device/include/mcs51/C8051F320.h, + * device/include/mcs51/c8051f326.h, device/include/mcs51/C8051F326.h, + * device/include/mcs51/c8051f330.h, device/include/mcs51/C8051F330.h, + * device/include/mcs51/c8051f340.h, device/include/mcs51/C8051F340.h, + * device/include/mcs51/c8051f350.h, device/include/mcs51/C8051F350.h, + * device/include/mcs51/c8051f410.h, device/include/mcs51/C8051F410.h: + Renamed to all upper case as per the standard set by SiLabs + +2006-11-23 Maarten Brock + + * device/include/mcs51/C8051F520.h: new, added + * device/include/mcs51/compiler.h: added link about predefined macros + +2006-11-23 Raphael Neider + + * src/regression/Makefile: add -L path to fresh library + * src/regression/simulate: emphasize FAILED output + * src/regression/create_stc: output _failures from gpsim + * src/regression/compare4.c, + * src/regression/rotate6.c: fixed char literals, + all compile, all run =8-D + + * src/pic/pcode.h: added isPCASMDIR macro + * src/pic/gen.c (genAnd): fixed bit offset + * src/pic/ralloc.c (allocNewDirReg,allocDirReg,allocRegByName, + packBits): unified register numbering schemes, + (newReg): do not insert stack registers into hash table, + (initStack): unpinned pseudo stack, simplified, + (typeRegWithIdx): fixed retrieval of stack registers, + * src/pic/pcode.c (addpCodeComment,sameBank): added, + (pCodeReplace): removed invalid assertion, + (insertPCodeInstruction): fixed newly added labels, + (insertBankSwitch,BankSelect,IsBankChange,DoBankSelect, + FixRegisterBankingInFlow,compareBankFlow,FixBankFlow, + DumpFlow): removed unsed (broken?) code, + (insertBankSel): prevent STATUS from being BANKSELed, + (FixRegisterBanking): rewritten from scratch, implemented generic + optimizations (suppress BANKSELs to same register and to registers + present in all banks), + (AnalyzeBanking): update flow after BANKSELection + + * src/pic/glue.c (pic14_constructAbsMap): emit pseudo stack in + sharebank, let linker place it, mark STKxx symbols as emitted + +2006-11-21 Frieder Ferlemann + + * src/regression/arrays.c, + * src/regression/bank1.c, + * src/regression/bool2.c, + * src/regression/compare7.c, + * src/regression/compare8.c, + * src/regression/compare9.c, + * src/regression/compare10.c, + * src/regression/configword.c, + * src/regression/for.c, + * src/regression/mult1.c, + * src/regression/pointer1.c, + * src/regression/rotate6.c, + * src/regression/string1.c, + * src/regression/struct1.c, + * src/regression/Makefile: make PIC14 regression tests run again + (3 fail, 6 won't compile) + 2006-11-21 Raphael Neider * device/include/pic16/pic18f4550.h,