X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ChangeLog;h=f15b2df226f92cb6fd0b7bd3bc172800d9d19046;hb=59f25f3b7568d46895829357056cfa43cfb68037;hp=686cc74877b1f49058074dfb84f6935bdd08463f;hpb=fe9b00fb61dc71f48cb6416e608b5b6882bbc35f;p=fw%2Fsdcc diff --git a/ChangeLog b/ChangeLog index 686cc748..f15b2df2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,1440 @@ +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, + * device/include/pic16/pic18f4455.h, + * device/lib/pic16/libdev/pic18f4550.c, + * device/lib/pic16/libdev/pic18f4455.c: fixed #1578591 and #1595144 + * configure.in: removed superfluous closing bracket + +2006-11-21 Jesus Calvino-Fraga + + * device/lib/expf.c: Fixed bug 1599523: result of expf(x) is + always positive. + +2006-11-21 Raphael Neider + + * src/pic/device.{c,h}: added pic14_getPIC() + * src/pic/gen.c (continueIfTrue,jumpIfTrue): added PIC code, + (genAnd): added PIC code for one case, fixes #1597044 + * src/pic/pcode.c (BankSelect): Ohoh, added generic optimization for + SFRs that are present in all banks (e.g., STATUS) + +2006-11-20 Raphael Neider + + * src/pic/pcode.c: changed inverted ops for DECFSZ/DECFSZW and + INCFSZ/INCFSZW and declared them as changing Z bit, + (insertPCodeInstruction): correctly invert the above instructions, + fixes #1599333, + (DoBankSelect): don't panic on po_immediates + +2006-11-14 Maarten Brock + + * as/link/aslink.h, + * as/link/mcs51/lkihx.c (newArea), + * as/link/mcs51/lkrloc.c: renamed newArea() to ihxNewArea() + * as/link/mcs51/lkihx.c (ihx): output reset vector as start address + +2006-11-11 Raphael Neider + + * src/pic/pcode.c (newpCodeOpBit): search SymbolTab for referenced + bitfield symbols, fixes #1579535 (once more...). + +2006-11-09 Frieder Ferlemann + + * support/regression/generate-cases.py, + * support/regression/fwk/include/testfwk.h, + * support/regression/fwk/lib/testfwk.c: used code pointers, + (about 50kByte less code generated for mcs51) + +2006-11-06 Borut Razem + + * debugger/mcs51/acinclude.m4, debugger/mcs51/aclocal.m4, + debugger/mcs51/configure: fixed failed check because the function + rl_function_of_keyseq isn't in Readline 5.2. Thanks to Ilya Goldberg + who submitted the patch for gpsim. + * debugger/mcs51/configure.in: removed the result message + * debugger/mcs51/Makefile.in: fixed the config.status warning + "... seems to ignore the --datarootdir setting" + +2006-11-03 Maarten Brock + + * device/include/mcs51/c8051f020.h, + * device/include/mcs51/c8051f040.h, + * device/include/mcs51/c8051f060.h, + * device/include/mcs51/c8051f120.h: added PS0, fixed bug 1589279 + * src/z80/gen.c (gencjneshort), + * src/z80/peeph.def: applied patch 1571373, thanks Philipp Krause + +2006-10-31 Borut Razem + + * debugger/mcs51/acinclude.m4, debugger/mcs51/aclocal.m4, + debugger/mcs51/configure: get readline version + +2006-10-30 Borut Razem + + * debugger/mcs51/sdcdb.c: replaced hardcoded "/" with DIR_SEPARATOR_STRING + * debugger/mcs51/acinclude.m4, debugger/mcs51/aclocal.m4, + debugger/mcs51/configure: locate readline even when cross compiling + * support/scripts/sdcc.nsi: include readline5.dll into the setup package + +2006-10-29 Jesus Calvino-Fraga + + * device/include/mcs51/serial_IO.h: putchar() and getchar() using + serial port. + +2006-10-29 Maarten Brock + + * device/include/malloc.h, + * device/lib/calloc.c, + * device/lib/free.c, + * device/lib/malloc.c, + * device/lib/realloc.c: moved definition of struct into sources + * support/regression/tests/malloc.c: use void* for init_dynamic_memory() + +2006-10-29 Maarten Brock + + * as/asx8051.dsp: corrected output directories + * as/link/hc08: new directory for hc08 linker + * as/hc08/aslink.h, as/link/aslink.h, + * as/hc08/aslink.mak, as/link/hc08/aslink.mak, + * as/hc08/clean.mk, as/link/hc08/clean.mk, + * as/hc08/link_hc08.dsp, as/link/hc08/link_hc08.dsp, + * as/hc08/lkaomf51.c, as/link/hc08/lkaomf51.c, + * as/hc08/lkarea.c, as/link/hc08/lkarea.c, + * as/hc08/lkdata.c, as/link/hc08/lkdata.c, + * as/hc08/lkelf.c, as/link/hc08/lkelf.c, + * as/hc08/lkihx.c, as/link/hc08/lkihx.c, + * as/hc08/lklibr.c, as/link/hc08/lklibr.c, + * as/hc08/lkmain.c, as/link/hc08/lkmain.c, + * as/hc08/lkmem.c, as/link/hc08/lkmem.c, + * as/hc08/lkrloc.c, as/link/hc08/lkrloc.c, + * as/hc08/lks19.c, as/link/hc08/lks19.c, + * as/hc08/Makefile.aslink, as/link/hc08/Makefile.aslink, + * as/hc08/Makefile.bcc, as/link/hc08/Makefile.bcc, + * as/hc08/Makefile.in, as/link/hc08/Makefile.in, + * as/link/hc08/conf.mk, + * configure, + * configure.in, + * Makefile.in, + * sdcc.dsw: moved hc08 linker to as/link/hc08 + * as/hc08/lkeval.c, as/link/mcs51/lkeval.c, as/link/lkeval.c, + * as/hc08/lkhead.c, as/link/mcs51/lkhead.c, as/link/lkhead.c, + * as/hc08/lklex.c, as/link/mcs51/lklex.c, as/link/lklex.c, + * as/hc08/lklist.c, as/link/mcs51/lklist.c, as/link/lklist.c, + * as/hc08/lknoice.c, as/link/mcs51/lknoice.c, as/link/lknoice.c, + * as/hc08/lksym.c, as/link/mcs51/lksym.c, as/link/lksym.c, + * as/link/mcs51/aslink.dsp, + * as/link/mcs51/Makefile.in: factored out the common files + * as/hc08/lkstore.c: deleted, use the one already in as/link/ + * as/clean.mk: extra cleaning common files + * as/link/mcs51/strcmpi.c, as/strcmpi.c: moved + * as/link/mcs51/strcmpi.h: deleted, moved protoype to aslink.h + * as/mcs51/asm.h: include sdccconf.h or sdcc_vc.h + +2006-10-29 Raphael Neider + + * src/pic/ralloc.c (newReg): create aliases for registers with + multiple names to fix #1579535 and #1584001, + (regWithIdx,dirregWithName): resolve aliases on lookup + * src/pic/pcode.c (DoBankSelect): die with error message on failing + bankselect + * device/lib/pic/libdev/Makefile.in: move pseudo stack down to 0x4f + to prevent build errors on small devices + +2006-10-28 Raphael Neider + + * src/pic/gen.c (genFunction,genCall): drop "same code page" + assumption within interrupt handlers, fixes #1584940 + * src/pic/glue.c (pic14_constructAbsMap): mark absolute symbols as + "emitted" to avoid emitting them again in udata + +2006-10-27 Jesus Calvino-Fraga + + * device/lib/_putchar.c, device/lib/_getchar.c, device/lib/inituart.c: + Removed. + +2006-10-26 Jesus Calvino-Fraga + + * device/lib/_putchar.c, device/lib/_getchar.c, device/lib/inituart.c: + Initialize uart only if SM0 and SM1 are zero. Also, use flag to turn + on/off CR to CRLF conversion. + +2006-10-25 Frieder Ferlemann + + * doc/sdccman.lyx: updated IRQ section + +2006-10-24 Jesus Calvino-Fraga + + * device/lib/serial_io.c: removed + * device/lib/_putchar.c, device/lib/_getchar.c, device/lib/inituart.c + replacements for serial_io.c + +2006-10-24 Maarten Brock + + * src/z80/main.c (_process_pragma, _parseOptions): fixed bug 1583318 + +2006-10-24 Jesus Calvino-Fraga + + * device/lib/serial_io.c: Default putchar() and getchar() for + mcs51 uses serial port. + +2006-10-23 Maarten Brock + + * src/mcs51/gen.c (movc): improved check for 0 and 1, see RFE 1582704 + +2006-10-23 Frieder Ferlemann + + * support/regression/ports/mcs51/support.c: smaller + _sdcc_external_startup() + * device/lib/mcs51/crtxclear.asm: don't check high byte of l_PSEG + +2006-10-20 Maarten Brock + + * device/lib/gbz80/crt0.s, + * device/lib/gbz80/crt0_rle.s, + * device/lib/gbz80/div.s, + * device/lib/gbz80/fstubs.s, + * device/lib/gbz80/heap.s, + * device/lib/gbz80/mul.s, + * device/lib/gbz80/putchar.s, + * device/lib/gbz80/stubs.s, + * device/lib/z80/crt0.s, + * device/lib/z80/crt0_rle.s, + * device/lib/z80/div.s, + * device/lib/z80/fstubs.s, + * device/lib/z80/heap.s, + * device/lib/z80/mul.s, + * device/lib/z80/putchar.s, + * device/lib/z80/stubs.s: reverted, I was mistaken + +2006-10-20 Frieder Ferlemann + + * src/mcs51/peeph.def: peephole 238.x added check for notvolatile + * support/regression/ports/mcs51/support.c: removed race + condition on TI in _putchar allowing to use serial port mode 0 + +2006-10-20 Borut Razem + + * debugger/mcs51/sdcdb.c: replaced isblank() with isspace() + +2006-10-19 Maarten Brock + + * device/lib/gbz80/crt0.s, + * device/lib/gbz80/crt0_rle.s, + * device/lib/gbz80/div.s, + * device/lib/gbz80/fstubs.s, + * device/lib/gbz80/heap.s, + * device/lib/gbz80/mul.s, + * device/lib/gbz80/putchar.s, + * device/lib/gbz80/stubs.s, + * device/lib/z80/crt0.s, + * device/lib/z80/crt0_rle.s, + * device/lib/z80/div.s, + * device/lib/z80/fstubs.s, + * device/lib/z80/heap.s, + * device/lib/z80/mul.s, + * device/lib/z80/putchar.s, + * device/lib/z80/stubs.s: removed all leading underscores from area names + +2006-10-17 Maarten Brock + + * support/regression/ports/mcs51/support.c: use highest baudrate so the + regression tests are not waiting in the simulator for simulated + transmission of debug output + +2006-10-16 Frieder Ferlemann + + * device/lib/printf_large.c: slightly smaller + * doc/sdccman.lyx: do not use spaces within html links + +2006-10-16 Borut Razem + + * configure.in, configure, sdccconf_in.h, src/SDCCglobal, + debugger/mcs51/Makefile.in, debugger/mcs51/sdcdb.[ch], + debugger/mcs51/aclocal.m4, debugger/mcs51/acinclide.m4, + debugger/mcs51/config.h.in, debugger/mcs51/configure.in, + debugger/mcs51/configure: + [ 1185668 ] add gnu readline support to sdcdb - enabled + +2006-10-16 Raphael Neider + + * src/pic/pcode.c (BankSelect): another fix on (partial) BANKSELs, + fixes #1577882, removes close to all banking optimizations + +2006-10-15 Maarten Brock + + * src/SDCCsymt.c (checkSClass): no error for uninitialised absolute + variables in code memory + * support/regression/tests/absolute.c: added test for this + +2006-10-15 Raphael Neider + + * src/pic/pcode.c (InsertBankSel): suppress BANKSELs for one bank + devices, + (BankSelect): emit BANKSEL before touching linker-placed regs, + fixes #1570934 + +2006-10-10 Raphael Neider + + * src/SDCCmain.c (optionsTable): accept --stack-size for PICs, + * src/pic/device.c (pic14_getSharebankSize,pic14_getSharebankAddress), + * src/pic/main.c (_pic14_parseOptions), + * src/pic/main.h: mostly reverted to previous state, now use results + from SDCCmain.c's argument parsing + +2006-10-10 Borut Razem + + * debugger/mcs51/break.[ch], debugger/mcs51/cmd.c, + debugger/mcs51/sdcdb.[ch], debugger/mcs51/simi.c: + [ 1185668 ] add gnu readline support to sdcdb - + prepared for READLINE, not enabled yet, + thanks to + +2006-10-10 Raphael Neider + + * src/pic16/pcode.c (pic16_pCode2str): use isACCESS_BANK macro + * src/pic16/devices.inc, + * device/include/pic16 (pic18f[24]620.h), + * device/include/pic18fregs.h, + * device/lib/pic16/pics.all, + * device/lib/pic16/libdev/pic18f[24]{620,525}.c): added support for + 18f2620, 18f4620, 18f2525, and 18f4525 devices, thanks to + Gary Plumbridge and Anton Strobl + +2006-10-10 Raphael Neider + + * src/pic/main.c (_pic14_parseOptions): added --stack-loc=NUM and + --stack-siz=NUM options to configure the argument passing stack + * src/pic/main.h: added stackLocation and stackSize to pic14_options_t + * src/pic/device.c (mapRegister): catch out-of-memory SIGSEGVs, + (pic14_getSharebankSize): obey --stack-siz=NUM, + (pic14_getSharebankAddress): obey --stack-loc=NUM + +2006-10-08 Frieder Ferlemann + + * doc/sdccman.lyx: added to the manual + * doc/figures/ddd_example.png: added (neither pdflatex nor + most browsers seem to like the .eps file) + +2006-10-06 Bernhard Held + + * src/SDCCglue.c (tempfileandname): changed un*x tmp search paths + to /tmp and /var/tmp acc. LSB + * src/SDCCast.c (addCast): Fixed bug 1571231: promote in case of + RESULT_TYPE_IFX + * support/regression/tests/onebyte.c: added test + +2006-10-05 Jesus Calvino-Fraga + + * src/mcs51/gen.c: emitcode for "add a,0x%02x" requires only 8 bits. + +2006-10-05 Borut Razem + + * partially fixed [ 1570701 ] peephole - not replacing code from multiline macros, + thanks to dfulab: + - sdcc.dsw: changed property eol-style to CRLF + - support/scripts/resource.rc: replaced references to "afxres.h" with "winres.h" + +2006-10-04 Raphael Neider + + * device/include/pic/{pic16f84.h,pic16f84a.h}, + * device/lib/pic/libdev/{pic16f84.c,pic16f84a.c}: added PORT[AB]_bits + from patch #1522504, thanks to Robas Teodor + +2006-10-02 Maarten Brock + + * as/link/z80/lkarea.c: essentially reverted lnksect() to #4380 which + fixes bug 1566015 + +2006-10-01 Maarten Brock + + * src/pic16/glue.c (pic16emitMaps), + * src/pic/glue.c (pic14emitMaps): hopefully fixed bug 1568779 + * device/lib/gets.c: fixed bug 1568829,thanks Philipp Krause + * device/lib/pic16/libc/string/memcpypgm2ram.c, + * device/lib/pic16/libc/string/memcpyram2ram.c: fixed bug 1568836, thanks + Philipp Krause + * as/mcs51/asmain.c (asmbl, newdot): fixed problems with absolute areas + * as/link/mcs51/lkmem.c (summary2): reverted, do do count abs segments + +2006-09-30 Jesus Calvino-Fraga + + * support/librarian/sdcclib.c: Added option -l. + * as/link/mcs51/lkmem.c: don't use absolute segments to compute memory + usage totals. + * device/lib/make51lib.bat: added. Allows building mcs51 libraries easily + using Windows command prompt. + +2006-09-30 Maarten Brock + + * device/lib/libsdcc.lib: added module rand + * src/ds390/ralloc.c (rematStr), + * src/hc08/ralloc.c (rematStr), + * src/mcs51/ralloc.c (rematStr), + * src/z80/ralloc.c (rematStr): made output more consistent + * src/mcs51/gen.c: cosmetic changes + +2006-09-30 Maarten Brock + + * src/port.h: added mem.cabs_name to PORT + * src/ds390/main.c, + * src/hc08/main.c, + * src/mcs51/main.c, + * src/pic16/main.c, + * src/pic/main.c, + * src/xa51/main.c, + * src/z80/main.c: added cabs_name initializers + * src/SDCCglue.c (emitStaticSeg): allocate and initialize absolute + constants + (emitMaps): emit absolutes in code memory into cabs_name + * src/SDCCmem.c, + * src/SDCCmem.h: added memory map c_abs and defined CABS_NAME + * src/ds390/gen.c (genCodePointerGet): fixed bug if left is a literal + * support/regression/fwk/include/testfwk.h: added define for at + * support/regression/tests/absolute.c: added, new + +2006-09-29 Maarten Brock + + * src/mcs51/gen.c (genPlusIncr, genMinusDec, genAddrOf): small + optimizations, see also patch 887161 by Stas Sergeev + * src/mcs51/peeph.def(104, 207, 209, 212): disabled as they do not seem + to be necessary anymore, + (102, 103, 104, 127): renamed all occurances of bp to _bp + +2006-09-27 Maarten Brock + + * device/include/mcs51/at89c51snd1c.h: fixed MSK_SREQ definition + thanks Weston T. Schmidt for patch 1555221 + * src/mcs51/peeph.def: renamed rule 257 to 257.a, added 257.b + * src/SDCCicode.c(geniCodeMultiply): small optimization + +2006-09-26 Maarten Brock + + * device/include/stdlib.h: added rand prototypes + * device/lib/rand.c: new, added + * device/lib/Makefile.in: added rand.c + * src/z80/peeph.def, + * src/z80/peeph-gbz80.def, + * src/z80/peeph-z80.def: updated conditonals, fixed bug 1565908 + +2006-09-20 Raphael Neider + + * device/lib/pic16/libio/i2c/i2cnack.c (i2c_nack): fixed ACKDT bit + +2006-09-19 Maarten Brock + + * as/link/aslink.h: cosmetic changes + * as/link/mcs51/Makefile.in, + * as/link/z80/Makefile.in: fixed build on CF where VPATH is used + +2006-09-17 Maarten Brock + + * as/link/aslink.h, + * as/link/mcs51/aslink.h, + * as/link/z80/aslink.h: merged and moved to as/link/ + * as/link/lkstore.c, + * as/link/mcs51/lkstore.c: moved to as/link/ + * as/link/clean.mk: remove *.o + * as/link/mcs51/alloc.h: deleted + * as/link/mcs51/lkarea.c: added lnksect prototype + * as/link/mcs51/lkdata.c, + * as/link/mcs51/lklex.c, + * as/link/mcs51/lkmain.c: renamed as_getline to lk_getline + * as/link/mcs51/lkmem.c, + * as/link/mcs51/lknoice.c: removed include strcmpi.h + * as/link/mcs51/lksym.c: include stdlib.h instead of malloc.h or alloc.h + * as/link/mcs51/aslink.dsp, + * as/link/mcs51/Makefile.aslink, + * as/link/mcs51/Makefile.bcc, + * as/link/mcs51/Makefile.in: updated for moved files + * as/link/z80/lkarea.c, + * as/link/z80/lkhead.c, + * as/link/z80/lklex.c, + * as/link/z80/lklibr.c, + * as/link/z80/lklist.c, + * as/link/z80/lkmain.c, + * as/link/z80/lkrloc.c, + * as/link/z80/lksym.c: synced with mcs51 + * as/link/z80/lkdata.c, + * as/link/z80/lkeval.c, + * as/link/z80/lkihx.c, + * as/link/z80/lks19.c: cosmetic changes + * as/link/z80/Makefile.in, + * as/link/z80/linkgbz80.dsp, + * as/link/z80/linkz80.dsp: updated for moved files + +2006-09-16 Borut Razem + + * debugger/mcs51/sdcdb.c: partially fixed + [ 1203664 ] sdcdb fails to open files w. two "." periods + * debugger/mcs51/simi.c, debugger/mcs51/symtab.c, + debugger/mcs51/symtab.h: fixed indenting + * configure.in, configure: up to date with latest Maarten's changes + +2006-09-15 Maarten Brock + + as/link/mcs51 + as/aslink.dsp, as/link/mcs51/aslink.dsp, + as/link/mcs51/aslink.h, as/mcs51/aslink.h, + as/link/mcs51/aslink.mak, as/mcs51/aslink.mak, + as/link/mcs51/lkaomf51.c, as/mcs51/lkaomf51.c, + as/link/mcs51/lkarea.c, as/mcs51/lkarea.c, + as/link/mcs51/lkdata.c, as/mcs51/lkdata.c, + as/link/mcs51/lkeval.c, as/mcs51/lkeval.c, + as/link/mcs51/lkhead.c, as/mcs51/lkhead.c, + as/link/mcs51/lkihx.c, as/mcs51/lkihx.c, + as/link/mcs51/lklex.c, as/mcs51/lklex.c, + as/link/mcs51/lklibr.c, as/mcs51/lklibr.c, + as/link/mcs51/lklist.c, as/mcs51/lklist.c, + as/link/mcs51/lkmain.c, as/mcs51/lkmain.c, + as/link/mcs51/lkmem.c, as/mcs51/lkmem.c, + as/link/mcs51/lknoice.c, as/mcs51/lknoice.c, + as/link/mcs51/lkrloc.c, as/mcs51/lkrloc.c, + as/link/mcs51/lks19.c, as/mcs51/lks19.c, + as/link/mcs51/lkstore.c, as/mcs51/lkstore.c, + as/link/mcs51/lksym.c, as/mcs51/lksym.c, + as/link/mcs51/Makefile.aslink, as/mcs51/Makefile.aslink, + as/link/mcs51/alloc.h, + as/link/mcs51/clean.mk, + as/link/mcs51/conf.mk, + as/link/mcs51/Makefile.bcc, + as/link/mcs51/Makefile.in, + as/link/mcs51/readme.390, + as/link/mcs51/strcmpi.c, + as/link/mcs51/strcmpi.h, + as/mcs51/clean.mk, + as/mcs51/Makefile.bcc, + as/mcs51/Makefile.in, + configure, + Makefile.in, + sdcc.dsw: moved mcs51 linker to as/link/mcs51 + +2006-09-14 Maarten Brock + + * as/link, + * as/link/Makefile.in, + * as/link/z80/linkgbz80.dsp, + * as/link/z80/linkz80.dsp, + * configure, + * link, + * link/clean.mk, + * link/Makefile.in, + * link/README, + * link/z80, + * link/z80/aslink.h, + * link/z80/clean.mk, + * link/z80/conf.mk, + * link/z80/linkgbz80.dsp, + * link/z80/linkz80.dsp, + * link/z80/lkarea.c, + * link/z80/lkdata.c, + * link/z80/lkeval.c, + * link/z80/lkgb.c, + * link/z80/lkgg.c, + * link/z80/lkhead.c, + * link/z80/lkihx.c, + * link/z80/lklex.c, + * link/z80/lklibr.c, + * link/z80/lklist.c, + * link/z80/lkmain.c, + * link/z80/lkrloc.c, + * link/z80/lks19.c, + * link/z80/lksym.c, + * link/z80/Makefile.in, + * Makefile.in, + * sdcc.dsw: moved link/ to as/link/ + +2006-09-11 Maarten Brock + + * as/mcs51/i51mch.c (machine): fixed warning + +2006-09-10 Maarten Brock + + * as/mcs51/i51mch.c (machine): S_DJNZ fixed bug 1554318 + +2006-09-09 Borut Razem + + * debugger/mcs51/sdcdb.c, debugger/mcs51/simi.c: + sdcdb WIN32 native port + * src/clean.mk: fixed + +2006-09-08 Borut Razem + + * doc/sdccman.lyx: SDCDB and ucSim are available on Win32 platforms. + +2006-09-08 Raphael Neider + + * src/pic16/main.c (_pic16_linkEdit,pic16_linkCmd), + * src/pic/main.c(_pic14_do_link, linkCmd): pass "-w" and "-r" + to gplink to disable processor mismatch warning and to allow + the use of devices with only aliased (shared) memory banks, + (_pic16_genAssemblerPreamble): include pXXX.inc on --mplab-comp + +2006-09-07 Jesus Calvino-Fraga + + * doc/sdccman.lyx: Some re-formating plus example on using + #pragma preproc_asm +/- + +2006-09-07 Borut Razem + + * support/scripts/sdcc.nsi: added SDCDB executables in a separate + section + +2006-09-06 Borut Razem + + * support/scripts/sdcc.nsi: fixed Error: unterminated string parsing + line at sdcc.nsi:153 + * sdcc/debugger/mcs51/simi.c: argsToCmdLine() fixes + +2006-09-05 Borut Razem + + * configure.in, configure: support for winsock2 + * debugger/mcs51/break.h, debugger/mcs51/cmd.c, + debugger/mcs51/cmd.h, debugger/mcs51/sdcdb.c, + debugger/mcs51/sdcdb.h, debugger/mcs51/simi.c, + debugger/mcs51/simi.h, debugger/mcs51/symtab.c, + debugger/mcs51/symtab.h: sdcdb WIN32 native port + +2006-09-05 Maarten Brock + + * src/SDCCopt.c (cnvToFcall): fixed bug 1551947 by updating OP_USES + and OP_DEFS + * support/regression/tests/bug1551947.c: new, added + * src/SDCCsymt.h: strings are char* not byte* + +2006-09-05 Raphael Neider + + * device/lib/pic16/libdev/pic18f4550.c, + device/include/pic16/pic18f4550.h: added PORTD/TRISD + declarations/definitions from patch #1520949 + +2006-09-05 Raphael Neider + + * src/pic16/gen.c (genPackBits): fix assignment to 8-bit, + byte-aligned bitfields, fixes #1539278 + +2006-09-05 Raphael Neider + + * src/pic/gen.c (genReceive): skip unreferenced arguments, + fixes #1544120 + +2006-09-04 Borut Razem + + * support/scripts/sdcc.nsi: move ucSim executables to a separate section + * support/scripts/sdcc_cygwin_mingw32: don't disable ucsim, + -mno-cygwin is a part of the compiler name + * support/scripts/sdcc_mingw32: don't disable ucsim + +2006-09-03 Borut Razem + + * sdcc.spec: corrected for 2.6.0. Thanks to Christer Weinigel. + * device/lib/Makefile.in device/lib/clean.mk: small but essential corrections + +2006-09-03 Raphael Neider + + * src/pic/ralloc.c, + * src/pic/pcode.c (InitReuseRegs): allocate registers with pseudo + indices >= 0x1000 to disambiguate them from fixed regs __at(addr), + fixes #1550049 + +2006-09-01 Borut Razem + + * sim/ucsim/cmd.src/cmdutil.cc: #include and + to make ppc-osx happy + +2006-08-31 Borut Razem + + * sim/ucsim/cmd.src/newcmdposix.cc: #include + * sim/ucsim/cmd.src/newcmd.cc: #include + * sim/ucsim/cmd.src/newcmd.cc: #include + * support/regression/ports/ds390/spec.mk, + support/regression/ports/mcs51/spec.mk, + support/regression/ports/xa51/spec.mk: introduced DEV_NULL variable. + To run regression tests in mingw environment: + make DEV_NULL=NUL CC=gcc + +2006-08-30 Borut Razem + + * sim/ucsim/cmd.src/newcmdposix.cc, sim/ucsim/cmd.src/newcmdposixcl.h, + sim/ucsim/cmd.src/newcmdwin32.cc, sim/ucsim/cmd.src/newcmdwin32cl.h, + sim/ucsim/app.cc, sim/ucsim/appcl.h, sim/ucsim/configure, + sim/ucsim/configure.in, sim/ucsim/ddconfig_in.h, sim/ucsim/error.cc, + sim/ucsim/errorcl.h, sim/ucsim/option.cc, sim/ucsim/optioncl.h, + sim/ucsim/utils.cc, sim/ucsim/utils.h, sim/ucsim/cmd.src/Makefile.in, + sim/ucsim/avr.src/avr.cc, sim/ucsim/avr.src/avrcl.h, + sim/ucsim/cmd.src/bp.cc, sim/ucsim/cmd.src/bpcl.h, + sim/ucsim/cmd.src/cmdconf.cc, sim/ucsim/cmd.src/cmdgui.cc, + sim/ucsim/cmd.src/cmdmem.cc, sim/ucsim/cmd.src/cmdset.cc, + sim/ucsim/cmd.src/cmdsetcl.h, sim/ucsim/cmd.src/cmdstat.cc, + sim/ucsim/cmd.src/cmduc.cc, sim/ucsim/cmd.src/cmduccl.h, + sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/cmdutil.h, + sim/ucsim/cmd.src/command.cc, sim/ucsim/cmd.src/commandcl.h, + sim/ucsim/cmd.src/get.cc, sim/ucsim/cmd.src/getcl.h, + sim/ucsim/cmd.src/info.cc, sim/ucsim/cmd.src/newcmd.cc, + sim/ucsim/cmd.src/newcmdcl.h, sim/ucsim/cmd.src/set.cc, + sim/ucsim/cmd.src/show.cc, sim/ucsim/cmd.src/timer.cc, + sim/ucsim/hc08.src/hc08.cc, sim/ucsim/hc08.src/hc08cl.h, + sim/ucsim/s51.src/Makefile.in, sim/ucsim/s51.src/interrupt.cc, + sim/ucsim/s51.src/interruptcl.h, sim/ucsim/s51.src/pca.cc, + sim/ucsim/s51.src/pcacl.h, sim/ucsim/s51.src/port.cc, + sim/ucsim/s51.src/portcl.h, sim/ucsim/s51.src/serial.cc, + sim/ucsim/s51.src/serialcl.h, sim/ucsim/s51.src/timer0.cc, + sim/ucsim/s51.src/timer0cl.h, sim/ucsim/s51.src/timer1.cc, + sim/ucsim/s51.src/timer1cl.h, sim/ucsim/s51.src/timer2.cc, + sim/ucsim/s51.src/timer2cl.h, sim/ucsim/s51.src/uc390.cc, + sim/ucsim/s51.src/uc390cl.h, sim/ucsim/s51.src/uc390hw.cc, + sim/ucsim/s51.src/uc390hwcl.h, sim/ucsim/s51.src/uc51.cc, + sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/wdt.cc, + sim/ucsim/s51.src/wdtcl.h, sim/ucsim/sim.src/hw.cc, + sim/ucsim/sim.src/hwcl.h, sim/ucsim/sim.src/mem.cc, + sim/ucsim/sim.src/memcl.h, sim/ucsim/sim.src/obsolete.cc, + sim/ucsim/sim.src/obsolete.h, sim/ucsim/sim.src/sim.cc, + sim/ucsim/sim.src/simcl.h, sim/ucsim/sim.src/stack.cc, + sim/ucsim/sim.src/stackcl.h, sim/ucsim/sim.src/test_mem_speed.cc, + sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h, + sim/ucsim/xa.src/xa.cc, sim/ucsim/xa.src/xacl.h, + sim/ucsim/z80.src/z80.cc, sim/ucsim/z80.src/z80cl.h: + ucsim WIN32 native port + +2006-08-30 Jesus Calvino-Fraga + + * doc/sdccman.lyx: added note on dynamic memory heap initialization + +2006-08-27 Maarten Brock + + * src/mcs51/gen.c (genAnd, genOr, genXor): fixed bug 1546986 + * src/ds390/gen.c (aopGetUsesAcc): handle AOP_DPTR2 and AOP_DPTRn too + +2006-08-26 Maarten Brock + + * src/ds390/gen.c (genAnd, genOr, genXor): fixed bug 1546986 + * support/regression/tests/bug1546986.c: new, added + * as/mcs51/.cvsignore, + * debugger/mcs51/.cvsignore, + * src/.cvsignore: deleted + +2006-08-25 Jesus Calvino-Fraga + + * device/include/mcs51/P89c51RD2.h: fixed bug 1546936 (error in sbit + definitions) + +2006-08-20 Borut Razem + + * sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/newcmdcl.h: + removed cl_listen_console::match(), cl_console::match(), + restructured cl_commander::proc_input() + +2006-08-16 Borut Razem + + * sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/newcmdcl.h, + sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/cmdutil.h, + sim/ucsim/sim.src/mem.cc, sim/ucsim/sim.src/uc.cc: code cleaning + +2006-08-14 Borut Razem + + * support/regression/Makefile.in, + support/regression/ports/pic14/gpsim.cmd, + support/regression/ports/pic14/spec.mk, + support/regression/ports/pic14/support.c: + added pic14 regression test + +2006-08-14 Maarten Brock + + * as/doc/asxhtm.html: documented changed ABS behaviour + * as/doc/README: fixed some typos + +2006-08-13 Maarten Brock + + * support/regression/tests/float_trans.c: disabled test if __STDC_IEC_559__ + not defined on host + +2006-08-12 Borut Razem + + * support/regression/fwk/include/testfwk.h, + support/regression/fwk/lib/testfwk.c, + support/regression/generate-cases.py, + support/regression/Makefile.in: + regression test framework does not depend on function pointers and + variable arguments + +2006-08-09 Maarten Brock + + * device/include/stddef.h: c temporary hack to fix bug 1518273 + +2006-08-09 Jesus Calvino-Fraga + + * device/include/mcs51/cc2510fx.h: added + * src/z80/z80.dsp, src/gbz80/gbz80.dsp: added support/Util/strcmpi.ch + to projects. + +2006-08-09 Maarten Brock + + * as/z80/assym.c (mlookup): ignore case when looking up mnemonics + * as/z80/Makefile.in: added strcmpi.c + * as/z80/z80adr.c: added upper case registers and lower case conditionals + * support/Util/strcmpi.ch: added with intention to remove from mcs51/hc08 + +2006-08-08 Maarten Brock + + * device/lib/gbz80/asm_strings.s, + * device/lib/gbz80/crt0_rle.s, + * device/lib/gbz80/div.s, + * device/lib/gbz80/mul.s, + * device/lib/gbz80/shift.s, + * device/lib/z80/asm_strings.s, + * device/lib/z80/crt0_rle.s, + * device/lib/z80/div.s, + * device/lib/z80/mul.s, + * device/lib/z80/shift.s: changed to all lower case menmonics except the + flags which are all upper case + +2006-08-07 Maarten Brock + + * as/z80/asm.h: made CASE_SENSITIVE 1 + * link/z80/aslink.h: made CASE_SENSITIVE 1 + * src/z80/gen.c (throughout): made all conditionals upper case + * support/regression/tests/bug1503067.c: new + +2006-08-07 Maarten Brock + + * src/z80/gen.c (aopPut): fixed bug !*ixy should be !*iyx, + (shiftIntoPair): added case 2 for PAIR_IY, + (setupToPreserveCarry): replaced parameters with iCode and check if + PAIR_DE is in use to fix bug 1399290, + (genPlus, genMinus): updated call to setupToPreserveCarry + * support/regression/tests/bug1399290.c: new + +2006-08-06 Maarten Brock + + * device/lib/Makefile.in (Z80SOURCES): enabled float support + * sim/ucsim/z80.src/inst.cc (inst_rst): generate breakpoint on RST8,ACC==0 + * src/ds390/gen.c (shiftRLong), + * src/hc08/gen.c (shiftLLong, shiftRLong): fixed bug 1533966 + * src/mcs51/gen.c (sameReg): changed to sameByte, + (xch_a_aopGet): new, + (shiftL2Left2Result, shiftR2Left2Result, shiftRLeftOrResult, shiftLLong, + shiftRLong): fixed bug 1533966 + * src/z80/gen.c (shiftR2Left2Result, shiftL2Left2Result, genlshTwo, + genLeftShiftLiteral, genrshTwo, genRightShiftLiteral): fixed bug 1533966 + * support/regression/Makefile.in: disabled z80, enabled ucz80 + * support/regression/tests/float_trans.c: enabled test for z80 and host + * support/regression/tests/shifts2.c: new, for testing bug 1533966 + +2006-08-01 Borut Razem + + * src/mcs51/gen.c, src/dc390/gen.c: fixed warning: + comparison is always false due to limited range of data type + on PPC64 machine (openpower-linux1) where "char = unsigned char" + +2006-08-01 Maarten Brock + + * sim/ucsim/hc08.src/hc08mac.h: removed faulty and unused add_u16_disp + * sim/ucsim/hc08.src/hc08.cc: removed faulty and unused int8 + * sim/ucsim/z80.src/z80mac.h (add_u16_disp): use explicit signed char cast + * sim/ucsim/z80.src/z80.cc: removed faulty and unused int8 + +2006-07-31 Borut Razem + + * sim/ucsim/configure, sim/ucsim/cmd.src/newcmdcl.h, + sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/cmdutil.cc, + sim/ucsim/z80.src/Makefile.in, sim/ucsim/configure.in, + sim/ucsim/hc08.src/Makefile.in, sim/ucsim/hc08.src/hc08.cc, + sim/ucsim/ddconfig_in.h, sim/ucsim/s51.src/Makefile.in, + sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/serialcl.h, + sim/ucsim/s51.src/uc51.cc, sim/ucsim/s51.src/serial.cc, + sim/ucsim/app.cc, sim/ucsim/avr.src/Makefile.in: + enable ucsim mingw compilation. Serial port is disabled, + since it uses termios.h API, which is not available on native + WIN32 + +2006-07-31 Borut Razem + + * Small Device C Compiler 2.6.0 released + * support/scripts/sdcc.nsi: added FULL_DOC option + * .version, doc/sdccman.lyx: changed sdcc version to 2.6.1 + +2006-07-28 Borut Razem + + * support/scripts/sdcc.nsi: remove $INSTDIR/include/asm/pic16/*.h + * doc/INSTALL.txt: updated + +2006-07-27 Borut Razem + + * device/lib/pic/Makefile.in, device/lib/pic/Makefile.subdir, + device/lib/pic/libdev/Makefile.in: fixed bug + [ 1438354 ] pic libsdcc: distclean doesn't work + * device/lib/pic16/Makefile.in, device/lib/pic16/Makefile.subdir, + device/lib/pic16/libio/Makefile.in: fixed bug + [ 1438344 ] pic16 lib: clean doesn't work properly + * doc/knownbugs.html removed [ 1438354 ] and [ 1438344 ] from the list + +2006-07-26 Maarten Brock + + * device/lib/pic/libsdcc/fsdiv.c, + * device/lib/pic/libsdcc/fsmul.c, + * device/lib/pic16/libsdcc/float/fsdiv.c, + * device/lib/pic16/libsdcc/float/fsmul.c, + * device/lib/_fsdiv.c, + * device/lib/_fsmul.c: bugfix, handle too large and too small numbers + * support/regression/tests/bug1520966.c: added + * doc/knownbugs.html: removed [ 1520966 ] from the list + +2006-07-25 Borut Razem + + * configure.in, configure, sdccconf_in.h: fixed bug + [ 1519095 ] regression test onebyte.c fails on ppc64 host + * doc/knownbugs.html: removed [ 1519095 ] from the list + +2006-07-25 Maarten Brock + + * doc/knownbugs.html: added, contains list of known bugs at release + * device/include/mcs51/compiler.h: fixed SFR32 for SDCC + +2006-07-23 Maarten Brock + + * device/include/mcs51/compiler.h: added SFRX for xdata based special + function registers and corrected defaults with additional warning + * device/lib/malloc.c: cosmetic changes + * device/lib/realloc.c: bugfix for bug #1496907, Thanks Efim Monyak + * src/ds390/ralloc.c (getRegBitNoSpil): reenabled, + (fillGaps): and used it + +2006-07-20 Raphael Neider + + * src/pic/device.c (addMemRange,assignRegister): suppress verbose + output unless SDCCPICDEBUG is set + * device/lib/pic16/Makefile.rules (%.lib target): suppress verbose + output if SILENT is set + +2006-07-11 Borut Razem + + * doc/README.txt: updated + +2006-07-10 Borut Razem + + * support/scripts/sdcc.nsi: added device/include/asm/pic/features.h and + device/lib/src/pic/libm/*.c and device/lib/src/pic16/libsdcc/stack/*.S + in WIN32 installation + * .version, sdcc.spec, doc/sdccman.lyx: changed sdcc version to 2.6.0 - + release candidate 1 + +2006-07-08 Maarten Brock + + * device/include/mcs51/XC866.h: added sbit definitions for Px_x, P1_x, P2_x + * src/pic16/glue.c (initPointer): fixed bug 1496419 for pic16 + +2006-07-06 Maarten Brock + + * src/hc08/gen.c (genAddrOf): fixed bug when offset on stack is >127 + +2006-07-06 Borut Razem + + * support/regression/tests/bitfields.c: + fixed bug [ 1518322 ] regression test bitfields fails on ppc hosts + * support/regression/tests/constantRange.c: + fixed bug [ 1518317 ] regression test constantRange fails on alpha host + +2006-07-04 Borut Razem + + * src/configure.in, src/configure, src/Makefile.in, as/z80/Makefile.in, + src/port.mk, + src/avr/Makefile.in, src/ds390/Makefile.in, src/ds400/Makefile.in, + src/hc08/Makefile.in, src/mcs51/Makefile.in, src/pic16/Makefile.in, + src/pic/Makefile.in, src/xa51/Makefile.in, src/z80/Makefile.in: + reverted changes from 2006-07-03 + * Makefile.common.in: added @CPPFLAGS@ to CPPFLAGS + * support/regression/Makefile.in, support/regression/ports/host/spec.mk: + added CPPFLAGS, used by the host port + +2006-07-03 Bernhard Held + + * support/regression/valdiag/tests/switch.c, + * support/regression/valdiag/tests/constantRange.c: adapted to gcc 4 + * support/regression/tests/libmullong.c: fixed for host + * support/regression/ports/host/spec.mk: disable all warnings for host, + SDCC runs with --less-pedantic too + +2006-07-03 Borut Razem + + * src/configure.in, src/configure, src/Makefile.in, as/z80/Makefile.in: + defined CPPFLAGS + * src/port.mk: defined CPPFLAGS, renamed to src/port.mk.in + * src/avr/Makefile.in, src/ds390/Makefile.in, src/ds400/Makefile.in, + src/hc08/Makefile.in, src/mcs51/Makefile.in, src/pic16/Makefile.in, + src/pic/Makefile.in, src/xa51/Makefile.in, src/z80/Makefile.in: + include ../port.mk + * sim/ucsim/main_in.mk, sim/ucsim/avr.src/Makefile.in, + sim/ucsim/gui.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in, + sim/ucsim/s52.src/Makefile.in, sim/ucsim/sim.src/Makefile.in, + sim/ucsim/xa.src/Makefile.in: ignore header files for dependencies + +2006-07-02 Raphael Neider + + * src/pic16/devices.inc, + * device/include/pic16/pic18fregs.h, + * device/include/pic16/pic18f4550.h, + * device/lib/pic16/pics.all, + * device/lib/pic16/libdev/pic18f4550.c: added support for 18f4550 + +2006-07-01 Bernhard Held + + * as/hc08/lkaomf51.c (OutputName), + * as/mcs51/lkaomf51.c (OutputName), + * as/z80/asmain.c (asmbl), + * src/ds390/main.c (asmLineNodeFromLineNode), + * src/hc08/ralloc.c (hc08_assignRegisters), + * src/mcs51/main.c (asmLineNodeFromLineNode), + * src/xa51/ralloc.c (checkRegMask), + * src/xa51/gen.c (emitcode), + * src/z80/gen.c (_emit2), + * src/SDCCast.c (searchLitOp), + * src/SDCCglobl.h, + * support/packihx/packihx.c, + * support/Util/MySystem.c (split_command): fix gcc 4 warnings + * src/ds390/gen.c (aopPutUsesAcc), + * src/ds390/ralloc.c (getRegBitNoSpil): unused, therefore disabled + * support/regression/tests/libmullong.c (mullong_wrapper), + * src/SDCCsymt.c (powof2), + * src/SDCCast.c, + * src/SDCCicode.c: renamed TYPE_WORD by TYPE_TARGET_INT and so on + * src/SDCCsymt.h: added TYPE_TARGET_* + * src/SDCCutil.c (doubleFromFixed16x16, fixed16x16FromDouble), + * src/SDCCutil.h (doubleFromFixed16x16, fixed16x16FromDouble): moved to + SDCCast because 1) header problems 2) this is the right place + * src/SDCCast.c (doubleFromFixed16x16, fixed16x16FromDouble): added + * src/SDCCval.h (doubleFromFixed16x16, fixed16x16FromDouble): added + prototype + +2006-06-29 Bernhard Held + + * src/SDCCicode.h: removed buggy semicolon in unused macro + * src/SDCClrange.c (findPrevUseSym, rlivePoint): fixed bug #1486853, + search for previous definiton of auto symbols too, + (findPrevUse): fixed logic of emitWarnings + +2006-06-26 Raphael Neider + + * src/pic16/gen.c (genFunction, genEndFunction): also preserve + PCLATH and PCLATU on interrupts, potentially fixes #1505141 + +2006-06-25 Raphael Neider + + * device/lib/pic/libm: NEW, added math library functions + * device/lib/pic/libsdcc: NEW; added float support functions + * device/lib/pic/{Makefile.in,configure.in,configure}: added libm/ + * device/include/pic/{limits.h,errno.h,sdcc-lib.h,float.h,math.h}: + NEW, added math related headers + * device/include/asm/pic/features.h: NEW + * src/pic/gen.c (emitpcode_real): emit warning on NULL pCodeOp, + (popGet): allow larger offsets for AOP_PCODE, + (genDataPointerSet): handle literals explicitly, more debug output, + (genAssign): fixed for float using aopLiteral ;-) + * src/pic/glue.c (pic14createInterruptVect): inserted pagesel before + GOTO initialisation routine + * src/pic/pcoderegs.c (pCodeRegMapLiveRangesInFlow): set wasUsed + flag on registers, fixes #1469043 (local variables do not work) + * src/pic/main.c (_pic14_do_link), + * src/pic16/main.c (_pic16_linkEdit): use fullDstFileName if + available + +2006-06-25 Borut Razem + + * device/lib/pic16/libc/stdio/sprintf.c: return the number of + characters printed (not including the trailing '\0' used to end + output to strings). Problem detected in regression test bug-927659.c. + NOTE: printf() family functions should return int instead + unsigned int! + * device/lib/pic16/libc/stdio/vfprintf.c: "%%" prints "%", unknown + specifier are printed as themselves + * sdcc/support/regression/tests/bug1057979.c: pic16 printf doesn't + support flags, width and precision specifiers + +2006-06-24 Borut Razem + + * sdcc/support/regression/tests/bitvars.c: added gbz80, pic16 and pic16 + to the list of sdcc tagrets not supporting bit type + * sdcc/support/regression/tests/bug-905992.c.c: excluded regression + testfor pic16 due to bug: + [ 1511794 ] pic16: regression test bug-895992.c fails + +2006-06-24 Maarten Brock + + * src/mcs51/gen.c (genCmp): optimization for RFE 1162453 + * src/SDCCglue.c (initPointer), fixed bug 1496419 + * support/regression/tests/bug1496419.c: new, added + +2006-06-22 Borut Razem + + * support/regression/ports/pic16/support.c: use gpsim usart module from + libgpsim_modules library + +2006-06-21 Jesus Calvino-Fraga + + * device/include/mcs51/at89c51ed2.h: Fixed bug 1510144 changed + IP0H to IPH0. + +2006-06-19 Raphael Neider + + * src/pic/glue.h,src/pic16/glue.h: added prototypes + * src/pic/glue.c,src/pic16/glue.c (pic1x_stringInSet, + pic1x_emitSymbolIfNew): NEW, check for a string in a set, + (pic14printExterns,pic14printPublics,pic16printPublics, + pic16_printExterns): use new functions to emit symbols + (picglue,pic16glue): emit publics before emitting externs + * src/pic/gen.c,src/pic16/gen.c (genFunction): remember the names of + locally defined functions to avoid bug #1443651 + * support/regression/tests/bug-716242.c: removed pic16 workaround + * support/regression/ports/pic16/spec.mk: ignore errors during build + +2006-06-19 Raphael Neider + + * src/pic/glue.h: added pic14aopLiteral prototype + * src/pic/glue.c (pic14aopLiteral): return unsigned int + * src/pic/gen.c: removed stdint.h dependency + (aopGet): use Safe_strdup() + (bitpatternFromVal): removed, replaced use with pic14aopLiteral + (genDataPointerSet): use pic14aopLiteral() + * src/pic16/glue.h, src/pic16/glue.c, src/pic16/gen.c: similar changes + for pic16; thanks to Bernhard and Maarten + +2006-06-18 Borut Razem + + * support/regression/tests/structflexarray.c: flexible array members + not supported by gcc < 3 + * sim/ucsim/configure, sim/ucsim/configure.in: do not compile serio + GUI tool by default + * src/pic/gen.c: don't include [p]strdin.h on solaris + * support/Util/pstdint.h: addad svn attributes + * support/regression/tests/constantRange.c, + support/regression/tests/rotate.c: include inttypes.h instead + stdint.h on solaris, addad svn attributes + +2006-06-18 Raphael Neider + + * src/SDCCsymt.c (initCSupport): change return type of divschar to + int for PIC16 + * src/pic16/genarith.c (genAddLit): sign-extend via standard routine + (pic16_genMinusBits): simplified sign-extension + (pic16_genUMult8XLit_8,pic16_genUMult8X8_8): renamed to + pic16_genMult8XLit_n resp. pic16_genMult8X8_n, fixed and + adjusted to correctly handle mixed-signed operands, disabled + now unused multiplciation routines + * src/pic16/gen.c (pic16_pushpCodeOp): fixed to handle literals + (assignResultValue): added argument denoting the size of the result + as returned by the function (fixes upcasts in assigning from + function calls: char foo(); int i = foo();) + (genCall,genPcall,genGenPointerGet,genReceive): pass size of + function result to assignResultValue + (genMult): disabled inlined multiplication code + (genDiv): augmented to also handle the modulus operator, fixed to + handle mixed-signed operands correctly + (genMod): simply call genDiv, disabled unused code + (genAssign): fixed missing (sign-)extension on result + * src/pic16/main.c (_hasNativeMulFor): accept literals [-128..256) as + valid char operands, allow signed operands for native code, added + division and modulo operator handling + * device/lib/pic16/libsdcc/char/divschar.c: divschar returns an int + + As a consequence, onebyte.c (if split into two files) and muldiv.c + pass regression tests. + +2006-06-17 Frieder Ferlemann + + * doc/Makefile.in: two runs of makeindex seem needed to get + correct page references in the index of sdccman.pdf + * doc/sdccman.lyx: mentioned cmon51, added links, small changes + +2006-06-17 Borut Razem + + * sdcc/device/lib/Makefile.in: corrected PORTINCDIR path + +2006-06-17 Frieder Ferlemann + + * doc/sdccman.lyx: updated, added (porting source code, debugging), + mentioned ec2drv and paulmon + +2006-06-16 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), @@ -8088,7 +9525,7 @@ 2003-10-31 Borut Razem - * support\cpp2\cpplex.c: fixed for SDCPP: + * support/cpp2/cpplex.c: fixed for SDCPP: comments(when executed with -C option) and _asm blocks were included even if they where in skipped #if block. Applied solution from GCC cpp 3.3.2 @@ -8830,20 +10267,20 @@ Fixed some warnings when building with MSVC: - * as\mcs51\asdata.c - * as\z80\asdata.c - * as\mcs51\asm.h - * as\z80\asm.h - * link\z80\aslink.h - * link\z80\lkdata.c - * link\z80\lkeval.c - * link\z80\lkgb.c - * link\z80\lkihx.c - * link\z80\lks19.c - * link\z80\lksym.c - * support\cpp2\cpplib.c - * src\ds390\gen.c - * src\mcs51\gen.c + * as/mcs51/asdata.c + * as/z80/asdata.c + * as/mcs51/asm.h + * as/z80/asm.h + * link/z80/aslink.h + * link/z80/lkdata.c + * link/z80/lkeval.c + * link/z80/lkgb.c + * link/z80/lkihx.c + * link/z80/lks19.c + * link/z80/lksym.c + * support/cpp2/cpplib.c + * src/ds390/gen.c + * src/mcs51/gen.c 2003-08-03 Bernhard Held @@ -8851,21 +10288,21 @@ 2003-08-01 Jesus Calvino-Fraga - * support\librarian\clean.mk: Do not remove Makefile. - * support\librarian\Makefile: added. + * support/librarian/clean.mk: Do not remove Makefile. + * support/librarian/Makefile: added. 2003-08-01 Jesus Calvino-Fraga Added librarian to MSVC build: * all.dsp * sdcc.dsw - * support\librarian\librarian.dsp + * support/librarian/librarian.dsp 'configure' not needed for librarian, removed: - * support\librarian\configure - * support\librarian\configure.in - * support\librarian\config_in.h - * support\librarian\Makefile.in + * support/librarian/configure + * support/librarian/configure.in + * support/librarian/config_in.h + * support/librarian/Makefile.in Hopefully these ones built the librarian and the rest of sdcc properly: * Makefile @@ -8885,13 +10322,13 @@ Adding sdcclib to the build. MSVC project coming soon. Files added/changed: - * support\librarian\clean.mk - * support\librarian\configure - * support\librarian\configure.in - * support\librarian\config_in.h - * support\librarian\Makefile.bcc - * support\librarian\Makefile.in - * support\librarian\sdcclib.c + * support/librarian/clean.mk + * support/librarian/configure + * support/librarian/configure.in + * support/librarian/config_in.h + * support/librarian/Makefile.bcc + * support/librarian/Makefile.in + * support/librarian/sdcclib.c * Makefile.bcc * Makefile * Makefile.common.in @@ -8904,25 +10341,25 @@ example, one compiled using --model-large and another one compiled with --model-small. The following files were modified: - * as\mcs51\asdata.c - * as\mcs51\aslink.h - * as\mcs51\asm.h - * as\mcs51\asmain.c - * as\mcs51\asout.c - * as\mcs51\i51pst.c - * as\mcs51\lkdata.c - * as\mcs51\lklibr.c - * as\mcs51\lkmain.c - * as\z80\asdata.c - * as\z80\asm.h - * as\z80\asmain.c - * as\z80\asout.c - * as\z80\z80pst.c - * link\z80\aslink.h - * link\z80\lkdata.c - * link\z80\lklibr.c - * link\z80\lkmain.c - * src\SDCCglue.c + * as/mcs51/asdata.c + * as/mcs51/aslink.h + * as/mcs51/asm.h + * as/mcs51/asmain.c + * as/mcs51/asout.c + * as/mcs51/i51pst.c + * as/mcs51/lkdata.c + * as/mcs51/lklibr.c + * as/mcs51/lkmain.c + * as/z80/asdata.c + * as/z80/asm.h + * as/z80/asmain.c + * as/z80/asout.c + * as/z80/z80pst.c + * link/z80/aslink.h + * link/z80/lkdata.c + * link/z80/lklibr.c + * link/z80/lkmain.c + * src/SDCCglue.c 2003-07-28 Jesus Calvino-Fraga @@ -9726,7 +11163,7 @@ * src/SDCC.lex: Fix for bug #711240: dynamic buffer handling of C literal strings in stringLiteral() * support/Util/dbuf.c, support/Util/dbuf.h: added: dynamic buffer handling - * src/Makefile.bcc, src/Makefile.in, src\src.dsp: added support/Util/dbuf.c + * src/Makefile.bcc, src/Makefile.in, src/src.dsp: added support/Util/dbuf.c to the project 2003-03-27 Paul Stoffregen @@ -10378,23 +11815,23 @@ 2002-12-10 Jesus Calvino-Fraga - * in \sdcc\as\mcs51\ changed these files in order to create an + * in /sdcc/as/mcs51/ changed these files in order to create an aomf51 file: aslink.h, lkdta.c, lklex.c, lklibr.c, lklist.c, lkmain.c. Also added: lkmem.c and lkaomf51.c. Changed the following files to include the previous two files: aslink.dsp, Makefile.aslink, Makefile.bcc, and Makefile.in. - * Changed \sdcc\src\SDCCmain.c so it creates files with extension + * Changed /sdcc/src/SDCCmain.c so it creates files with extension .adb instead of .cdb 2002-11-09 Jesus Calvino-Fraga - * \sdcc\as\mcs51\lklist.c: Now reports memory usage using the + * /sdcc/as/mcs51/lklist.c: Now reports memory usage using the value from option --iram-size. 2002-09-20 Jesus Calvino-Fraga - * \sdcc\as\mcs51\lklist.c: added boundary check before using + * /sdcc/as/mcs51/lklist.c: added boundary check before using dram[] array. 2002-09-18 @@ -10409,50 +11846,50 @@ compact code for X = LITERAL - Y 2002-09-00 Jesus Calvino-Fraga - * \sdcc\as\mcs51\lklist.c: Fixed incorrect number of parameters to + * /sdcc/as/mcs51/lklist.c: Fixed incorrect number of parameters to sprintf() in line 1267. 2002-09-08 Jesus Calvino-Fraga - * \sdcc\src\SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051 + * /sdcc/src/SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051 like ports. 2002-09-04 Jesus Calvino-Fraga Changes to aslink (All the changes are marked with 'JCF'): - * \sdcc\as\mcs51\aslink.h: External definition of sflag and + * /sdcc/as/mcs51/aslink.h: External definition of sflag and summary(). - * \sdcc\as\mcs51\lkarea.c: Computes the size of area BSEG_BYTES from + * /sdcc/as/mcs51/lkarea.c: Computes the size of area BSEG_BYTES from area BSEG. Also moves, if possible, the DATA area down into the internal ram so more space is available. - * \sdcc\as\mcs51\lkdata.c: Definition of memory summary output flag + * /sdcc/as/mcs51/lkdata.c: Definition of memory summary output flag sflag. - * \sdcc\as\mcs51\lklist.c: For the BSEG area report the size in bits, + * /sdcc/as/mcs51/lklist.c: For the BSEG area report the size in bits, not bytes. Function summary() which creates a memory usage summary file with extension .mem. Reports of overlaping stack and small stack size. If the space for the stack is less than 16 bytes aslink trows a warning. - * \sdcc\as\mcs51\lkmain.c: Creation of some of the default areas for + * /sdcc/as/mcs51/lkmain.c: Creation of some of the default areas for the 8051. Option 'y' for memory summary output file. Changes to sdcc (All the changes are marked with 'JCF'): - * \sdcc\src\SDCCglobl.h: External definition of RegBankUsed[4]. + * /sdcc/src/SDCCglobl.h: External definition of RegBankUsed[4]. - * \sdcc\src\SDCCglue.c: If a register bank is used, creates an + * /sdcc/src/SDCCglue.c: If a register bank is used, creates an overlaying area for it (uses RegBankUsed[4]). - * \sdcc\src\SDCCmain.c: Definition RegBankUsed[4]; marks register + * /sdcc/src/SDCCmain.c: Definition RegBankUsed[4]; marks register bank zero as used by default. By default aslink locates the stack (equivalent to --stack-after-data). Pass option 'y' to aslink for the creation of the .mem file. Delegates the allocation of data area to aslink (it is not longer 0x30 by default). If --stack-loc passes the begining of the stack area to aslink. - * \sdcc\src\SDCCmem.c: If a register bank is used, marks it so + * /sdcc/src/SDCCmem.c: If a register bank is used, marks it so glue() in SDCCglue.c creates an area for it. 2002-09-03 Borut Razem