X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ChangeLog;h=e5e168181a2388a7dc55c6507a4a772bce31def6;hb=014ffb2177ce6852557ae1895d9a800856831c55;hp=d40459009f0cb3014670a1d96957b1d943694631;hpb=4e0794235abb8298c752250b0c567aeb79e7a356;p=fw%2Fsdcc diff --git a/ChangeLog b/ChangeLog index d4045900..e5e16818 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,459 @@ +2005-06-19 Erik Petrich + + * sim/ucsim/hc08.src/inst.cc (inst_condbranch): fixed simulation of + BGT, BLE, BHI, and BLS instructions + * src/hc08/gen.c (outAcc, outBitC, outBitNV, genCmpLt, genCmpGt, + genCmpEq): removed + * src/hc08/gen.c (genCmpEQorNE, genCmp, branchopCmp, nameCmp, + negatedCmp, exchangedCmp, genhc08Code): rewrite of comparison handling, + fixes bug #1216342 + * src/hc08/peeph.def: added rules 2g - 2l for new conditional branches + +2005-06-15 Raphael Neider + + * src/pic16/NOTES: moved Vangelis from active developers to people to contact + * device/include/pic16/{6520.h,8520.h}: fixed configuration bits + * src/pic16/gen.c (): prevent iTemps from being considered to be in CODESPACE, + fixes bug #1221120; for symbols in CODESPACE get number of bytes to read from + OP_SYM_TYPE() instead of OP_SYM_ETYPE() + +2005-06-06 Frieder Ferlemann + + * device/include/mcs51/reg764.h: Changed PB0 to PBO as requested by + Marcel Telka in bug #1215704 + +2005-06-02 Slade Rich + + * src/pic/pcode.c : Changed pseudo stack size to 15 to allow WSAVE to be located in shared memory bank. + +2005-05-31 Raphael Neider + + * src/pic16/{gen.c,genarith.c}: replaced sign-extension + "CLRF, BTFSC , DECF/COMF" with side-effect-free + "CLRF, BTFSC , SETF"; fixes "long>>9" + +2005-05-27 Maarten Brock + + * device/lib/_strncpy.c: fixed the fix + +2005-05-26 Raphael Neider + + * src/pic16/glue.c (pic16_printIvalChar): fixed _constant_ string + initializers with \0, bug #1208187 + * src/pic/glue.c (printIvalChar): fixed (non- and constant) string + intializers with \0, bug #1208187 + +2005-05-26 Raphael Neider + + * src/pic16/glue.c (pic16_printIvalChar): fixed string + initializers with \0, bug #1208187 + * src/pic16/main.c (_process_pragma): added sanity checks + for stack position and size, emit warnings when appropriate + +2005-05-26 Maarten Brock + + * device/lib/_strncpy.c: fixed not filling with \0 + +2005-05-26 Erik Petrich + + * src/SDCCast.c (funcOfType, funcOfTypeVarg, stringToSymbol, + createFunction), + * src/SDCC.y (external_definition, enumerator, parameter_declaration, + compound_statement), + * src/SDCCsymt.h, + * src/SDCCsymt.c (addSymChain, processFuncArgs): fixed bug #1159134 + +2005-05-24 Raphael Neider + + * src/pic16/glue.c (pic16_printGPointerType): fixed #1207796 + +2005-05-24 Raphael Neider + + * device/include/pic16/pic18f{442,452,458}.h: fixed wrong + TRISE definitions, closes bug #1162453 + +2005-05-22 Raphael Neider + + * src/pic16/main.c (_process_pragma): check for missing + arguments to pragmas code and udata + * device/include/pic16/pic18f{2550,4331,4455,4520}.h: + consistency fixes to match other headers (thanks to Jim Paris) + * device/lib/pic16/libio/i2c.ignore: 18f4331 provides no I2C + +2005-05-21 Maarten Brock + + * src/SDCCicode.c (isOperandEqual): fixed missing ; + +2005-05-19 Maarten Brock + + * support/regression/tests/bug1198642.c: new test + * src/SDCCicode.c (isOperandEqual): fixed bug 1198642 + * src/SDCCcse.c (findPrevIc): added comment, please have a look + * support/scripts/resource.h, + * support/scripts/resource.rc, + * src/src.dsp: added sdcc.ico to project as icon for sdcc.exe + * support/scripts/sdcc.ico: added 32x32 icon + +2005-05-18 Raphael Neider + + * device/lib/pic16/libdev/pic18f*.c, + * device/include/pic16/pic18f*.h: updated "sfr" and "at X" + keywords to "__sfr" and "__at (X)" + * device/include/pic16/pic18fregs.h: added pic18f4520 + * src/pic16/pcode.c (pic16_pCode2str): fixed (?) bug + #1203088 (MPLAB compatibility) + +2005-05-17 Raphael Neider + + * device/include/pic16/pic18f{2550,4331,4455,4520}.h: NEW + * device/lib/pic16/libdev/pic18f{2550,4331,4455,4520}.c: NEW + * device/lib/pic16/pics.all: added new devices + * src/pic16/device.c: added support for pic18f4520 + +2005-05-16 Raphael Neider + * src/pic16/gen.{c,h}: s/mov2f/pic16_mov2f made public + * src/pic16/genarith.c (genAddLit): fixed bug 1202480 + * src/pic16/pcode.{c,h} (pic16_newpCodeOpBit_simple): NEW + convenience function for bit access + +2005-05-15 Maarten Brock + + * device/lib/printf_large.c: fixed bug 1193299 + * support/regression/tests/bug1057979.c: added test %3.3s + +2005-05-15 Frieder Ferlemann + + * device/include/mcs51/8051.h, + * device/include/mcs51/8052.h: made parseable with lint + * device/include/mcs51/lint.h: added include file for (sp)lint + * doc/sdccman.lyx: added doc about use of splint (syntax checking tool) + * doc/cdbfileformat.lyx, + * doc/test_suite_spec.lyx: hardcoded date to the date of last text change + +2005-05-14 Raphael Neider + + * device/lib/pic16/Makefile.common.in: add --optimize-df to OPT_FLAGS + * device/lib/pic16/libc/stdlib/itoa.c (new) + * device/lib/pic16/libc/stdlib/Makefile: have itoa.c built + * device/lib/pic16/libio/Makefile: exclude subdir according to + ${subdir}.ignore for certain PICs (lacking e.g. i2c) + * device/lib/pic16/libio/i2c.ignore (new): pic18f1220 has no I2C support + * src/pic16/gen.c (genFunction): prevent annoying warning + * src/pic16/pcode.c: renamed stack_t to dynstack_t to prevent + nameclashes on BeOS + * support/cpp2/cppmain.c (cpp_output_string): new + * support/cpp2/cpplib.c (_cpp_do__Pragma): fixed _Pragma(""), + fixes bug 1116802 + +2005-05-13 Borut Razem + + * src/SDCCmain.c (linkEdit): fixed bug 1195202 + +2005-05-12 Erik Petrich + + * .version: changed to version 2.5.1; back to bleeding edge development + +2005-05-11 Borut Razem + + * doc/sdccman.lyx doc/cdbfileformat.lyx doc/test_suite_spec.lyx: + generate PDF version 1.3 documents + +2005-05-07 Erik Petrich + + * .version: changed to version 2.5.0 + +2005-04-27 Frieder Ferlemann + + * doc/sdccman.lyx: updated weblinks, index and smaller updates + +2005-04-26 Erik Petrich + + * doc/sdccman.lyx: changed version 2.5.0, documented --std-c89, + --std-sdcc89, --std-c99, --std-sdcc99, and the corresponding #pragmas, as + well as many smaller updates. + * .version: changed to version 2.5.0-pre1 + +2005-04-26 Jesus Calvino-Fraga + + * src/SDCCmain.c (setIncludePath): added port->target to SDCC_INCLUDE_NAME + +2005-04-26 Maarten Brock + + * support/regression/tests/bug1185672.c: added + * src/mcs51/gen.c (aopGetUsesAcc, genCpl, genAnd, genOr, genXor): fixed + bug 1185672 + * src/mcs51/gen.c (genCall): added comments, made it look safer + * src/mcs51/gen.c (genEndFunction): simplified + +2005-04-25 Maarten Brock + + * src/mcs51/ralloc.c (serialRegAssign): fixed bug 1189609 + +2005-04-14 Borut Razem + + * fixed bug 1045046 - SIGSEGV with really simple code?: + src/pic/pcode.c (pCodeInitRegisters)- pseudo stack size increased to 16 + src/pic/ralloc.c (typeRegWithIdx) - error message on pseudo stack overflow + +2005-04-14 Borut Razem + + * src/pic16/gen.c (genInline), src/pic16/main.c (_process_pragma), + src/pic16/device.h: temporarily disabled experimental #inline pragma + for 2.5.0 release + +2005-04-14 Maarten Brock + + * device/include/z80/stdio.h, + * device/include/z80/string.h: removed these highly incomplete files so + SDCC can use the default ones in device/include/ + +2005-04-14 Erik Petrich + + * src/mcs51/gen.c (genEndFunction): removed unused variable to fix + gcc warning. + * device/lib/Makefile.in: default PORTINCDIR to the mcs51 subdir to + fix sdcpp warnings. + +2005-04-12 Maarten Brock + + * device/include/malloc.h: removed redundant __reentrant prototypes + * device/lib/_mullong.c: added working xstack variant in asm (C version + doesn't pass regression tests) + * device/lib/bpx.c: used __data and made bpx char for mcs51 + * src/SDCCast.c (decorateType): removed unused GPTYPE_IDATA, + (createFunction): fixed bug with xstackPtr + * src/SDCCcse.c: corrected comments + * src/SDCCopt.c (convertToFcall): fixed warning in MSVC, + (killDeadCode, eBBlockFromiCode): removed unused code + * src/SDCCsymt.h: removed unused GPTYPE_GPTR and GPTYPE_IDATA, + corrected comments + * src/mcs51/gen.c (aopForSym, aopPut, toBoolean, unsaveRegisters, + assignResultValue, genCall, genFunction, genEndFunction, genAnd, + genOr, genXor, genAddrOf): fixed several bugs concerning xstack + (genModOneByte): fixed warning in MSVC + * src/mcs51/main.c (): added comments + * src/mcs51/peeph.def: changed 129 to 129.a, added 129.b, 129.c & 129.d + +2005-04-12 Maarten Brock + + * src/SDCCmain.c (linkEdit): oops, changed one line too many + +2005-04-11 Maarten Brock + + * src/SDCCmain.c (linkEdit): fixed bug with finding crt0.o for z80 + +2005-04-10 Vangelis Rokas + + * src/pic16/glue.c (printIvalChar): fixed bug when emitting + characters arrays of larger size than the declared one. + +2005-04-10 Borut Razem + + * src/pic/gen.c (genInline), + src/pic/pcode.c (newpCodeAsmDir), (pCode2str), + (genericPrint), (unlinkpCodeFromBranch), (compareLabel), + (findNextInstruction), (findPrevInstruction), + (findInstructionUsingLabel), + src/pic/pcode.h: fixed bug #1164907 - Labels not being recognized + * src/pic/pcode.c (findLabel): added missing '\n' + * src/src.dsp: added SDCCdwarf2.c to the project + +2005-04-09 Borut Razem + + * support/scripts/sdcc.nsi: added include/hc08/* h to NSIS setup + +2005-04-08 Raphael Neider + + * src/pic16/pcode.c: added helpers defmapInsertAfter (insert a new item + into the chain after a given one) and mergeDefmapSymbols (combine + defmap entries for each symbol per pcode) + * (createDefmap): have defmap entries merged in the end + * (defmapReplaceSymRef): split defmap entries covering two accesses to + a symbol before replacing one access type's symbol, merge symbols in + the end (replacement symbol might already have an entry) + * (assignValnums): keep reference to written WREG intact + +2005-04-08 Raphael Neider + + * src/pic16/pcode.c (struct defmap_s): named anonymous union (for + Alpha) + +2005-04-08 Vangelis Rokas + + * src/pic16/pcode.c (pic16_get_op2): enlarged size of array b to 128 + bytes + +2005-04-07 Raphael Neider + + * device/include/pic16/usart.h: added compatibility defines for + devices with more than one USART + * device/include/pic16/pic18f[68][567]20.h: activated above defines + +2005-04-07 Maarten Brock + + * device/lib/Makefile.in: updated for port specific include + +2005-04-07 Maarten Brock + + * support/regression/ports/mcs51/spec.mk: added mcs51 include + +2005-04-07 Maarten Brock + + * device/include/8051.h, + * device/include/8052.h, + * device/include/at89S8252.h, + * device/include/at89c55.h, + * device/include/at89x051.h, + * device/include/at89x51.h, + * device/include/at89x52.h, + * device/include/mcs51reg.h, + * device/include/reg51.h, + * device/include/reg764.h, + * device/include/regc515c.h, + * device/include/sab80515.h: (re)moved these 12 files + * device/include/mcs51/8051.h, + * device/include/mcs51/8052.h, + * device/include/mcs51/at89S8252.h, + * device/include/mcs51/at89c55.h, + * device/include/mcs51/at89x051.h, + * device/include/mcs51/at89x51.h, + * device/include/mcs51/at89x52.h, + * device/include/mcs51/mcs51reg.h, + * device/include/mcs51/reg51.h, + * device/include/mcs51/reg764.h, + * device/include/mcs51/regc515c.h, + * device/include/mcs51/sab80515.h: and added them here + +2005-04-06 Maarten Brock + + * device/include/stdarg.h: changed SDCC specific keywords to double + underlined form. + * device/include/stdint.h: changed intptr_t and uintptr_t for others than + mcs51 and ds390. + * device/include/hc08/mc68hc908gp32.h, + * device/include/hc08/mc68hc908jb8.h, + * device/include/hc08/mc68hc908jkjl.h, + * device/include/hc08/mc68hc908qy.h: fixed comments + * device/include/mcs51/README: updated + * device/include/mcs51/c8051f120.h: added PINRSF + * device/lib/pic16/libc/stdlib/crc16.c: fixed comments + * src/pic16/pcode.c: MSVC6 doesn't accept declaring new variables + amidst code. Also inline is not supported. + +2005-04-06 Raphael Neider + + * src/pic16/pcode.c (pic16_pCodeReplace): also update pcflow->end + * (createDefmap): fixed CALLs to depend on FSR1 and RETLW to restore + callers stack/frame pointers + +2005-04-06 Vangelis Rokas + + * device/include/pic16/usart.h: added, missing in previous commit, + * device/include/pic16/adc.h: fixed typo, + * device/lib/pic16/libc/utils/cvtdec.S: added missing in previous + commit, + * device/lib/pic16/libc/stdlib/g_ftoa.S: modified to include + + * device/lib/pic16/libc/stdio/streams.c: leave stdin, stdout + uninitialized because a bug appears with gplink + * device/lib/pic16/{some makefiles}: moved $(CSTD) from CFLAGS to + COMPILE_FLAGS and added CPPFLAGS with -nostdinc because sdcpp + complains for unrecognised option + +2005-04-05 Raphael Neider + + * src/pic16/gen.c (pic16_popCopyReg): made copying work for extended + structs as well (using memcpy) + * (genFunction): fixed comparison, used pCodeOpLabel to reduce warning + on ISRs (GOTO has no label) + * src/pic16/device.h: added OF_OPTIMIZE_DF + * src/pic16/main.c: added compiler switch --optimize-df to enable the + new data flow analysis/optimization + * src/pic16/pcode.c: added (prototypes for and implementation of) + dataflow analysis functions, fixed pCodeInstructions' inCond and + outCond values, made RCALL a branch instruction + * (pic16_unlinkpCode): keep C line if possible + * (pic16_pCodeUnlink): removed cast on left side of assignment, have + C line moved if possible + * (pic16_getRegFrompCodeOp): NEW, improved version of... + * (pic16_getRegFromInstruction,pic16_getRegFromInstruction2): changed + to use new pic16_getRegFrompCodeOp (works for more SFRs) + * (pic16_BuildFlow): fixed skip instructions with label (did not start + new flow) + * (pic16_getJumptabpCode): NEW, needed in... + * (LinkFlow): fixed handling of jumptables, calls and conditional + branches + * (pic16_InsertCommentAfter): NEW + * (pic16_pCodeReplace): made verbose and flow preserving + * (AnalyzeFlow): added call to data flow analysis + * src/pic16/pcode.h: added defmaps to pCodeFlow struct + * src/pic16/pcodeflow.h: added PCC_STATUS to mean all STATUS bits + * src/pic16/ralloc.c (packRegsForAssign): added return 1 in the end + +2005-04-03 Erik Petrich + + * src/SDCCast.c (decorateType): fixed bug #1105626 + +2005-04-02 Vangelis Rokas + + * device/include/asm/pic16/features.h, + * pic18f*.h headers, + * device/include/pic16/adc.h, + * device/include/pic16/delay.h, + * device/include/pic16/i2c.h, + * device/include/pic16/malloc.h, + * device/include/pic16/stdio.h, + * device/include/pic16/stdlib.h, + * device/include/pic16/string.h, + * device/lib/pic16/libc/stdio/printf_tiny.c, + * device/lib/pic16/libc/stdio/printf_small.c, + * device/lib/pic16/libc/stdio/strmgpsim.c, + * device/lib/pic16/libc/stdio/strmmssp.c, + * device/lib/pic16/libc/stdio/strmusart.c, + * device/lib/pic16/libc/stdio/vfprintf.c, + * device/lib/pic16/libc/stdlib/ltoa.c, + * device/lib/pic16/libc/stdlib/putchar.c, + * device/lib/pic16/libc/stdlib/x_ftoa.c, + * device/lib/pic16/libc/stdlib/memchrpgm.c, + * device/lib/pic16/libc/stdlib/memchrram.c, + * device/lib/pic16/libc/stdlib/memcpypgm2ram.c, + * device/lib/pic16/libc/stdlib/memcpyram2ram.c, + * device/lib/pic16/libio/adc/adcbusy.c, + * device/lib/pic16/libio/adc/adcread.c, + * device/lib/pic16/libio/adc/adcsetch.c, + * device/lib/pic16/libio/usart/ubaud.c, + * device/lib/pic16/libio/usart/ubusy.c, + * device/lib/pic16/libio/usart/udrdy.c, + * device/lib/pic16/libio/usart/uopen.c, + * device/lib/pic16/libio/usart/uputc.c, + * device/lib/pic16/libsdcc/gptr/gptrget1.c, + * device/lib/pic16/libsdcc/gptr/gptrget2.c, + * device/lib/pic16/libsdcc/gptr/gptrget3.c, + * device/lib/pic16/libsdcc/gptr/gptrget4.c, + * device/lib/pic16/libsdcc/gptr/gptrput1.c, + * device/lib/pic16/libsdcc/gptr/gptrput2.c, + * device/lib/pic16/libsdcc/gptr/gptrput3.c, + * device/lib/pic16/libsdcc/gptr/gptrput4.c: modified all SDCC + specific keywords to double underlined form, + * device/lib/pic16/libc/Makefile.rules, + * device/lib/pic16/libsdcc/Makefile.rules, + * device/lib/pic16/libm/Makefile, + * device/lib/pic16/libio/Makefile.rules: added CSTD macro in CFLAGS + to compile with C standard set in Makefile.common + * device/lib/pic16/libc/stdlib/Makefile: added new C sources + rand.c and crc.c in compilation process, + * device/lib/pic16/libsdcc/int/divuint.c, + * device/lib/pic16/libsdcc/long/divulong.c: changed declaration of + `c' from signed to unsigned, + * device/lib/pic16/startup/crt0.c, + * device/lib/pic16/startup/crt0i.c, + * device/lib/pic16/startup/crt0iz.c: adopted to all SDCC specific + keywords to double underlined form, bug fixes in _do_cinit function + which prevented the correct initialization of the .idata segment, + * src/pic16/pcoderegs.c (insideLRBlock): fixed a bug that caused the + core to enter a infinite loop + * device/lib/pic16/libc/stdlib/rand.c, crc.c: new files + 2005-04-02 Erik Petrich * src/SDCCicode.c (getArraySizePtr): fixed bug #1122171 @@ -45,7 +501,7 @@ * device/include/mcs51/c8051f350.h, * device/include/z180.h: Changed SDCC specific keywords to double underlined form. - + 2005-03-31 Vangelis Rokas * src/pic16/device.c (Pics16[]): added devices 18F2550, 18F4331, @@ -90,7 +546,7 @@ should be removed from local register store/restore in/from stack block, * src/pic16/ralloc.c (pic16_decodeOp): added decode for - DUMMY_READ_VOLATILE, + DUMMY_READ_VOLATILE, * device/include/pic16/adc.h: minor prototype modifications and update,