fw/sdcc
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

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

* support/scripts/inc2h.pl: changed definition of BIT_AT
to emit 'sbit at' instead of 'bit at'. This was a request.

PIC16 port related preliminary changes:
* gen.c: prefixed function popRegFromString with
pic16_ and all references to it corrected
* pcode.c: all pic16_pc_* hardware registers prefixed
with underscore (_),
pic16_popCopyGPR2Bit(): function sets register wasUsed=1
* ralloc.c: newReg(): when register is REG_SFR then
set address to rIdx,
pic16_allocProcessorRegister(): marks register wasUsed=0
pic16_writeUsedRegs(): added a call to assign processor
registers via pic16_assignFixedRegisters

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

20 years agoupdated for NSIS 2 RC1; use LZMA comression
borutr [Mon, 5 Jan 2004 13:02:16 +0000 (13:02 +0000)]
updated for NSIS 2 RC1; use LZMA comression

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

20 years agoLinker places variables in unused register banks. Call using -Wl-Y[stack_size]
jesusc [Sun, 4 Jan 2004 14:18:23 +0000 (14:18 +0000)]
Linker places variables in unused register banks.  Call using -Wl-Y[stack_size]

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

20 years ago* src/SDCClrange.c: fixed bug 869095 that caused segfault
vrokas [Fri, 2 Jan 2004 11:11:11 +0000 (11:11 +0000)]
* src/SDCClrange.c: fixed bug 869095 that caused segfault
in certain cases, e.g. when ROM assignment, patch provided
from Albert den Haan.

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

20 years ago* doc/sdccman.lyx: updated documentation for sdcdb updated and added chapter tips
bernhardheld [Fri, 2 Jan 2004 00:16:21 +0000 (00:16 +0000)]
* doc/sdccman.lyx: updated documentation for sdcdb updated and added chapter tips

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

20 years ago* debugger/mcs51/sdcdb.c (parseCmdLine): added -k for ucsim, patch provided by Scott...
bernhardheld [Thu, 1 Jan 2004 23:14:39 +0000 (23:14 +0000)]
* debugger/mcs51/sdcdb.c (parseCmdLine): added -k for ucsim, patch provided by Scott Bronson
* doc/sdccman.lyx: updated documentation for sdcdb

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

20 years agosrc/SDCCmain.c (main): applied patch #866468
bernhardheld [Thu, 1 Jan 2004 22:49:54 +0000 (22:49 +0000)]
src/SDCCmain.c (main): applied patch #866468

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

20 years agoMany signedness and type propagation fixes
bernhardheld [Thu, 1 Jan 2004 21:59:26 +0000 (21:59 +0000)]
Many signedness and type propagation fixes

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

20 years ago* src/SDCCsymt.h,
epetrich [Thu, 1 Jan 2004 17:10:04 +0000 (17:10 +0000)]
* src/SDCCsymt.h,
* src/SDCC.y (struct_or_union_specifier),
* support/Util/SDCCerr.c,
* support/Util/SDCCerr.h: verify that struct & union tags are used
as declared.

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

20 years ago* src/SDCC.y (struct_or_union_specifier),
epetrich [Wed, 31 Dec 2003 23:12:39 +0000 (23:12 +0000)]
* src/SDCC.y (struct_or_union_specifier),
* support/Util/SDCCerr.c,
* support/Util/SDCCerr.h: verify that struct & union tags are used
as declared.

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

20 years ago* src/SDCCglobl.h: Support for redefining a typedef symbol
epetrich [Mon, 29 Dec 2003 06:19:34 +0000 (06:19 +0000)]
* src/SDCCglobl.h: Support for redefining a typedef symbol

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

20 years ago* src/SDCC.y (external_definition, type_specifier2, sfr_reg_bit,
epetrich [Sun, 28 Dec 2003 05:29:11 +0000 (05:29 +0000)]
* src/SDCC.y (external_definition, type_specifier2, sfr_reg_bit,
sft_attributes, struct_declaration, parameter_declaration,
type_name, start_block, declaration_list),
* src/SDCC.lex (check_type): support redefinition of typedef names

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

20 years agosrc/mcs51/gen.c (genPlus): added special handling for 256 byte aligned xdata arrays...
frief [Mon, 22 Dec 2003 10:47:25 +0000 (10:47 +0000)]
src/mcs51/gen.c (genPlus): added special handling for 256 byte aligned xdata arrays. Erik helped me with the if clause.

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

20 years ago(genPlus): added special handling for 256 byte aligned xdata arrays. Erik helped...
frief [Mon, 22 Dec 2003 10:46:31 +0000 (10:46 +0000)]
(genPlus): added special handling for 256 byte aligned xdata arrays. Erik helped me with the if clause.

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

20 years ago* device/lib/ds390/tinibios.c (CpuSpeed): suppress unreachable code warning
epetrich [Sat, 20 Dec 2003 08:41:45 +0000 (08:41 +0000)]
* device/lib/ds390/tinibios.c (CpuSpeed): suppress unreachable code warning

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

20 years ago* src/SDCCast.h,
epetrich [Sat, 20 Dec 2003 07:08:30 +0000 (07:08 +0000)]
* src/SDCCast.h,
* src/SDCCast.c (newAst_),
* src/SDCCicode.h,
* src/SDCCicode.c (ast2iCode, newiCode),
* src/SDCCglobl.h,
* src/SDCC.y (logical_and_expr, logical_or_expr, conditional_expr,
expr, statement, expression_statement, selection_statement,
iteration_statement, expr_opt, jump_statement): foundation for tracking
sequence points
* src/SDCCopt.c (killDeadCode): fixed bug #861580 (needs the sequence
point code too)

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

20 years ago* support/Util/SDCCerr.c,
epetrich [Fri, 19 Dec 2003 09:24:17 +0000 (09:24 +0000)]
* support/Util/SDCCerr.c,
* src/SDCCast.h,
* src/SDCCast.c (createCase, createDefault, decorateType),
* src/SDCClabel.c (labelUnreach),
* src/SDCC.y (labeled_statement, jump_statement): More improvements
to error messages.
* support/Util/SDCCerr.c (werrorfl): fixed a non-standard declaration
(with thanks to Stas Sergeev)
* device/include/time.h,
* device/lib/time.c (CheckTime): suppress unreachable code warning

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

20 years ago* src/SDCCast.c (createIvalCharPtr),
epetrich [Thu, 18 Dec 2003 21:23:36 +0000 (21:23 +0000)]
* src/SDCCast.c (createIvalCharPtr),
* src/SDCCglue.c (printChar): fixed bug #862241 (an error in my fix for
bug #753752)
* support/regression/tests/nullstring.c: tests for these two bugs

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