fw/sdcc
19 years ago* device/lib/pic16/Makefile.common.in: added $(MM) to fix `make clean`
bernhardheld [Sun, 29 Aug 2004 12:47:49 +0000 (12:47 +0000)]
* device/lib/pic16/Makefile.common.in: added $(MM) to fix `make clean`
* Makefile.common.in,
* as/Makefile,
* as/hc08/Makefile.in,
* as/mcs51/Makefile.in,
* as/z80/Makefile.in,
* debugger/mcs51/Makefile.in,
* device/include/Makefile.in,
* device/lib/Makefile.in,
* doc/Makefile,
* link/Makefile,
* link/z80/Makefile.in,
* packihx/Makefile.in,
* sim/ucsim/main_in.mk,
* sim/ucsim/avr.src/Makefile.in,
* sim/ucsim/doc/Makefile.in,
* sim/ucsim/gui.src/serio.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,
* src/Makefile.in,
* support/cpp2/Makefile.in,
* support/librarian/Makefile,
* support/makebin/Makefile: added DESTDIR to the install path proposed by "Maciej 'Agaran' Pijanka" <agaran AT pld-linux.org>
* doc/sdccman.lyx: added DESTDIR documentation

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

19 years ago* src/pic16/gen.c (genFunction, genEndFunction): fixed return
vrokas [Sun, 29 Aug 2004 10:26:33 +0000 (10:26 +0000)]
* src/pic16/gen.c (genFunction, genEndFunction): fixed return
instruction for interrupt handlers, use fast returns when returning
from high priority interrupts

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

19 years ago* src/hc08/gen.c (genAnd, genOr, transferAopAop, rmwWithAop): optimized
epetrich [Sun, 29 Aug 2004 07:44:29 +0000 (07:44 +0000)]
* src/hc08/gen.c (genAnd, genOr, transferAopAop, rmwWithAop): optimized
code generation
* src/hc08/gen.c (genrshFour, genCpl): fixed bugs
* src/hc08/gen.c (genMultOneByte, genDivOneByte, genModOneByte): fixed
bugs, ported much of Bernhard's code from mcs51
* src/mcs51/gen.c (genSend),
* src/hc08/gen.c (genSend): fixed bug with lost SEND iCodes if more
than one when calling a reentrant function
* device/lib/_mullong.c: defined an alternate struct layout for big
endian ports (hc08)

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

19 years ago* src/hc08/gen.c (shiftL2Left2Result): fix for bug-500536 regression
epetrich [Sat, 28 Aug 2004 06:54:24 +0000 (06:54 +0000)]
* src/hc08/gen.c (shiftL2Left2Result): fix for bug-500536 regression
test

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

19 years ago* src/SDCCsymt.c (processFuncArgs): make sure parameter types
epetrich [Sat, 28 Aug 2004 05:48:48 +0000 (05:48 +0000)]
* src/SDCCsymt.c (processFuncArgs): make sure parameter types
are sane and complete before asking the port its prefered parameter
passing method (fixes bug #1017633)
* device/lib/hc08/_ret.c: added "data" storage class to _ret2
and _ret3

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

19 years ago* src/hc08/gen.c (genPackBitsImmed, genUnpackBitsImmed): fix offset
epetrich [Sat, 28 Aug 2004 00:10:41 +0000 (00:10 +0000)]
* src/hc08/gen.c (genPackBitsImmed, genUnpackBitsImmed): fix offset
problem in bitfields >= 8 bits.

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

19 years ago* src/SDCCsymt.c: undid changes that were not meant to be committed
maartenbrock [Fri, 27 Aug 2004 15:46:51 +0000 (15:46 +0000)]
* src/SDCCsymt.c: undid changes that were not meant to be committed

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

19 years ago* support/regression/ports/hc08spec.mk: REENTRANT must be reentrant
maartenbrock [Fri, 27 Aug 2004 14:06:35 +0000 (14:06 +0000)]
* support/regression/ports/hc08spec.mk: REENTRANT must be reentrant

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

19 years ago* src/hc08/gen.c (genUminusFloat): fixed bug where only 3 bytes were
maartenbrock [Fri, 27 Aug 2004 13:52:48 +0000 (13:52 +0000)]
* src/hc08/gen.c (genUminusFloat): fixed bug where only 3 bytes were
  copied and wrong bit got inverted

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

19 years ago* src/hc08/gen.c (genPointerSet, genFarPointerSet): moved code from
epetrich [Fri, 27 Aug 2004 06:46:26 +0000 (06:46 +0000)]
* src/hc08/gen.c (genPointerSet, genFarPointerSet): moved code from
genFarPointerSet into genPointerSet; eliminated genFarPointerSet
* src/hc08/gen.c (genPointerGet, genFarPointerGet): moved code from
genFarPointerGet into genPointerGet; eliminated genFarPointerGet
* src/hc08/gen.c (genPackBitsImmed): generate optimized code for
assignments to bitfields at known addresses
* src/hc08/gen.c (genUnpackBitsImmed): generate optimized code for
reads from bitfields at known addresses
* src/hc08/ralloc.c (packRegisters),
* src/hc08/gen.c (genPointerGet, genUnpackBits, genUnpackBitsImmed,
genhc08Code): optimize pointer get values used as conditionals
* src/hc08/peeph.def: added rules 2e & 2f to optimize bit test
and branch

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

19 years ago* src/mcs51/gen.c (genPointerGet, genNearPointerGet, genPagedPointerGet,
epetrich [Tue, 24 Aug 2004 06:41:21 +0000 (06:41 +0000)]
* src/mcs51/gen.c (genPointerGet, genNearPointerGet, genPagedPointerGet,
genFarPointerGet, genCodePointerGet, genGenPointerGet, genUnpackBits),
* src/mcs51/ralloc.c (packRegisters): optimze pointer get values used as
conditionals

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

19 years agosrc/mcs51/peeph.def: peepholes 248.i-m for xdata bitfields. See thread on [Sdcc-user...
frief [Sun, 22 Aug 2004 18:38:39 +0000 (18:38 +0000)]
src/mcs51/peeph.def: peepholes 248.i-m for xdata bitfields. See thread on [Sdcc-user] Using bit fields

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

19 years ago* src/mcs51/ralloc.c (packRegsForOneuse): fixed bug #1012650 and some
epetrich [Sat, 21 Aug 2004 21:10:18 +0000 (21:10 +0000)]
* src/mcs51/ralloc.c (packRegsForOneuse): fixed bug #1012650 and some
related problems

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

19 years agobison's rule makes trouble too
bernhardheld [Sat, 21 Aug 2004 12:54:16 +0000 (12:54 +0000)]
bison's rule makes trouble too

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

19 years ago* sim/ucsim/cmd.src/Makefile.in: run lex only if $(PRJDIR)/devel exists
bernhardheld [Fri, 20 Aug 2004 22:32:32 +0000 (22:32 +0000)]
* sim/ucsim/cmd.src/Makefile.in: run lex only if $(PRJDIR)/devel exists

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

19 years ago* src/z80/ralloc.c (packRegsForAssign): ported some bug fixes from the
epetrich [Wed, 18 Aug 2004 05:06:00 +0000 (05:06 +0000)]
* src/z80/ralloc.c (packRegsForAssign): ported some bug fixes from the
mcs51 port

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

19 years agoPic port - Restored fn genRet as previous fix was incorrect.
slade_rich [Mon, 16 Aug 2004 00:15:43 +0000 (00:15 +0000)]
Pic port - Restored fn genRet as previous fix was incorrect.

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

19 years agoRestored fn genRet as previous fix was incorrect.
slade_rich [Mon, 16 Aug 2004 00:14:42 +0000 (00:14 +0000)]
Restored fn genRet as previous fix was incorrect.

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

19 years ago2004-08-14 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
frief [Sat, 14 Aug 2004 14:10:03 +0000 (14:10 +0000)]
2004-08-14 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
        * src/mcs51/gen.c (genJumpTab): jumptables for more than 16 switch cases use more compact code

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

19 years agosrc/mcs51/gen.c (genJumpTab): jumptables for more than 16 switch cases use more compa...
frief [Sat, 14 Aug 2004 14:07:58 +0000 (14:07 +0000)]
src/mcs51/gen.c (genJumpTab): jumptables for more than 16 switch cases use more compact code

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

19 years agoPic port - Fixed problem with fn returning a variable bigger than a char.
slade_rich [Thu, 12 Aug 2004 23:46:26 +0000 (23:46 +0000)]
Pic port - Fixed problem with fn returning a variable bigger than a char.

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

19 years agoFixed problem with fn returning a variable bigger than a char.
slade_rich [Thu, 12 Aug 2004 23:45:26 +0000 (23:45 +0000)]
Fixed problem with fn returning a variable bigger than a char.

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

19 years ago* src/SDCClrange.c (findPrevUse): fixed bug #1007371
epetrich [Thu, 12 Aug 2004 04:42:43 +0000 (04:42 +0000)]
* src/SDCClrange.c (findPrevUse): fixed bug #1007371

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

19 years ago* src/SDCCsymt.h,
epetrich [Thu, 12 Aug 2004 02:32:05 +0000 (02:32 +0000)]
* src/SDCCsymt.h,
* src/SDCCsymt.c (changePointer, checkDecl, addSymChain): changed
parameter of changePointer() from symbol* to sym_link*
* src/SDCCast.c (decorateType): call changePointer() for CAST op
* src/SDCCsymt.c (compareType): void* type is castable to other
pointers, but not necesarily an exact match.
* src/SDCCicode.c (geniCodeCast): allow void* casting here since it
is no longer blindly treated as an exact match.
* src/SDCCval.c (valCastLiteral): treat missing type as cast to void

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

19 years agoPic code - Added struct initialisation fn printIvalStruct.
slade_rich [Thu, 12 Aug 2004 00:19:09 +0000 (00:19 +0000)]
Pic code - Added struct initialisation fn printIvalStruct.

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

19 years agoAdded struct initialisation fn printIvalStruct.
slade_rich [Thu, 12 Aug 2004 00:15:31 +0000 (00:15 +0000)]
Added struct initialisation fn printIvalStruct.

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

19 years agoPic port - Printing rIdx on internal verbose debug.
slade_rich [Wed, 11 Aug 2004 01:18:08 +0000 (01:18 +0000)]
Pic port - Printing rIdx on internal verbose debug.

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

19 years agoPrinting rIdx on internal verbose debug.
slade_rich [Wed, 11 Aug 2004 01:17:18 +0000 (01:17 +0000)]
Printing rIdx on internal verbose debug.

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

19 years agosab80515 dapr address corrected
bela [Tue, 10 Aug 2004 12:16:33 +0000 (12:16 +0000)]
sab80515 dapr address corrected

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

19 years agoport P6 added to sab80515.h
bela [Tue, 10 Aug 2004 12:05:59 +0000 (12:05 +0000)]
port P6 added to sab80515.h

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

19 years agoPic port - Will no longer exit if #pragma maxram has not been defined.
slade_rich [Tue, 10 Aug 2004 01:25:01 +0000 (01:25 +0000)]
Pic port - Will no longer exit if #pragma maxram has not been defined.

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

19 years agoWill no longer exit if #pragma maxram has not been defined.
slade_rich [Tue, 10 Aug 2004 01:23:04 +0000 (01:23 +0000)]
Will no longer exit if #pragma maxram has not been defined.

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

19 years ago* src/mcs51/gen.c (emitcode): fixed bug #992819
epetrich [Fri, 6 Aug 2004 05:27:54 +0000 (05:27 +0000)]
* src/mcs51/gen.c (emitcode): fixed bug #992819

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

19 years ago* src/pic/ralloc.c (deassignLR): allthough pic port is buggy already,
maartenbrock [Thu, 5 Aug 2004 12:34:53 +0000 (12:34 +0000)]
* src/pic/ralloc.c (deassignLR): allthough pic port is buggy already,
  there's no need to make it worse

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

19 years ago* src/mcs51/ralloc.c (deassignLR),
epetrich [Thu, 5 Aug 2004 08:29:15 +0000 (08:29 +0000)]
* src/mcs51/ralloc.c (deassignLR),
* src/ds390/ralloc.c (deassignLR),
* src/hc08/ralloc.c (deassignLR),
* src/z80/ralloc.c (deassignLR),
* src/pic/ralloc.c (deassignLR),
* src/pic16/ralloc.c (deassignLR),
* src/avr/ralloc.c (deassignLR),
* src/SDCClrange.c (findRecursiveSucc, findRecursivePred, findPrevUse,
rlivePoint): fixed another part of bug #971834

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

19 years agofixed a formatting goof
epetrich [Wed, 4 Aug 2004 21:07:00 +0000 (21:07 +0000)]
fixed a formatting goof

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

19 years ago* src/z80/main.c: enabled "critical" keyword
epetrich [Wed, 4 Aug 2004 21:05:21 +0000 (21:05 +0000)]
* src/z80/main.c: enabled "critical" keyword
* src/z80/mappings.i,
* src/z80/gen.c (genFunction, genEndFunction): support for interrupt
functions (fixes bug #979646)
* doc/sdccman.lyx: added a subsection explaining z80 interrupt support

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

19 years agosrc/mcs51/gen.c: add \n for labels only, not DOS/WIN drives such as c:\mydir
jesusc [Wed, 4 Aug 2004 13:02:18 +0000 (13:02 +0000)]
src/mcs51/gen.c: add \n for labels only, not DOS/WIN drives such as c:\mydir

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

19 years ago* src/SDCCloop.c (loopInvariants): fixed bug 983545, hope this
maartenbrock [Tue, 3 Aug 2004 13:04:55 +0000 (13:04 +0000)]
* src/SDCCloop.c (loopInvariants): fixed bug 983545, hope this
  doesn't disable too much optimizations

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

19 years agoPIC port, disabled "WARNING: function 'main' undefined" when -S option is used.
slade_rich [Mon, 2 Aug 2004 23:55:23 +0000 (23:55 +0000)]
PIC port, disabled "WARNING: function 'main' undefined" when -S option is used.

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

19 years agoDisabled "WARNING: function 'main' undefined" when -S option is used.
slade_rich [Mon, 2 Aug 2004 23:52:26 +0000 (23:52 +0000)]
Disabled "WARNING: function 'main' undefined" when -S option is used.

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

19 years ago* src/SDCClrange.c (rlivePoint): fixed bug 988568, thanks to anonymous
maartenbrock [Mon, 2 Aug 2004 19:00:49 +0000 (19:00 +0000)]
* src/SDCClrange.c (rlivePoint): fixed bug 988568, thanks to anonymous

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

19 years agoTidied up tabs and fixed bug with literal multiple where same register was used for...
slade_rich [Mon, 2 Aug 2004 01:34:19 +0000 (01:34 +0000)]
Tidied up tabs and fixed bug with literal multiple where same register was used for hi and low byte.

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

19 years agoTidied up tabs and disabled verbose code generation.
slade_rich [Mon, 2 Aug 2004 01:32:33 +0000 (01:32 +0000)]
Tidied up tabs and disabled verbose code generation.

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

19 years agoTidied up tabs.
slade_rich [Mon, 2 Aug 2004 01:31:26 +0000 (01:31 +0000)]
Tidied up tabs.

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

19 years ago* src/SDCCmem.c (allocGlobal): don't turn S_REGISTER storage class
vrokas [Thu, 29 Jul 2004 22:57:20 +0000 (22:57 +0000)]
* src/SDCCmem.c (allocGlobal): don't turn S_REGISTER storage class
to S_FIXED for pic16 port and when symbol is not in level 0,
allocate for S_REGISTER storage class and pic16 port, too,
* src/pic16/device.h: prototype for checkSym,
* src/pic16/device.c (pic16_dump_access, checkSym): NEW,
* (pic16_assignConfigWordValue): test the value and the mask to
validate that the value is suitable for the configuration word,
* src/pic16/glue.c (pic16_printIvalFuncPtr): use 'externs' to
collect extern declared symbols, don't emit symbol twice, check
first if symbol is in publics set first,
* src/pic16/main.c (_pic16_keywords[]): added keyword 'register',
* added command line '--fstack' which enables an experimental
feature for stack access, too buggy to be used yet...
* src/pic16/ralloc.c (pic16_accessregWithName): NEW,
* (pic16_allocDirReg): when register has storage class S_REGISTER
allocate in pic16_dynAccessRegs,
* device/include/pic16/pic18f????.h: modified configuration word
naming convention, words started as CONFIG0H but should be CONFIG1H

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

19 years ago* device/include/mcs51reg.h: fixed bug 970993
maartenbrock [Thu, 29 Jul 2004 18:18:33 +0000 (18:18 +0000)]
* device/include/mcs51reg.h: fixed bug 970993

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

19 years agodefinition of vasprintf
drdani [Thu, 29 Jul 2004 18:10:28 +0000 (18:10 +0000)]
definition of vasprintf

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

19 years ago* src/SDCC.lex (doPragma): added pragma disable_warning <nnn>
maartenbrock [Tue, 27 Jul 2004 20:30:32 +0000 (20:30 +0000)]
* src/SDCC.lex (doPragma): added pragma disable_warning <nnn>
* src/SDCCmain.c (parseCmdLine): added option --disable-warning <nnn>
* src/ds390/gen.c (genPlusIncr): fixed bug when incrementing generic pointers
* support/Util/SDCCerr.c (vwerror): suppress disabled warnings and output
  error/warning numbers,
  added function setWarningDisabled()
* support/Util/SDCCerr.h: added setWarningDisabled() and MAX_ERROR_WARNING
* support/regression/ports/mcs51-stack-auto/spec.mk: added dependencies
  _memcmp.c _memmove.c calloc.c realloc.c free.c
* support/regression/tests/malloc.c: added tests for new functionality
* support/regression/tests/zeropad.c: added tests for truncated initializers
  and initialized char arrays starting with '\\x0'
* src/mcs51/peeph.def: fixed regression, added peephole 177.f

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

19 years ago* added lib/calloc.c, lib/free.c, lib/realloc.c, include/stddef.h
maartenbrock [Tue, 27 Jul 2004 20:03:35 +0000 (20:03 +0000)]
* added lib/calloc.c, lib/free.c, lib/realloc.c, include/stddef.h
* updated lib/malloc.c, lib/libsdcc.lib, lib/Makefile.in, include/malloc.h

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

19 years agobug fixes
drdani [Tue, 27 Jul 2004 13:42:53 +0000 (13:42 +0000)]
bug fixes

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

19 years agofix of includes
drdani [Mon, 26 Jul 2004 17:41:39 +0000 (17:41 +0000)]
fix of includes

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

19 years ago* support/valdiag/tests/overflow.c: fixed warning on (1 >> 40)
bernhardheld [Mon, 26 Jul 2004 07:36:24 +0000 (07:36 +0000)]
* support/valdiag/tests/overflow.c: fixed warning on (1 >> 40)

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

19 years ago* doc/sdccman.lyx: updated example in section "Absolute Addressing"
frief [Sun, 25 Jul 2004 22:28:13 +0000 (22:28 +0000)]
* doc/sdccman.lyx: updated example in section "Absolute Addressing"
* src/mcs51/peeph.def: added contributed fix for "bug" #995347 as peephole 177.e. Thanks to anonymous

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

19 years agoupdated example in section "Absolute Addressing"
frief [Sun, 25 Jul 2004 22:26:59 +0000 (22:26 +0000)]
updated example in section "Absolute Addressing"

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

19 years agoadded contributed fix for "bug" #995347 as peephole 177.e. Thanks to anonymous
frief [Sun, 25 Jul 2004 22:25:49 +0000 (22:25 +0000)]
added contributed fix for "bug" #995347 as peephole 177.e. Thanks to anonymous

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

19 years agoAdded dependency of ChangeLog to version.h
jesusc [Sun, 25 Jul 2004 02:15:03 +0000 (02:15 +0000)]
Added dependency of ChangeLog to version.h

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

19 years ago* src/pic16/glue.c (pic16_printIvalFuncPtr): when an extern
vrokas [Sat, 24 Jul 2004 22:08:23 +0000 (22:08 +0000)]
* src/pic16/glue.c (pic16_printIvalFuncPtr): when an extern
function isn't used in the source but referenced as a
variable initializer then declare it as extern in .asm file

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

19 years ago* (rule Makefile.dep): added dependency version.h,
vrokas [Sat, 24 Jul 2004 18:01:53 +0000 (18:01 +0000)]
* (rule Makefile.dep): added dependency version.h,

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

19 years ago* (rule dep): added dependency version.h,
vrokas [Sat, 24 Jul 2004 17:59:02 +0000 (17:59 +0000)]
* (rule dep): added dependency version.h,

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

19 years agoAdded creation of version.h to project
jesusc [Sat, 24 Jul 2004 16:27:29 +0000 (16:27 +0000)]
Added creation of version.h to project

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

19 years ago* .version: increased version number to 2.4.3
vrokas [Sat, 24 Jul 2004 11:38:30 +0000 (11:38 +0000)]
* .version: increased version number to 2.4.3
Adding version extension according to ChangeLog CVS revision
* src/Makefile.in (target all): added dependency 'version.h'
* (rule version.h): added rule to create version.h from ChangeLog
* src/version.awk: AWK script to create version.h
* src/SDCCdwarf2.c (dwWriteModule),
* src/SDCCglue.c (initialComments),
* src/SDCCmain.c (printVersionInfo): modified to write after
version string the version extension number,
* src/SDCCutil.c: included "version.h"
* (getBuildNumber): NEW, returns SDCC's ChangeLog minor revision
number,
* src/SDCCutil.h: added prototype for getBuildNumber
* src/SDCCmain.c (parseCmdLine): when sOpt is 'I' add rest in
includeDirsSet, too,
* src/SDCCsymt.c (checkSClass): don't emit error when a variable,
const char [] is found in function prototype...
* src/pic16/genarith.c (pic16_genUMult8XLit_8): optimization to omit
moving to WREG with source is already in WREG,
* src/pic16/gen.h: added AOP_FSR0 and AOP_FSR2 in enum,
* src/pic16/gen.c (getFreePtr): updated to look for FSR0 and FSR2,
* (aopForSym): stack'ed symbols are partially supported, added
if-clause to support symbols in FARSPACE,
* (sameRegs): added test for AOP_ACC to see if registers are same,
* (pic16_freeAsmop): added case for AOP_FSR0 and AOP_FSR2,
* (pic16_aopGet): added case for AOP_FSR0 and AOP_FSR2,
* (pic16_popRegFromString): will not allocate a new register if it
doesn't find one by name, bug may have introduced...
* (pic16_popGet): added case for AOP_FSR0 and AOP_FSR2,
* (genIpush): revived to use pic16 port's stack,
* (genAddrOf): added incomplete case for stack'ed operand,
* (genCast): optimized a pair of MOVFW,MOVWF to MOVFF
* src/pic16/genutils.c (pic16_genNot): almot new vesrion for NOT,
can handle multibyte operands,
* src/pic16/glue.c (pic16_printIval*): some debug info added,
* (pic16initialComments): added message for MPLAB compatibility
mode enabled,
* src/pic16/main.h: prototype for pic16_mplab_comp,
* src/pic16/main.c (pic16_optionsTable): new option --mplab-comp,
which enabled MPLAB compatibility mode (i.e. no #LINE/#FILE, BANKED)
* (_pic16_linkEdit): NEW, handles link stage, transferred here
because of increased complexity of procedure,
* (_process_pragma): stack pragma changed to format 'stack pos len',
emit symbol '_stack_end' to conform with gplink,
* src/pic16/pcode.c (pic16_newpCodeOpBit): using pic16_regWithName
to search for register,
* (pic16_get_op, pic16_get_op2): added case for PO_W, PO_WREG and
PO_GPR_REGISTER,
* (pic16_pCode2str): when in MPLAB compatibility mode, comment out
#LINE directives and replace 'B' with 'BANKED' in instruction opcodes
* (pic16_getRegFromInstruction, pic16_getRegFromInstruction2): added
case for PO_GPR_REGISTER,
* (pic16_AnalyzeBanking): removed the old message for inc2h.pl, past
dies, the new era is ahead !...
* src/pic16/ralloc.c: added hash reposits pic16_dynAllocRegNames and
pic16_dynInternalRegs,
* (pic16_allocregWithName, pic16_procregWithName, pic16_regWithname): NEW,
* (pic16_allocDirReg): minor optimizations and bug fixes,
* (pic16_allocWithIdx): when searching pic16_dynProcessorRegs use fixed,
* device/lib/pic16/startup/crt0*.c: extern definition of stack_end,
load stack and frame pointer with address of 'stack_end' symbol

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

19 years ago* src/SDCCmain.c (parseCmdLine): when sOpt is 'I' add rest in
vrokas [Sat, 24 Jul 2004 11:25:56 +0000 (11:25 +0000)]
* src/SDCCmain.c (parseCmdLine): when sOpt is 'I' add rest in
includeDirsSet, too,
* src/SDCCsymt.c (checkSClass): don't emit error when a variable,
const char [] is found in function prototype...

* src/pic16/genarith.c (pic16_genUMult8XLit_8): optimization to omit
moving to WREG with source is already in WREG,
* src/pic16/gen.h: added AOP_FSR0 and AOP_FSR2 in enum,
* src/pic16/gen.c (getFreePtr): updated to look for FSR0 and FSR2,
* (aopForSym): stack'ed symbols are partially supported, added
if-clause to support symbols in FARSPACE,
* (sameRegs): added test for AOP_ACC to see if registers are same,
* (pic16_freeAsmop): added case for AOP_FSR0 and AOP_FSR2,
* (pic16_aopGet): added case for AOP_FSR0 and AOP_FSR2,
* (pic16_popRegFromString): will not allocate a new register if it
doesn't find one by name, bug may have introduced...
* (pic16_popGet): added case for AOP_FSR0 and AOP_FSR2,
* (genIpush): revived to use pic16 port's stack,
* (genAddrOf): added incomplete case for stack'ed operand,
* (genCast): optimized a pair of MOVFW,MOVWF to MOVFF
* src/pic16/genutils.c (pic16_genNot): almot new vesrion for NOT,
can handle multibyte operands,
* src/pic16/glue.c (pic16_printIval*): some debug info added,
* (pic16initialComments): added message for MPLAB compatibility
mode enabled,
* src/pic16/main.h: prototype for pic16_mplab_comp,
* src/pic16/main.c (pic16_optionsTable): new option --mplab-comp,
which enabled MPLAB compatibility mode (i.e. no #LINE/#FILE, BANKED)
* (_pic16_linkEdit): NEW, handles link stage, transferred here
because of increased complexity of procedure,
* src/pic16/pcode.c (pic16_newpCodeOpBit): using pic16_regWithName
to search for register,
* (pic16_get_op, pic16_get_op2): added case for PO_W, PO_WREG and
PO_GPR_REGISTER,
* (pic16_pCode2str): when in MPLAB compatibility mode, comment out
#LINE directives and replace 'B' with 'BANKED' in instruction opcodes
* (pic16_getRegFromInstruction, pic16_getRegFromInstruction2): added
case for PO_GPR_REGISTER,
* (pic16_AnalyzeBanking): removed the old message for inc2h.pl, past
dies, the new era is ahead !...
* src/pic16/ralloc.c: added hash reposits pic16_dynAllocRegNames and
pic16_dynInternalRegs,
* (pic16_allocregWithName, pic16_procregWithName, pic16_regWithname): NEW,
* (pic16_allocDirReg): minor optimizations and bug fixes,
* (pic16_allocWithIdx): when searching pic16_dynProcessorRegs use fixed,

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

19 years agoAdding version extension according to ChangeLog CVS revision
vrokas [Sat, 24 Jul 2004 09:30:14 +0000 (09:30 +0000)]
Adding version extension according to ChangeLog CVS revision
* src/Makefile.in (target all): added dependency 'version.h'
* (rule version.h): added rule to create version.h from ChangeLog
* src/version.awk: AWK script to create version.h
* src/SDCCdwarf2.c (dwWriteModule),
* src/SDCCglue.c (initialComments),
* src/SDCCmain.c (printVersionInfo): modified to write after
version string the version extension number,
* src/SDCCutil.c: included "version.h"
* (getBuildNumber): NEW, returns SDCC's ChangeLog minor revision
number,
* src/SDCCutil.h: added prototype for getBuildNumber

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

19 years ago* src/pic16/glue.c (pic16emitStaticSeg): fixed bug with files
vrokas [Fri, 23 Jul 2004 13:45:51 +0000 (13:45 +0000)]
* src/pic16/glue.c (pic16emitStaticSeg): fixed bug with files
without source code but only variable initializers

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

19 years ago* src/pic16/glue.c (pic16emitRegularMap): unused functions marked as
vrokas [Tue, 20 Jul 2004 12:59:59 +0000 (12:59 +0000)]
* src/pic16/glue.c (pic16emitRegularMap): unused functions marked as
external are not declared as extern to reduce overhead while linking

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

19 years ago* src/pic16/glue.c (pic16_emitRegularMap): unused functions marked as
vrokas [Tue, 20 Jul 2004 12:50:09 +0000 (12:50 +0000)]
* src/pic16/glue.c (pic16_emitRegularMap): unused functions marked as
external are not declared as extern to reduce overhead while linking

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

19 years ago* src/SDCCast.c (decorateType): removed buggy fix for bug #979599
maartenbrock [Tue, 20 Jul 2004 10:54:24 +0000 (10:54 +0000)]
* src/SDCCast.c (decorateType): removed buggy fix for bug #979599

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

19 years agoeliminate need of flex
drdani [Sun, 18 Jul 2004 10:27:59 +0000 (10:27 +0000)]
eliminate need of flex

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

19 years agoversion 0.5.2
drdani [Sat, 17 Jul 2004 07:13:06 +0000 (07:13 +0000)]
version 0.5.2

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

19 years agoversion 0.5.2
drdani [Fri, 16 Jul 2004 16:36:33 +0000 (16:36 +0000)]
version 0.5.2

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

19 years agonew files of 0.5.2
drdani [Fri, 16 Jul 2004 16:32:30 +0000 (16:32 +0000)]
new files of 0.5.2

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

19 years agoupdating uCsim script files for new version of uCsim
drdani [Fri, 16 Jul 2004 14:27:54 +0000 (14:27 +0000)]
updating uCsim script files for new version of uCsim

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

19 years ago* src/SDCCglue.c (printIvalArray): fixed bug #984229, thanks to Phuah
maartenbrock [Sun, 11 Jul 2004 10:45:26 +0000 (10:45 +0000)]
* src/SDCCglue.c (printIvalArray): fixed bug #984229, thanks to Phuah
  Yee Keat for the patch
* src/SDCCast.c (decorateType): fixed bug #979599
* src/ds390/gen.h: removed local fReturnSizeDS390
* src/ds390/gen.c: made fReturnSizeDS390 signed short to remove a warning
* src/ds390/gen.c (genAnd, genOr, genXor),
* src/mcs51/gen.c (genAnd, genOr, genXor): generate better optimized code

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

19 years ago* device/lib/pic16/libsdcc/float/ updated contents of all sources,
vrokas [Fri, 9 Jul 2004 23:35:21 +0000 (23:35 +0000)]
* device/lib/pic16/libsdcc/float/ updated contents of all sources,
* device/include/pic16/float.h: enabled prototypes of float support
functions,
* src/pic16/pcode.c: fixed bug #974733, nothing to do with _naked
attribute though

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

19 years ago* prototypes for floating point support functions enabled
vrokas [Fri, 9 Jul 2004 23:29:17 +0000 (23:29 +0000)]
* prototypes for floating point support functions enabled

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

19 years ago* sources in device/lib/pic16/libsdcc/float/*.c were empty,
vrokas [Fri, 9 Jul 2004 23:28:16 +0000 (23:28 +0000)]
* sources in device/lib/pic16/libsdcc/float/*.c were empty,
contents updated

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

19 years ago* src/SDCCmain.c (linkEdit): modifications only for pic16 port,
vrokas [Mon, 5 Jul 2004 15:49:34 +0000 (15:49 +0000)]
* src/SDCCmain.c (linkEdit): modifications only for pic16 port,
add relFilesSet to $3, manipulate $2 to handle linking of object
files without source files in command line,
* device/include/pic16 (all headers): added ID location macros,
* src/pic16/device.c (struct PIC16_device Pics16[]): added field
entries for ID location bytes,
* (pic16_assignIdByteValue): NEW,
* src/pic16/device.h: new structures idRegInfo_t and idBytesInfo_t,
added field dumpcalltree to pic16_options_t,
* src/pic16/gen.c (genCmp): fixed bug case so a temporary register
is used instead of pic16_Gstack_base_addr, check if (ifx) before
emitting rFalseIfx label after check_carry label,
* src/pic16/glue.c (PIC16_IS_IDLOC_ADDRESS, PIC16_IS_HWREG_ADDRESS,
pic16_emitDIRegs), NEW
* (pic16glue): dump .calltree file when option --calltree found,
* src/pic16/main.c (OPTION _pic16_optionsTable): new option --calltree
* (_pic16_genAssemblerPreamble): emit ID locations after
configuration registers,
* (pic16_linkCmd): modifications of the link command,
* src/pic16/pcode.c (pic16_pciMOVFF): PCC_REGISTER replaces PCC_REGISTER2
* (pic16_pCodeInitRegisters): don't init stack registers,
* (pic16_findPrevInstruction): fixed bug,
* (pic16_getRegFromInstruction, pic16_getRegFromInstruction2): fixed
bug with immediate registers,
* (buildCallTree): traces stack push and pop,
* (pct2): dump also stack usage for each function,
* src/pic16/ralloc.c (dynrIdx): registers names start from 0x00
* (pic16_allocDirReg): various modifications,
* (pic16_typeRegWithIdx): when searching pic16_dynProcessorRegs set
fixed to 1,

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

19 years agoreplaced lost contents
vrokas [Sun, 4 Jul 2004 09:45:54 +0000 (09:45 +0000)]
replaced lost contents

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

19 years ago* src/SDCCmain.c (linkEdit): modifications only for pic16 port,
vrokas [Sun, 4 Jul 2004 09:30:49 +0000 (09:30 +0000)]
* src/SDCCmain.c (linkEdit): modifications only for pic16 port,
add relFilesSet to $3, manipulate $2 to handle linking of object
files without source files in command line,
* device/include/pic16 (all headers): added ID location macros,
* src/pic16/device.c (struct PIC16_device Pics16[]): added field
entries for ID location bytes,
* (pic16_assignIdByteValue): NEW,
* src/pic16/device.h: new structures idRegInfo_t and idBytesInfo_t,
added field dumpcalltree to pic16_options_t,
* src/pic16/gen.c (genCmp): fixed bug case so a temporary register
is used instead of pic16_Gstack_base_addr, check if (ifx) before
emitting rFalseIfx label after check_carry label,
* src/pic16/glue.c (PIC16_IS_IDLOC_ADDRESS, PIC16_IS_HWREG_ADDRESS,
pic16_emitDIRegs), NEW
* (pic16glue): dump .calltree file when option --calltree found,
* src/pic16/main.c (OPTION _pic16_optionsTable): new option --calltree
* (_pic16_genAssemblerPreamble): emit ID locations after
configuration registers,
* (pic16_linkCmd): modifications of the link command,
* src/pic16/pcode.c (pic16_pciMOVFF): PCC_REGISTER replaces PCC_REGISTER2
* (pic16_pCodeInitRegisters): don't init stack registers,
* (pic16_findPrevInstruction): fixed bug,
* (pic16_getRegFromInstruction, pic16_getRegFromInstruction2): fixed
bug with immediate registers,
* (buildCallTree): traces stack push and pop,
* (pct2): dump also stack usage for each function,
* src/pic16/ralloc.c (dynrIdx): registers names start from 0x00
* (pic16_allocDirReg): various modifications,
* (pic16_typeRegWithIdx): when searching pic16_dynProcessorRegs set
fixed to 1,

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

19 years ago* src/pic16/pcode.c: removed buggy double colon
vrokas [Fri, 2 Jul 2004 16:21:01 +0000 (16:21 +0000)]
* src/pic16/pcode.c: removed buggy double colon

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

19 years agosupport/scripts/sdcc.nsi: added include/pic16 to setup
borutr [Thu, 1 Jul 2004 18:08:07 +0000 (18:08 +0000)]
support/scripts/sdcc.nsi: added include/pic16 to setup

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

19 years ago* device/lib/Makefile.in: fixed bug in target objects-pic16,
vrokas [Wed, 30 Jun 2004 15:20:58 +0000 (15:20 +0000)]
* device/lib/Makefile.in: fixed bug in target objects-pic16,
* device/lib/pic16/Makefile: prefixed with dash (-) command under
target 'clean',
* doc/sdccman.lyx: changed version to 2.4.2 and added some port
specific command line arguments. Also added sample lkr script
for placing a variable at a specific memory bank.
* src/pic16/device.c (pic16_dump_gsection): NEW, to dump variables
at a specific memory bank,
* (pic16_dump_isection): fixed bug which caused string literals to
be omitted when dumping idata section,
* (pic16_groupRegistersInSection): added code to handle registers
in specific memory banks,
* src/pic16/gen.c: labelOffset is prefixed with pic16_ and made
public, all references are renamed too,
* (pic16_aopGet): removed switch cases for AOP_R0,AOP_R1,AOP_DPTR,
AOP_DPTR2,
* (pic16_storeForReturn): added case to handle when dest is WREG,
* src/pic16/genarith.c (pic16_pCodeOpSubType): NEW,
* src/pic16/glue.c (pic16emitRegularMap): when adding a register in
pic16_rel_udata, check to see if that register is marked as being
a member of a specific memory bank,
* (pic16_printIvalCharPtr): added code to add string literals either
to code or the idata sections,
* src/pic16/main.c (_process_pragma): added \n to WHITE constant,
also accept the 'udata' pragma,
* src/pic16/main.h: new structure types sectName and sectSym
* src/pic16/pcode.c: added new pCodeInstruction entry for BANKSEL
* (newpCodeOpBit): added PIC_OPTYPE subt in function prototype,
* (pic16_findPrevInstruction): fixed, it returned nothing,
* (insertBankSwitch): fixed to emit banksel/skip and skip/banksel
instruction combinations,
* (pic16_FixRegisterBanking): heavily reorganised,
* (pic16_AnalyzeBanking): if generating banksel directives is
disabled, then don't call FixRegisterBanking at all,
* src/pic16/ralloc.c (bitEQUs, aliasEQUs, allDefsOutOfRange):
completely removed,
* (pic16_writeUsedRegisters): added call to pic16_dump_gsection

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

19 years ago* src/SDCCglue.c (printChar): fixed bug #973350, patch provided by Phuah Yee Keat...
bernhardheld [Tue, 29 Jun 2004 20:52:05 +0000 (20:52 +0000)]
* src/SDCCglue.c (printChar): fixed bug #973350, patch provided by Phuah Yee Keat <yk.phuah AT nestac.com>

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

19 years ago* src/pic16/glue.c (pic16createInterruptVect): function now emits
vrokas [Mon, 28 Jun 2004 20:17:24 +0000 (20:17 +0000)]
* src/pic16/glue.c (pic16createInterruptVect): function now emits
correctly the IVT even if it is relocated to some other location

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

19 years ago* device/include/pic16/pic18fregs.h: added case for pic18f2220.h
vrokas [Mon, 28 Jun 2004 17:46:22 +0000 (17:46 +0000)]
* device/include/pic16/pic18fregs.h: added case for pic18f2220.h
* device/include/pic16/pic18f2220.h: NEW,
* device/lib/pic16/libdev/pic18f2220.c: NEW,
* device/lib/pic16/libdev/Makefile: added 18f2220 in DEVS,
* src/pic16/device.c (struct Pics16): added info for 18f2220,
* src/pic16/device.h (struct pic16_options): added ivt_loc and
nodefaultlibs, ivt_loc is the location of the interrupt vector
table, and nodefaultlibs signs that default libraries should not be
linked in link stage,
* src/pic16/gen.c (genFunction): relocate interrupt vector functions
according to --ivt-loc argument,
* src/pic16/main.c (_process_pragma): emit '_stack' as public symbol
when pragma stack is found,

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

19 years ago* src/mcs51/peeph.def: added peepholes 182.d (return 0.0), 256 (range check), 257...
frief [Fri, 25 Jun 2004 15:16:49 +0000 (15:16 +0000)]
* src/mcs51/peeph.def: added peepholes 182.d (return 0.0),  256 (range check), 257 (do while), 258.a-f (bit banging f.e. on 3-wire SPI bus),
* Changelog: corrected date of checkin for .version 2.4.2

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

19 years agoadded peepholes 182.d (return 0.0), 256 (range check), 257 (do while), 258.a-f ...
frief [Fri, 25 Jun 2004 15:14:24 +0000 (15:14 +0000)]
added peepholes 182.d (return 0.0),  256 (range check), 257 (do while), 258.a-f (bit banging f.e. on 3-wire SPI bus)

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

19 years ago* src/SDCClrange.c (findNextUseSym): fixed a live range bug with
epetrich [Mon, 21 Jun 2004 15:31:04 +0000 (15:31 +0000)]
* src/SDCClrange.c (findNextUseSym): fixed a live range bug with
variables used exclusively within a loop

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

19 years ago* src/mcs51/gen.c (genCpl): quick fix for bug #974835
bernhardheld [Mon, 21 Jun 2004 11:13:43 +0000 (11:13 +0000)]
* src/mcs51/gen.c (genCpl): quick fix for bug #974835

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

19 years ago* src/SDCClrange.c (computeClash): fixed bug #971834
epetrich [Mon, 21 Jun 2004 04:05:19 +0000 (04:05 +0000)]
* src/SDCClrange.c (computeClash): fixed bug #971834

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

19 years ago* src/mcs51/gen.c (genCmp): fixed bug #975903
epetrich [Sun, 20 Jun 2004 23:02:43 +0000 (23:02 +0000)]
* src/mcs51/gen.c (genCmp): fixed bug #975903
* src/hc08/gen.c (operandsEqu),
* src/ds390/gen.c (operandsEqu),
* src/z80/gen.c (operandsEqu),
* src/pic/gen.c (operandsEqu),
* src/pic16/gen.c (operandsEqu),
* src/mcs51/gen.c (operandsEqu): fixed bug #976283
* src/SDCCmain.c (parseCmdLine): report --unknown-option only once

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

19 years ago* src/SDCCcse.c (cseBBlock): fixed bug #966963
epetrich [Tue, 15 Jun 2004 04:53:51 +0000 (04:53 +0000)]
* src/SDCCcse.c (cseBBlock): fixed bug #966963

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

19 years ago* src/pic16/gen.c (genPointerGet): added E_INTERNAL_ERROR for
vrokas [Sat, 12 Jun 2004 14:18:45 +0000 (14:18 +0000)]
* src/pic16/gen.c (genPointerGet): added E_INTERNAL_ERROR for
default case in switch statement,
* glue.c (pic16_initPointer): expr is initialised via decoarteType
to eliminate problem with initialisation of pointers, but problem
still exists,
* (pic16_pointerTypeToGPByte): removed, no needed for pic16,
* (emitStaticSegment): removed various lines emitting debug info,
* src/pic16/pcode.c, src/pic16/pcode.h, src/pic16/ralloc.h:
added processor registers for utilizing EEPROM,
* src/pic16/pcode.c (pic16_emitDB): number of DBs emitted is not
configurable and set 8

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

19 years ago* commenting out itype declaration to eliminate warnings
vrokas [Wed, 9 Jun 2004 15:31:00 +0000 (15:31 +0000)]
* commenting out itype declaration to eliminate warnings

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

19 years ago* .version: increased version number to 2.4.2,
vrokas [Tue, 8 Jun 2004 14:30:25 +0000 (14:30 +0000)]
* .version: increased version number to 2.4.2,
Cumulative patch for pic16 port
* src/pic16/device.c: changed scheme to dump initial values for
variables in idata segment, all print_idata* functions were removed,
now the pic16_printIval* will be called,
* src/pic16/glue.c: (pic16_initPointer, pic16_pointerTypeToGPByte,
* _pic16_printPointerType, pic16_printPointerType,
* pic16_printGPointerType, pic16_printIvalArray, pic16_printIvalStruct,
* pic16_printIvalBitFields, pic16_printIvalFuncPtr, pic16_printIvalPtr:
NEW, similar to the respective functions in SDCCglue.c,
* src/pic16/pcode.c (pic16_emitDB, pic16_flushDB): reverted to old
way, emitting hex bytes,
* (pic16_emitDS): NEW, emits a string for pointer initialisation,

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

19 years ago* src/avr/ralloc.c (serialRegAssign),
epetrich [Tue, 8 Jun 2004 06:05:47 +0000 (06:05 +0000)]
* src/avr/ralloc.c (serialRegAssign),
* src/xa51/ralloc.c (serialRegAssign),
* src/pic/ralloc.c (serialRegAssign),
* src/pic16/ralloc.c (serialRegAssign),
* src/hc08/ralloc.c (serialRegAssign),
* src/z80/ralloc.c (serialRegAssign),
* src/ds390/ralloc.c (serialRegAssign),
* src/mcs51/ralloc.c (serialRegAssign): fixed bug #964479

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

19 years ago* src/SDCCicode.c (geniCodeJumpTable): fixed bug #967601
epetrich [Tue, 8 Jun 2004 04:04:41 +0000 (04:04 +0000)]
* src/SDCCicode.c (geniCodeJumpTable): fixed bug #967601
* src/SDCCpeeph.c (labelIsReturnOnly): fixed bug #966505

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

19 years agoCumulative patch for pic16 port
vrokas [Sun, 6 Jun 2004 21:25:57 +0000 (21:25 +0000)]
Cumulative patch for pic16 port
* src/pic16/device.h (typedef PIC16_device) modified fields for
defining microcontrollers,
* src/pic16/device.c: added new info for all devices in Pics16 array,
* src/pic16/gen.c (genPcall): fixed bug that caused the return label
to be optimised out by the pCode optimiser,
* src/pic16/glue.c (pic16emitRegularMap): treat implicit aggragates
specially, bug reported by G.M. Gallant,
* src/pic16/pcode.c (pic16_newpCodeLabelFORCE): NEW, marks a label
as force'd so that cannot be optimised out by pCode optimiser,
* src/pic16/pcode.c,
* src/pic16/pcodepeeph.c,
* src/pic16/pcoderegs.c: many modifications to re-enable peepholes,
they are disabled by default, but can be enabled explicit with
command argument --denable-peeps, for testing,
* device/lib/pic16/startup/Makefile: added --no-peep,--pomit-config-words,
--pomit-ivt in COMPILE_FLAGS

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

19 years ago* src/pic16/pcode.c (pic16_emitDB): removed double semicolon which fails
maartenbrock [Sun, 6 Jun 2004 13:17:42 +0000 (13:17 +0000)]
* src/pic16/pcode.c (pic16_emitDB): removed double semicolon which fails
  compilation on MSVC

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