X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ChangeLog;h=3561b5542f9c586336c8015607f4eaa30b54f9f8;hb=5156ec0bb15ef639c2aa78f616a05e3ab0435813;hp=4c4acb9eb2ed6e99fd542f5f8e5479a4d6796d40;hpb=b8950b7c0bc67d6789beff12d4229985f8b4190a;p=fw%2Fsdcc diff --git a/ChangeLog b/ChangeLog index 4c4acb9e..3561b554 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,202 @@ +2005-11-04 Borut Razem + + * sim/ucsim/cmd.src/error.cc, sim/ucsim/cmd.src/errorcl.h, + sim/ucsim/sim.src/stack.cc, sim/ucsim/sim.src/stackcl.h, + sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h, + sim/ucsim/sim.src/mem.cc, sim/ucsim/sim.src/memcl.h, + sim/ucsim/cmd.src/cmdconf.cc: dynamic construction of cl_error_class + and derivates to resolve the initialization problem on OSX + +2005-11-02 Borut Razem + + * sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/newcmd.cc: + corrected typo - #include + +2005-11-02 Maarten Brock + + * src/asm.c (printILine): always close tmpFile, thanks Beau E. Cox, + (_asxxxx_mapping): added org directive for future enhancements + +2005-11-01 Borut Razem + + * sim/ucsim/app.cc, sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/newcmd.cc: + enabled sockets on WIN32 + * sim/ucsim/cmd.src/newcmd.cc: fixed bug with uninitialized variables + +2005-10-31 Borut Razem + + * support/regression/generate-cases.py: escape backslashes in {testcase}: + WIN32 backslash path delimiters should be escaped when used in C strings + * support/regression/tests/bitfields.c: exclude failing assertions for + __CYGWIN32__ and __MINGW32__ hosts + +2005-10-30 Borut Razem + + * src/SDCCutil.c: corrected double comparison typo + +2005-10-27 Maarten Brock + + * device/lib/medium/Makefile: added for new memory model medium + * device/include/asm/mcs51/features.h: updated for medium/pdata + * device/include/mcs51/c8051f120.h: added sfr16/sfr32 definitions, + added Multiply & Accumulate sbit's and MAC0_PAGE define + * device/include/mcs51/c8051f300.h: added sfr16 definitions + * device/include/mcs51/c8051f310.h: added sfr16 definitions + * device/lib/_mullong.c: update for medium model + * device/lib/incl.mk: added medium model + * doc/sdccman.lyx: documented medium model + * src/SDCCast.c (isBitAndPow2): simplified using updated powof2 + * src/SDCCicode.c (geniCodeMultiply, geniCodeDivision): use updated powof2 + * src/SDCCmain.c (optionsTable, linkEdit): enabled medium model + * src/SDCCmem.c (allocIntoSeg): set iaccess for pdata symbols, + (allocParms): set SCLS and OCLS to pdata for medium model + * src/SDCCsymt.c (processFuncArgs): use default_local_map and set iaccess + for pdata, + (powof2): return <0 if not power of 2 + * src/avr/gen.c (genBitWise): use updated powof2 + * src/mcs51/gen.c (genMinusDec): use acc if necessary, + (shiftR2Left2Result): small optimization in setup, save acc when storing, + (shiftLLeftOrResult): use B if necessary + * src/mcs51/main.c (_mcs51_finaliseOptions, mcs51_port): added medium model + * src/mcs51/peeph.def: renamed 226 to 226.b, added 226.a + * src/pic/main.c (_pic14_do_link): made void parameter list explicit + * support/regression/Makefile.in: added test-mcs51-medium + * support/regression/ports/mcs51-medium/spec.mk: added to test medium model + +2005-10-28 Bernhard Held + + * src/SDCCsymt.c (compStructSize): make bitfields without (un)signed + specifier unsigned + * device/lib/time.c (mktime): fixed bug 1334315 + +2005-10-28 Raphael Neider + + * device/include/pic/p16f_common.inc: added common declarations + * src/pic/ralloc.c (initStack): moved regs *r to block start for Alpha + +2005-10-27 Maarten Brock + + * src/mcs51/gen.c (getTempRegs): return 0 if not enough registers found, + (aopPutUsesAcc): added to predict accumulator use, + (assignResultValue): save acc if necessary, + (genMinusDec): store result if indirectly addressed, + (genDivOneByte): save acc if necessary, + (movLeft2Result): bugfix if left already in acc, + (genAnd, genOr, genXor, shiftL2Left2Result, shiftR2Left2Result): pay more + attention to accumulator use (esp. pdata), + (genReceive): receive pdata correctly + * src/SDCCicode.c (isOperandInPagedSpace): added to detect pdata operands + * src/SDCCicode.h: added isOperandInPagedSpace prototype + +2005-10-27 Raphael Neider + + * doc/sdccman.lyx: corrected version (should be 2.5.4 not 2.5.5) + +2005-10-27 Raphael Neider + + * .version: changed version to 2.5.4 + * doc/sdccman.lyx: changed version to 2.5.4, added some remarks to PIC14 + * device/lib/pic/libsdcc/{_mulint.c,_mullong.c}: use unsigned literals, + (_divschar.c,divuchar.c,_mulchar.c,_modschar.c,_moduchar): NEW, + arithmetics support routines + * device/lib/pic/Makefile.rules: have assembler sources preprocessed + * device/lib/Makefile.in: also create installdir for pic + + * src/SDCCopt.c (cnvToFcall): mark support routines `extern' for + pic14 port as well + * src/pic/device.c (dump_sfr): rewritten to delegate register + placement to the linker (use `extern sym' rather than sym EQU addr), + (validAddress): fixed to check last specified address + * src/pic/gen.c (aopForSym): added code to deal with array (useless?), + (popGetLit): truncate literal value to 8 bit, + (popGet): moved assert to more appropriate place + (popGetExternal): create pCode operand from and mark the according + symbol as being `extern' + (popGetAddr): added sanity check on immediate's offset, provide + GPOINTER tag on demand + (aopPut): fixed for immediates, + (mov2w_op): move operand's address or contents to WREG (depending on + operand type), safer variant of mov2w, + (movwf,call_libraryfunc): NEW, handy abbreviations, + (get_argument_pcop,get_return_val_pcop,pass_argument, + get_returnvalue): interface for accessing function parameters and + return values, + (assignResultValuei,genRet): use new parameter/return value interface + (pic14_getDataSize): back to old version handling generic pointers, + (pic14_toBoolean,genNot,genCpl,genCmpEq,genOrOp): heavily rewritten, + provided implementation and/or fixed old one, + (genMultOneByte,genDivOneByte,genModOneByte): implemented as library + calls, removed legacy 8051 reference code + (AccLsh,AccRsh): rewritten and fixed to deal with signed operands + (loadSignToC): NEW, move the operands sign bit to CARRY, + (genGenericShift): NEW, replaces genLeftShift, genRightShift and + genRightShiftSigned, accepts negative shift counts, + (setup_fsr): load FSR and adjust IRP (indirect memory access), + (emitPtrByteGet,emitPtrByteSet): rewritten, now works with + generic pointers, __data pointers and __code pointers, + (genUnpackBits,genPackBits): rewritten to work with generic pointers + and signed bitfields, limit bitfields to 8 bit, + (genDataPointerGet): fixed number of bytes read, + (genGenPointerGet,genConstPointerGet): fixed bitfield access, + (genPointerGet,genPointerSet): fixed handling of __code pointers, + pointers to constant data are no longer assumed to point to __code + space, removed invalid pointer types, + (bitpatternFromVal): retrieve the PICs representation of an integer + or float literal, + (genDataPointerSet): fixed assigning to po_immediate operands, + (genGenPointerSet): implemented as library call, + (genIfx): fixed incorrect condition, + (genAddrOf): limit generic pointers' addresses to 2 bytes, + provide GPOINTER tag according to destination's storage class, + (genCast): added code to handle casting to generic pointers, added + sign-/zero extension of the result + (aop_isLitLike,op_isLitLike): fixed handling of immediates + * src/pic/gen.h: added macros to access IRP bit in STATUS register + * src/pic/genarith.c (genAddLit): use min(result's,left's) size, sign + extend the result + * src/pic/glue.c (is_shared_address,is_shared): check whether a given + address/register resides in the shared banks + (emitSymbolToFile): improved to handle global and `pinned' symbols, + put all variables into separate sections (have the linker arrange + them) + (picglue): put init code and interrupt handlers in separate sections + * src/pic/main.c: added port specific options table, modified to PORT + structure to make GPOINTERs 3 byte, added pic14_options + (_pic14_do_link): private linking routine (update paths to libraries, + add libsdcc.lib by default) + * src/pic/main.h: declare pic14_options + * src/pic/pcode.c: fixed instructions i/o relations, + (RegCond): reverted to correct version, + (newpCodeOpLit): truncate literals to 8 bit, + (genericPrint): added debug output, + (getRegFromInstruction): fixed for various operand types, simplified + (BuildFlow): fixed broken handling of isntructions with labels + (LinkFlow): start at last instruction in flow (skip trailing comments), + pass the flow on to the next instruction after CALL + (pCodeReplace): NEW, replace a pCode and move meta data to the new one + (insertPCodeInstruction): fixed inserting after a skip instruction, + (DoBankSelect): fixed for labeled instructions + (OptimizepBlock): honor --nopeep switch + (AnalyzeFlow,ReuseReg): prevent crash on source files with no function + * src/pic/pcodepeep.c (pCodePeepMatchRule): prevent NULL pointer accesses + * src/pic/pcoderegs.c (regIsLocal): NEW, check visibility of a register + (pCodeOptime2pCodes): allow disabling this optimization via + --no-pcode-opt due seldomly occuring bugs, fixed some conditions + but is still buggy), started implementation of a dataflow based + pCode optimization (CSE + dead code elimination) + (pCodeRegMapLiveRangesInFlow): removed bogus inCond + * src/pic/ralloc.c (initStack): renamed stack registers to STK%d, the new + names are independant of the stack location and therefore portable across + devices + +2005-10-27 Maarten Brock + + * src/mcs51/ralloc.c (bitType): added to detect bit variables, + (selectSpil): fixed bug 1337835 by not spilling bit variables + * support/regression/tests/bug1337835.c: added test for this bug + * src/mcs51/peeph.def: restart after rule 3.c, + addded rules 263.x to optimize loading constants + 2005-10-26 Raphael Neider * src/SDCCsymt.c (compStructSize): allow signed bitfields for PIC ports @@ -8,7 +207,7 @@ * src/pic16/glue.c (pic16emitStaticSeg): fixed(?) handling of fixed extern variables, added verbose error message * device/include/pic16/{string.h,errno.h}: added #pragma library c - + 2005-10-26 Bernhard Held * src/mcs51/gen.c (genMinus): fixed bug 1270906: reverse subtraction,