fw/sdcc
20 years ago* src/SDCCsymt.h,
epetrich [Mon, 9 Feb 2004 07:06:19 +0000 (07:06 +0000)]
* src/SDCCsymt.h,
* src/SDCCicode.c (operandFromSymbol),
* src/mcs51/ralloc.c (verifyRegsAssigned, serialRegAssign),
* src/ds390/ralloc.c (verifyRegsAssigned, serialRegAssign),
* src/z80/ralloc.c (verifyRegsAssigned, serialRegAssign),
* src/hc08/ralloc.c (verifyRegsAssigned, serialRegAssign),
* src/pic/ralloc.c (verifyRegsAssigned, serialRegAssign),
* src/pic16/ralloc.c (verifyRegsAssigned, serialRegAssign): fixed bug #892038
* src/SDCCast.c (createIvalStruct, createIvalArray, gatherAutoInit),
* src/SDCCglue.c (emitRegularMap, printIvalStruct, printIvalArray,
printIvalCharPtr, printIvalPtr, printIval, emitStaticSeg, emitOverlay)
* src/SDCCsymt.c (newSymbol),
* src/SDCC.y (struct_or_union_specifier, enum_specifier,
enumerator_list),
* src/SDCCval.h,
* src/SDCCval.c (newiList): fixed bug #885705

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3183 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoReport stack size in .mem file.
jesusc [Sun, 8 Feb 2004 22:53:30 +0000 (22:53 +0000)]
Report stack size in .mem file.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3182 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agodoc/sdccman.lyx: added section 3.14 about sdcclib
jesusc [Sun, 8 Feb 2004 19:13:51 +0000 (19:13 +0000)]
doc/sdccman.lyx: added section 3.14 about sdcclib

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3181 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* device/include/c8051f120.h,c8051f300.h,c8051f310.h: added/updated header files for
frief [Sun, 8 Feb 2004 14:29:30 +0000 (14:29 +0000)]
* device/include/c8051f120.h,c8051f300.h,c8051f310.h: added/updated header files for
Silicon Laboratories (formerly Cygnal) CPUs. Contributed by Maarten Brock.
* doc/sdccman.lyx: minor changes, recommended diff -Naur and diff -u in new section Submitting patches

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3180 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoadded header file for Silicon Laboratories (formerly Cygnal) CPU. Contributed by...
frief [Sun, 8 Feb 2004 14:27:26 +0000 (14:27 +0000)]
added header file for Silicon Laboratories (formerly Cygnal) CPU. Contributed by Maarten Brock

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3179 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoadded/updated header files for Silicon Laboratories (formerly Cygnal) CPUs. Contribut...
frief [Sun, 8 Feb 2004 14:25:49 +0000 (14:25 +0000)]
added/updated header files for Silicon Laboratories (formerly Cygnal) CPUs. Contributed by Maarten Brock

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3178 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agominor changes, recommended diff -Naur and diff -u in new section Submitting patches
frief [Sun, 8 Feb 2004 14:22:52 +0000 (14:22 +0000)]
minor changes, recommended diff -Naur and diff -u in new section Submitting patches

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3177 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/mcs51/gen.c (genNearPointerGet, genPagedPointerGet,
epetrich [Sun, 8 Feb 2004 08:47:57 +0000 (08:47 +0000)]
* src/mcs51/gen.c (genNearPointerGet, genPagedPointerGet,
genFarPointerGet, genCodePointerGet, genGenPointerGet,
genNearPointerSet, genPagedPointerSet, genFarPointerSet,
genGenPointerSet),
* src/ds390/gen.c (genNearPointerGet, genPagedPointerGet,
genFarPointerGet, genCodePointerGet, genGenPointerGet,
genNearPointerSet, genPagedPointerSet, genFarPointerSet,
genGenPointerSet),
* src/pic16/gen.c (genNearPointerGet, genPagedPointerGet,
genFarPointerGet, genCodePointerGet, genGenPointerGet,
genNearPointerSet, genPagedPointerSet, genFarPointerSet,
genGenPointerSet),
* src/pic/gen.c (genNearPointerGet, genPagedPointerGet,
genFarPointerGet, genCodePointerGet, genGenPointerGet,
genNearPointerSet, genPagedPointerSet, genFarPointerSet,
genGenPointerSet): fixed bug #892400
* src/pic16/gen.c (genSkipz, AccRol): disabled functions with #if 0
to eliminate build warnings.
* src/SDCCast.c (processParms),
* src/SDCC.y (function_declarator2, declarator2_function_attributes):
fixed bug 751859
* support/valdiag/valdiag.py: added GCC to the list of defines active
when compiling with gcc

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3176 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* support/Util/SDCCerr.h,
epetrich [Sat, 7 Feb 2004 08:21:56 +0000 (08:21 +0000)]
* support/Util/SDCCerr.h,
* support/Util/SDCCerr.c,
* src/SDCCast.c (decorateType, sizeofOp): complain when sizeof is used
with an incomplete type (fixed bug #883734)
* src/SDCCicode.c (geniCodeCast): fixed bug #890510

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3173 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/pic16/gen.c (genCmpEq, shiftRLong): fixed declarations
epetrich [Sat, 7 Feb 2004 05:57:15 +0000 (05:57 +0000)]
* src/pic16/gen.c (genCmpEq, shiftRLong): fixed declarations

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3172 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (decorateType),
epetrich [Fri, 6 Feb 2004 06:27:15 +0000 (06:27 +0000)]
* src/SDCCast.c (decorateType),
* src/SDCCicode.c (geniCodeParms, geniCodeCall): fixed bugs in my ANSI
function pointer implementation
* support/regression/tests/funptrs.c: added tests to verify both forms
of function pointers work correctly. Added tests to verify parameters
are passed in the correct order.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3171 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-02-06 Vangelis Rokas <vrokas AT otenet.gr>
vrokas [Fri, 6 Feb 2004 01:54:37 +0000 (01:54 +0000)]
2004-02-06  Vangelis Rokas <vrokas AT otenet.gr>

* device.c (regCompare): registers are sorted by ascending
address and increasing size,
* main.c (_pic16_finaliseOptions): removed the declaration
of compiler macro MCU. Now a macro of the format pic18fxxxx
will be defined from the command line

2004-02-06  Hans-Juergen Dorn <hans.dorn AT apl-landau.de>
    patch committed by Vangelis Rokas <vrokas AT otenet.gr>

* pcode.c (pic16initMnemonics): fixed typo in assignment to PCOP_RLNCF
PCOP_RLCF was overwritten!
* gen.c (genSkip) commented out calls to pic16_emitcode,
* (genCmpEQ) fixed "long" compares, only high word did get compared,
* (genlshTwo),
* (genRRC) added debugging info,
* (shiftL2Left2Result) Fixed bug, if offr > offl. Result got
overwritten while shifting,
* (shiftR2Left2Result) Fixed bug, if offr < offl. Result got
overwritten while shifting,
* (AccLsh),
* (AccRsh),
* (shiftLLeftOrResult),
* (shiftRLeftOrResult),
* (shiftRLong),
* (shiftLLong) Implemented with pic16_emitpcode
* (genlshFour) Replaced pic16_aopPut with pic16_emitpcode,
* (genLeftShift) Fixed bug, operand for shift by variable always
was "and"ed with 0x0f,
* (genLeftShiftLiteral),
* (genrshTwo),
* (genRightShiftLiteral) added debugging info,
* (genrshFour) added comment,
* (genRightShift) determined signedness from operand "left"
instead of "result"

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3170 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoFixed problem where files that only contain 'const unsigned char' would caused SDCC...
slade_rich [Thu, 5 Feb 2004 23:02:58 +0000 (23:02 +0000)]
Fixed problem where files that only contain 'const unsigned char' would caused SDCC to crash.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3169 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCicode.c (geniCodeParms),
epetrich [Wed, 4 Feb 2004 06:26:03 +0000 (06:26 +0000)]
* src/SDCCicode.c (geniCodeParms),
* src/SDCCast.c (decorateType, processParms): support for ANSI-style
function pointers, fixed function pointer bugs #861242 and #861896

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3168 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoLined up indentation.
slade_rich [Wed, 4 Feb 2004 01:55:41 +0000 (01:55 +0000)]
Lined up indentation.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3167 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoConditional test was inverted with comparision against literal 0x80.
slade_rich [Tue, 3 Feb 2004 01:14:41 +0000 (01:14 +0000)]
Conditional test was inverted with comparision against literal 0x80.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3166 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* device/include/Makefile.in (install),
bernhardheld [Sat, 31 Jan 2004 22:35:46 +0000 (22:35 +0000)]
* device/include/Makefile.in (install),
* doc/Makefile (install): changed to 'rm `find ...`' construct to avoid warnings

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3165 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agodevice/include/c8051f000.h, device/include/c8051f120.h, device/include/c8051f300...
frief [Sat, 31 Jan 2004 21:56:51 +0000 (21:56 +0000)]
device/include/c8051f000.h, device/include/c8051f120.h, device/include/c8051f300.h: added header files for Silicon Laboratories (formerly Cygnal) CPUs. Contributed by Maarten Brock.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3164 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (processParams): added new type flow and restructured
bernhardheld [Sat, 31 Jan 2004 21:47:47 +0000 (21:47 +0000)]
* src/SDCCast.c (processParams): added new type flow and restructured
(gatherAutoInit): added new type flow
(addCast): cosmetic changes
(getLeftResultType): added new type flow for array indices, patch provided by Stas, see FR #877103
(decorateType): SDCC_NEWTYPEFLOW removed, new type flow is now standard; array index patch by Stas
* src/SDCCast.h: added prototype getResultTypeFromType()
* src/SDCCval.h,
* src/SDCCval.c (resolveIvalSym) (resolveIvalSym),
* src/pic/glue.c (pic14emitStaticSeg),
* src/pic16/glue.c (pic16emitStaticSeg),
* src/SDCCglue.c (emitRegularMap) (emitStaticSeg): added new type flow for initialization of symbols
* src/SDCCicode.c (geniCodeArray): removed warning W_ARRAY_BOUND
* support/Util/SDCCerr.h:
* support/Util/SDCCerr.c: replaced W_ARRAY_BOUND by W_IDX_OUT_OF_BOUNDS
* .version: bumped version number to 2.3.8

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3163 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoAdded header files for Silicon Laboratories (formerly Cygnal) CPUs
frief [Sat, 31 Jan 2004 21:36:33 +0000 (21:36 +0000)]
Added header files for Silicon Laboratories (formerly Cygnal) CPUs
converted by Maarten Brock. The original cygnal license prohibited inclusion into SDCC.
On 2004-01-19 Maarten has received permission from <mcutools@silabs.com>: "We are currently in the process of removing the copyright notices from our header files. So, feel free to do what you like with them". We maybe will change later from LGPL to whatever license shows up on the silabs website.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3162 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* doc/Makefile (install): added test for directory
bernhardheld [Fri, 30 Jan 2004 10:45:11 +0000 (10:45 +0000)]
* doc/Makefile (install): added test for directory

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3161 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoSlade Rich fixed an optimization bug
bernhardheld [Fri, 30 Jan 2004 10:26:59 +0000 (10:26 +0000)]
Slade Rich fixed an optimization bug

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3160 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* support/regression/tests/libmullong.c: fixed for 64 bit hosts
bernhardheld [Fri, 30 Jan 2004 09:28:10 +0000 (09:28 +0000)]
* support/regression/tests/libmullong.c: fixed for 64 bit hosts

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3159 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/mcs51/ralloc.c (getRegPtr, getRegGpr),
epetrich [Fri, 30 Jan 2004 05:52:20 +0000 (05:52 +0000)]
* src/mcs51/ralloc.c (getRegPtr, getRegGpr),
* src/ds390/ralloc.c (getRegPtr, getRegGpr),
* src/pic/ralloc.c (getRegPtr, getRegGpr),
* src/pic16/ralloc.c (getRegPtr, getRegGpr),
* src/z80/ralloc.c (getRegGpr): fixed bug #883361
* as/mcs51/asexpr.c (term),
* as/hc08/asexpr.c (term): fixed bug #887146

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3158 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agofixed mcs51.dsp missing dependency
jesusc [Thu, 29 Jan 2004 07:58:23 +0000 (07:58 +0000)]
fixed mcs51.dsp missing dependency

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3157 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/z80/gen.c (genMult): handle single byte result product
epetrich [Thu, 29 Jan 2004 06:36:41 +0000 (06:36 +0000)]
* src/z80/gen.c (genMult): handle single byte result product
* src/SDCCopt.c (killDeadCode): never convert ADDRESS_OF iCode to
DUMMY_READ_VOLATILE (fixed bug #886367)

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3156 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* support/regression/tests/libmullong.c: fixed logic, on little endian hosts we ended...
bernhardheld [Tue, 27 Jan 2004 22:00:56 +0000 (22:00 +0000)]
* support/regression/tests/libmullong.c: fixed logic, on little endian hosts we ended without a mullong_wrapper()

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3155 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* ChangeLog: changed "@" to " AT " in hopes of reducing spam and
epetrich [Tue, 27 Jan 2004 15:21:46 +0000 (15:21 +0000)]
* ChangeLog: changed "@" to " AT " in hopes of reducing spam and
virus/worm forged address usage.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3154 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (addCast): added more promotion fixes
bernhardheld [Tue, 27 Jan 2004 13:27:18 +0000 (13:27 +0000)]
* src/SDCCast.c (addCast): added more promotion fixes

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3153 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoFixed promotion, it should be done on AST level:
bernhardheld [Tue, 27 Jan 2004 09:40:04 +0000 (09:40 +0000)]
Fixed promotion, it should be done on AST level:
* src/SDCCast.c (addCast): added promotion to int
(decorateType): updated call to upCast()
* src/SDCCicode.c (geniCodeLeftShift): removed call usualUnaryConversions()

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3152 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoTidied up the build, install, and regression tests.
michaelh [Mon, 26 Jan 2004 08:05:16 +0000 (08:05 +0000)]
Tidied up the build, install, and regression tests.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3151 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c: added an additional type flow in decorateType() of opposite directio...
bernhardheld [Sun, 25 Jan 2004 21:33:56 +0000 (21:33 +0000)]
* src/SDCCast.c: added an additional type flow in decorateType() of opposite direction, see feature request #860006; it's enabled at runtime by setting the environment variable SDCC_NEWTYPEFLOW
* src/SDCCast.h: changed prototype of decorateType()
* src/SDCCglue.c (emitRegularMap): updated call of decorateType()
* src/SDCCicode.c (geniCodeDivision) (geniCodeModulus): promotion from 'char' to 'int' can be omitted, if both operands are 'unsigned char'; see feature request #877103
* src/SDCCval.c: updated call of decorateType()
(valBitwise): fixed bug #882876
(valMinus): added promotion
(valLogicAndOr): result is unsigned
(cheapestVal) (constVal): literals from 0...255 are 'unsigned char' now
* src/SDCCsymt.c (computeType),
* src/mcs51/gen.c (genCmpGt) (genCmpLt): literal 'unsigned char' must not cause an unsigned operation
* src/pic/glue (pic14emitRegularMap),
* src/pic16/glue.c (pic16emitRegularMap): updated call of decorateType()

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3150 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/pic/pcode.c (PCodeID): commented out left over debug code
bernhardheld [Fri, 23 Jan 2004 09:38:38 +0000 (09:38 +0000)]
* src/pic/pcode.c (PCodeID): commented out left over debug code

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3149 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/mcs51/peeph.def: fixed bug #880768
bernhardheld [Tue, 20 Jan 2004 21:15:17 +0000 (21:15 +0000)]
* src/mcs51/peeph.def: fixed bug #880768

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3147 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/pic/device.c,
bernhardheld [Tue, 20 Jan 2004 21:08:53 +0000 (21:08 +0000)]
* src/pic/device.c,
* src/pic/gen.c,
* src/pic/gen.h,
* src/pic/glue.c,
* src/pic/main.c,
* src/pic/pcode.c,
* src/pic/pcode.h,
* src/pic/pcodepeep.c,
* src/pic/pcoderegs.c,
* src/pic/ralloc.c,
* src/pic/ralloc.h: applied patch from Slade Rich;
added support for multiple code pages and multiple RAM banks on the
PIC 14 port. The ASM files now no longer simply assume all the
code / RAM are in the same page / bank. This means the linker can
safely allocate code/RAM of separate ASM files to different pages/banks.
* doc/sdccman.lyx: added Slade's tips

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3146 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* support/valdiag/tests/overflow.c: added shift tests
bernhardheld [Tue, 20 Jan 2004 21:07:26 +0000 (21:07 +0000)]
* support/valdiag/tests/overflow.c: added shift tests

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3145 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* support/valdiag/tests/overflow.c: added shift tests
bernhardheld [Tue, 20 Jan 2004 21:06:26 +0000 (21:06 +0000)]
* support/valdiag/tests/overflow.c: added shift tests
* src/pic/device.c,
* src/pic/gen.c,
* src/pic/gen.h,
* src/pic/glue.c,
* src/pic/main.c,
* src/pic/pcode.c,
* src/pic/pcode.h,
* src/pic/pcodepeep.c,
* src/pic/pcoderegs.c,
* src/pic/ralloc.c,
* src/pic/ralloc.h: applied patch from Slade Rich;
added support for multiple code pages and multiple RAM banks on the
PIC 14 port. The ASM files now no longer simply assume all the
code / RAM are in the same page / bank. This means the linker can
safely allocate code/RAM of separate ASM files to different pages/banks.
* doc/sdccman.lyx: added Slade's tips

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3144 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/hc08/ralloc.c (rematStr): fixed bug #879282
epetrich [Tue, 20 Jan 2004 07:29:33 +0000 (07:29 +0000)]
* src/hc08/ralloc.c (rematStr): fixed bug #879282
* src/SDCCast.c (decorateType): fixed bug #880197

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3143 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago * sim/ucsim/gui.src/serio.src/main.cc: Fixed unconditional use of
michaelh [Tue, 20 Jan 2004 06:57:48 +0000 (06:57 +0000)]
   * sim/ucsim/gui.src/serio.src/main.cc: Fixed unconditional use of
        getopt.h.

        * debugger/mcs51/cmd.c (getValBasic): Changed strtof to strtod as
        strtof is not part of C89 and isn't included with Mac OS X.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3142 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/hc08/gen.c (genPlusIncr, genUminus, genMinusDec, genCmp,
epetrich [Tue, 20 Jan 2004 05:48:09 +0000 (05:48 +0000)]
* src/hc08/gen.c (genPlusIncr, genUminus, genMinusDec, genCmp,
shiftL2Left2Result): fixed bug #879326
(genAnd, genOr, genXor): fixed bug when result was of type AOP_CRY
(genMultOneByte): fixed bug in signed vs unsigned multiplication
* sim/ucsim/hc08.src/inst.cc (inst_clr): added missing effective
address fetch for clr instruction
* device/lib/hc08/_mulint.c: created optimized assembly version
* src/SDCCdflow.c (computeDataFlow): fixed bug #878209

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3141 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCicode.c (geniCodeArray): applied patch from Stas Sergeev proposed in FR...
bernhardheld [Mon, 19 Jan 2004 21:28:38 +0000 (21:28 +0000)]
* src/SDCCicode.c (geniCodeArray): applied patch from Stas Sergeev proposed in FR #877103

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3140 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCval.c (cheapestVal): added missing checks
bernhardheld [Sun, 18 Jan 2004 21:37:55 +0000 (21:37 +0000)]
* src/SDCCval.c (cheapestVal): added missing checks
* src/SDCCicode.c (usualBinaryConversions): fixed condition
* src/SDCCicode.c (geniCodeAdd): fixed part of bug #877103

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3139 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago * src/ds390/gen.c (aopOp3): fixed the assignment of different dptrs to
kflittner [Fri, 16 Jan 2004 16:30:00 +0000 (16:30 +0000)]
* src/ds390/gen.c (aopOp3): fixed the assignment of different dptrs to
equal operands

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3138 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-01-16 Vangelis Rokas <vrokas@otenet.gr>
vrokas [Fri, 16 Jan 2004 15:06:35 +0000 (15:06 +0000)]
2004-01-16 Vangelis Rokas <vrokas@otenet.gr>

* src/SDCCmain.c (linkEdit): variable $3 of the linker command is
loaded with the linker search paths (-L arguments) and the libraries
to be linked with the current source (-l arguments). Changes
currently will affect only the pic16 port.
* src/pic16/main.c (_pic16_finaliseOptions): add to the linker
include path the port specific paths and port specific libraries,
* gplink command now contains the $3 argument,
* src/pic16/device.h,
* src/pic16/device.c,: structure PIC_device is made public and
renamed to PIC16_device, the same for variable Pics which is renamed
to Pics16. Updated all references to them.
* src/pic16/glue.c (pic16glue): corrected bug with code
initialization which bypassed the variable initializations block.

* device/lib/pic16/Makefile.rules: removed --penable-stack from
COMPILE_FLAGS and added the --nostdinc option

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3137 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* device/include/mc68hc908jb8.h: Register defs for another member
epetrich [Thu, 15 Jan 2004 01:25:23 +0000 (01:25 +0000)]
* device/include/mc68hc908jb8.h: Register defs for another member
of the hc08 family. Contributed by Bjorn Bringert - thanks!

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3136 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-01-14 Vangelis Rokas <vrokas@otenet.gr>
vrokas [Tue, 13 Jan 2004 23:18:32 +0000 (23:18 +0000)]
2004-01-14 Vangelis Rokas <vrokas@otenet.gr>

Documenting changes from previous commits.
* configure.in (version 1.56),
* configure: initially I've added AC_CONFIG_SUBDIRS(device/lib/pic16)
when generating output files to configure the pic16 library,
but now I've commented it out, since gputils aren't installed in the
SF compile farm, so library won't compile

* device/lib/Makefile.in (version 1.56): initially I've added in
target 'all' the prerequestive 'model-pic16' so it compiled the
pic16 library, but now I've commented it out for the same reasons
above,
* added targets 'model-pic16' and 'objects-pic16' to compile the
library
* added target 'port-specific-objects-pic16' to handle the
generated libraries and copy them into the build/ directory
* added target 'clean-intermediate-pic16' to clean intermediate
files into pic16 directory
* in target 'installdirs' added line to create directory pic16 in
the installation path

* device/include/Makefile.in (version 1.11): in target 'install'
added lines to copy all header files to installation path,
* in target 'installdirs' added line create directory for pic16
headers in the installation path

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3135 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago * src/ds390/gen.c (genCall): fixed a double use of acc and b after
kflittner [Tue, 13 Jan 2004 20:25:06 +0000 (20:25 +0000)]
* src/ds390/gen.c (genCall): fixed a double use of acc and b after
 a function call

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3134 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoremoved from automatic compilation model-pic16
vrokas [Tue, 13 Jan 2004 15:00:08 +0000 (15:00 +0000)]
removed from automatic compilation model-pic16

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3133 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* configure,
bernhardheld [Tue, 13 Jan 2004 11:00:56 +0000 (11:00 +0000)]
* configure,
* device/lib/configure.in,
* device/lib/configure: fixed for autoconf 2.57

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3132 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/z80/main.c (_parseOptions): fixed the portmode= command line
epetrich [Tue, 13 Jan 2004 06:31:25 +0000 (06:31 +0000)]
* src/z80/main.c (_parseOptions): fixed the portmode= command line
option so that it actually works. Made it specific to the z80, since
the gbz80 doesn't have these kinds of I/O ports.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3131 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* device/include/z180.h,
epetrich [Tue, 13 Jan 2004 05:34:20 +0000 (05:34 +0000)]
* device/include/z180.h,
* device/lib/_memcpy.c,
* device/lib/_memmove.c,
* device/lib/_mulint.c,
* device/lib/ser_ir.c,
* device/lib/ser_ir_cts_rts.c,
* device/lib/_strcmp.c,
* device/lib/_strtok.c: fixed pragmas to non-deprecated form
* src/z80/main.c (_process_pragma): add support for pragmas bank and
portmode; added deprecation warning for bank= and protmode= forms.
Also, guard against buffer overflow.
* src/z80/gen.c (aopGet): generate better code for sfr banked read

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3130 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/hc08/main.c (_hc08_genAssemblerPreamble): fixed bug #875487. Also
epetrich [Tue, 13 Jan 2004 03:54:11 +0000 (03:54 +0000)]
* src/hc08/main.c (_hc08_genAssemblerPreamble): fixed bug #875487. Also
changed interrupt vector table generation to only emit declared vectors.
* device/include/Makefile.in: added missing backslash
* device/lib/pic16/Makefile.rules: add $(MODELFLAGS) to $(CFLAGS)

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3129 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoAdded ChangeLog to project
jesusc [Tue, 13 Jan 2004 02:57:50 +0000 (02:57 +0000)]
Added ChangeLog to project

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3128 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoMoved declaration to begining of function so to compile with MSVC
jesusc [Tue, 13 Jan 2004 02:57:21 +0000 (02:57 +0000)]
Moved declaration to begining of function so to compile with MSVC

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3127 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agomodified to install the pic16 headers
vrokas [Mon, 12 Jan 2004 23:41:46 +0000 (23:41 +0000)]
modified to install the pic16 headers

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3126 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-01-13 Vangelis Rokas <vrokas@otenet.gr>
vrokas [Mon, 12 Jan 2004 23:31:46 +0000 (23:31 +0000)]
2004-01-13 Vangelis Rokas <vrokas@otenet.gr>

        Mainly changes to support compilation of the device libraries
        * src/pic16/device.c: stack is allocated via symbol and not
        via literal number. The symbol is placed in the corresponding
        position of the data ram
        * (pic16_dump_section): relocatable and absolute uninitialized
        data are now emitted in sorted order to reduce section naming,
        * src/pic16/ralloc.c (newReg): fixed bug with SFR's that
        weren't marked as being in the access bank,

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3125 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoupdated target port-specific-objects-pic16
vrokas [Mon, 12 Jan 2004 23:08:43 +0000 (23:08 +0000)]
updated target port-specific-objects-pic16
to copy only .lib files

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3124 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoupdated to compile in pic16/
vrokas [Mon, 12 Jan 2004 22:53:29 +0000 (22:53 +0000)]
updated to compile in pic16/

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3123 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-01-13 Vangelis Rokas <vrokas@otenet.gr>
vrokas [Mon, 12 Jan 2004 22:40:44 +0000 (22:40 +0000)]
2004-01-13 Vangelis Rokas <vrokas@otenet.gr>

        Added portion of GNU PIC Library under the directory
        device/include/pic16 and device/lib/pic16. These files
        contain the declarations of SFRs for the PIC18Fxx2 devices.
        The directory is initialized via configure from toplevel.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3122 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoSDCC pic16 port device library initial version
vrokas [Mon, 12 Jan 2004 22:10:38 +0000 (22:10 +0000)]
SDCC pic16 port device library initial version

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3121 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago * src/ds390/gen.c (operandsEqu): fixed a little typo, that prevented
kflittner [Mon, 12 Jan 2004 21:55:59 +0000 (21:55 +0000)]
* src/ds390/gen.c (operandsEqu): fixed a little typo, that prevented
the spilllocations to be compared correctly

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3120 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (decorateType): fixed bug introduced today
bernhardheld [Mon, 12 Jan 2004 20:57:35 +0000 (20:57 +0000)]
* src/SDCCast.c (decorateType): fixed bug introduced today

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3119 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoupper case pragmas are deprecated
borutr [Mon, 12 Jan 2004 12:56:48 +0000 (12:56 +0000)]
upper case pragmas are deprecated

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3118 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (decorateType): replacing 'ul > 0' by '!ul' results in simpler and...
bernhardheld [Mon, 12 Jan 2004 07:53:55 +0000 (07:53 +0000)]
* src/SDCCast.c (decorateType): replacing 'ul > 0' by  '!ul' results in simpler and even better code

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3117 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (decorateType): fixed char foo (unsigned long ul) { return ul > 0; }
bernhardheld [Sun, 11 Jan 2004 21:58:32 +0000 (21:58 +0000)]
* src/SDCCast.c (decorateType): fixed char foo (unsigned long ul) { return ul > 0; }

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3116 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCicode.c (operandOperation): fixed bug #874819
bernhardheld [Sun, 11 Jan 2004 20:52:04 +0000 (20:52 +0000)]
* src/SDCCicode.c (operandOperation): fixed bug #874819

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3115 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agodoc/sdccman.lyx: Moved and added some sections, small changes all over.
frief [Sun, 11 Jan 2004 20:13:16 +0000 (20:13 +0000)]
doc/sdccman.lyx: Moved and added some sections, small changes all over.
Telling LaTeX to be less strict with word spacing
to better keep the right margin. Changed some notes about
maintainance of the ports in section 3.2.1 - OK like this?

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3114 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoMoved and added some sections, small changes all over.
frief [Sun, 11 Jan 2004 20:10:11 +0000 (20:10 +0000)]
Moved and added some sections, small changes all over.
Telling LaTeX to be less strict with word spacing
to better keep the right margin. Changed some notes about
maintainance of the ports in section 3.2.1 - OK like this?

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3113 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-01-11 Vangelis Rokas <vrokas@otenet.gr>
vrokas [Sun, 11 Jan 2004 15:26:54 +0000 (15:26 +0000)]
2004-01-11 Vangelis Rokas <vrokas@otenet.gr>

SDCC source changes:
* src/SDCCopt.c (cntToFcall, cnvToFloatCast, cnvFromFloatCast,
convilong): modified to inform the pic16 port that builtin functions
are external

PIC16 PORT specific changes:
* src/pic16/device.c pic16_dump_equates() added,
processor registers declared internally by the port are emitted in
the translation as equates,
* src/pic16/gen.c: inline code is passed unprocessed to the
translation,
* (pic16_popGetLit2): fnuction modified to take second operand as
pCodeOp pointer and not as literal,
* (popRegFromIdx): prefixed with pic16_,
* (pic16_popCombine2): modified to receive already allocated pCode
operands,
* (pic16_pushpCodeOpReg, pic16_poppCodeOpReg): added
* (genFunction): initializes local stack frame and pushes on stack
all the registers used by this function,
* (genEndFunction): restores all registers from stack and restores
stack frame,
* src/pic16/glue.c (pic16emitRegularMap): various changes and
improvements,
* (pic16glue): changed the program startup sequence,
* added new dbName code 'A' for functions placed in absolute section
* src/pic16/main.c: added function attribute _naked,
* added pragma 'code' to place a fnuction at an absolute address,
* added command line arguments --debug-ralloc and --pcode-verbose,
* (_pic16_finiliseOptions): options.all_callee_saves is set by default
* src/pic16/pcode.c (pic16_pBlockConvert2Absolute) added,
* (pic16_newpCodeOpLit2): modified to take the second operand as
pCodeOp pointer,
* (pic16_printpBlock): modified to emit each function in a separate
section,
* (pic16_get_op): modified to use the gpasm modifiers LOW,HIGH and
UPPER for immediate operands,
* src/pic16/pcodepeeph.c: added peephole support for the LFSR
instruction,
* src/pic16/peeph.def: all peepholes with movff are commented out,
because there is a problem in the pcode peep optimizer,
* src/pic16/ralloc.c: the register allocator can now reuse local
function symbols for another function. This saves register usage.
* src/pic16/ralloc.h: added flag isLocal in structure regs,

Added file src/pic16/NOTES with information about program writing on
the current port version.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3112 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agosrc/mcs51/peephole.def: added peepholes 177.c,d (redundant moves) and peephole 252...
frief [Sun, 11 Jan 2004 11:06:09 +0000 (11:06 +0000)]
src/mcs51/peephole.def: added peepholes 177.c,d (redundant moves) and peephole 252 (array access)

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3111 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoadded peepholes 177.c,d (redundant moves) and peephole 252 (array access)
frief [Sun, 11 Jan 2004 11:04:36 +0000 (11:04 +0000)]
added peepholes 177.c,d (redundant moves) and peephole 252 (array access)

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3110 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agofixed #872250: -l command line defined library files are scanned before standard...
borutr [Sat, 10 Jan 2004 22:41:38 +0000 (22:41 +0000)]
fixed #872250: -l command line defined library files are scanned before standard library files

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3109 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (decorateType): fixed bug #874046
epetrich [Sat, 10 Jan 2004 05:51:34 +0000 (05:51 +0000)]
* src/SDCCast.c (decorateType): fixed bug #874046

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3108 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoremove previous installation
borutr [Fri, 9 Jan 2004 20:57:54 +0000 (20:57 +0000)]
remove previous installation

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3107 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* support/scripts/sdcc.nsi: remove previous installation
borutr [Fri, 9 Jan 2004 20:57:11 +0000 (20:57 +0000)]
* support/scripts/sdcc.nsi: remove previous installation

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3106 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agosrc/SDCCglue.c (createInterruptVect): don't append 7(5) padding bytes for last interr...
frief [Fri, 9 Jan 2004 20:22:23 +0000 (20:22 +0000)]
src/SDCCglue.c (createInterruptVect): don't append 7(5) padding bytes for last interrupt vector (mcs51)
sdcc.spec: fixed typo

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3105 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agofixed typo
frief [Fri, 9 Jan 2004 20:20:43 +0000 (20:20 +0000)]
fixed typo

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3104 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago(createInterruptVect): don't append 7(5) padding bytes for last interrupt vector...
frief [Fri, 9 Jan 2004 20:20:07 +0000 (20:20 +0000)]
(createInterruptVect): don't append 7(5) padding bytes for last interrupt vector (mcs51)

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3103 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/mcs51/gen.c (genFunction, genEndFunction, genReceive, getTempRegs,
epetrich [Fri, 9 Jan 2004 08:16:35 +0000 (08:16 +0000)]
* src/mcs51/gen.c (genFunction, genEndFunction, genReceive, getTempRegs,
gen51Code): more efficient parameter receive for --model-large
("bug" #845294)

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3102 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/ds390/main.c,
epetrich [Fri, 9 Jan 2004 06:03:09 +0000 (06:03 +0000)]
* src/ds390/main.c,
* src/z80/main.c: added missed needLinkerScript flags (more than
one port structure defined in these file)
* src/ds390/gen.c (aopForSym, aopOp, operandsEqu, aopOp3): fixed
bug #795325

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3100 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-01-08 Vangelis Rokas <vrokas@otenet.gr>
vrokas [Thu, 8 Jan 2004 16:08:03 +0000 (16:08 +0000)]
2004-01-08 Vangelis Rokas <vrokas@otenet.gr>

* src/SDCCmain.c: removed various references to DEFAULT_PORT
* src/port.h: added flag needLinkerScript in port->linker
structure to inform whether to create a .lnk file or not,
* src/avr/main.c,
* src/ds390/main.c,
* src/hc08/main.c,
* src/mcs51/main.c,
* src/pic/main.c,
* src/pic16/main.c,
* src/xa51/main.c,
* src/z80/main.c: changed appropriately to configure
needLinkerScript flag
* src/pic/gen.c,
* src/pic16/gen.c (genAddrOf): fixed bug #863624
* src/pic/glue.c: added variable udata_section_name to
override default uninitialized data segment definition for
devices only with SHAREBANK memory (reported from Erik Epetrich)
* (pic14emitOverlay): modified to emit a commented overlay segment
directive when no overlay data exist
* (picglue): modified to emit uninitialized data segment
according to udata_section_name
* src/pic/main.c (_pic14_parseOptions): added command line
options --udata-section-name=[name] to override default
udata definition name
* modified _linkCmd and _asmCmd to include compiler passed
arguments via -W option
* src/pic16/main.c: added $l in _asmCmd, changed extension for
object file from '.rel' to '.o' in port->linker structure,
changed size of fptr from 2 to 3 in port structure

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3099 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* support/scripts/sdcc.ico: craeted
borutr [Wed, 7 Jan 2004 11:13:39 +0000 (11:13 +0000)]
* support/scripts/sdcc.ico: craeted

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3098 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agocreated
borutr [Wed, 7 Jan 2004 11:09:43 +0000 (11:09 +0000)]
created

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3097 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* support/scripts/sdcc.nsi: update PATH
borutr [Wed, 7 Jan 2004 11:02:43 +0000 (11:02 +0000)]
* support/scripts/sdcc.nsi: update PATH

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3096 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoupdate PATH
borutr [Wed, 7 Jan 2004 11:02:12 +0000 (11:02 +0000)]
update PATH

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3095 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* doc/Makefile: fix install
sdcc-builder [Wed, 7 Jan 2004 09:37:23 +0000 (09:37 +0000)]
* doc/Makefile: fix install

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3094 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* device/include/Makefile.in: fix install
sdcc-builder [Wed, 7 Jan 2004 09:30:41 +0000 (09:30 +0000)]
* device/include/Makefile.in: fix install

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3093 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCsymt.c (processFuncArgs): fixed superflous allocation noted
epetrich [Wed, 7 Jan 2004 07:28:00 +0000 (07:28 +0000)]
* src/SDCCsymt.c (processFuncArgs): fixed superflous allocation noted
in bug #860505
* src/SDCCmem.c (printAllocInfoSeg, printAllocInfo): minor changes to
how the function variable allocation summary is displayed; also
include information about variables allocated to the overlay
segment

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3092 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoFixed gcc warnings, and added help about -Y option
jesusc [Tue, 6 Jan 2004 22:32:40 +0000 (22:32 +0000)]
Fixed gcc warnings, and added help about -Y option

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3091 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (decorateType),
bernhardheld [Tue, 6 Jan 2004 22:03:36 +0000 (22:03 +0000)]
* src/SDCCast.c (decorateType),
* src/SDCCicode.c (geniCodeLeftShift): added promotion to int for LEFT_OP (left shift)
* src/SDCCval.c (valShift): fixed warning
* support/valdiag/tests/overflow.c: updated

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3090 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCval.c (valShift): changed from 16 to 32 bit shift count
bernhardheld [Tue, 6 Jan 2004 20:43:47 +0000 (20:43 +0000)]
* src/SDCCval.c (valShift): changed from 16 to 32 bit shift count
* support/valdiag/tests/overflow.c: added

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3089 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoAdded genutils.c to project
jesusc [Tue, 6 Jan 2004 11:03:07 +0000 (11:03 +0000)]
Added genutils.c to project

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3088 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agostack must be after data when option -Y is not used (default behaviour)
jesusc [Tue, 6 Jan 2004 10:30:04 +0000 (10:30 +0000)]
stack must be after data when option -Y is not used (default behaviour)

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3087 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years agoA python script to validate compiler diagnostic messages. It can be
epetrich [Tue, 6 Jan 2004 07:14:55 +0000 (07:14 +0000)]
A python script to validate compiler diagnostic messages. It can be
used to verify that sdcc complains about bad c source code and
gives a good location of the error.
* support/valdiag/Makefile,
* support/valdiag/valdiag.py,
* support/valdiag/tests/*

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3086 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCC.y (enum_specifier, enumerator_list, opt_assign_expr),
epetrich [Tue, 6 Jan 2004 07:04:52 +0000 (07:04 +0000)]
* src/SDCC.y (enum_specifier, enumerator_list, opt_assign_expr),
* src/SDCCsymt.c (newEnumType),
* src/SDCCsymt.h
* support/Util/SDCCerr.c,
* support/Util/SDCCerr.h: fixed bug #871258 and some other unreported
enum related bugs.
* support/regression/tests/enum.c: added test for enum values that
require at least 2 bytes of storage.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3085 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-01-06 Vangelis Rokas <vrokas@otenet.gr>
vrokas [Tue, 6 Jan 2004 03:22:37 +0000 (03:22 +0000)]
2004-01-06 Vangelis Rokas <vrokas@otenet.gr>

        * src/common.h: added ifndef/define/endif macros
        around the header file.
        Bug reported from Jesus Calvino-Fraga

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3084 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/SDCCast.c (decorateType): fixed bug #870781
bernhardheld [Mon, 5 Jan 2004 20:51:59 +0000 (20:51 +0000)]
* src/SDCCast.c (decorateType): fixed bug #870781

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3083 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* src/ds390/gen.c (genRightShift): fixed bug #870788
bernhardheld [Mon, 5 Jan 2004 20:21:49 +0000 (20:21 +0000)]
* src/ds390/gen.c (genRightShift): fixed bug #870788

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3082 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago* sdcc.spec: updated
bernhardheld [Mon, 5 Jan 2004 20:18:18 +0000 (20:18 +0000)]
* sdcc.spec: updated
* device/include/Makefile.in: don't install CVS directories
* device/lib/Makefile.in: added removal of CVS directories after install
* doc/Makefile: fixed install, added local_icons
* sim/ucsim/gui.src/Makefile.in: fixed an old typo
* src/mcs51/gen.c (genRightShift): fixed bug #870788

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3081 4a8a32a2-be11-0410-ad9d-d568d2c75423

20 years ago2004-01-06 Vangelis Rokas <vrokas@otenet.gr>
vrokas [Mon, 5 Jan 2004 19:45:14 +0000 (19:45 +0000)]
2004-01-06 Vangelis Rokas <vrokas@otenet.gr>

PIC16 port related changes:
* device.c: removed pic16_finalMapping and pic16_finalMappingSize,
added variable stackPos,

* gen.c: genCall, assignResultValue: added support for
pushing/retrieving function parameters to/from stack,
genFunction,genEndFunction: setup stack frame for the
generated function,
genAddrOf: will be changed according to bug 863624

* added files genutils.c and genutils.h which contain gen*
debugged and optimised functions extracted from gen.c

* glue.c: added variable 'externs' which holds extern symbols,
pic16emitRegularMap: is modified to properly handle relocatable
 symbols under the new scheme,
pic16createInterruptVect: is modified
pic16printPublics: is modified to emit 'global' assembler directives,
added pic16_printExterns to print extern symbols,
pic16glue: initializes stack/frame pointer in the beginning of
the assembly output. Temporary hack, will be corrected later,
because gplink yet does not support stack and SDCC does not
yet support a type of crt0.o object to create the final binary.

* Removed many lines that contain 8051 legacy code.
* The code is finally placed under a 'code' directive.
* Added port specific options.

* _process_pragma: simplified since now we do not need *special*
include file to define SFR registers. But a separate header
will be needed. This will be developed later.
* _pic16_parseOptions: added, parses port specific options:
--pgen-banksel, --obanksel=, --pomit-config-words, --pomit-ivt,
--pleave-reset-vector, --penable-stack, --pstack-model, --debug-xtra
--preplace-udata-with=

* _pic16_setDefaultOptions: modified to initialize section names,
but hack is temporarly out of order since it needs improvement.
* _pic16_genAssemblerPreamble: configuration words are emitted by
their address instead of their name. This part is incomplete and
supports only the 18Fxx2 devices. Other devices will emit an error
during assembly since they do not contain the same set of config
registers
* _pic16_genIVT: is modified,

* pcode.c: added definitions for some hardware registers that are needed
for stack support
* added flag is2LitOp and variable pci_magic in pCodeInstruction.
All PCI entries are updated. Now LFSR is supported.
* Removed pic16_pciTRIS is mentioned by mdubuc in source
* added pic16_newpCodeOpLit2 to support instructions with
two literal arguments
* pic16_pCode2str: corrected code that emits assembler instructions
with two literal operands and those that have an access bit modifier
* genericPrint: now PC_ASMDIR pCodes, can emit a label if it exists,
this fixes a bug which caused some labels to be lost, when an
assembler directive was added, i.e. banksel,
* pic16_FixRegisterBanking: improved logic that causes the insertion
of bank switching,
* InlineFunction: functions that are called once, are not any more
inlined. This can be a port option in the future,

* pcode.h: added pCodeOpLit2 and added variable label in pCodeAsmDir

* ralloc.c: added pic16_rel_udata and pic16_fix_udata variables which
hold the corresponding uninitialized symbols,
* pic16_allocProcessorRegister: registers have explicit marked the
accessBank field,
* pic16_allocInternalRegister: registers are explicit marked as
not used,
* pic16_writeUsedRegs: pic16_dynDirectBitRegs was missing from the
processing list, so bit registers were lost,
*

* ralloc.h: added field 'accessBank' and original symbol operand
in register definition,
* removed the field isMapped from register definition,

** Several functions have been removed from various sources:
BanksUsedFlow2,BanksUsedFlow,FixBankFlow,InstructionRegBank,
pic16_addMemRange,pic16_isREGinBank,pic16_dump_map,pic16_dump_cblock
isSFR,validAddress,mapRegister,assignRegister,pic16_assignFixedRegisters
pic16_assignRelocatableRegisters

** others have been introduced:
pic16_areRegsSame,pic16_dump_section,checkAddReg,pic16_groupRegistersInSection
pic16_popGetLit2,pic16_popCombine2,pushw,pushaop

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3080 4a8a32a2-be11-0410-ad9d-d568d2c75423