fw/sdcc
18 years ago* sim/ucsim/gui.src/serio.src/Makefile.in, sim/ucsim/s51.src/Makefile.in, sim/ucsim...
sdcc-builder [Thu, 25 Aug 2005 19:25:47 +0000 (19:25 +0000)]
* sim/ucsim/gui.src/serio.src/Makefile.in, sim/ucsim/s51.src/Makefile.in, sim/ucsim/avr.src/Makefile.in, sim/ucsim/z80.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in, sim/ucsim/xa.src/Makefile.in: install -s changed to 2 steps: install and strip, since the strip at /usr/ccs/bin should be used on solaris

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

18 years ago* clean.mk, device/lib/clean.mk: find on sparc-solaris does not support -maxdepth...
borutr [Wed, 24 Aug 2005 20:35:57 +0000 (20:35 +0000)]
* clean.mk, device/lib/clean.mk: find on sparc-solaris does not support -maxdepth option

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

18 years ago* src/SDCCopt.c (convertToFcall): fixed modulus with divisors 1 and ffffffffu
bernhardheld [Tue, 23 Aug 2005 20:22:54 +0000 (20:22 +0000)]
* src/SDCCopt.c (convertToFcall): fixed modulus with divisors 1 and ffffffffu

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

18 years ago* as/mcs51/aslink.h: completed lkrloc.c prototypes
maartenbrock [Tue, 23 Aug 2005 18:59:52 +0000 (18:59 +0000)]
* as/mcs51/aslink.h: completed lkrloc.c prototypes
* as/mcs51/lkmain.c (link_main): fixed warning
* device/include/stdbool.h: ds390 has no advanced bit support yet
* src/SDCC.y: use SPEC_SHORT and renamed _signed to b_signed
* src/SDCCsymt.c: use SPEC_SHORT and renamed _signed to b_signed
* src/SDCCsymt.h (struct specifier): renamed _xxx bitfields to b_xxx
  and updated their macros
* src/SDCCval.c (constVal): updated comment for renamed b_long

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

18 years ago* as/mcs51/asdata.c: changed ctype['['] to BINOP
maartenbrock [Mon, 22 Aug 2005 21:00:12 +0000 (21:00 +0000)]
* as/mcs51/asdata.c: changed ctype['['] to BINOP
* as/mcs51/asexpr.c (expr): added case '[' for bit access in bdata,
  (term): abused bit 15 of s_addr to indicate bit-addressable bytes,
  (oprio): set priority for '['
* as/mcs51/aslink.h: added define R_BIT, and prototypes for adb_bit
   and adb_24_bit
* as/mcs51/asm.h: added defines R_BIT and S_BIT
* as/mcs51/lkarea.c (lnksect2): use T for seg BIT_BANK and overlay it
* as/mcs51/lkdata.c: changed ctype['['] to BINOP
* as/mcs51/lkmain.c (Areas51): rel2 contains 12 (=C) areas now,
  added overlayable BIT_BANK area
* as/mcs51/lkmem.c (summary): add BIT_BANK to BSEG_BYTES in the report,
  (summary2): explain 'T' in legenda
* as/mcs51/lkrloc.c: replaced old K&R style,
  (relr): added R_BIT processing,
  (errmsg): added "Bit-addressable relocation error",
  (adb_bit): added for converting from byte- to bit-addressable space,
  (adb_24_bit): added for converting from byte- to bit-addressable space
* device/include/stdbool.h: changed BOOL to __bit for mcs51 as it can be
   used in reentrant functions now even as return value
* device/lib/_gptrput.c (_gptrput): removed obsolete code
* src/SDCCast.c (resultTypePropagate): also propagate AND_OP and OR_OP,
  (decorateType): case '!', GETHBIT, AND_OP, OR_OP: result in bool or char
* src/SDCCglobl.h: added indicator BitBankUsed
* src/SDCCglue.c (glue): emit area BIT_BANK with byte 'bits' and equ's for
   the bit registers b0-b7
* src/SDCCicode.c (operandFromSymbol): removed IS_BITVAR check,
  (geniCodeCast): fixed bug 1263853,
  (geniCodeLogicAndOr): put result in bool or char,
  (geniCodeReceive): added parameter func for accessing the return type,
  (geniCodeFunctionBody): pass func to geniCodeReceive
* src/SDCCmain.c: added indicator BitBankUsed
* src/SDCCmem.c (allocLocal): explicitly set sclass for V_BIT
* src/SDCCsymt.c (newBoolLink): added for creating a bool/bit,
  (checkSClass): don't put automatic bool/bit on stack,
  (checkFunction): removed check on function cannot return bit
* src/SDCCsymt.h: added newBoolLink prototype
* src/mcs51/gen.c (rb1regs): added bit registers,
  (movc): created for assigning to carry,
  (pushReg, popReg): created for pushing registers,
  (sameRegs): check both AOP_REG and AOP_CRY types,
  (aopOp): handle bit registers,
  (aopPut): optimization no self-assign,
  (saveRegisters): push reg->base (bits) only once for bit registers,
   and use pushReg,
  (unsaveRegisters): pop reg->base only once and use popReg,
  (assignResultValue): added parameter func and return in carry for bits,
  (genIpush): optimization no reload in A if not changed,
  (genSend): bit parameters in reentrant functions are passed in bit
   registers by first assigning to bits in B, then save registers and
   copy B to bits,
  (genCall): handle returning in Carry properly, save it in F0 if needed,
  (genPcall): updated assignResultValue call, this is not safe yet for bit
   returning function !!!
  (genFunction): don't generate equ's for bit registers and use pushReg,
  (genEndFunction): take care of bit returning functions and use popReg,
  (genRet): return bit in Carry,
  (genIfx): optimize bit registers and other directly addressable bits,
  (genReceive): updated assignResultValue call
* src/mcs51/main.c (_mcs51_reset_regparm): added regBitParmFlg,
  (_mcs51_regparm): allow passing of upto 8 bit parameters in bit
   registers when using stack-auto
* src/mcs51/ralloc.c (_G): added allBitregs,
  (regs8051): added the bit registers,
  (createStackSpil): use macro IS_BIT,
  (getRegBit): added to allocate a bit register, else spill,
  (getRegBitNoSpil): added to allocate a bit register, else a gpr,
  (updateRegUsage): factored out to ease stepping while debugging,
  (serialRegAssign): use updateRegUsage, only spill bits if necessary,
   also allocate bit registers,
  (fillGaps): handle bit registers,
  (findAllBitregs): added to create bit vector with all bit registers,
  (mcs51_allBitregs): returns this bit vector,
  (mcs51_assignRegisters): when using stack-auto use bit registers for
   passing parameters and creating local variables
* src/mcs51/ralloc.h: added B0_IDX..B7_IDX and prototype mcs51_allBitregs

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

18 years ago* device/lib/Makefile.in: replaced find option -or with -o to make it run on solaris
borutr [Mon, 22 Aug 2005 18:47:44 +0000 (18:47 +0000)]
* device/lib/Makefile.in: replaced find option -or with -o to make it run on solaris

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

18 years agoreplaced find option -or with -o to make it run on solaris
borutr [Mon, 22 Aug 2005 18:38:58 +0000 (18:38 +0000)]
replaced find option -or with -o to make it run on solaris

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

18 years ago* src/pic16/gen.c (pic16_loadFromReturn): added check for AOP_PCODE,
tecodev [Mon, 22 Aug 2005 08:58:30 +0000 (08:58 +0000)]
* src/pic16/gen.c (pic16_loadFromReturn): added check for AOP_PCODE,
  fixes #1265442 (crash on Solaris)

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

18 years agogenerate support/regressiom/Makefile from support/regressiom/Makefile.in
sdcc-builder [Sat, 20 Aug 2005 20:16:40 +0000 (20:16 +0000)]
generate support/regressiom/Makefile from support/regressiom/Makefile.in

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

18 years ago* support/regression/Makefile: removed
borutr [Sat, 20 Aug 2005 20:12:13 +0000 (20:12 +0000)]
* support/regression/Makefile: removed

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

18 years ago* configure, configure.in: generate support/regression/Makefile
borutr [Sat, 20 Aug 2005 20:09:14 +0000 (20:09 +0000)]
* configure, configure.in: generate support/regression/Makefile
  from support/regression/Makefile.in
* support/regression/Makefile.in: added

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

18 years ago* device/lib/Makefile.in: cp on sparc-solaris (SunOS) does not support -u option
borutr [Sat, 20 Aug 2005 18:51:10 +0000 (18:51 +0000)]
* device/lib/Makefile.in: cp on sparc-solaris (SunOS) does not support -u option
* as/Makefile: find on sparc-solaris does not support -maxdepth option

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

18 years agocp on sparc-solaris (SunOS) does not support -u option
sdcc-builder [Sat, 20 Aug 2005 17:28:56 +0000 (17:28 +0000)]
cp on sparc-solaris (SunOS) does not support -u option

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

18 years ago* configure, configure.in: added tests for libsocket and libnsl libraries,
borutr [Sat, 20 Aug 2005 13:00:26 +0000 (13:00 +0000)]
* configure, configure.in: added tests for libsocket and libnsl libraries,
  requred by sdcdb on sparc-solaris
* device/lib/pic16/Makefile.common.in: force make to use bash shell
* sim/ucsim/libtool: regenerated on sparc-solaris
* sim/ucsim/avr.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in,
  sim/ucsim/s51.src/Makefile.in, sim/ucsim/xa.src/Makefile.in,
  sim/ucsim/z80.src/Makefile.in: removed GNU ld specific linker options
  -Wl,--start-group and -Wl,--end-group to enable ucsim compilation on
  sparc-solaris, which doesn't use GNU ld linker

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

18 years agoenable build on sparc-solaris
sdcc-builder [Sat, 20 Aug 2005 10:27:03 +0000 (10:27 +0000)]
enable build on sparc-solaris

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

18 years ago* src/mcs51/peeph.def: updated comments
maartenbrock [Fri, 19 Aug 2005 11:58:00 +0000 (11:58 +0000)]
* src/mcs51/peeph.def: updated comments

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

18 years agodevice/lib/_gptrget.c,
frief [Tue, 16 Aug 2005 20:59:28 +0000 (20:59 +0000)]
device/lib/_gptrget.c,
device/lib/_gptrput.c: slightly shorter
doc/sdccman.lyx: incremented version
src/mcs51/peeph.def: moved peephole comments to the line of first
change to better keep line correlation, reanimated 186.e src/mcs51/peeph.def: renamed similar peepholes by using suffixes

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

18 years agoslightly shorter
frief [Tue, 16 Aug 2005 20:57:50 +0000 (20:57 +0000)]
slightly shorter

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

18 years agoincremented version
frief [Tue, 16 Aug 2005 20:56:00 +0000 (20:56 +0000)]
incremented version

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

18 years agomoved peephole comments to the line of first change to better keep line correlation...
frief [Tue, 16 Aug 2005 20:54:30 +0000 (20:54 +0000)]
moved peephole comments to the line of first change to better keep line correlation, reanimated 186.e

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

18 years agorenamed similar peepholes by using suffixes
frief [Tue, 16 Aug 2005 20:53:15 +0000 (20:53 +0000)]
renamed similar peepholes by using suffixes

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

18 years agopic14 : Pasted ".line" assembly directives patch from David Saxton with quotes around...
slade_rich [Tue, 16 Aug 2005 00:37:19 +0000 (00:37 +0000)]
pic14 : Pasted ".line" assembly directives patch from David Saxton with quotes around file name.

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

18 years agoPasted ".line" assembly directives patch from David Saxton with quotes around file...
slade_rich [Tue, 16 Aug 2005 00:36:49 +0000 (00:36 +0000)]
Pasted ".line" assembly directives patch from David Saxton with quotes around file name.

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

18 years agomake tests run on x86_64 platform
borutr [Mon, 15 Aug 2005 19:12:29 +0000 (19:12 +0000)]
make tests run on x86_64 platform

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

18 years agomake tests run on x86_64 platform
borutr [Mon, 15 Aug 2005 19:05:50 +0000 (19:05 +0000)]
make tests run on x86_64 platform

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

18 years ago* device/lib/pic16/Makefile.subdir: weakened clean-intermediate rule
tecodev [Sat, 13 Aug 2005 14:28:20 +0000 (14:28 +0000)]
* device/lib/pic16/Makefile.subdir: weakened clean-intermediate rule
  as it might be executed DURING a build (parallel make is wonderful)

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

18 years ago* device/lib/Makefile.in (port-specific-objects-pic16):
tecodev [Sat, 13 Aug 2005 13:06:16 +0000 (13:06 +0000)]
* device/lib/Makefile.in (port-specific-objects-pic16):
  revert to cp $(PORT)/bin/*.* $(PORTDIR)
* device/lib/pic16/Makefile: added .PHONY targets, removed builddir
  dependency
* device/lib/pic16/Makefile.rules: build subdirs before creating
  the library, removed builddir rule, create $(builddir) early in
  recurse rule, use empty recurse rule for leaf directories
* device/lib/pic16/Makefile.subdir: added phony targets, ignore
  mkdir errors (race condition), removed duplicate suffix "hex"
  from clean rules
* device/lib/pic16/libdev/Makefile: recursive make via + and $(MAKE)
* device/lib/pic16/libio/Makefile: create sub-make's builddir early,
  prevents mkdir -p from aborting on Alpha

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

18 years ago* src/pic16/glue.c (pic16_print(G)PointerType): do not flush
tecodev [Fri, 12 Aug 2005 11:21:04 +0000 (11:21 +0000)]
* src/pic16/glue.c (pic16_print(G)PointerType): do not flush
  db-statements in order to allow for arrays of pointers in code
  sections to be placed without interspersed 0-padding, fixes
  bug #1256215
* (emitStatistics): fixed division by zero for pic18f1220
* src/pic16/pcode.c: buffer (up to) 12 DB directives to allow for
  unpadded writing of 8-bit, 16-bit, 24-bit and 32-bit values
* (pic16_emitDS): respect DB_ITEMS_PER_LINE
* (pic16_pCodeConstString): keep track of already emitted string
  literals to prevent "duplicate definitions of symbol _str_NR"
* src/pic16/ralloc.c (pic16_allocRegByName): removed not so helpful
  debug message
* device/lib/Makefile.in: ignore failing PIC16 library builds
* device/lib/pic16/Makefile: do not build if gputils are missing
* device/lib/pic16/Makefile.common.in: do not enforce MAKEFLAGS=-s

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

18 years ago* device/lib/Makefile.in: fixed copying pic16 libraries (broken by
tecodev [Wed, 10 Aug 2005 11:32:44 +0000 (11:32 +0000)]
* device/lib/Makefile.in: fixed copying pic16 libraries (broken by
  my last commit)

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

18 years ago* src/*.c, src/pic16/{gen.c,glue.c,main.c}: applied Vangelis
tecodev [Wed, 10 Aug 2005 10:53:34 +0000 (10:53 +0000)]
* src/*.c, src/pic16/{gen.c,glue.c,main.c}: applied Vangelis
  Rokas' patch to add the new fixed point type "__fixed16x16"
* device/lib/pic16/libsdcc/fixed16x16: added Vangelis' support
  functions for __fixed16x16 arithmetics
* device/lib/pic16: reimplemented the build system to support
  a separate build directory, better handling of libio (create
  the library in a separate subdir for each architecture) and
  easier configuration (centralized in Makefile.common)

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

18 years ago* src/pic16/gen.c (genrshTwo): fixed sign extension
tecodev [Sun, 7 Aug 2005 20:09:11 +0000 (20:09 +0000)]
* src/pic16/gen.c (genrshTwo): fixed sign extension
* src/pic16/device.c: added pic18f2320, 4220 and 4320
* device/include/pic16/pic18f2220.h: changed some bit definitions,
  added T0CONbits
* device/include/pic16/pic18f4220.h: NEW, header for
  pic18f4220 and pic18f4320
* device/include/pic16/pic18fregs.h: added new devices,
  embraced Nop(), ClrWdt(), Sleep() and Reset() with do {} while(0)
* device/include/pic16/signal.h: resolved name clashes
  on bit definitions, added DEF_HANDLER2(sig1,sig2,handler)
  to also allow testing for interrupt enable bits, added
  comments on how to use the macros
* device/lib/pic16/libdev/pic18f2220.c: added T0CONbits
* device/lib/pic16/libdev/pic18f{2320,4220,4320}.c: NEW,
  register definitions for the devices
* device/lib/pic16/pics.all: added new devices
* device/lib/pic16/libc/stdlib/calloc.c: fixed zeroing
  allocated memory
* device/lib/pic16/libc/stdlib/memfree: do not count
  the block header as free memory
* device/lib/pic16/libc/stdlib/memmisc.c (_initHeap):
  simplified and added missing end-of-blocklist-marker
  (reported by Peter Onion, fixes #1252814)
* (_mergeHeapBlock): fixed loop condition
* device/lib/pic16/libc/stdlib/realloc.c: return NULL for
  len==0, restructured code
* device/lib/pic16/libc/stdlib/{malloc,memfreemax}.c: cleaned
  up a bit, reduced bitfield accesses, prevent endless loops
  in case of heap corruption
* device/lib/pic16/libc/stdlib/x_ftoa.c: disabled
  "unreferenced arguments/must return a value" warnings
* device/lib/pic16/libio/usart/ubaud.c (usart_baud):
  replaced BAUDREG with SPBRG
* device/lib/pic16/libsdcc/lregs/{lrrest.c,lrst.c},
  device/lib/pic16/debug/gstack/gstack.c: replaced
  _naked, _asm, _endasm with __naked, __asm, __endasm

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

18 years ago* support/scripts/sdcc.nsi: added lib/pic16 to the package
borutr [Fri, 5 Aug 2005 19:01:35 +0000 (19:01 +0000)]
* support/scripts/sdcc.nsi: added lib/pic16 to the package

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

18 years ago* device/lib/Makefile.in: added missing ';'
borutr [Fri, 5 Aug 2005 11:51:20 +0000 (11:51 +0000)]
* device/lib/Makefile.in: added missing ';'
* configure: removed ^M characters

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

18 years ago* src/pic16/gen.c (pic16_aopGet): fixed handling of offsets in
tecodev [Fri, 5 Aug 2005 09:29:01 +0000 (09:29 +0000)]
* src/pic16/gen.c (pic16_aopGet): fixed handling of offsets in
  AOP_PCODE operands, fixes multibyte union-bitfield-accesses

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

18 years ago* configure: removed ^M characters
borutr [Fri, 5 Aug 2005 06:54:28 +0000 (06:54 +0000)]
* configure: removed ^M characters

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

18 years ago* device/lib/Makefile.in: added missing ';'
borutr [Fri, 5 Aug 2005 06:52:46 +0000 (06:52 +0000)]
* device/lib/Makefile.in: added missing ';'

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

18 years agoat89c51ed2.h, p89v51rd2.h, at89s53.h: GNU Lesser License
jesusc [Thu, 4 Aug 2005 15:04:17 +0000 (15:04 +0000)]
at89c51ed2.h, p89v51rd2.h, at89s53.h:  GNU Lesser License

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

18 years ago* configure.in: pic16 libraries build 2nd try - enable running
borutr [Thu, 4 Aug 2005 09:47:07 +0000 (09:47 +0000)]
* configure.in: pic16 libraries build 2nd try - enable running
  configure in device/lib/pic16
* configure: regenerated from configure.in
* device/lib/Makefile.in: create $(PORT)/bin directory

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

18 years ago* configure.in: pic16 libraries build 2nd try - enable running
borutr [Thu, 4 Aug 2005 09:19:18 +0000 (09:19 +0000)]
* configure.in: pic16 libraries build 2nd try - enable running
  configure in device/lib/pic16
* configure: regenerated from configure.in

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

18 years agoLicense -> GNU Lesser General License
bela [Thu, 4 Aug 2005 05:58:30 +0000 (05:58 +0000)]
License -> GNU Lesser General License

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

18 years ago* src/pic16/gen.c (pic16_derefPtr): NEW, single place
tecodev [Wed, 3 Aug 2005 12:00:24 +0000 (12:00 +0000)]
* src/pic16/gen.c (pic16_derefPtr): NEW, single place
  to get/set values via pointers
* (genUnpackBits,genPackBits): changed detection of
  ptr->bitfield vs. sym.bitfield, fixed access via generic
  pointers, removed dead (wrong) code for multibyte bitfields
* (genNearPointerGet, genGenPointerGet): removed useless code,
  fixed bitfield detection, fixes #1250594
* (genNearPointerSet): removed useless code
* src/pic16/gen.h: renamed pic16_emitpcode to pic16_emitpcode_real
  and introduced macro pic16_emitpcode that conditionally emits
  the origin of the following pCode (useful for debugging SDCC)
* src/pic16/pcode.c: changed (and disabled) some debug outputs
* (createDefmap): fixed handling of LFSR for --optimize-df

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

18 years agoLicense -> GNU Lesser General License
bela [Wed, 3 Aug 2005 09:42:35 +0000 (09:42 +0000)]
License -> GNU Lesser General License

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

18 years ago* device/lib/Makefile.in: pic16 libraries build enabled since
borutr [Tue, 2 Aug 2005 20:06:00 +0000 (20:06 +0000)]
* device/lib/Makefile.in: pic16 libraries build enabled since
  gputils-0.13.2 are now localy installed at sourceforge's compile farm

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

18 years ago* src/pic16/gen.c (genPackBits): removed deprecated warning
tecodev [Tue, 2 Aug 2005 17:17:04 +0000 (17:17 +0000)]
* src/pic16/gen.c (genPackBits): removed deprecated warning
* (genGenPointerSet): fixed bitfield detection

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

18 years agodevice/include/mcs51/msm8xc154s.h: Removed PT2 definition, now in 8052.h
jesusc [Tue, 2 Aug 2005 07:16:26 +0000 (07:16 +0000)]
device/include/mcs51/msm8xc154s.h: Removed PT2 definition, now in 8052.h

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

18 years agono message
jesusc [Tue, 2 Aug 2005 07:13:10 +0000 (07:13 +0000)]
no message

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

18 years agomissing definition PT added
bela [Tue, 2 Aug 2005 06:11:58 +0000 (06:11 +0000)]
missing definition PT added

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

18 years ago* device/lib/pic16/libdev/pic18f458.c,
tecodev [Sun, 31 Jul 2005 08:51:38 +0000 (08:51 +0000)]
* device/lib/pic16/libdev/pic18f458.c,
  device/include/pic16/pic18f458.h: added missing T0CONbits

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

18 years agoAdded missing bits.
jesusc [Sat, 30 Jul 2005 07:07:08 +0000 (07:07 +0000)]
Added missing bits.

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

18 years ago* device/include/mcs51/msm8xc154s.h: added, thanks to Matthias Arndt
maartenbrock [Fri, 29 Jul 2005 19:38:11 +0000 (19:38 +0000)]
* device/include/mcs51/msm8xc154s.h: added, thanks to Matthias Arndt

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

18 years ago* src/mcs51/gen.c (operandsEqu): fixed bug 1246687
maartenbrock [Thu, 28 Jul 2005 12:16:52 +0000 (12:16 +0000)]
* src/mcs51/gen.c (operandsEqu): fixed bug 1246687

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

18 years agodevice/include/mcs51/at89c51ed2.h: added.
jesusc [Sun, 24 Jul 2005 02:02:52 +0000 (02:02 +0000)]
device/include/mcs51/at89c51ed2.h: added.

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

18 years ago* src/pic/gen.h: added emitpcode macro for debugging
tecodev [Sat, 23 Jul 2005 17:22:21 +0000 (17:22 +0000)]
* src/pic/gen.h: added emitpcode macro for debugging
* src/pic/gen.c (emitpcode): renamed to emitpcode_real
  and replace by macro adding debug information on demand
* (genNot): fixed to C semantics (!0 = 1; !x = 0 iff x != 0)
* (gencjne): tried to fix; replaced with correct (slower) code
* (gen{Unp,P}ackBits): fixed single bit access
* src/pic/pcode.c (AnalyzepCode): fixed DFPRINTF argument
* src/pic/pcodepeep.c (pCodeSearchCondition): fixed finding
  previous instruction
* src/pic/pcoderegs.c (regIsSpecial): NEW, check whether a
  register has to be handled with care (forbidding movement
  of assignments/uses, removing assignments completely, ...)
* (pCodeOptime2pCodes): make use of regIsSpecial
* added lots of debugging output (commented out)
* src/pic/rallloc.c (deassignLRs): prevent operand registers
  from being reused as result UNLESS it is known to work

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

18 years ago* support/Util/dbuf.h: include <stddef.h> for size_t
maartenbrock [Sat, 23 Jul 2005 11:11:17 +0000 (11:11 +0000)]
* support/Util/dbuf.h: include <stddef.h> for size_t
* .version: changed to version 2.5.2

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

18 years ago* src/SDCCloop.c (loopInvariants): fixed bug #1234048
epetrich [Sat, 23 Jul 2005 03:31:19 +0000 (03:31 +0000)]
* src/SDCCloop.c (loopInvariants): fixed bug #1234048

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

18 years ago* src/hc08/gen.c (genMinus): fixed bug #1241835,
epetrich [Fri, 22 Jul 2005 22:12:41 +0000 (22:12 +0000)]
* src/hc08/gen.c (genMinus): fixed bug #1241835,
  (genModOneByte): removed needless psha/pula

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

18 years ago* src/SDCCmain.c (linkEdit): initialized linkerScriptFileName,
tecodev [Fri, 22 Jul 2005 21:17:53 +0000 (21:17 +0000)]
* src/SDCCmain.c (linkEdit): initialized linkerScriptFileName,
  have PIC14 handled like PIC16, fixes broken pic14 linker calls
* src/pic/gen.c (resolveIfx): do not "invent" labels
* (genSkipc): changed to positive logic
* (genSkipCond): removed as no longer needed
* (pic14_mov2w_regOrLit,genCmp): NEW, replacement for buggy version,
  backport from PIC16
* (genLeftShift): check operands are in different registers
* src/pic/genarith.c (genPlus): replaced INCF with ADDLW as
  INCF does not update CARRY...
* src/pic/main.c: fixed _linkCmd
* src/pic/pcode.c (unlinkpCode): added inactive code
* src/pic/ralloc.c (deassignLRs): keep arguments to shift operations
  alive (do not assign result and operand overlapping registers)

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

18 years ago* src/pic/device.c (dump_sfr): replaced register declaration with
tecodev [Fri, 22 Jul 2005 16:04:56 +0000 (16:04 +0000)]
* src/pic/device.c (dump_sfr): replaced register declaration with
  call to emitSymbolToFile() to avoid duplicate symbols
* (assignRelocatableRegisters): do not declare external symbols
* src/pic/ralloc.c (allocNewDirReg): fixed to get size of arrays
  right (take size of type, not etype)
* (allocDirReg): fixed call to allocNewDirReg() to pass OP_SYM_TYPE
* (writeUsedRegs): also dump dynDirectRegs (e.g. local variables)
* (packRegsForAccUse): disabled assignment of WREG as
  the result reg to prevent occurence of just fixed #1235003,
  fixes #1242954
* src/pic/glue.c (emitSymbolToFile): NEW, central place to declare
  symbols (avoids duplicate symbols in .asm file)
* (pic14emitRegularMap): use emitSymbolToFile()
* src/pic/gen.c (aopOp): fixed spillLocation handling
* (gen{Unp,P}ackBits): fixed acquiring bit-operands
* (genDataPointerSet): removed unneccessary variables/output

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

18 years ago* as/mcs51/lkarea.c: enlarged codemap for banked memory
maartenbrock [Fri, 22 Jul 2005 10:15:23 +0000 (10:15 +0000)]
* as/mcs51/lkarea.c: enlarged codemap for banked memory
* device/lib/mcs51/crtbank.asm: added # to 0x0F

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

18 years ago* src/pic/gen.c (aopOp): do not generate AOP_ACC operands as pic14
tecodev [Thu, 21 Jul 2005 17:39:06 +0000 (17:39 +0000)]
* src/pic/gen.c (aopOp): do not generate AOP_ACC operands as pic14
  architecture cannot handle them efficiently, fixes bug #1235003
* src/pic16/device.c (pic16_dump_{u,i}section,pic16_dump_int_registers):
  check for empty sets before using them (fixes bug #1232190)

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

18 years ago* as/mcs51/lkarea.c (lnkarea, lnkarea2): improved BSEG size calculation,
maartenbrock [Tue, 19 Jul 2005 17:26:34 +0000 (17:26 +0000)]
* as/mcs51/lkarea.c (lnkarea, lnkarea2): improved BSEG size calculation,
  (lnksect2): generate warnings for memory overlap
* src/SDCC.lex (doPragma, process_pragma): added pragma's codeseg and
  constseg to set the name of these segments so you can instruct the linker
  to place them in banks
* src/SDCCast.c (decorateType): use new macro IS_FUNCPTR()
* src/SDCCglobl.h: added MODEL_HUGE to enum,
  added code_seg and const_seg to options
* src/SDCCglue.c (emitMaps): use options.const_seg,
  (createInterruptVect): put interrupt vectors in segment HOME,
  (glue): put HOME before static segment and put the main glue in HOME,
  (glue): use options.code_seg
* src/SDCCicode.c (geniCodeCall): use new macro IS_FUNCPTR()
* src/SDCCmain.c: added option --codeseg and --constseg to set the name of
  these segments so you can instruct the linker to place them in banks
  (linkEdit): use code_loc for HOME segment which should be the first
  segment in code memory now
* src/SDCCmem.c: fixed more stuff like bug 1238386
* src/SDCCsymt.c (getSize): use generic pointer size for banked functions,
  (changePointer): don't change function pointers to code pointers for
  banked functions,
  (compareType): added exceptional check for banked function pointers
* src/SDCCsymt.h: changed IFFUNC_ISBANKEDCALL, added IS_FUNCPTR
* src/hc08/main.c (_hc08_genAssemblerPreamble): put HOME first, put CSEG
  after static in code memory
* src/mcs51/gen.c: added aopLiteralLong prototype,
  (aopForSym): use getSize for functions,
  (genCall): generate banked calls over one trampoline __sdcc_banked_call
  in HOME with lsb of address in r0, msb in r1 and bank in r2, use
  -Wl-bBANKSEG=0xbbaaaa option to set the address (aaaa) and bank (bb) of
  the segment,
  (genPcall): use call for literal function pointers and generate banked
  calls over the one trampoline so there's only one place for the user to
  modify according to his/hers hardware,
  (genEndFunction): jump to __sdcc_banked_ret in HOME for banked functions,
  (genPlusIncr): moved check icount>4 beyond inc dptr optimization
* src/mcs51/main.c: added keyword banked,
  (_mcs51_genExtraAreas): put HOME first followed by GSINIT, STATIC and CSEG
* support/Util/SDCCerr.c,
* support/Util/SDCCerr.h: added E_BANKED_WITH_CALLEESAVES, registers are
  needed for passing the bank and address to the trampoline
* device/lib/mcs51/crtbank.asm: added for bankswitching
* device/lib/mcs51/Makefile: added crtbank

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

18 years ago* src/SDCCcse.c (algebraicOpts): fixed loss of volatility
epetrich [Sat, 16 Jul 2005 03:36:25 +0000 (03:36 +0000)]
* src/SDCCcse.c (algebraicOpts): fixed loss of volatility
  for fields at offset 0 of a struct or union as reported
  on 2005-07-07 in the developer mailing list.

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

18 years ago* src/SDCCmem.c: fixed bug 1238386
maartenbrock [Fri, 15 Jul 2005 19:09:39 +0000 (19:09 +0000)]
* src/SDCCmem.c: fixed bug 1238386

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

18 years agosrc/mcs51/peeph.def: added labelrefcounting for peepholes (patch #1144962), added...
frief [Tue, 12 Jul 2005 21:22:26 +0000 (21:22 +0000)]
src/mcs51/peeph.def: added labelrefcounting for peepholes (patch #1144962), added peephole 300, enabled 259.x

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

18 years agodoc/sdccman.lyx: removed screenshot and provided link instead
frief [Tue, 12 Jul 2005 17:46:06 +0000 (17:46 +0000)]
doc/sdccman.lyx: removed screenshot and provided link instead

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

18 years agoremoved screenshot and provided link instead.
frief [Tue, 12 Jul 2005 17:44:51 +0000 (17:44 +0000)]
removed screenshot and provided link instead.

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

18 years agoAdded missing T2MOD sfr
jesusc [Fri, 8 Jul 2005 16:34:33 +0000 (16:34 +0000)]
Added missing T2MOD sfr

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

18 years agodoc/sdccman.lyx: added section about debugging with ddd
frief [Tue, 5 Jul 2005 19:26:13 +0000 (19:26 +0000)]
doc/sdccman.lyx: added section about debugging with ddd
doc/figures/ddd_example.eps: screenshot of debugging session

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

18 years agoadded section about debugging with ddd
frief [Tue, 5 Jul 2005 19:24:48 +0000 (19:24 +0000)]
added section about debugging with ddd

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

18 years agoscreenshot of debugging session
frief [Tue, 5 Jul 2005 19:23:47 +0000 (19:23 +0000)]
screenshot of debugging session

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

18 years ago* src/pic/gen.c (genPointerGet): handle pointers to CONST values
tecodev [Mon, 4 Jul 2005 15:31:05 +0000 (15:31 +0000)]
* src/pic/gen.c (genPointerGet): handle pointers to CONST values
  like CODE pointers, fixes #1115683
* src/pic/pcode.c (DoBankSelect): forget LastRegIdx during function
  call, fixes bugs #1232211, #1228110,
  fixed wrong casts to pCodeFlow from pCodeInstructions

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

18 years ago* src/pic/gen.c (popGet): changed assert to allow for
tecodev [Mon, 4 Jul 2005 10:48:49 +0000 (10:48 +0000)]
* src/pic/gen.c (popGet): changed assert to allow for
  bit operands
* (popGetAddr): changed signature to provide
  an additional index, patched all call sites
* (genCmpEq): handle literal-like operands correctly
* (genAddrOf): added sanity checks on __code/__data pointers
* (genAssign): added handling of symbols from __code section
* (gencjne): do not generate code for comparisons whose result
  is neither stored nor used, fixes bug #1171114
* (AccLsh, AccRsh): operate on operand instead of WREG
* (shift{Left,Right}_Left2ResultLit): NEW, size independant
  replacement for Shift{LR}{12}Left2Result; shift (byte/int/long)
  by known count
* rewrote complete shift-by-literal logic, commented unused
  functions out
* (genConstPointerGet): get multiple bytes (if result size > 1),
  fixed handling of non-immediate addresses
* (genPointerGet): handle CODE pointers like CONST pointers
* (genpic14Code): insert C-SRC lines as Cource-pCodes
* ({aop,op}_isLitLike): NEW, single place to decide whether an
  operand is to be treated as a literal or not
* (mov2w,genPcall,genCmpEq),
  src/pic/genarith.c: use aop_isLitLike() to decide between
  literal/register contents
* (addSign): added missing offset
* src/pic/gen.h: remove newline after FENTRY/FEXIT comments,
  only emit comment in debug-mode,
  use {aop,op}_isLitLike throughout the file
* src/pic/glue.c: fix initializers for pointers (work in progress)
* src/pic/pcode.c (get_op): honor index on _const symbols
* ({reset,dump}pCodeStatistics): NEW, estimate code size
* (dumppBlock): added pCode size estimation
* src/pic/ralloc.c (deassignLRs,serialRegAssign,packRegisters):
  check for IS_SYMOP before OP_SYMBOL'ing
* fixed indentation, compacted switch-statements
* (allocReg): find free register and allocate it instead of
  allocating new registers all the time
* (deassignLRs): prevent POINTER_GET's from being assigned the same
  registers as its operands (necessary only for multibyte GETs)

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

18 years ago* src/pic/gen.h: added prototypes emitpComment, popGetAddr and
tecodev [Fri, 1 Jul 2005 02:06:44 +0000 (02:06 +0000)]
* src/pic/gen.h: added prototypes emitpComment, popGetAddr and
  debugging .asm-output macros FENRY + FEXIT
* src/pic/gen.c (Safe_vsnprintf): NEW, is there a more generic
  way... I wonder...
* (emitpComment): NEW, printf to pCode
* (popGet): added assert on too large offsets, fixed PO_IMMEDIATE's
  offset handling
* (popGetAddr): NEW, variant of popGet to access an immediates
  high(er) bytes instead of the n'th byte of memory they reference,
  replaced popGet with popGetAddr where neccessary
* (genDataPointerGet): reactivated and fixed implementation
* (genNearPointerGet): enabled call to genDataPointerGet, fixes array-
  accesses
* (genDataPointerSet): fixed multibyte assignments
* (genpic14Code): fixed --i-code-in-asm handling
* src/pic/genarith.c: fixed PO_IMMEDIATE issue using popGetAddr,
* (genPlus): fixed index-out-of-bounds error
* src/pic/pcode.c (get_op): fixed PO_IMMEDIATE's index/offset handling
* src/pic/ralloc.c: added debugging output macro FENTRY2
* (spillThis): fixed indentation, enbraced for-body for clarity
* (rematStr): commented out as now unused
* (regTypeNum): commented out special spill case (overwrites
  arbitrary values)
* fixes bugs #1229346, #1216476 (both arrays) and #1115667 (SIGSEGV)

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

18 years ago* doc/sdccman.lyx: documented sfr16/sfr32,
maartenbrock [Thu, 30 Jun 2005 18:03:33 +0000 (18:03 +0000)]
* doc/sdccman.lyx: documented sfr16/sfr32,
  added example for using storage class with function pointers
* src/mcs51/gen.c (genPlusIncr): optimized small offsets from dptr

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

18 years ago* device/lib/_gptrget.c: also push/pop _PSBANK, added # to 0x03
maartenbrock [Tue, 28 Jun 2005 20:34:12 +0000 (20:34 +0000)]
* device/lib/_gptrget.c: also push/pop _PSBANK, added # to 0x03
* device/lib/_itoa.c,
* device/lib/_ltoa.c: optimized codesize
* src/SDCCsymt.c (checkSClass): added sanity check for sfr at addresses,
  but don't know how to suppress the double warning.
* src/mcs51/gen.c (genPlusIncr): fixed bug when incrementing volatile int's
* support/Util/SDCCerr.c,
* support/Util/SDCCerr.h: added warning W_SFR_ABSRANGE for sanity check

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

18 years ago* as/mcs51/asexpr.c (expr): disabled warning "not in .flat24 mode",
maartenbrock [Mon, 27 Jun 2005 06:03:52 +0000 (06:03 +0000)]
* as/mcs51/asexpr.c (expr): disabled warning "not in .flat24 mode",
  fixed old K&R prototypes
* as/mcs51/asout.c (outrb): always output as if generating 24bit addresses
* device/lib/_gptrget.c,
* device/lib/_gptrgetc.c,
* device/lib/_gptrput.c: changed versions for new memory indicator values,
  also new versions for small generic pointers and banked generic pointers
* src/port.h: added const_name
* src/SDCC.lex: added keywords sfr16, __sfr16, sfr32, __sfr32
* src/SDCC.y: added tokens SFR16, SFR32 and their sfr_attributes
* src/SDCCcse.c (findPrevIc): check all associative operators
* src/SDCCglue.c (emitMaps): use CONST_NAME if defined
* src/SDCCicode.h: added macro IS_ASSOCIATIVE
* src/SDCCmem.c: updated comments,
  set far-space to 0 for pdata, results in optimized code
* src/SDCCmem.h: added macro CONST_NAME
* src/SDCCsymt.h: renumerated generic pointer types GPTYPE_... thereby
  moving the info into the highest bits, see also gptrget/gptrput
* src/src.dsp: added sdcc.ico to project files
* src/avr/gen.c (genCast): fixed bug 0x%d
* src/avr/main.c (avr_port): added "CONST (CODE)" for const_name
* src/ds390/gen.c (aopForRemat, adjustArithmeticResult): disconnected direct
  relation between ptr_type and DCL_TYPE,
  (genCast): fixed bug 0x%d
* src/ds390/main.c (ds390_port, tininative_port, ds400_port): added "CONST
  (CODE)" for const_name
* src/hc08/gen.c (genCast): fixed bug 0x%d
* src/hc08/main.c (_hc08_genAssemblerPreamble): added .area ...const_name,
  (hc08_port): added "CONST (CODE)" for const_name
* src/mcs51/gen.c (aopForSym): optimized pushing ACC,
  (aopForRemat, adjustArithmeticResult): disconnected direct relation
  between ptr_type and DCL_TYPE,
  (aopGetUsesAcc, aopGet, aopPut): changed first parameter from asmop* to
  operand* and took AOP() inside function so sfr-ness can be checked,
  (all over): repaired calls to aopGetUsesAcc, aopGet, aopPut to comply with
  new prototype,
  (genFunction, genEndFunction): optimized stack setup,
  (genMinus): optimized for literals with ending zeroes (in bytes),
  (genCast): fixed bug 0x%d
* src/mcs51/main.c (_mcs51_keywords): added sfr16 and sfr32,
  (mcs51_port): added "CONST (CODE)" for const_name
* src/mcs51/peeph.def: made rule 226 more generic
* src/pic/main.c (pic_port): added "CONST (CODE)" for const_name
* src/pic16/main.c (pic16_port): added "CONST (CODE)" for const_name
* src/xa51/main.c (xa51_port): added "CONST (CODE)" for const_name
* src/z80/main.c (z80_port): added NULL for const_name,
  (gbz80_port): added NULL for const_name
* support/regression/tests/bug663539.c,
* support/regression/tests/sfr16.c: new tests

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

18 years agoFixed typo: device/include/mcs51/p89v51rd2.h, device/include/mcs51/at89s53.h: added.
jesusc [Sat, 25 Jun 2005 10:20:54 +0000 (10:20 +0000)]
Fixed typo: device/include/mcs51/p89v51rd2.h, device/include/mcs51/at89s53.h: added.

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

18 years agodevice/lib/mcs51/p89v51rd2.h, device/lib/mcs51/at89s53.h: added
jesusc [Sat, 25 Jun 2005 10:17:21 +0000 (10:17 +0000)]
device/lib/mcs51/p89v51rd2.h, device/lib/mcs51/at89s53.h: added

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

18 years ago* device/lib/pic16/libdev/pic18f[68][567]20.c:
tecodev [Fri, 24 Jun 2005 15:59:33 +0000 (15:59 +0000)]
* device/lib/pic16/libdev/pic18f[68][567]20.c:
  corrected typos...
* device/include/pic16/signal.h: added USBIF
  and SIG_USB

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

18 years ago* device/lib/pic16/libdev/pic18f2455.c,
tecodev [Fri, 24 Jun 2005 14:19:36 +0000 (14:19 +0000)]
* device/lib/pic16/libdev/pic18f2455.c,
  device/include/pic16/pic18f2455.h: NEW
* device/include/pic16/pic18fregs.h,
  device/lib/pic16/pics.all,
  src/pic/device.c: added 18f2455
* device/lib/pic16/libdev/pic18f[68][567]20.c,
  device/include/pic16/{pic18f[68][567].h,usart.h}:
  replaced MULTIPLE_USARTS define with more relaible
  compatibility sfrs (for USART access)

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

18 years agoPIC14: Fixed problem when a string constant contains a "\\r\\n" and the output asm...
slade_rich [Mon, 20 Jun 2005 01:43:04 +0000 (01:43 +0000)]
PIC14: Fixed problem when a string constant contains a "\\r\\n" and the output asm file line is printed on two lines.

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

18 years agoFixed problem when a string constant contains a "\\r\\n" and the output asm file...
slade_rich [Mon, 20 Jun 2005 01:42:03 +0000 (01:42 +0000)]
Fixed problem when a string constant contains a "\\r\\n" and the output asm file line is printed on two lines.

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

18 years ago* sim/ucsim/hc08.src/inst.cc (inst_condbranch): fixed simulation of
epetrich [Sat, 18 Jun 2005 23:56:01 +0000 (23:56 +0000)]
* sim/ucsim/hc08.src/inst.cc (inst_condbranch): fixed simulation of
  BGT, BLE, BHI, and BLS instructions
* src/hc08/gen.c (outAcc, outBitC, outBitNV, genCmpLt, genCmpGt,
  genCmpEq): removed
* src/hc08/gen.c (genCmpEQorNE, genCmp, branchopCmp, nameCmp,
  negatedCmp, exchangedCmp, genhc08Code): rewrite of comparison handling,
  fixes bug #1216342
* src/hc08/peeph.def: added rules 2g - 2l for new conditional branches

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

18 years ago* src/pic16/NOTES: moved Vangelis from active developers to people to contact
tecodev [Wed, 15 Jun 2005 19:50:54 +0000 (19:50 +0000)]
* src/pic16/NOTES: moved Vangelis from active developers to people to contact
* device/include/pic16/{6520.h,8520.h}: fixed configuration bits
* src/pic16/gen.c (): prevent iTemps from being considered to be in CODESPACE,
  fixes bug #1221120; for symbols in CODESPACE get number of bytes to read from
  OP_SYM_TYPE() instead of OP_SYM_ETYPE()

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

18 years agodevice/include/mcs51/reg764.h: Changed PB0 to PBO as requested by Marcel Telka in...
frief [Mon, 6 Jun 2005 17:57:38 +0000 (17:57 +0000)]
device/include/mcs51/reg764.h: Changed PB0 to PBO as requested by Marcel Telka in bug #1215704

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

18 years agoChanged PB0 to PBO as requested by Marcel Telka in bug #1215704
frief [Mon, 6 Jun 2005 17:56:08 +0000 (17:56 +0000)]
Changed PB0 to PBO as requested by Marcel Telka in bug #1215704

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

18 years agoPIC14: Changed pseudo stack size to 15 to allow WSAVE to be located in shared memory...
slade_rich [Thu, 2 Jun 2005 03:09:45 +0000 (03:09 +0000)]
PIC14: Changed pseudo stack size to 15 to allow WSAVE to be located in shared memory bank.

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

18 years agoChanged pseudo stack size to 15 to allow WSAVE to be located in shared memory bank.
slade_rich [Thu, 2 Jun 2005 03:08:03 +0000 (03:08 +0000)]
Changed pseudo stack size to 15 to allow WSAVE to be located in shared memory bank.

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

18 years ago* src/pic16/{gen.c,genarith.c}: replaced sign-extension
tecodev [Tue, 31 May 2005 08:51:23 +0000 (08:51 +0000)]
* src/pic16/{gen.c,genarith.c}: replaced sign-extension
  "CLRF, BTFSC <signbit>, DECF/COMF" with side-effect-free
  "CLRF, BTFSC <signbit>, SETF"; fixes "long>>9"

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

18 years ago* device/lib/_strncpy.c: fixed the fix
maartenbrock [Fri, 27 May 2005 07:33:47 +0000 (07:33 +0000)]
* device/lib/_strncpy.c: fixed the fix

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

18 years ago* src/pic16/glue.c (pic16_printIvalChar): fixed _constant_ string
tecodev [Thu, 26 May 2005 21:52:37 +0000 (21:52 +0000)]
* src/pic16/glue.c (pic16_printIvalChar): fixed _constant_ string
  initializers with \0, bug #1208187
* src/pic/glue.c (printIvalChar): fixed (non- and constant) string
  intializers with \0, bug #1208187

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

18 years ago* src/pic16/glue.c (pic16_printIvalChar): fixed string
tecodev [Thu, 26 May 2005 15:25:48 +0000 (15:25 +0000)]
* src/pic16/glue.c (pic16_printIvalChar): fixed string
  initializers with \0, bug #1208187
* src/pic16/main.c (_process_pragma): added sanity checks
  for stack position and size, emit warnings when appropriate

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

18 years ago* device/lib/_strncpy.c: fixed not filling with \0
maartenbrock [Thu, 26 May 2005 08:29:18 +0000 (08:29 +0000)]
* device/lib/_strncpy.c: fixed not filling with \0

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

18 years ago* src/SDCCast.c (funcOfType, funcOfTypeVarg, stringToSymbol,
epetrich [Thu, 26 May 2005 01:25:09 +0000 (01:25 +0000)]
* src/SDCCast.c (funcOfType, funcOfTypeVarg, stringToSymbol,
  createFunction),
* src/SDCC.y (external_definition, enumerator, parameter_declaration,
  compound_statement),
* src/SDCCsymt.h,
* src/SDCCsymt.c (addSymChain, processFuncArgs): fixed bug #1159134

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

18 years ago* src/pic16/glue.c (pic16_printGPointerType): fixed #1207796
tecodev [Tue, 24 May 2005 16:06:27 +0000 (16:06 +0000)]
* src/pic16/glue.c (pic16_printGPointerType): fixed #1207796

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

18 years ago* device/include/pic16/pic18f{442,452,458}.h: fixed wrong
tecodev [Tue, 24 May 2005 11:22:24 +0000 (11:22 +0000)]
* device/include/pic16/pic18f{442,452,458}.h: fixed wrong
  TRISE definitions, closes bug #1162453

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

18 years ago* src/pic16/main.c (_process_pragma): check for missing
tecodev [Sun, 22 May 2005 12:39:39 +0000 (12:39 +0000)]
* src/pic16/main.c (_process_pragma): check for missing
  arguments to pragmas code and udata
* device/include/pic16/pic18f{2550,4331,4455,4520}.h:
  consistency fixes to match other headers (thanks to Jim Paris)
* device/lib/pic16/libio/i2c.ignore: 18f4331 provides no I2C

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

18 years ago* src/SDCCicode.c (isOperandEqual): fixed missing ;
maartenbrock [Sat, 21 May 2005 17:03:56 +0000 (17:03 +0000)]
* src/SDCCicode.c (isOperandEqual): fixed missing ;

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

18 years ago* support/regression/tests/bug1198642.c: new test
maartenbrock [Thu, 19 May 2005 15:25:23 +0000 (15:25 +0000)]
* support/regression/tests/bug1198642.c: new test
* src/SDCCicode.c (isOperandEqual): fixed bug 1198642
* src/SDCCcse.c (findPrevIc): added comment, please have a look
* support/scripts/resource.h,
* support/scripts/resource.rc,
* src/src.dsp: added sdcc.ico to project as icon for sdcc.exe
* support/scripts/sdcc.ico: added 32x32 icon

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

18 years ago* device/lib/pic16/libdev/pic18f*.c,
tecodev [Wed, 18 May 2005 20:32:06 +0000 (20:32 +0000)]
* device/lib/pic16/libdev/pic18f*.c,
* device/include/pic16/pic18f*.h: updated "sfr" and "at X"
  keywords to "__sfr" and "__at (X)"
* device/include/pic16/pic18fregs.h: added pic18f4520
* src/pic16/pcode.c (pic16_pCode2str): fixed (?) bug
  #1203088 (MPLAB compatibility)

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