X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ChangeLog;h=0f77876dd623cb5b9870a09c85748a22941a3e17;hb=41ff3b55f586efb58903dd992714556f7ab07151;hp=5030b36b266752eef6b19aa373f600ab8b9fe205;hpb=3f62134fe007ab1e88bb127fd3e92d00ce6fff5b;p=fw%2Fsdcc diff --git a/ChangeLog b/ChangeLog index 5030b36b..0f77876d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,877 @@ +2007-02-27 Frieder Ferlemann + + * src/SDCCglobl.h, + * src/SDCCmain.c, + * src/mcs51/gen.c, + * src/mcs51/rtrack.c, + * src/ds390/gen.c, + * doc/sdccman.lyx: added --no-gen-comments + * src/mcs51/peeph.def: added 192.b, disabled 185 + +2007-02-25 Raphael Neider + + * src/pic16/gen.c (genCast): fixed typo + * device/lib/pic16/Makefile.subdir: only install existing files + * device/lib/pic16/libdev/Makefile.in: build serially, avoid races + +2007-02-25 Maarten Brock + + * device/lib/mcs51/crtcall.asm: new, added for indirect calls + * device/lib/mcs51/crtclear.asm, + * device/lib/mcs51/crtxclear.asm: renumbered labels + * device/lib/mcs51/Makefile.in: added crtcall.asm + * doc/sdccman.lyx: documented mcs51 crt* library startup code + * src/mcs51/gen.c (movc): removed, + (aopGet, genPlusBits): clear a after loading the carry (possibly from + acc.x or psw.x), + (toCarry, genSend, genRet): added function toCarry, + (genPcall): use "lcall @a+dptr" for functions w/o parameters, + (assignBit, genAssign, genCast): added function assignBit + * src/mcs51/Makefile.bcc: added rtrack.c + * src/mcs51/ralloc.h: made valueKnown a bitfield + * src/mcs51/rtrack.c (getReg, rtrackUpdate): added getReg, + fixed "jbc acc" and "cpl acc" bug, enhanced "cjne", "jnz" and "djnz", + disabled InvalidateAllRx for lcall __gptrput, added "xch a,rn" + * src/pic/pcode.c (FixRegisterBanking): fixed warning used uninitialized + * src/z80/gen.c: added AOP_IS_PAIRPTR, + (_pop): only pop valid pairs, see gencjneshort, + (gencjneshort): return pair that still needs to be popped, restructured, + (gencjne, genCmpEq): call _pop + +2007-02-23 Raphael Neider + + * device/include/pic/pic14devices.txt: 16f684 has only one config word + +2007-02-22 Jesus Calvino-Fraga + + * device/include/mcs51/P89LPC925.h: Added. + +2007-02-18 Raphael Neider + + * src/pic/glue.c (emitInitVal): fixed #1659894 (SIGSEGV on arrays) + +2007-02-17 Borut Razem + + * support/cpp2/directives.c, support/cpp2/version.c: + synchronized with GCC CPP 4.1.2 + +2007-02-15 Frieder Ferlemann + + * src/mcs51/rtrack.h, + * src/mcs51/rtrack.c: added register tracking for the mcs51 port, + by checking the strings passed by emitcode() to the assembler. + Feel free to change. This in part addresses RFE #482179. + Set environment variable SDCC_RTRACK to enable. + * src/mcs51/gen.c: inserted hooks + * src/mcs51/ralloc.h: added two members to struct regs + * support/regression/tests/regtrack.c: added + +2007-02-14 Borut Razem + + * src/SDCC.y: fixed bug #1291133: duplicate members across enum(s) + * Makefile.in: applied patch from Makefile related part of + #1469393: Compiler does not initialize static data + +2007-02-12 Maarten Brock + + * src/SDCCicode.c (geniCodeAssign): return (itemp) right instead of left + for better fix of bug 1273984, compiles pic16 rand.c + +2007-02-12 Borut Razem + + * src/pic16/main.c: fixed pic16 standard library directory bug + +2007-02-11 Maarten Brock + + * src/hc08/gen.c (genSwap): fix swap regression test + +2007-02-10 Borut Razem + + * src/SDCCsymt.c: fixed bug #1159134: invalid duplicate declarations + with same scope + * support/regression/tests/bug-1654060.c: added regression test for + #1654060 + +2007-02-09 Bernhard Held + + * src/mcs51/gen.c (genRet): fixed RFE 1652561: added code for bit to + bit moves in return statement + +2007-02-09 Borut Razem + + * src/SDCC.y: fixed bug #1654060 typedef within function causes + syntax error + +2007-02-07 Maarten Brock + + * src/mcs51/gen.c (aopPut): use direct name for pushing registers + * src/SDCCmain.c (parseCmdLine): dbuf_s path must be initialised + +2007-02-07 Raphael Neider + + * src/pic16/devices.inc, + * device/include/pic16/pic18fregs.h, + * device/include/pic16/pic18f[24][34]31.h, + * device/lib/pic16/libdev/pic18f[24][34]31.c, + * device/lib/pic16/pics.all: added 18f[24][34]31 family + * device/lib/pic16/libio/i2c.ignore: do not build i2c + +2007-02-07 Maarten Brock + + * device/lib/printf_large.c (_print_format): fixed compare/assign bug, how + can this have lived here for so many years? + * src/SDCCicode.c (ast2iCode): return left instead of right for assignment, + fixes bug 1273984, see also patch 1645121, thanks Gnther Jehle + * support/regression/tests/bug1273984.c: new, added, thanks Gnther Jehle + +2007-02-06 Bernhard Held + + * src/SDCCBlock.c (addiCodeToeBBlock): fixed bug 1652207: GOTO icodes + appended by loop induction must be at the very end of the eBBlock + +2007-02-05 Kevin Vigor + + * src/ds390/gen.c, src/ds390/main.c: Address bug 1469393. + +2007-02-05 Borut Razem + + * support/regression/fwk/lib/timeout.c: native WIN32 port, + implemented #1651830 Reg. tests: rewrite timeout.c to use WIN32 API + +2007-02-03 Borut Razem + + * src/SDCC.y, src/SDCCmain.c, src/SDCCglobl.h, doc/sdccman.lyx: + applied patch #1646602 option to set default signedness of char to + unsigned, added -funsigned-char command line option, + thanks to Gunther Jehle + * device/lib/Makefile.in: added the -f option to rm so it doesn't + prompt for file deletion a few hundred times (especially the + subversion files, which have ro permissions so it asks for + confirmation), thanks to Simon McAuliffe; + added {} + option to find in order to remove multiple files from a + single rm commad + +2007-02-02 Jesus Calvino-Fraga + + * device/include/mcs51/SST89x5xRDx.h: Added. + +2007-02-02 Raphael Neider + + * src/pic/glue.c (emitSymbolSet): check sym->etype before use + * src/regression/Makefile: use --no-pcode-opt, ignore failing tests + +2007-02-01 Raphael Neider + + * src/pic/glue.c (picglue,emitSymbolSet,showAllMemmaps): emit the + config words again + +2007-01-31 Borut Razem + + * support/Util/dbuf_string.h: added ATTRIBUTE_PRINTF to dbuf_printf() + if compiled with GCC. Thanks to Raphael Neider + +2007-01-31 Raphael Neider + + * src/pic/pcode.c (isValidIdChar,bankCompare): fuzzy matching of + operand names, handles name and (name + n) for all n, + (sameBank): restructured, also check bank allocation policy, + * src/pic/glue.c (emitPseudoStack): fixed printf arguments, + (pic14_operandsAllocatedInSameBank): check whether to operands + will be allocated into the same bank (i.e., section) to reduce + BANKSEL overhead, queried from pcode.c:sameBank, + (pic14printLocals): reintroduced clustering registers into a single + section: all compiler generated symbols will now reside in one + bank (per file), reducing BANKSEL overhead and code size, + (showAllMemmaps): use local dbuf where possible + +2007-01-29 Raphael Neider + + * src/pic/gen.c (popGetExternal): simplified, mark symbol as used, + (call_libraryfunc): retrieve/create symbol and mark as used, + (genFunction): mark defined functions as non-extern and add again + to code memmap for later output + * src/pic/glue.c (emitPseudoStack): put into own subroutine, + (pic14printLocals): reworked for new symbol emission, + (emitIfNew,pic14_constructAbsMap,emitIvalLabel,emitIvals,emitInitVal, + showAllMemmaps): reworked symbol output using dbufs, added handling + of string literals (still incomplete), + (picglue): removed symbol emission, moved into showAllMemmaps, + (emitSymbolSet): new workhorse for symbol output, + (pic14emitMaps,pic14printPublics,pic14printExterns): commented out + +2007-01-29 Borut Razem + + * src/SDCCmain.c, src/SDCCutil.c: dbuf_splitFile: file extension + component contains the extension separator. + +2007-01-28 Borut Razem + + * sim/ucsim/cmd.src/cmdutil.cc: NUL device is detected as CG_FILE type + on WIN32 + * src/SDCCdwarf2.c, src/SDCCglobl.h, src/SDCCmain.c, src/SDCCutil.c, + src/SDCCutil.h, src/avr/gen.c, src/ds390/gen.c, src/hc08/gen.c, + src/mcs51/gen.c, src/pic/device.c, src/pic/gen.c, src/pic/pcode.c, + src/pic/pcodepeep.c, src/pic/ralloc.c, src/pic16/device.h, + src/pic16/gen.c, src/pic16/main.c, src/pic16/pcode.c, + src/pic16/pcodepeep.c, src/pic16/ralloc.c, src/xa51/gen.c, + src/z80/gen.c, support/Util/MySystem.c: + accept slash and backslash as directory separator on WIN32 and + Cygwin ports + +2007-01-28 Raphael Neider + + * src/pic16/devices.inc, + * device/include/pic16/pic18f[24][23]21.h, + * device/include/pic16/pic18fregs.h, + * device/lib/pic16/libdev/pic18f[24][23]21.c, + * device/lib/pic16/pics.all: added support for the 18f[24][23]21 family + * device/lib/pic16/libio/adc.ignore, + * device/lib/pic16/libio/i2c.ignore, + * device/lib/pic16/libio/usart.ignore: do not build I/O lib for new + family, as gputils do not yet support the devices + * device/lib/pic16/Makefile.subdir: ignore errors on install + * support/scripts/inc2h-pic16.pl: script to generate pic16 device + headers and libraries from gputils .inc files + +2007-01-26 Paul Stoffregen + + * doc/sdccman.lyx: add printf_fast_f precision limitation note + +2007-01-26 Paul Stoffregen + + * doc/sdccman.lyx: add printf benchmarks + +2007-01-25 Paul Stoffregen + + * device/lib/printf_fast.c: fix %c, char promoted to int + * device/lib/printf_tiny.c: fix %c, char promoted to int + +2007-01-25 Paul Stoffregen + + * device/lib/printf_fast.c: fix float overflow check, bug #1525093 + +2007-01-25 Frieder Ferlemann + + * support/regression/tests/swap.c: 64 bit hosts failed + * doc/sdccman.lyx: added preliminary mcs51 printf feature matrix + +2007-01-25 Raphael Neider + + * src/pic/pcode.c (sameBank,FixRegisterBanking): optimize banksels + based on absolute register address, patch by Alex Blond + +2007-01-22 Raphael Neider + + * src/pic/glue.c (pic14emitRegularMap): mark initialized symbols as + emitted, do not emit them again... + +2007-01-22 Raphael Neider + + * src/regression/bank1.c, src/regression/compare6.c, + src/regression/add.c: cosmetic changes + * src/pic/pcode.h: moved GPTRTAG_* here from gen.c + * src/pic/gen.c: fixed global zero and one, + (aopForSym): removed unued code, + (aopGet): assert aop is defined, check and use `index' of + pCodeImmd operands (fixes #1630908), + * src/pic/pcode.c (get_op): added output of generic pointer tag, + (register_reassign): prevent accidental register unification, + (ReuseReg): cosmetic changes (also above) + * src/pic/glue.c (pic14_constructAbsMap,pic14emitRegularMap, + pic14emitStaticSeg): do not emit initialized data, + (printIval*): replaced with working versions, + (pic14createInterruptVect,picglue): use idata for initialized data, + now init data should work in all modules (not only main()), + * device/lib/pic/libsdcc/idata.c: NEW, handle initialized data + +2007-01-21 Borut Razem + + * sim/ucsim/configure.in: introduced macro DD_COPT_NO_IGNORE, + use -fPIC or -fpic if they are supported and not ignored + * src/SDCCval.c: fixed bug introduced by me in rev. #4577 + * support/cpp2/libcpp/lex.c: fixed gcc 4.1.1 warnings + +2007-01-20 Borut Razem + + * src/SDCC.lex, src/SDCCmain.c, sdc/SDCCglobl.h, doc/sdccman.lyx: + implemented RFE #1470316: allow "$" in variable names + +2007-01-20 Raphael Neider + + * device/include/pic/pic14regs.h: reverted accidental wipe of the file + +2007-01-20 Raphael Neider + + * device/lib/pic/libdev/devices.txt: device list for mkall.sh + * device/lib/pic/libdev/mkall.sh: script to rebuild all device libs + * device/lib/pic/libdev/pic14ports.txt: device PORT specifications + * support/scripts/inc2h.pl: fixed major .inc parsing bugs, + applied patch from Robert Tate (#1629249) to add PORTs and TRISs + * device/lib/pic/libdev/pic*.c, + * device/include/pic/pic*.h: regenerated with enhanced inc2h.pl + * device/lib/pic/libdev/Makefile.in: show progress + +2007-01-19 Bernhard Held + + * doc/sdccman.lyx: updated "configure options" for autoconf 2.6 + * support/scripts/sdcc_cygwin_mingw32, + * support/scripts/sdcc_mingw32, + * support/scripts/build.mak: replaced --datadir by --datarootdir for + conformance with autoconf 2.6 + +2007-01-19 Raphael Neider + + * src/pic/device.c (register_map): fixed list construction + * src/pic/gen.c (genDivOneByte,genModOneByte): accept result > 1 byte, + (genMod): removed case for genModbits, + (genModbits): removed as now unused/unimplemented + * src/pic/glue.c (picglue): prevent name clash with sources 'init.c' + +2007-01-18 Frieder Ferlemann + + * support/regression/tests/swap.c: added in response to #1638622 + * doc/sdccman.lyx: synced version, minor changes + +2007-01-18 Borut Razem + + * SDCClabel.c: fixed bug #1638651: wrong linenumber presented in warning, + thanks to Gunther Jehle + * src/asm.c: don't die if the file drfined in #line couldn't be opened + * src/SDCC.lex, src/SDCCglobal.h, src/SDCCicode.c, src/SDCCsymt.c, + src/SDCCval.c: removed redundant definitions of currFname and mylineno; + use filename in lineno instead. + * SDCCast.c: removed MSVC warning C4018: '==' : signed/unsigned mismatch, + print the file name in ast_print() + +2007-01-18 Borut Razem + + * support/Util/dbuf_string.c: removed (PTR) cast since it is not + defined in MSVC + * src/SDCC.lex: stringLiteral() returns const char pointer, + EOF detection in stringLiteral(), fixed asmbuf memory leak, + fixed column counting + * src/SDCCval.[ch]: constVal(), value *strVal() and charVal() + accept const char pointer as parameter + * src/SDCCdwarf2.c: corrected buffer size + +2007-01-17 Borut Razem + + * support/Util/dbuf_string.c: fixed for amd64 + +2007-01-15 Borut Razem + + * src/pic16/ralloc.c, src/pic/ralloc.c, src/SDCC.y: + removed terminal symbol ELIPSIS, since it was never generated by the + lexer and it was wrongly used in parameter_identifier_list rule + +2007-01-15 Raphael Neider + + * doc/sdccman.lyx: updated PIC14/16 command line args, updated PIC14 + code page and data banking description + * src/pic/genarith.c, + * src/pic/gen.h: removed bit arithmetic functions, + updated exit(1) to exit(EXIT_FAILURE) + * device/lib/pic16/libsdcc/stack/stack.S: default to 256 byte stack + * device/include/pic16/pic18f2455.h, + * device/lib/pic16/libdev/pic18f2455.c: added PORTD, LATD, LATE, + TRISD and TRISE, fixed/added some bit names + * device/lib/pic16/libdev/pic18f{2550,4550,4455}.c, + * device/include/pic16/pic18f{2550,4550,4455}.h: simply include + updated pic18f2455.{c,h} instead of duplicating them + +2007-01-14 Borut Razem + + * as/mcs51/asnoice.c, as/hc08/asnoice.c: fixed bug #1447412: + Cannot debug files that contain spaces in the path name + by converting spaces in asm file name to underscores + +2007-01-13 Borut Razem + + * doc/sdccman.lyx: fixed format errors + +2007-01-10 Borut Razem + + * src/SDCC.lex, src/SDCCmain.c: fixed bug #1631895: + codeseg/constseg #pragma fail + * suppoprt/cpp2/Makefile.bcc: reenable Borland C compilation + * suppoprt/cpp2/configure.in, suppoprt/cpp2/libcpp/lex.c, + suppoprt/cpp2/Makefile.in, suppoprt/cpp2/sdcpp-opts, + suppoprt/cpp2/sdcpp.[ch]: house cleaning + +2007-01-09 Borut Razem + + * get rid of diagnistic.[ch], pretty-print.[ch], + c-pretty-print.[ch], ... used just for error, warning, ... + message formatting + * suppoprt/cpp2/pretty-print.[ch], suppoprt/cpp2/diagnostic.[ch], + suppoprt/cpp2/diagnostic.def, suppoprt/cpp2/input.h, + suppoprt/cpp2/pretty-print.[ch]: + removed + * suppoprt/cpp2/Makefile.in, suppoprt/cpp2/opts.c, + suppoprt/cpp2/sdcpp-opts.c, suppoprt/cpp2/sdcpp.[ch], + suppoprt/cpp2/sdcpp.dsp: + changed + +2007-01-08 Maarten Brock + + * device/lib/printf_large.c (output_float): removed recursion, + use smaller buffer on stack for mcs51, + fixed bug printing 1.96 + * support/regression/tests/snprintf.c: added test + +2007-01-07 Borut Razem + + * use dynamic memory buffers instead temporary files + * support/Util/dbuf_string.c, support/Util/dbuf_string.h: + added + * src/Makefile.in, src/SDCC.lex, src/SDCCast.c, src/SDCCast.h, + src/SDCCcse.c, src/SDCCglobl.h, src/SDCCglue.c, src/SDCCglue.h, + src/SDCCicode.c, src/SDCCicode.h, src/SDCCmain.c, src/SDCCmem.c, + src/SDCCmem.h, src/SDCCpeeph.c, src/SDCCpeeph.h, src/SDCCsymt.c, + src/SDCCsymt.h, src/SDCCutil.c, src/asm.c, src/asm.h, src/avr/gen.c, + src/avr/main.c, src/ds390/gen.c, src/ds390/main.c, src/hc08/gen.c, + src/hc08/main.c, src/izt/gen.c, src/mcs51/gen.c, src/mcs51/main.c, + src/pic/device.c, src/pic/gen.c, src/pic/glue.c, src/pic/main.c, + src/pic/ralloc.c, src/pic16/gen.c, src/pic16/glue.c, + src/pic16/main.c, src/pic16/ralloc.c, src/port.h, src/src.dsp, + src/xa51/gen.c, src/xa51/main.c, src/z80/gen.c, src/z80/main.c, + support/Util/dbuf.c, support/Util/dbuf.h: + modified + * .version, sdcc.spec: bumped version to 2.6.4 + +2007-01-07 Maarten Brock + + * src/port.h: added TARGET_Z80_LIKE macro + * src/SDCCmain.c (linkEdit): use TARGET_Z80_LIKE, + output PSEG location if --xram-loc or --xstack-loc was used + * as/link/mcs51/lkarea.c (lnksect2): set segment address afterwards + +2007-01-07 Maarten Brock + + * as/as_gbz80.dsp, as/z80/as_gbz80.dsp, + * as/as_z80.dsp, as/z80/as_z80.dsp, + * as/asx8051.dsp, as/mcs51/asx8051.dsp, + * sdcc.dsw: moved project files into subdir + * as/hc08/as_hc08.dsp, + * as/hc08/Makefile.bcc, + * as/hc08/Makefile.in, + * as/mcs51/Makefile.bcc, + * as/mcs51/Makefile.in, + * as/z80/Makefile.bcc, + * as/z80/Makefile.in, + * as/link/mcs51/Makefile.bcc: use as/strcmpi.c + * as/hc08/asm.h, + * as/mcs51/asm.h, + * as/z80/asm.h: added as_strcmpi() and as_strncmpi() prototypes + * as/hc08/asmain.c, + * as/hc08/assym.c, + * as/mcs51/asmain.c, + * as/mcs51/assym.c, + * as/z80/assym.c: removed include "strcmpi.h" + * as/hc08/strcmpi.c, + * as/hc08/strcmpi.h, + * as/mcs51/strcmpi.c, + * as/mcs51/strcmpi.h, + * support/Util/strcmpi.c, + * support/Util/strcmpi.h: removed files + * as/strcmpi.c: added as_strncmpi() + +2007-01-05 Jesus Calvino-Fraga + + * sdcc.dsw: Added some dependencies on project config.dsp + +2007-01-05 Maarten Brock + + * as/link/mcs51/lkarea.c (lnkarea2, lnksect2): replaced [di]seg_ap->a_addr + with [di]ram_start to fix a regresion + +2007-01-03 Bernhard Held + + * configure.in: added missing mcs51 in status output + * Makefile.in: add support/regression to SDCC_EXTRA to distclean this + directory + * debugger/mcs51/clean.mk (distclean): remove config.h + * src/clean.mk (clean): remove SDCCy.c, SDCCy.h, SDCClex.c + * support/cpp2/Makefile.in (clean): remove s-options, optionlist, + options.h, s-options-h and options.c + * support/cpp2/clean.mk: unused, removed + * Makefile.common.in, + * main_in.mk, + * as/Makefile.in, + * as/hc08/Makefile.in, + * as/hc08/clean.mk, + * as/mcs51/Makefile.in, + * as/mcs51/clean.mk, + * as/z80/clean.mk, + * as/z80/conf.mk, + * as/z80/Makefile.in, + * as/z80/clean.mk, + * as/link/Makefile.in, + * as/link/hc08/Makefile.in, + * as/link/hc08/clean.mk, + * as/link/mcs51/Makefile.in, + * as/link/mcs51/clean.mk, + * as/link/z80/Makefile.in, + * as/link/z80/clean.mk, + * as/link/z80/conf.mk, + * debugger/mcs51/Makefile.in, + * debugger/mcs51/clean.mk, + * device/include/Makefile.in, + * device/lib/Makefile.in, + * device/lib/mcs51/Makefile.in, + * device/lib/pic/Makefile.in, + * device/lib/pic/Makefile.common.in, + * device/lib/pic/Makefile.subdir, + * device/lib/pic/Makefile.rules, + * device/lib/pic16/libio/Makefile.in, + * device/lib/pic16/Makefile.subdir, + * device/lib/pic16/libdev/Makefile.in, + * device/lib/pic16/Makefile.rules, + * device/lib/pic16/Makefile.common.in, + * sim/ucsim/avr.src/Makefile.in, + * sim/ucsim/main_in.mk, + * sim/ucsim/cmd.src/Makefile.in, + * sim/ucsim/doc/Makefile.in, + * sim/ucsim/gui.src/Makefile.in, + * sim/ucsim/gui.src/obsolete/portmon.src/Makefile.in, + * sim/ucsim/gui.src/serio.src/Makefile.in, + * sim/ucsim/hc08.src/Makefile.in, + * sim/ucsim/libltdl/Makefile.in, + * sim/ucsim/s51.src/Makefile.in, + * sim/ucsim/sim.src/Makefile.in, + * sim/ucsim/sim.src/conf.mk, + * sim/ucsim/xa.src/Makefile.in, + * sim/ucsim/z80.src/Makefile.in, + * src/Makefile.in, + * src/clean.mk, + * src/port.mk, + * support/cpp2/Makefile.in, + * support/librarian/Makefile.in, + * support/librarian/clean.mk, + * support/makebin/Makefile.in, + * support/makebin/clean.mk, + * support/packihx/Makefile.in, + * support/regression/Makefile.in, + * support/regression/ports/ds390/spec.mk, + * support/regression/ports/gbz80/spec.mk, + * support/regression/ports/hc08/spec.mk, + * support/regression/ports/mcs51/spec.mk, + * support/regression/ports/mcs51-large/spec.mk, + * support/regression/ports/mcs51-medium/spec.mk, + * support/regression/ports/mcs51-xstack-auto/spec.mk, + * support/regression/ports/pic14/spec.mk, + * support/regression/ports/pic16/spec.mk, + * support/regression/ports/mcs51-stack-auto/spec.mk, + * support/regression/ports/ucz80/spec.mk, + * support/regression/ports/xa51/spec.mk, + * support/regression/ports/z80/spec.mk: fixed for autoconf 2.6x by + adding a slash after $(top_builddir) and/or adding @datarootdir@ + * configure.in, + * debugger/mcs51/configure.in, + * device/lib/pic/configure.in, + * device/lib/pic16/configure.in, + * sim/ucsim/configure.in, + * support/cpp2/configure.in, + * support/packihx/configure.in: changed AC_PREREQ to 2.60 + * configure, + * debugger/mcs51/configure, + * device/lib/pic/configure, + * device/lib/pic16/configure, + * sim/ucsim/configure, + * support/cpp2/configure, + * support/packihx/configure: generated with autoconf 2.60 + +2007-01-02 Maarten Brock + + * as/link/hc08/lkihx.c (newArea), + * as/link/hc08/lkrloc.c: renamed newArea() to ihxNewArea() + +2007-01-02 Borut Razem + + * doc/sdccman.lyx: documented #pragma sdcc_hash + * support/cpp2/sdcpp.c: allow_naked_hash (value of #pragma sdcc_hash) + initialized to 0 + * support/cpp2/c-ppoutput.c: fixed warning: no newline at end of file + +2007-01-01 Bernhard Held + + * src/SDCCast.c (createDo): backPatchLabels() needs falseLabel in + empty 'while'-loop to work correctly, see regression test 'while.c' + * support/regression/tests/while.c: added + +2007-01-01 Borut Razem + + * support/cpp2/libcpp/directives.c, support/cpp2/libcpp/identifiers.c, + support/cpp2/libcpp/init.c, support/cpp2/libcpp/sdcpp-opts.c, + support/cpp2/libcpp/sdcpp.c: + sdcpp specific pragma/directive/option handling moved to sdcpp.c + * doc/sdccman.lyx: reference to the GCC 4.1.1 CPP Manual + * support/cpp2/libcpp/mkdeps.c: synchronized with GCC CPP 4.1.1 + +2006-12-31 Borut Razem + + * SDCPP synchronized with GCC CPP release version 4.1.1, + currently the latest release: + * support/cpp2/libcpp, support/cpp2/libcpp/include, + support/cpp2/libcpp/include/cpp-id-data.h + support/cpp2/libiberty/fopen_unlocked.c + support/cpp2/libiberty/md5.c + support/cpp2/md5.h + support/cpp2/opt-functions.awk + support/cpp2/opt-gather.awk + support/cpp2/optc-gen.awk + support/cpp2/opth-gen.awk: + added + * support/cpp2/Makefile.in, support/cpp2/auto-host_vc_in.h, + support/cpp2/c-incpath.c, support/cpp2/c-incpath.h, + support/cpp2/c-ppoutput.c, support/cpp2/c-pretty-print.c, + support/cpp2/c-pretty-print.h, support/cpp2/cppdefault.c, + support/cpp2/cppdefault.h, support/cpp2/diagnostic.c, + support/cpp2/diagnostic.h, support/cpp2/except.h, + support/cpp2/hwint.h, support/cpp2/input.h, + support/cpp2/intl.h, support/cpp2/move-if-change, + support/cpp2/opts.c, support/cpp2/opts.h, + support/cpp2/output.h, support/cpp2/prefix.c, + support/cpp2/prefix.h, support/cpp2/pretty-print.c, + support/cpp2/pretty-print.h, support/cpp2/sdcpp-opts.c, + support/cpp2/sdcpp.c, support/cpp2/sdcpp.dsp, + support/cpp2/sdcpp.h, support/cpp2/sdcpp.opt, + support/cpp2/sdcppa.dsp, support/cpp2/symcat.h, + support/cpp2/version.c: + modified + * support/cpp2/libcpp/charset.c, support/cpp2/libcpp/directives.c, + support/cpp2/libcpp/errors.c, support/cpp2/libcpp/expr.c, + support/cpp2/libcpp/files.c, support/cpp2/libcpp/identifiers.c, + support/cpp2/libcpp/include/cpplib.h, support/cpp2/libcpp/include/line-map.h, + support/cpp2/libcpp/include/mkdeps.h, support/cpp2/libcpp/include/symtab.h, + support/cpp2/libcpp/init.c, support/cpp2/libcpp/internal.h, + support/cpp2/libcpp/lex.c, support/cpp2/libcpp/line-map.c, + support/cpp2/libcpp/macro.c, support/cpp2/libcpp/mkdeps.c, + support/cpp2/libcpp/symtab.c, support/cpp2/libcpp/system.h, + support/cpp2/libcpp/traditional.c, support/cpp2/libcpp/ucnid.h, + support/cpp2/libiberty/hashtab.c, support/cpp2/libiberty/hashtab.h: + moved + * support/cpp2/cppcharset.c, support/cpp2/cpperror.c, + support/cpp2/cppexp.c, support/cpp2/cppfiles.c, + support/cpp2/cpphash.c, support/cpp2/cpphash.h, + support/cpp2/cppinit.c, support/cpp2/cpplex.c, + support/cpp2/cpplib.c, support/cpp2/cpplib.h, + support/cpp2/cppmacro.c, support/cpp2/cpptrad.c, + support/cpp2/cppucnid.h, support/cpp2/hashtab.c, + support/cpp2/hashtab.h, support/cpp2/hashtable.c, + support/cpp2/hashtable.h, support/cpp2/line-map.c, + support/cpp2/line-map.h, support/cpp2/mkdeps.c, + support/cpp2/mkdeps.h, support/cpp2/options_vc_in.c, + support/cpp2/options_vc_in.h, support/cpp2/opts.sh, + support/cpp2/system.h: + deleted / moved + +2006-12-31 Borut Razem + + * configure.in, configure: fixed bug #1538756: configure dies if bison + and flex are not installed, 2nd try + +2006-12-30 Bernhard Held + + * src/mcs51/peeph.def: renamed rule 400 to 500, moved rule 253.x to + 400.x for better code in RFE 899102 + +2006-12-30 Bernhard Held + + * src/SDCCpeeph.c (deadMove), + * src/port.h, + * src/mcs51/peep.h: renamed 'op' by 'reg' + * src/mcs51/peep.c (isFunc, isCallerSaveFunc): added, + (scan4op): small change for removeDeadMove(), added support for + 'callee saves' and/or PACLL function calls, + (removeDeadMove): added, removes superflous 'mov r%1,%2', + (removeDeadPopPush): renamed from mcs51DeadMove(), common parts + left in new dispatcher mcs51DeadMove() + (mcs51DeadMove): dispatcher for removeDeadPopPush() and new + removeDeadMove() + * src/mcs51/peeph.def: added rule 301 removing superflous 'mov r%1,%2' + +2006-12-30 Jesus Calvino-Fraga + + * support/cpp2/options_vc_in.h, support/cpp2/options_vc_in.c, + support/cpp2/sdcppa.dsp: create 'options.h' and 'options.c' under MSVC. + +2006-12-30 Borut Razem + + * support/cpp2/spacs.h: deleted from svn + * configure.in, configure: fixed bug #1538756: configure dies if bison + and flex are not installed + +2006-12-29 Maarten Brock + + * src/z80/gen.c (assignResultValue): fixed bug when registers overlap, + with this z80 passes printf float test when enabled + * support/regression/tests/bug1057979.c: typo disabled ds390 float test + +2006-12-28 Borut Razem + + * support/cpp2/config.in, support/cpp2/configure.in, + support/cpp2/configure, support/cpp2/Makefile.in: + fix for the solaris build + +2006-12-27 Erik Petrich + + * src/SDCC.y (type_specifier2, pointer), + * src/SDCCsymt.h, + * src/SDCCsymt.c (mergeSpec, checkSClass), + * support/Util/SDCCerr.c, + * support/Util/SDCCerr.h: Parse and validate the restrict keyword + * support/valdiag/valdiag.py: Allow test cases to specify + required language standard + * support/valdiag/tests/restrict.c: New file to test restrict keyword + * support/valdiag/tests/tentdecl.c: Supress empty source file error + +2006-12-27 Borut Razem + + * support/cpp2/cppmain.c, support/cpp2/mbchar.[ch]: removed + * support/cpp2/libiberty/Makefile.in, support/cpp2/libiberty/sdcpp.dsp: + mbchar removed + * support/cpp2/libiberty/getpwd.c, support/cpp2/sdcpp.h: + fixed for borland C + * support/cpp2/libiberty/Makefile.bcc: updated + * src/pic16/main.c: fixed #pragma udata handling + * src/mcs51/mcs51.dsp: added peep.[ch] to the project + +2006-12-26 Bernhard Held + + * src/SDCCpeeph.c: made labelHashEntry global, + made pcDistance, FBYNAME static, + (pcDistance): made static, use isComment and isLabel, + (deadMove): added, + (getLabelRef): added, extracted from labelRefCount(), + (labelRefCount): use new getLabelRef(), + (callFuncByName): made static, added deadMove, + use isComment and isLabel, + (newPeepRule): made static, set isLabel, + (isLabelDefinition): added parameter isPeepRule to allow '%' in + labels from peephole rules, + (buildLabelRefCountHash): speed up by running isLabelDefinition() only + when isComment or isLabel is set + * src/SDCCpeeph.h: added "isLabel" and "visited" to struct lineNode, + added labelHashEntry, isLabelDefinition, labelHash and getLabelRef + to make them global + * src/mcs51/peep.h: added + * src/mcs51/peep.c: added, implements mcs51DeadMove() + * src/port.h: added peep->deadMove to port structure + * src/mcs51/main.c: initialize peep->deadMove with mcs51DeadMove + * src/mcs51/peeph.def: renumbered rule 300 to 400, added new rule 300 + deadMove, finally removed no. 1 and 2 + * src/mcs51/gen.c, + * src/pic/gen.c, + * src/z80/gen.c, + * src/z80/ralloc.c, + * src/pic16/gen.c, + * src/ds390/gen.c, + * src/hc08/gen.c: mark lines with isComment or isLabel + * sim/ucsim/s51.src/uc390hw.cc: don't waist 65535 ticks before CKRDY + * .version, + * sdcc.spec: bumped version to 2.6.3 + +2006-12-26 Borut Razem + + * support/cpp2/Makefile.in: added dependency on options.h + * configure: regenerated + * support/cpp2/sdcpp.opt, support/cpp2/move-if-change: svn:eol-style native + * support/cpp2/Makefile.in: added vasprintf.c + +2006-12-25 Borut Razem + + * SDCPP synchronized with GCC CPP release version 3.4.6, + the latest release before 4.x: + * support/cpp2/Makefile.in, support/cpp2/config.h, + support/cpp2/configure, support/cpp2/configure.in, + support/cpp2/cppdefault.c, support/cpp2/cppdefault.h, + support/cpp2/cpperror.c, support/cpp2/cppexp.c, + support/cpp2/cppfiles.c, support/cpp2/cpphash.c, + support/cpp2/cpphash.h, support/cpp2/cppinit.c, + support/cpp2/cpplex.c, support/cpp2/cpplib.c, + support/cpp2/cpplib.h, support/cpp2/cppmacro.c, + support/cpp2/cpptrad.c, support/cpp2/except.h, + support/cpp2/hashtable.c, support/cpp2/hashtable.h, + support/cpp2/hwint.h, support/cpp2/intl.h, + support/cpp2/line-map.c, support/cpp2/line-map.h, + support/cpp2/mkdeps.c, support/cpp2/mkdeps.h, + support/cpp2/output.h, support/cpp2/prefix.c, + support/cpp2/prefix.h, support/cpp2/sdcpp.dsp, + support/cpp2/system.h, support/cpp2/version.c: + modified + * support/cpp2/c-incpath.c, support/cpp2/c-incpath.h, + support/cpp2/c-ppoutput.c, support/cpp2/c-pretty-print.c, + support/cpp2/c-pretty-print.h, support/cpp2/cppcharset.c, + support/cpp2/cppucnid.h, support/cpp2/diagnostic.c, + support/cpp2/diagnostic.def, support/cpp2/diagnostic.h, + support/cpp2/hashtab.c, support/cpp2/hashtab.h, + support/cpp2/input.h, support/cpp2/libiberty/getpwd.c, + support/cpp2/libiberty/vasprintf.c, support/cpp2/libiberty/xmemdup.c, + support/cpp2/move-if-change, support/cpp2/opts.c, + support/cpp2/opts.h, support/cpp2/opts.sh, + support/cpp2/pretty-print.c, support/cpp2/pretty-print.h, + support/cpp2/sdcpp.opt, support/cpp2/sdcpp-opts.c, + support/cpp2/win32, support/cpp2/win32/dirent.c, + support/cpp2/win32/dirent.h: + added + * support/cpp2/sdcpp.c: renamed from sdcppmain.c + * support/cpp2/sdcpp.h: renamed from sdcc.h + * sdcppinit.c: deleted + +2006-12-23 Borut Razem + + * support/cpp2/cpphash.h, support/cpp2/cpplex.c, + support/cpp2/cpplib.[ch], support/cpp2/sdcppinit.c, doc/sdccman.lyx, + preproc.c: an other try to fix bug #982435: introduced + -pedantic-parse-number command line option and pedantic_parse_number + pragma + +2006-12-21 Maarten Brock + + * as/link/mcs51/lkarea.c (lnkarea2): handle absolute areas, restructured + BSEG handling, + (lnksect2): use --data-loc and --idata-loc as lower bound for ramstart, + corrected overlayed areax addresses, warn about memory overlaps + * as/mcs51/asmain.c (asmbl): create a new area for every .org directive + * src/avr/main.c, + * 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, + * src/port.h: added xabs_name and iabs_name + * src/SDCCglue.c (emitRegularMap): allocate for absolutes with initializer + (glue, emitMaps): create and emit maps d_abs and i_abs + * src/SDCCglue.h: cosmetic changes + * src/SDCCmain.c (setDefaultOptions): idata can start below 0x80 + * src/SDCCmem.h, + * src/SDCCmem.c (initMem): added x_abs, i_abs and d_abs + (allocDefault): put absolute, initialized globals in them + * support/regression/tests/absolute.c: added absolute bdata test + * device/lib/printf_large.c (output_float): moved fpBuffer to stack/xdata + +2006-12-20 Borut Razem + + * support/cpp2/cpphash.h, support/cpp2/cpplex.c: fixed bug #982435 + * support/regression/tests/preproc.c: renamed from bug-1351710.c, + added regression test for bug #982435 + +2006-12-18 Borut Razem + + * src/SDCCutil.c: fixed a bug in (get_pragma_token) + * src/pic16/main.c, src/SDCC.lex, src/z80/main.c: + small cosmetic changes + * src/SDCC.lex: (stringLiteral) fixed bug #1351710 + * support/regression/tests/bug-1351710.c: added regression test + +2006-12-18 Frieder Ferlemann + + * doc/sdccman.lyx: added the long missed iCode table + "", added links to wiki + 2006-12-17 Borut Razem * doc/sdccman.lyx, src/pic16/main.c, src/pic/main.c, src/port.h, @@ -52,6 +926,7 @@ 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