Commit dcf81f12 authored by Geert Stappers's avatar Geert Stappers

Import Upstream version 2.3.0


Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

#Generic rules and options for building with Borland C++
SLIB = $(PRJDIR)/support/Util
OFLAGS = -6 -O2 -g0 -w-proto
BCC32 -c -o$@ $(OFLAGS) $(CFLAGS) $(CPPFLAGS) -I$(SLIB) $<
This diff is collapsed.
/.version/1.7/Thu Jul 26 01:16:49 2001//Tsdcc-230
/ May 16 06:20:33 2001//Tsdcc-230
/COPYING/ Jan 17 03:23:41 2000//Tsdcc-230
/ChangeLog/1.24/Sun Sep 16 14:04:32 2001//Tsdcc-230
/Makefile/1.28/Sat Jul 21 04:59:14 2001//Tsdcc-230
/Makefile.bcc/1.7/Sat Jul 7 05:41:41 2001//Tsdcc-230
/ Jul 18 04:43:24 2001//Tsdcc-230
/README/ Sep 19 18:35:14 2001//Tsdcc-230
/ Jul 21 04:40:53 2001//Tsdcc-230
/ Jan 17 03:23:41 2000//Tsdcc-230
/configure/1.27/Tue Jul 3 23:20:01 2001//Tsdcc-230
/ Jul 3 23:20:01 2001//Tsdcc-230
/install-sh/ Jan 17 03:23:42 2000//Tsdcc-230
/ Jan 17 03:23:42 2000//Tsdcc-230
/sdcc.dsw/1.2/Tue Apr 24 04:44:15 2001//Tsdcc-230
/sdcc.spec/1.1/Mon Feb 26 02:51:21 2001//Tsdcc-230
/sdcc_vc.h/1.4/Fri Apr 20 03:00:09 2001//Tsdcc-230
/ Jan 17 03:23:42 2000//Tsdcc-230
/sdccconf_in.h/1.8/Tue Mar 6 09:30:27 2001//Tsdcc-230
2001-09-16 <johan@FRIJA>
* support/Util/SDCCerr.c: fixed up the error/warning/info database. I only changed the E_ W_ I_ prefix to what SDCCerr.c says it is.
2001-09-15 <johan@FRIJA>
* src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
* src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
2001-09-11 <johan@FRIJA>
* src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
2001-09-10 Michael Hope <>
* support/regression/tests/bug-460444.c: Added test case.
* src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
(genCast): Added justification for all of the asserts.
2001-09-10 Bernhard Held <>
* support/regression/support.c: _xdata replaced by xdata
* support/regression/ removed _generic
2001-09-09 Michael Hope <>
* src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
* src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
(genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
* src/z80/peeph.def: Added a rule to optimise shift then compare.
* support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
* support/regression/tests/bug-460010.c: Added test case.
* support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
2001-09-09 Bernhard Held <>
* support/regression/Makefile: inter-port-clean adjusted for mcs51
* support/regression/testfwk.c: removed workaround for bug #436344
* support/regression/tests/bp.c: use less memory with mcs51
* support/regression/tests/bug-441448.c: use less memory
* support/regression/tests/ports/mcs51/ cleanup, use --stack-after-data
* support/regression/ typo
2001-09-08 Michael Hope <>
* support/regression/tests/fetchoverlap.c: Added new test case.
* support/regression/tests/bp.c: Added new test case.
* support/regression/tests/bug-448984.c: Added new test case.
* support/regression/tests/pow2shifts.c: Added new test case.
* src/z80/gen.c: Turned off the noise it normally generates for the release.
(genlshTwo): Fixed right shift for count > 8.
* src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
2001-09-08 <johan@FRIJA>
* src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
2001-09-07 <johan@FRIJA>
* src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
* src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
2001-09-06 <johan@FRIJA>
* src/SDCC.y: this could be a fix for bug #458744 (1.37)
* bernhard noted me at this: "() equals to (void)" (1.38)
2001-09-05 <johan@FRIJA>
* src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
2001-09-04 <johan@FRIJA>
* src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
2001-09-04 Paul Stoffregen <>
* pragma noinduction broke memcpy on mcs51 large model. Moved it inside z80 optimization
2001-09-03 Michael Hope <>
* link/z80/aslink.h: Fixed path for PATH_MAX
2001-09-02 Michael Hope <>
* src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
* support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
* support/regression/tests/uminus.c: Added a test for the unary minus operator.
* src/z80/gen.c (genUminus): Fixed add, sub, and uminus on the gbz80 port for longs. Had to shift some functions about to do it.
2001-09-01 Michael Hope <>
* src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
(genCmp): Fixed up genCmp for the GB with longs.
* device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
* support/regression/ports/host/ Updated to compile with the new type specifiers.
* device/lib/ (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
* device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
2001-08-30 Paul Stoffregen <>
* added peepholes 223 to 231 to mcs51 port. These improve code when using large model.
2001-08-30 Michael Hope <>
* device/lib/gbz80/crt0.s (init): Fixed up support for the gbz80 such that it will at least run (and fail badly) the regression tests.
* src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
2001-08-29 Michael Hope <>
* link/z80/aslink.h: Fixed long file name support. Is now based off PATH_MAX instead of a constant.
* src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
2001-08-30 Bernhard Held <>
* sim/ucsim/configure: little improvement of Cygwin-detection
* sim/ucsim/ little improvement of Cygwin-detection
* sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
* support/regression/tests/bug-221100.c: small changes for mcs51
* support/regression/tests/bug-221168.c: small changes for mcs51
* support/regression/tests/bug-227710.c: small changes for mcs51
* support/regression/tests/staticinit.c: small changes for mcs51
* as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
* as/mcs51/lklex.c: accept everything as symbol name in rel-files, bug fix ID 452601
* as/mcs51/lksym.c: accept everything as symbol name in rel-files, bug fix ID 452601
SHELL = /bin/sh
include $(PRJDIR)/Makefile.common
SDCC_MISC = debugger/mcs51 sim/ucsim
SDCC_LIBS = support/cpp support/cpp2
SDCC_DOC = doc
# Parts that are not normally compiled but need to be cleaned
SDCC_EXTRA = support/regression support/makebin
SDCC_ASLINK = as/mcs51 as link
SDCC_PACKIHX = packihx
TARGETS = sdcc-libs sdcc-cc sdcc-aslink sdcc-doc
ifneq ($(OPT_ENABLE_UCSIM), no)
TARGETS += sdcc-misc
TARGETS += sdcc-device
PKGS += device/include device/lib
ifneq ($(OPT_ENABLE_PACKIHX), no)
TARGETS += sdcc-packihx
src device/include $(SDCC_PACKIHX)
PORTS = $(shell cat
ALLPORTS = $(shell cat ports.all)
# Compiling entire program or any subproject
# ------------------------------------------
all: checkconf sdcc
tini: checkconf sdcc-tini
for lib in $(SDCC_LIBS); do $(MAKE) -C $$lib; done
sdcc-cc: sdcc-libs
$(MAKE) -C src
for as in $(SDCC_ASLINK); do $(MAKE) -C $$as; done
for misc in $(SDCC_MISC); do $(MAKE) -C $$misc; done
$(MAKE) -C device/include
$(MAKE) -C device/lib
$(MAKE) -C device/include
$(MAKE) -C device/lib modelDS390
# Empty for now, as doc depends on latex and latex2html
sdcc: $(TARGETS)
sdcc-tini: sdcc-cc sdcc-aslink sdcc-device-tini sdcc-packihx
$(MAKE) -f all
# Some interesting sub rules
sdcc-bin: sdcc-cc sdcc-aslink sdcc-misc
sdcc-base: sdcc-cc sdcc-aslink
# Compiling and installing everything and runing test
# ---------------------------------------------------
$(MAKE) -f install
@for pkg in $(PKGS); do\
$(MAKE) -C $$pkg install ;\
$(MAKE) -f install
@for pkg in $(PKGS_TINI); do\
$(MAKE) -C $$pkg install ;\