]>
git.gag.com Git - fw/sdcc/log
bernhardheld [Fri, 3 Oct 2003 22:11:42 +0000 (22:11 +0000)]
Applied liferange patch from Klaus Flittner <klaus_flittner@gmx.de>
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2919
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 3 Oct 2003 07:08:11 +0000 (07:08 +0000)]
* src/z80/gen.h,
* src/z80/gen.c (aopOp, aopGet, aopPut, genDummyRead),
* src/mcs51/gen.h
* src/mcs51/gen.c (aopOp, aopGet, aopPut, genDummyRead),
* src/ds390/gen.h
* src/ds390/gen.c (aopOp, aopGet, aopPut, genDummyRead),
* src/SDCCicode.c (ast2iCode, geniCodeDummyRead): Fixed bug #663539
* src/SDCCopt.c (killDeadCode): Fixed bugs #663539 & #816705
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2918
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 2 Oct 2003 04:26:09 +0000 (04:26 +0000)]
* src/z80/gen.c (genRet): fixed bug #524753
* src/z80/gen.c (genCast): fixed internal error on cast from
pointer to long
* src/z80/gen.c (_saveRegsForCall, emitCall): adapted Johan's
fix for bug #477835 to the z80
* src/z80/gen.c (genZ80code, _vemit2, _emit2): added support
for tracking iCodes in the peephole optimizer for z80
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2917
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 1 Oct 2003 07:45:52 +0000 (07:45 +0000)]
* src/SDCCpeeph.c (labelInRange): fixed bug #814558
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2916
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 1 Oct 2003 07:27:32 +0000 (07:27 +0000)]
* src/SDCCicode.c (geniCodeJumpTable, geniCodeSwitch): fixed
the other part of bug #814548
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2915
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Tue, 30 Sep 2003 15:03:21 +0000 (15:03 +0000)]
src/SDCCcse.c: fixed part of bug #814548
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2914
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
borutr [Sun, 28 Sep 2003 16:21:47 +0000 (16:21 +0000)]
* src/asm.c: rewrite of printILine() to use temporary file instead a pipe
* src/xa51/main.c: commented out declaration of int rewinds
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2913
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
borutr [Sun, 28 Sep 2003 16:16:56 +0000 (16:16 +0000)]
rewrite of printILine() to use temporary file instaed a pipe
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2912
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
borutr [Sun, 28 Sep 2003 16:15:37 +0000 (16:15 +0000)]
commented out declaration of int rewinds
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2911
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 27 Sep 2003 07:03:21 +0000 (07:03 +0000)]
* src/SDCCicode.c (geniCodeJumpTable): Fixed bug #813206
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2910
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
sdcc-builder [Fri, 26 Sep 2003 14:55:50 +0000 (14:55 +0000)]
lib files list only existent modules
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2909
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 26 Sep 2003 08:03:12 +0000 (08:03 +0000)]
* src/SDCCdflow.c (computeDataFlow): Fixed bug #810746
* src/asm.c (printILine): Fixed bug #811015
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2908
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Tue, 23 Sep 2003 07:18:55 +0000 (07:18 +0000)]
Optimized memory allocation when processing libs
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2907
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Mon, 22 Sep 2003 15:55:43 +0000 (15:55 +0000)]
Cleaned up memory allocation for library index
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2906
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sun, 21 Sep 2003 21:10:48 +0000 (21:10 +0000)]
* src/z80/gen.c (setupToPreserveCarry): Fixed bug #796955
* src/z80/gen.c (setupPair, genMovePairPair): Fixed setupPair
to correctly handle general case of AOP_PAIRPTR
* src/z80/gen.c (aopGet, aopPut): Generalized AOP_PAIRPTR handling
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2905
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sun, 21 Sep 2003 18:11:44 +0000 (18:11 +0000)]
* src/mcs51/ralloc.c (fillGaps),
* src/ds390/ralloc.c (fillGaps): fixed bug #810093 (yet another
register positioning bug)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2904
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Sun, 21 Sep 2003 15:32:52 +0000 (15:32 +0000)]
Added errno.c
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2903
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Sun, 21 Sep 2003 15:12:16 +0000 (15:12 +0000)]
Change line terminations to unix style.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2902
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Sun, 21 Sep 2003 11:58:17 +0000 (11:58 +0000)]
device/lib/_fsdiv.c: replaced (1<<31) by (1ul<<31)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2901
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Sun, 21 Sep 2003 11:57:15 +0000 (11:57 +0000)]
device/lib/_fsmul.c: replaced (1<<31) by (1ul<<31)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2900
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 19 Sep 2003 21:28:08 +0000 (21:28 +0000)]
* src/mcs51/gen.c (loadDptrFromOperand, genFarPointerGet,
genCodePointerGet, genGenPointerGet, genFarPointerSet,
genGenPointerSet): handle AOP_DPTR correctly when loading dptr
(ralloc doesn't intentionally do this now, but perhaps later)
* src/mcs51/ralloc.c (serialRegAssign, fillGaps),
* src/ds390/ralloc.c (serialRegAssign, fillGaps): fixed some
register positioning bugs (Fixed bug #762602 and #795325)
* src/SDCCicode.c (geniCodeDerefPtr): Track output class correctly
(Fixed bug #808779)
* src/z80/gen.c: increased _vemit2's buffer[] to handle long
lines that --i-code-in-asm generates
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2899
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Fri, 19 Sep 2003 05:37:34 +0000 (05:37 +0000)]
Fixed segfaults when fclosing a FILE* already closed.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2898
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 18 Sep 2003 15:00:43 +0000 (15:00 +0000)]
* src/SDCCsymt.c (structElemType): fixed bug #808291 (members
of const struct should be treated as if const themselves)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2897
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Thu, 18 Sep 2003 09:30:51 +0000 (09:30 +0000)]
src/SDCCval.c (valPlus, valMinus): fixed bug #808337
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2896
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Wed, 17 Sep 2003 21:45:01 +0000 (21:45 +0000)]
Generate correct file offsets for Unix/Linux and Windows/DOS
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2895
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 17 Sep 2003 03:24:28 +0000 (03:24 +0000)]
* src/SDCCopt.c (cnvFromFloatCast, cnvToFloatCast): fixed bug #613775
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2894
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 17 Sep 2003 03:21:41 +0000 (03:21 +0000)]
* src/SDCCicode.c (cnvFromFloatCast, cnvToFloatCast): fixed bug #613775
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2893
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 16 Sep 2003 08:12:15 +0000 (08:12 +0000)]
* src/mcs51/gen.c (genFunction, genEndFunction),
* src/ds390/gen.c (genFunction, genEndFunction): Moved save
and restore of EA so that stack offsets to parameters are
correct when using both critical and reentrant/stack-auto.
* src/z80/gen.c (aopOp): removed erroneous assertion about sloc
size (can be triggered in error if sloc is shared between
different sized objects)
* device/include/float.h: fixed macros to explicitly use
unsigned long where needed
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2892
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Mon, 15 Sep 2003 15:40:20 +0000 (15:40 +0000)]
For mingw, tolower prototype is in ctype.h
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2891
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Mon, 15 Sep 2003 09:50:16 +0000 (09:50 +0000)]
Feature request 799831: added code to allow nesting of critical functions
* src/mcs51/gen.c (genFunction, genEndFunction)
* src/ds390/gen.c (genFunction, genEndFunction)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2890
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sun, 14 Sep 2003 17:00:35 +0000 (17:00 +0000)]
* src/SDCCsymt.c (sclsFromPtr),
* src/SDCCsymt.h,
* src/SDCCast.c (decorateType): fixed bug #462971. Also, better
support for standard C idiom of memory mapped variables; for
example, *((xdata int*)0x1234) = 1 is now internally equivalent
to xdata int at 0x1234 tempvar = 1.
* sim/ucsim/z80.src/inst_xd.cc: fixed bug #805483 with patch
provided by Akiya ISHIDA
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2889
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Sat, 13 Sep 2003 21:54:29 +0000 (21:54 +0000)]
* src/SDCCval.c (cheapestVal): reenabled to reduce int to char
* src/SDCCval.c (constVal): added reduction from int to char
* src/SDCCval.c (valMult, valDiv): fixed sign handling
* src/SDCCval.c (valShift): fixed after change of cheapestVal()
* src/SDCCval.c (valCompare): fixed EQ_OP and NE_OP; they have to ignore the sign
* support/regression/tests/shifts.c: fixed
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2888
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Sat, 13 Sep 2003 19:09:49 +0000 (19:09 +0000)]
realpath() is not available for mingw32. Use _fullpath instead.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2887
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 13 Sep 2003 02:14:21 +0000 (02:14 +0000)]
* src/z80/gen.c (genXor): Fixed bug #805445
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2886
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 12 Sep 2003 07:56:35 +0000 (07:56 +0000)]
Fixed bug #621531 (const & volatile confusion in the type chain).
DCL_PTR_CONST, DCL_PTR_VOLATILE, & IS_PTR_CONST now exclusively
refer to the const or volatile state of the pointer itself.
* src/SDCCast.c
* src/SDCCglue.c
* src/SDCCicode.c
* src/SDCCsymt.c
* src/SDCCval.c
* src/SDCC.y
* src/SDCCsymt.h
* src/pic/gen.c
* src/pic/ralloc.c
* src/pic16/gen.c
* src/pic16/ralloc.c
* support/regression/tests/const.c
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2885
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Wed, 10 Sep 2003 17:33:59 +0000 (17:33 +0000)]
When checking for duplicated modules use absolute library paths
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2884
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
sdcc-builder [Tue, 9 Sep 2003 09:58:17 +0000 (09:58 +0000)]
added workaround for packing bug in gcc 21.95.2
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2883
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 9 Sep 2003 08:53:43 +0000 (08:53 +0000)]
* src/SDCCicode.c (geniCodeLogic): fixed bug #797572
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2882
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sun, 7 Sep 2003 07:50:07 +0000 (07:50 +0000)]
* device/include/string.h: added size_t typedef, changed
prototypes to use size_t, eliminated separate reentrant and
non-reentrant declarations, added _memmove declaration
* device/lib/_memcpy.c: changed to use size_t instead of int,
changed /4 to >>2 to avoid division library call
* device/lib/_memcmp.c,
* device/lib/_memset.c,
* device/lib/_strncat.c,
* device/lib/_strncpy.c,
* device/lib/_strncmp.c: changed to use size_t instead of int
* device/lib/_memmove.c: new file (fixed bug #772294)
* device/lib/Makefile.in: added _memmove.c
* device/lib/z80/asm_strings.s: fixed bug #772290
* support/regression/tests/bitfields.c: attempt to fix host assertion
failure on amd64-unknown-linux2.2
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2881
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sun, 7 Sep 2003 01:01:56 +0000 (01:01 +0000)]
* as/z80/asmain.c (main): fixed bug #801766
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2880
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 6 Sep 2003 17:36:07 +0000 (17:36 +0000)]
* src/z80/gen.c (aopPut, spillPairReg): fixed bug #800998
* src/z80/gen.c (genFunction, genEndFunction): fixed "bug" #774700
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2879
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Fri, 5 Sep 2003 22:14:44 +0000 (22:14 +0000)]
src/SDCCicode.c (ast2iCode): fixed differences in iCode with different compilers
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2878
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
sdcc-builder [Fri, 5 Sep 2003 09:57:41 +0000 (09:57 +0000)]
fix big endian hosts
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2877
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
sdcc-builder [Fri, 5 Sep 2003 09:50:45 +0000 (09:50 +0000)]
fixed 64 bit hosts
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2876
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 5 Sep 2003 05:08:19 +0000 (05:08 +0000)]
* src/SDCCast.c (isConformingBody): fixed loop reversal bug
reported in bug #800609
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2875
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
vrokas [Thu, 4 Sep 2003 15:49:33 +0000 (15:49 +0000)]
* device.c, device.h, gen.c, gen.h, genarith.c, glue.c, pcode.c,
pcodeflow.c, pcodeflow.h, pcode.h, pcodepeep.c, pcoderegs.c,
pcoderegs.h, ralloc.c, ralloc.h: top header beautifications
* main.c: added top header and GPL license notice
* pcode.c: fixed the if-conditional warning
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2874
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
vrokas [Thu, 4 Sep 2003 15:47:17 +0000 (15:47 +0000)]
*** empty log message ***
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2873
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Thu, 4 Sep 2003 12:16:19 +0000 (12:16 +0000)]
test _mullong.c on host too
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2871
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Thu, 4 Sep 2003 12:14:29 +0000 (12:14 +0000)]
device/lib/_mullong.c: replaced int by short for gcc
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2870
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Wed, 3 Sep 2003 20:34:10 +0000 (20:34 +0000)]
added :-)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2869
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Mon, 1 Sep 2003 17:13:58 +0000 (17:13 +0000)]
#warning does not work in MSVC. Used "#pragma message" instead.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2867
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Mon, 1 Sep 2003 02:21:06 +0000 (02:21 +0000)]
* src/SDCCpeeph.c (notVolatile, notVolatileVariable): handle IFX
and JUMPTABLE iCodes properly now (worked by accident before)
* src/mcs51/gen.c (leftRightUseAcc),
* src/ds390/gen.c (leftRightUseAcc): handle IFX and JUMPTABLE
iCode properly now. Use getSize instead of nRegs since a & b
aren't part of the nRegs tally.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2866
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
vrokas [Sun, 31 Aug 2003 11:51:50 +0000 (11:51 +0000)]
* src/pic16/main.c: _pic16_genIVT() corrected offsets in the interrupt
vector table
* src/pic16/pcode.c: fix to disable inserting BANKSEL before
instructions that use the _STATUS register
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2865
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Sun, 31 Aug 2003 11:26:29 +0000 (11:26 +0000)]
* device/lib/_mullong.c: fixed for "--model-large --int-long-reent" (resp. --stack-auto), prepared for --xstack
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2864
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Sun, 31 Aug 2003 11:19:00 +0000 (11:19 +0000)]
* src/mcs51/gen.c (freeAsmop): fixed off by one in stack offset (AOP_STK)
* src/mcs51/gen.c (genNearPointerSet): added missing opcode for fetching of the pointer
* src/mcs51/gen.c (genNearPointerGet): added reuse of PREG, copied from genNearPointerSet()
* src/mcs51/gen.c (genNearPointerGet): don't pop r0/r1, if RESULTONSTACK
* src/mcs51/gen.c: changed order of freeAsmop(left/right/result)-calls. If they pop r0/r1 they must be called in the opposite order than aopOp().
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2863
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Fri, 29 Aug 2003 15:21:02 +0000 (15:21 +0000)]
fixed for 64 bit hosts
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2861
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Fri, 29 Aug 2003 09:46:05 +0000 (09:46 +0000)]
fixed it again
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2859
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Thu, 28 Aug 2003 20:27:01 +0000 (20:27 +0000)]
doc/sdccman.lyx: reverted tables to those in cvs 1.64
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2858
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Thu, 28 Aug 2003 20:23:05 +0000 (20:23 +0000)]
reverted tables to cvs version 1.64. Please mail me directly if any problems should show up.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2857
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Thu, 28 Aug 2003 12:22:30 +0000 (12:22 +0000)]
device/lib/_startup.c: quick & dirty fix for ds390/ds400;
these ports have their own _sdcc_external_start()
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2855
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Thu, 28 Aug 2003 08:07:28 +0000 (08:07 +0000)]
minor fix in "Configure Options"
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2854
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Tue, 26 Aug 2003 08:26:24 +0000 (08:26 +0000)]
src/pic/glue.c (pic14printPublics): fix bitvars can't be public
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2853
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Mon, 25 Aug 2003 16:13:07 +0000 (16:13 +0000)]
Check for '.' in filename only, not the whole path.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2852
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Sun, 24 Aug 2003 14:38:12 +0000 (14:38 +0000)]
added section about mcs51 variants, other minor changes
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2851
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Sun, 24 Aug 2003 03:12:14 +0000 (03:12 +0000)]
It is --use-stdout, not --use-stderr...
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2850
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Sun, 24 Aug 2003 00:07:07 +0000 (00:07 +0000)]
Fixed gcc warning
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2849
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Sat, 23 Aug 2003 20:10:48 +0000 (20:10 +0000)]
various additions and updates. Rearranged sections
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2848
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Sat, 23 Aug 2003 13:34:16 +0000 (13:34 +0000)]
several additions at various places
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2847
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Sat, 23 Aug 2003 04:04:29 +0000 (04:04 +0000)]
mcs51 linker uses .rel extension, not .o
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2846
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Fri, 22 Aug 2003 20:17:12 +0000 (20:17 +0000)]
z80 and mcs51 linkers complaint if a public symbol is defined in more
than one library module.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2844
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 22 Aug 2003 19:27:52 +0000 (19:27 +0000)]
Peephole optimizer speed up
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2843
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 22 Aug 2003 04:54:06 +0000 (04:54 +0000)]
Try to make the peephole optimizer smarter by maintaining
an association between the assembly source code and the
iCodes that originated them. Put this information to use
with a new peephole rule condition "notVolatile" so that
the rules can be aggressive yet still safe.
* src/SDCCpeeph.c
* src/SDCCpeeph.h
* src/mcs51/gen.c
* src/mcs51/peeph.def
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2842
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 20 Aug 2003 23:17:13 +0000 (23:17 +0000)]
fixed bug #741761
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2841
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Wed, 20 Aug 2003 20:37:58 +0000 (20:37 +0000)]
replaced _pdata by pdata
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2840
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 20 Aug 2003 06:51:32 +0000 (06:51 +0000)]
Changed the type of the result of the ! (NOT) operator to char;
previously it returned the same type as the source. This allows
us to eliminate all the genFloatNot functions (all of its target
implementations were very buggy) since !float can use the same
code as !long now.
* src/SDCCicode.c (ast2iCode): ! returns char
* src/mcs51/gen.c (genNot, genNotFloat),
* src/ds390/gen.c (genNot, genNotFloat),
* src/z80/gen.c (genNot, genNotFloat),
* src/pic/gen.c (genNot, genNotFloat),
* src/pic16/gen.c (genNot, genNotFloat): eliminated genNotFloat
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2839
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Tue, 19 Aug 2003 15:47:57 +0000 (15:47 +0000)]
pic patches by Slade
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2838
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Mon, 18 Aug 2003 20:07:35 +0000 (20:07 +0000)]
* src/z80/gen.c (isUnsplitable, fetchPairLog): fixed bug #770454
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2837
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Mon, 18 Aug 2003 05:35:47 +0000 (05:35 +0000)]
Made bitfield a distinct type from bit so that bitfields
convert as per ANSI C and bits retain their traditional
boolean style behaviour. Implemented bitfield support in
the z80 port.
* src/SDCCsymt.h,
* src/SDCCsymt.c,
* src/SDCCast.c,
* src/cdbFile.c,
* src/mcs51/gen.c,
* src/ds390/gen.c: bit v bitfield split
* src/z80/gen.c: New support for bitfields
* support/regression/tests/bitfields.c: reenabled z80,
added more tests
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2836
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Sun, 17 Aug 2003 15:05:35 +0000 (15:05 +0000)]
added peepholes 180.x, moved peephole 180 to 181
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2835
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Sun, 17 Aug 2003 15:03:59 +0000 (15:03 +0000)]
Added peephole 180.x, moved peephole 180 to 181
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2834
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Sun, 17 Aug 2003 10:16:30 +0000 (10:16 +0000)]
The first rules relate to bitfields, the last speed up
access to xdata mapped I/O devices.
* src/mcs51/peeph.def: added 24 peepholes 246.x - 248.x
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2833
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Sun, 17 Aug 2003 10:14:24 +0000 (10:14 +0000)]
Added 24 peepholes 246.x - 248.x. The first rules relate to bitfields, the last speed up access to xdata mapped I/O devices.
Some occurences of RESTART removed
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2832
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 16 Aug 2003 21:25:30 +0000 (21:25 +0000)]
oops, needed dname==TRUE in my last update
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2831
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 16 Aug 2003 21:10:11 +0000 (21:10 +0000)]
Cleaned up genPackBits and genUnpackBits and added two helper
functions, emitPtrByteGet & emitPtrByteSet. Added optimizations
for literal assignments in genPackBits (thanks to Frieder for
reminding me).
* src/mcs51/gen.c
* src/ds390/gen.c
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2830
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 16 Aug 2003 07:58:46 +0000 (07:58 +0000)]
Fixed bug #748310 (pointer to function type mishandled when the
function name is omitted). Also fixed a SIGSEGV when a function
attribute (reentrant, etc) is used on a non-function or on a
function but misplaced before the parameter list.
* src/SDCC.y (abstract_declarator, abstract_declaractor2): fixed
bug #748310
* src/SDCC.y (declarator2_function_attributes): avoided SIGSEGV
* support/Util/SDCCerr.h,
* support/Util/SDCCerr.c: Added func attr misuse error msg
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2829
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Fri, 15 Aug 2003 20:37:26 +0000 (20:37 +0000)]
Fixed bug #787649 by anonymous
* src/SDCCglue.c (emitRegularMap): added emission of sloc for func ptr
* src/ds390/gen.c (aopForSym): fixed func ptr in sloc
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2828
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Thu, 14 Aug 2003 05:19:07 +0000 (05:19 +0000)]
MSVC gives an error if declaration is after statements
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2827
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 14 Aug 2003 03:15:23 +0000 (03:15 +0000)]
Fixed numerous bitfield problems.
* src/SDCC.y: More bitfield related error checking
* src/SDCCsymt.h,
* src/SDCCsymt.c (compStructSize): fixed bitfield offset calc
* support/Util/SDCCerr.h,
* support/Util/SDCCerr.c: Added & edited some bitfield err msgs
* src/mcs51/gen.c (genPackBits, genUnpackBits): fixed mask bugs
* src/ds390/gen.c (genPackBits, genUnpackBits): fixed mask bugs
* support/regression/tests/bitfields.c: tests added
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2826
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Wed, 13 Aug 2003 20:10:57 +0000 (20:10 +0000)]
* src/SDCCcse.c (algebraicOpts): fix bug converting op from value to type
* src/SDCCicode.c (operandOperation): rewritten some ops (*, ==, unary_minus) to fix possible overflows and to accord with ANSI
* src/SDCCsymt.c (computeType): literals are handled the same way as any other type
* src/SDCCval.c (cheapestVal): removed, it doesn't accord with ANSI (can be re-activated by defining REDUCE_LITERALS)
* src/SDCCval.c (constVal): fixed; hex and octal constants can be unsigned, but are signed by default
* src/SDCCval.c (constVal): rearranged
* src/SDCCval.c (valMod): preliminary fix
* src/SDCCval.c (valCastLiteral): use TYPE_* types
* support/regression/literalop.c: added, work in progress
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2825
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 13 Aug 2003 07:21:53 +0000 (07:21 +0000)]
fixed typo in my last commit
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2824
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 13 Aug 2003 04:53:07 +0000 (04:53 +0000)]
Made the constant following the "interrupt" keyword optional. If omitted,
the function will not automatically be given an entry in the interrupt
vector table (similar to #pragma NOIV, but less syntacticly kludgy). The
interrupt number is also now range checked.
* src/SDCC.y
* src/SDCCmem.c
* src/SDCCglue.c
* src/SDCCsymt.h
* support/Util/SDCCerr.c
* support/Util/SDCCerr.h
* doc/sdccman.lyx
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2823
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 12 Aug 2003 08:44:47 +0000 (08:44 +0000)]
Generate warnings for useless declarations like "char data;"
that don't do what new users expect.
* src/SDCC.y
* support/Util/SDCCerr.h
* support/Util/SDCCerr.c
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2822
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Sat, 9 Aug 2003 17:18:13 +0000 (17:18 +0000)]
src/SDCCval.c (valMult): fixex overflow detection of negativ int
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2821
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
jesusc [Sat, 9 Aug 2003 07:20:14 +0000 (07:20 +0000)]
Fixed warnings in MSVC build.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2820
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 8 Aug 2003 03:52:39 +0000 (03:52 +0000)]
Changes to support big endian targets:
* src/ports.h
* src/SDCCglue.c
* src/avr/main.c
* src/ds390/main.c
* src/izt/i186.c
* src/mcs51/main.c
* src/pic/main.c
* src/pic16/main.c
* src/xa51/main.c
* src/z80/main.c
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2819
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
frief [Thu, 7 Aug 2003 22:37:36 +0000 (22:37 +0000)]
stale date removed, width of tables, pic16, interrupt section, volatile, link to flP5, sdcdb is unix-only
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2818
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 7 Aug 2003 21:05:27 +0000 (21:05 +0000)]
src/z80/ralloc.c (joinPushes): made compatible with new signedness
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2817
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 7 Aug 2003 20:59:34 +0000 (20:59 +0000)]
Bugfix for args regression test failure (from change in how literal signedness is handled)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2816
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Wed, 6 Aug 2003 12:28:56 +0000 (12:28 +0000)]
* src/SDCCval.c (cheapestVal): changed behaviour to the same as constVal()
* device/lib/time.c: fixed warning "integer overflow in expression"
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2812
4a8a32a2 -be11-0410-ad9d-
d568d2c75423
bernhardheld [Tue, 5 Aug 2003 20:21:48 +0000 (20:21 +0000)]
* src/SDCCast.c (decorateType): fixed gcc3.3 warning
* src/SDCCast.c (ast_print): improved output of constants
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2811
4a8a32a2 -be11-0410-ad9d-
d568d2c75423