jesusc [Tue, 6 Jan 2004 22:32:40 +0000 (22:32 +0000)]
Fixed gcc warnings, and added help about -Y option
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3091
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Tue, 6 Jan 2004 22:03:36 +0000 (22:03 +0000)]
* src/SDCCast.c (decorateType),
* src/SDCCicode.c (geniCodeLeftShift): added promotion to int for LEFT_OP (left shift)
* src/SDCCval.c (valShift): fixed warning
* support/valdiag/tests/overflow.c: updated
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3090
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Tue, 6 Jan 2004 20:43:47 +0000 (20:43 +0000)]
* src/SDCCval.c (valShift): changed from 16 to 32 bit shift count
* support/valdiag/tests/overflow.c: added
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3089
4a8a32a2-be11-0410-ad9d-
d568d2c75423
jesusc [Tue, 6 Jan 2004 11:03:07 +0000 (11:03 +0000)]
Added genutils.c to project
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3088
4a8a32a2-be11-0410-ad9d-
d568d2c75423
jesusc [Tue, 6 Jan 2004 10:30:04 +0000 (10:30 +0000)]
stack must be after data when option -Y is not used (default behaviour)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3087
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 6 Jan 2004 07:14:55 +0000 (07:14 +0000)]
A python script to validate compiler diagnostic messages. It can be
used to verify that sdcc complains about bad c source code and
gives a good location of the error.
* support/valdiag/Makefile,
* support/valdiag/valdiag.py,
* support/valdiag/tests/*
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3086
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 6 Jan 2004 07:04:52 +0000 (07:04 +0000)]
* src/SDCC.y (enum_specifier, enumerator_list, opt_assign_expr),
* src/SDCCsymt.c (newEnumType),
* src/SDCCsymt.h
* support/Util/SDCCerr.c,
* support/Util/SDCCerr.h: fixed bug #871258 and some other unreported
enum related bugs.
* support/regression/tests/enum.c: added test for enum values that
require at least 2 bytes of storage.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3085
4a8a32a2-be11-0410-ad9d-
d568d2c75423
vrokas [Tue, 6 Jan 2004 03:22:37 +0000 (03:22 +0000)]
2004-01-06 Vangelis Rokas <vrokas@otenet.gr>
* src/common.h: added ifndef/define/endif macros
around the header file.
Bug reported from Jesus Calvino-Fraga
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3084
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Mon, 5 Jan 2004 20:51:59 +0000 (20:51 +0000)]
* src/SDCCast.c (decorateType): fixed bug #870781
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3083
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Mon, 5 Jan 2004 20:21:49 +0000 (20:21 +0000)]
* src/ds390/gen.c (genRightShift): fixed bug #870788
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3082
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Mon, 5 Jan 2004 20:18:18 +0000 (20:18 +0000)]
* sdcc.spec: updated
* device/include/Makefile.in: don't install CVS directories
* device/lib/Makefile.in: added removal of CVS directories after install
* doc/Makefile: fixed install, added local_icons
* sim/ucsim/gui.src/Makefile.in: fixed an old typo
* src/mcs51/gen.c (genRightShift): fixed bug #870788
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3081
4a8a32a2-be11-0410-ad9d-
d568d2c75423
vrokas [Mon, 5 Jan 2004 19:45:14 +0000 (19:45 +0000)]
2004-01-06 Vangelis Rokas <vrokas@otenet.gr>
PIC16 port related changes:
* device.c: removed pic16_finalMapping and pic16_finalMappingSize,
added variable stackPos,
* gen.c: genCall, assignResultValue: added support for
pushing/retrieving function parameters to/from stack,
genFunction,genEndFunction: setup stack frame for the
generated function,
genAddrOf: will be changed according to bug 863624
* added files genutils.c and genutils.h which contain gen*
debugged and optimised functions extracted from gen.c
* glue.c: added variable 'externs' which holds extern symbols,
pic16emitRegularMap: is modified to properly handle relocatable
symbols under the new scheme,
pic16createInterruptVect: is modified
pic16printPublics: is modified to emit 'global' assembler directives,
added pic16_printExterns to print extern symbols,
pic16glue: initializes stack/frame pointer in the beginning of
the assembly output. Temporary hack, will be corrected later,
because gplink yet does not support stack and SDCC does not
yet support a type of crt0.o object to create the final binary.
* Removed many lines that contain 8051 legacy code.
* The code is finally placed under a 'code' directive.
* Added port specific options.
* _process_pragma: simplified since now we do not need *special*
include file to define SFR registers. But a separate header
will be needed. This will be developed later.
* _pic16_parseOptions: added, parses port specific options:
--pgen-banksel, --obanksel=, --pomit-config-words, --pomit-ivt,
--pleave-reset-vector, --penable-stack, --pstack-model, --debug-xtra
--preplace-udata-with=
* _pic16_setDefaultOptions: modified to initialize section names,
but hack is temporarly out of order since it needs improvement.
* _pic16_genAssemblerPreamble: configuration words are emitted by
their address instead of their name. This part is incomplete and
supports only the 18Fxx2 devices. Other devices will emit an error
during assembly since they do not contain the same set of config
registers
* _pic16_genIVT: is modified,
* pcode.c: added definitions for some hardware registers that are needed
for stack support
* added flag is2LitOp and variable pci_magic in pCodeInstruction.
All PCI entries are updated. Now LFSR is supported.
* Removed pic16_pciTRIS is mentioned by mdubuc in source
* added pic16_newpCodeOpLit2 to support instructions with
two literal arguments
* pic16_pCode2str: corrected code that emits assembler instructions
with two literal operands and those that have an access bit modifier
* genericPrint: now PC_ASMDIR pCodes, can emit a label if it exists,
this fixes a bug which caused some labels to be lost, when an
assembler directive was added, i.e. banksel,
* pic16_FixRegisterBanking: improved logic that causes the insertion
of bank switching,
* InlineFunction: functions that are called once, are not any more
inlined. This can be a port option in the future,
* pcode.h: added pCodeOpLit2 and added variable label in pCodeAsmDir
* ralloc.c: added pic16_rel_udata and pic16_fix_udata variables which
hold the corresponding uninitialized symbols,
* pic16_allocProcessorRegister: registers have explicit marked the
accessBank field,
* pic16_allocInternalRegister: registers are explicit marked as
not used,
* pic16_writeUsedRegs: pic16_dynDirectBitRegs was missing from the
processing list, so bit registers were lost,
*
* ralloc.h: added field 'accessBank' and original symbol operand
in register definition,
* removed the field isMapped from register definition,
** Several functions have been removed from various sources:
BanksUsedFlow2,BanksUsedFlow,FixBankFlow,InstructionRegBank,
pic16_addMemRange,pic16_isREGinBank,pic16_dump_map,pic16_dump_cblock
isSFR,validAddress,mapRegister,assignRegister,pic16_assignFixedRegisters
pic16_assignRelocatableRegisters
** others have been introduced:
pic16_areRegsSame,pic16_dump_section,checkAddReg,pic16_groupRegistersInSection
pic16_popGetLit2,pic16_popCombine2,pushw,pushaop
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3080
4a8a32a2-be11-0410-ad9d-
d568d2c75423
vrokas [Mon, 5 Jan 2004 17:45:04 +0000 (17:45 +0000)]
2004-01-05 Vangelis Rokas <vrokas@otenet.gr>
* support/scripts/inc2h.pl: changed definition of BIT_AT
to emit 'sbit at' instead of 'bit at'. This was a request.
PIC16 port related preliminary changes:
* gen.c: prefixed function popRegFromString with
pic16_ and all references to it corrected
* pcode.c: all pic16_pc_* hardware registers prefixed
with underscore (_),
pic16_popCopyGPR2Bit(): function sets register wasUsed=1
* ralloc.c: newReg(): when register is REG_SFR then
set address to rIdx,
pic16_allocProcessorRegister(): marks register wasUsed=0
pic16_writeUsedRegs(): added a call to assign processor
registers via pic16_assignFixedRegisters
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3079
4a8a32a2-be11-0410-ad9d-
d568d2c75423
borutr [Mon, 5 Jan 2004 13:02:16 +0000 (13:02 +0000)]
updated for NSIS 2 RC1; use LZMA comression
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3078
4a8a32a2-be11-0410-ad9d-
d568d2c75423
jesusc [Sun, 4 Jan 2004 14:18:23 +0000 (14:18 +0000)]
Linker places variables in unused register banks. Call using -Wl-Y[stack_size]
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3077
4a8a32a2-be11-0410-ad9d-
d568d2c75423
vrokas [Fri, 2 Jan 2004 11:11:11 +0000 (11:11 +0000)]
* src/SDCClrange.c: fixed bug 869095 that caused segfault
in certain cases, e.g. when ROM assignment, patch provided
from Albert den Haan.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3076
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Fri, 2 Jan 2004 00:16:21 +0000 (00:16 +0000)]
* doc/sdccman.lyx: updated documentation for sdcdb updated and added chapter tips
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3075
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Thu, 1 Jan 2004 23:14:39 +0000 (23:14 +0000)]
* debugger/mcs51/sdcdb.c (parseCmdLine): added -k for ucsim, patch provided by Scott Bronson
* doc/sdccman.lyx: updated documentation for sdcdb
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3074
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Thu, 1 Jan 2004 22:49:54 +0000 (22:49 +0000)]
src/SDCCmain.c (main): applied patch #866468
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3073
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Thu, 1 Jan 2004 21:59:26 +0000 (21:59 +0000)]
Many signedness and type propagation fixes
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3072
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 1 Jan 2004 17:10:04 +0000 (17:10 +0000)]
* src/SDCCsymt.h,
* src/SDCC.y (struct_or_union_specifier),
* support/Util/SDCCerr.c,
* support/Util/SDCCerr.h: verify that struct & union tags are used
as declared.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3071
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 31 Dec 2003 23:12:39 +0000 (23:12 +0000)]
* src/SDCC.y (struct_or_union_specifier),
* support/Util/SDCCerr.c,
* support/Util/SDCCerr.h: verify that struct & union tags are used
as declared.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3070
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Mon, 29 Dec 2003 06:19:34 +0000 (06:19 +0000)]
* src/SDCCglobl.h: Support for redefining a typedef symbol
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3069
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Sun, 28 Dec 2003 05:29:11 +0000 (05:29 +0000)]
* src/SDCC.y (external_definition, type_specifier2, sfr_reg_bit,
sft_attributes, struct_declaration, parameter_declaration,
type_name, start_block, declaration_list),
* src/SDCC.lex (check_type): support redefinition of typedef names
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3068
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Mon, 22 Dec 2003 10:47:25 +0000 (10:47 +0000)]
src/mcs51/gen.c (genPlus): added special handling for 256 byte aligned xdata arrays. Erik helped me with the if clause.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3067
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Mon, 22 Dec 2003 10:46:31 +0000 (10:46 +0000)]
(genPlus): added special handling for 256 byte aligned xdata arrays. Erik helped me with the if clause.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3066
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 20 Dec 2003 08:41:45 +0000 (08:41 +0000)]
* device/lib/ds390/tinibios.c (CpuSpeed): suppress unreachable code warning
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3065
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 20 Dec 2003 07:08:30 +0000 (07:08 +0000)]
* src/SDCCast.h,
* src/SDCCast.c (newAst_),
* src/SDCCicode.h,
* src/SDCCicode.c (ast2iCode, newiCode),
* src/SDCCglobl.h,
* src/SDCC.y (logical_and_expr, logical_or_expr, conditional_expr,
expr, statement, expression_statement, selection_statement,
iteration_statement, expr_opt, jump_statement): foundation for tracking
sequence points
* src/SDCCopt.c (killDeadCode): fixed bug #861580 (needs the sequence
point code too)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3064
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 19 Dec 2003 09:24:17 +0000 (09:24 +0000)]
* support/Util/SDCCerr.c,
* src/SDCCast.h,
* src/SDCCast.c (createCase, createDefault, decorateType),
* src/SDCClabel.c (labelUnreach),
* src/SDCC.y (labeled_statement, jump_statement): More improvements
to error messages.
* support/Util/SDCCerr.c (werrorfl): fixed a non-standard declaration
(with thanks to Stas Sergeev)
* device/include/time.h,
* device/lib/time.c (CheckTime): suppress unreachable code warning
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3063
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 18 Dec 2003 21:23:36 +0000 (21:23 +0000)]
* src/SDCCast.c (createIvalCharPtr),
* src/SDCCglue.c (printChar): fixed bug #862241 (an error in my fix for
bug #753752)
* support/regression/tests/nullstring.c: tests for these two bugs
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3062
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 18 Dec 2003 19:48:26 +0000 (19:48 +0000)]
* support/Util/SDCCerr.h,
* support/Util/SDCCerr.c (E_NOT_ALLOWED),
* src/SDCC.y (struct_declaration, struct_or_union_specifier): complain
about storage class and 'at' used inside struct or union
* src/SDCCBBlock.c (iCodeFromeBBlock),
* src/SDCCcse.c (ifxOptimize),
* src/SDCCglue.c (emitRegularMap, initPointer, printIvalStruct,
printIvalArray, printiValFuncPtr, printIvalCharPtr, printIvalPtr,
printIval, emitStaticSeg, emitOverlay),
* src/SDCClabel.c (deleteIfx),
* src/SDCCopt.c (replaceRegEqv, eBBlockFromiCode),
* src/SDCCast.c (resolveSymbols, createIvalStruct, createIvalArray,
gatherAutoInit, processParms),
* support/Util/SDCCerr.h,
* support/Util/SDCCerr.c (werrorfl): Support for better error location
reporting for post-parse errors.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3061
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 16 Dec 2003 19:46:43 +0000 (19:46 +0000)]
* src/SDCCval.c (valPlus, valMinus, valShift): fixed some problems with
implicit casts via union; they don't work on big endian systems
(possible fix for bug #861138)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3060
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 16 Dec 2003 05:02:50 +0000 (05:02 +0000)]
(committed on Frieder's behalf)
* src/mcs51/main.c: fixed the fix for bug #737001
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3059
4a8a32a2-be11-0410-ad9d-
d568d2c75423
borutr [Mon, 15 Dec 2003 07:57:44 +0000 (07:57 +0000)]
support/scripts/sdcc.nsi: updated for NSIS 2.0 beta 4
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3058
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Sun, 14 Dec 2003 03:04:37 +0000 (03:04 +0000)]
* support/makebin/makebin.c: put output in binary mode
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3057
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 13 Dec 2003 23:31:56 +0000 (23:31 +0000)]
* src/mcs51/main.c: fixed bug #737001 for the mcs51. SDCC clears xdata and data memory on startup. Set the environment variable SDCC_NOGENRAMCLEAR to disable this.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3056
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 13 Dec 2003 23:09:08 +0000 (23:09 +0000)]
* src/mcs51/main.c: fixed bug #737001 for the mcs51. SDCC clears xdata and data memory on startup. Set the environment variable SDCC_NOGENRAMCLEAR to disable this.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3055
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 13 Dec 2003 23:01:10 +0000 (23:01 +0000)]
made clearing of memory the default. There is an environment variable SDCC_NOGENRAMCLEAR to turn this off.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3054
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 13 Dec 2003 13:19:38 +0000 (13:19 +0000)]
src/mcs51/peephole.def, src/ds390/peephole.def: using the atomic test and clear instruction jbc (allows non-interrupt and interrupt code to safely compete for a resource without the non-interrupt code having to disable interrupts)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3053
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 13 Dec 2003 13:17:53 +0000 (13:17 +0000)]
using the atomic test and clear instruction jbc. Allows non-interrupt and interrupt code to safely compete for a resource
without the non-interrupt code having to disable interrupts. Moved peephole 251 to the end and renumbered two to get
ascending numbers.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3052
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 13 Dec 2003 13:16:08 +0000 (13:16 +0000)]
using the atomic test and clear instruction jbc. Allows non-interrupt and interrupt code to safely compete for a resource without the non-interrupt code having to disable interrupts.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3051
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 13 Dec 2003 06:56:07 +0000 (06:56 +0000)]
* src/SDCCicode.c (geniCodeAdd),
* src/SDCCast.c (decorateType): fixed bug #857753 (need to be careful
with valFromType if type might be a pointer and host is big endian).
* src/SDCCast.c (decorateType): unary plus compatible with all arithmetic
types, not just integer types.
* src/SDCCsymt.c (addSymChain): clarified error message when symbol is
multiply defined with mismatching "at" address.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3050
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 12 Dec 2003 20:14:36 +0000 (20:14 +0000)]
* src/ds390/main.c (PORT tininative_port): fixed bug #858416
* src/SDCCglue.c (printChar, printIvalChar, emitStaticSeg),
* src/SDCCast.c (createIvalCharPtr, stringToSymbol): handle strings
with embedded nulls (fixed bug #753752)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3049
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 12 Dec 2003 07:51:29 +0000 (07:51 +0000)]
* src/ds390/main.c (PORT tininative_port): fixed bug #858416
* src/SDCCglue.c (printChar, printIvalChar, emitStaticSeg),
* src/SDCCast.c (createIvalCharPtr, stringToSymbol): handle strings
with embedded nulls (fixed bug #753752)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3048
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Thu, 11 Dec 2003 23:07:59 +0000 (23:07 +0000)]
(src/mcs51/main.c_mcs51_genRAMCLEAR): using r0 instead of r1/r2. Apparently this did not see much testing (using r1 caused an endless loop)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3047
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Thu, 11 Dec 2003 23:05:43 +0000 (23:05 +0000)]
(_mcs51_genRAMCLEAR): using r0 instead of r1/r2. Apparently this did not see much testing (using r1 resulted in endless loop)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3046
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 11 Dec 2003 04:54:49 +0000 (04:54 +0000)]
* src/z80/ralloc.c: set DISABLE_PACK_HL = 1 as a temporary fix to bug #855165
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3045
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 10 Dec 2003 06:16:55 +0000 (06:16 +0000)]
* src/SDCCdebug.c (outputDebugSymbols, outputDebugStackSymbols, dumpSymInfo):
gracefully handle NULL memmap pointers
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3044
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 9 Dec 2003 07:17:29 +0000 (07:17 +0000)]
* src/SDCCopt.c (killDeadCode): change iCode type to DUMMY_READ_VOLATILE
instead of deleting the iCode when an operand is volatile
* src/z80/gen.c (genDummyRead),
* src/mcs51/gen.c (genDummyRead),
* src/ds390/gen.c (genDummyRead),
* src/hc08/gen.c (genDummyRead): handle operands in IC_LEFT and/or IC_RIGHT,
not just IC_RIGHT
* src/SDCCicode.c (geniCodeCall): fixed bug #851607
* src/SDCC.y: fixed bug #850420
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3043
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Mon, 8 Dec 2003 07:22:47 +0000 (07:22 +0000)]
--portmode=180 instead of z180. The syntax around the z80 I/O instructions may change slightly.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3042
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 5 Dec 2003 18:15:33 +0000 (18:15 +0000)]
Peter Townson's z80 in/out, more to bit/sbit/idata, link to indent, 'at' and initialization, #pragma preproc_asm, some ds390 options, array in code space, 2.3.6
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3041
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 5 Dec 2003 06:37:18 +0000 (06:37 +0000)]
Applied z80 i/o port patch from Peter Townson and fixed some operators
to better handle operands in A register.
* device/include/z180.h
* src/SDCC.y
* src/SDCCglue.c
* src/z80/gen.c
* src/z80/gen.h
* src/z80/main.c
* src/z80/peeph-z80.def
* src/z80/peeph.def
* src/z80/z80.h
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3040
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 3 Dec 2003 08:14:39 +0000 (08:14 +0000)]
* src/SDCCsymt.c (addSymChain, compareTypeExact): fixed bug #838241 again
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3039
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Mon, 1 Dec 2003 15:06:22 +0000 (15:06 +0000)]
* device/lib/hc08/_mullong.c: Removed extra #endif
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3038
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Mon, 1 Dec 2003 07:37:58 +0000 (07:37 +0000)]
* sim/ucsim/hc08.src/inst.cc,
* sim/ucsim/hc08.src/hc08mac.h: fixed some problems with CC flag bits and
carries from x to h
* src/hc08/gen.c (aopAdrStr): fixed problem with 16 bit immediate
* src/hc08/gen.c (XAccRsh): fixed problem with right shift
* device/include/stdarg.h: fixed varargs for hc08
* device/lib/Makefile.in,
* device/lib/hc08/Makefile,
* device/lib/hc08/_mulint.c,
* device/lib/hc08/_mullong.c: fixed some endian problems
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3037
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 28 Nov 2003 21:56:03 +0000 (21:56 +0000)]
sdcc/src/mcs51/gen.c (genMultOneByte): help peephole 105
sdcc/src/mcs51/peeph.def: added peephole 186.e array access in code space
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3036
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 28 Nov 2003 21:54:44 +0000 (21:54 +0000)]
(genMultOneByte): help peephole 105
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3035
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 28 Nov 2003 21:52:37 +0000 (21:52 +0000)]
added peephole 186.e for char indexed integer array access in code space
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3034
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 28 Nov 2003 21:04:50 +0000 (21:04 +0000)]
device/lib/_gptrget.c, device/lib/_gptrput.c: P2 not used any more (related to #850747, #785979)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3033
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 28 Nov 2003 21:03:10 +0000 (21:03 +0000)]
P2 not used any more (related to #850747, #785979)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3032
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 27 Nov 2003 09:14:51 +0000 (09:14 +0000)]
* src/SDCClrange.c (findNextUseSym, rlivePoint): fixed bug #849795
* src/SDCCast.c (astErrors): fixed bug #846007
* src/SDCCsymt.c (checkFunction): fixed follow-up bug on bug #846007
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3031
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 26 Nov 2003 18:19:53 +0000 (18:19 +0000)]
* src/SDCCast.c (decorateType): disabled a transformation I added in
revision 1.188 (access to fields of a structure at an absolute address);
it breaks with bitfields, extern declarations, and gcse analysis.
* src/SDCCopt.c (isLocalWithoutDef): if ADDRESS_OF applied to a symbol, it
could be assigned through a pointer, so don't complain.
* src/SDCCast.c (astErrors),
* src/SDCCast.h,
* src/SDCCglue.c (emitRegularMap): fixed bug #847813
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3030
4a8a32a2-be11-0410-ad9d-
d568d2c75423
vrokas [Wed, 26 Nov 2003 16:32:29 +0000 (16:32 +0000)]
*** empty log message ***
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3029
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bela [Wed, 26 Nov 2003 14:38:49 +0000 (14:38 +0000)]
typo corrected
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3028
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 26 Nov 2003 07:33:32 +0000 (07:33 +0000)]
* src/SDCC.y (pointer): fixed bug #846006
* support/Util/SDCCerr.c: made W_PTR_TYPE_INVALID message clearer
* src/SDCCast.c (decorateType): fixed bug #846009
* src/ds390/peeph.def,
* src/ds390/gen.c (genAnd, genOr),
* src/mcs51/peeph.def,
* src/mcs51/gen.c (genAnd, genOr): fixed bug #846777
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3027
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 25 Nov 2003 04:57:05 +0000 (04:57 +0000)]
Fixed several common-sub-expression bugs (#772861, #768380, & #755323)
* src/SDCCdflow.c
* src/SDCCcse.c
* src/SDCCcse.h
* src/SDCCBBlock.h
* src/SDCCBBlock.c
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3026
4a8a32a2-be11-0410-ad9d-
d568d2c75423
kflittner [Sun, 23 Nov 2003 12:43:30 +0000 (12:43 +0000)]
fixed bug #845089
* src/SDCCbitv.h,
* src/SDCCbitv.c: added function to free a bitvector
* src/SDCClrange.h,
* src/SDCClrange.c: added function to recompute the liveranges
* src/avr/ralloc.c,
* src/ds390/ralloc.c,
* src/hc08/ralloc.c,
* src/mcs51/ralloc.c,
* src/pic/ralloc.c,
* src/pic16/ralloc.c,
* src/xa51/ralloc.c,
* src/z80/ralloc.c: recompute the liveranges after register packing
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3025
4a8a32a2-be11-0410-ad9d-
d568d2c75423
kflittner [Fri, 21 Nov 2003 19:31:54 +0000 (19:31 +0000)]
* src/SDCCloop.c (newInduction): fixed bug #845630
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3024
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 21 Nov 2003 05:11:24 +0000 (05:11 +0000)]
* src/SDCCsymt.c (compareTypesExact): disabled debugging output
inadvertantly left behind from my 2003-11-12 change
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3023
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 20 Nov 2003 16:37:58 +0000 (16:37 +0000)]
Updated headers I neglected to commit yesterday.
* src/SDCClrange.h,
* src/SDCCicode.h
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3022
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 19 Nov 2003 17:23:35 +0000 (17:23 +0000)]
* src/SDCCcse.c (algebraicOpts): fixed bug #773153
* src/SDCClrange.c (rlivePoint): need to mark IC_RESULT used if POINTER_GET op
* src/SDCCopt.c (eBBlockFromiCode),
* src/SDCClrange.c (hashiCodeKeys, sequenceiCode, computeLiveRanges): seperated
the creation of the key hash table from the sequencing so it can be used
earlier (for some GCSE bug fixes still pending)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3021
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 15 Nov 2003 20:18:33 +0000 (20:18 +0000)]
src/mcs51/gen.c (genPlus): generate shortcut for adding 0xab00
support/regression/tests/addsub.c: testing genPlus shortcut
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3020
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 15 Nov 2003 20:16:15 +0000 (20:16 +0000)]
(genPlus): generate shortcut for adding a literal which lower byte(s) are zero
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3019
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 15 Nov 2003 20:13:37 +0000 (20:13 +0000)]
added one test for adding a literal which lowest bytes is zero (for genPlus shortcut)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3018
4a8a32a2-be11-0410-ad9d-
d568d2c75423
borutr [Sat, 15 Nov 2003 19:00:20 +0000 (19:00 +0000)]
* src/SDCCmain.c: fixed bug #841645: -MM command line option passed to sdcpp
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3017
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Sat, 15 Nov 2003 08:38:38 +0000 (08:38 +0000)]
* src/SDCCcse.c (cseBBlock): fixed bug #527779
* src/SDCCcse.c (deleteGetPointers): rewrote so that the set
ordering is immaterial.
* src/SDCCdflow.c (mergeInExprs): fixed bug #587536
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3016
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 14 Nov 2003 08:33:10 +0000 (08:33 +0000)]
* src/SDCCicode.c (geniCodeAddressOf): fixed part of bug #840381
* src/SDCCopt.c (replaceRegEqv, isLocalWithoutDef): fixed other part
(SIGSEV) of bug #840381
* src/SDCCmain.c (linkEdit, assemble): fixed bug #841606 (don't
unlink new file before rename if new and old filenames are the same)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3015
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Thu, 13 Nov 2003 21:17:25 +0000 (21:17 +0000)]
src/mcs51/main.c: started fixing bug #737001 (SDCC not clearing uninitialized variables) for the mcs51. Set environment variable SDCC_GENRAMCLEAR to test.
xdata initialization slightly shorter
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3014
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Thu, 13 Nov 2003 21:15:36 +0000 (21:15 +0000)]
started fixing bug #737001 (SDCC not clearing uninitialized variables) for the mcs51. Set environment variable SDCC_GENRAMCLEAR to test.
xdata initialization slightly shorter
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3013
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Wed, 12 Nov 2003 08:30:32 +0000 (08:30 +0000)]
* src/SDCCsymt.h,
* src/SDCCsymt.c (addSymTypeChain, compareTypesExact): fixed bugs
#838241 & 780691 (basicly the same bug)
* src/SDCCBBlock.c (iCode2eBBlock): fixed bug #840148
* src/SDCCBBlock.c (iCodeFromeBBlock): fixed bug #840162
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3012
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Tue, 11 Nov 2003 13:43:02 +0000 (13:43 +0000)]
* src/SDCCmain.c (linkEdit): fix #834252
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3011
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 11 Nov 2003 07:21:52 +0000 (07:21 +0000)]
* src/SDCCast.c (removePostIncDecOps, removePreIncDecOps),
* src/SDCCast.h,
* src/SDCC.y: fixed bug #819403
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3010
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Sun, 9 Nov 2003 01:51:10 +0000 (01:51 +0000)]
* support/regression/fwk/lib/testfwk.c: printn is recursive and thus needs
the reentrant attribute.
* src/hc08/gen.c (genPackBits): added missing stack readjustment
* sim/ucsim/hc08.src/inst.cc (inst_mov): fixed bugs with mov instruction
simulation
* src/SDCCast.c (decorateType): fixed bug with storage class not being
updated during pointer dereference; f.e. ~(((char *)1)*) was being
erroneously reduced to a literal.
* src/hc08/ralloc.c (packRegisters, rematStr),
* src/hc08/gen.c (aopForRemat): allow literals to be rematerialized in
some cases
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3009
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 8 Nov 2003 20:30:43 +0000 (20:30 +0000)]
doc/Makefile: readded test_suite_spec and cdbfileformat
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3008
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 8 Nov 2003 20:29:14 +0000 (20:29 +0000)]
readded test_suite_spec and cdbfileformat (were accidentally commented out)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3007
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 8 Nov 2003 15:49:46 +0000 (15:49 +0000)]
* src/mcs51/main.c: fixed bug #838385. Thanks to Josef Pavlik for finding and fixing
* doc/sdccman.lyx: changed from 'article' to 'book'
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3006
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 8 Nov 2003 15:43:17 +0000 (15:43 +0000)]
some additions and changed from 'article' to 'book'. Hopefully that does not break to much.
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3005
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Sat, 8 Nov 2003 15:40:24 +0000 (15:40 +0000)]
fixed bug #838385. Thanks to Josef Pavlik for finding and fixing
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3004
4a8a32a2-be11-0410-ad9d-
d568d2c75423
bernhardheld [Sat, 8 Nov 2003 09:29:11 +0000 (09:29 +0000)]
* device/include/stdlib.h: include malloc.h to comply with ANSI
* support/regression/tests/malloc.c: include stdlib.h instead of malloc.h
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3003
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 7 Nov 2003 17:31:22 +0000 (17:31 +0000)]
* doc/Makefile:sdccman.pdf should build with correct references (more info in commit msg)
* doc/clean.mk: also remove *.out files
* doc/sdccman.lyx: some additions, larger top/bottom margins
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3002
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 7 Nov 2003 17:28:13 +0000 (17:28 +0000)]
some additions, larger top/bottom margins (for a4 and letter)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3001
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 7 Nov 2003 17:25:28 +0000 (17:25 +0000)]
- removed dependency from l2hidx.ist (not in the directory and adds an unwanted section)
- always use dvipdf to generate the pdf file (pdflatex creates docs for acrobat reader >= 5.0)
- two runs of latex before and after makeindex (needed for correct pagenumbers in index)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3000
4a8a32a2-be11-0410-ad9d-
d568d2c75423
frief [Fri, 7 Nov 2003 17:24:26 +0000 (17:24 +0000)]
also remove *.out files
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2999
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Fri, 7 Nov 2003 07:01:10 +0000 (07:01 +0000)]
* src/SDCC.y: fixed bug #837365
* support/regression/tests/bitopcse.c
* src/hc08/gen.c (genPointerGet): Don't assume pointer operand is
a symbol (might be valop instead)
* device/lib/Makefile.in: added errno.c to HC08SOURCES
* device/lib/clean.mk: added hc08 to the cleaning list
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2998
4a8a32a2-be11-0410-ad9d-
d568d2c75423
borutr [Fri, 7 Nov 2003 06:25:50 +0000 (06:25 +0000)]
* configure, configure.in, sdcc_vc_in.h, sdcconf_in.h: reverted changes,
made 2003-11-04
* support/Util/NewAlloc.c, as/hc08/lklibr.c, as/mcs51/lklibr.c,
as/z80/aslist.c, as/z80/assym.c: removed inclusion of nonstandard malloc.h;
malloc is declared in standard stdlib.h
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2997
4a8a32a2-be11-0410-ad9d-
d568d2c75423
borutr [Fri, 7 Nov 2003 06:25:14 +0000 (06:25 +0000)]
* support/Util/NewAlloc.c, as/hc08/lklibr.c, as/mcs51/lklibr.c,
as/z80/aslist.c, as/z80/assym.c: removed inclusion of nonstandard malloc.h;
malloc is declared in standard stdlib.h
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2996
4a8a32a2-be11-0410-ad9d-
d568d2c75423
borutr [Fri, 7 Nov 2003 06:24:28 +0000 (06:24 +0000)]
* configure, configure.in, sdcc_vc_in.h, sdcconf_in.h: reverted changes,
made 2003-11-04
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2995
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 6 Nov 2003 14:52:13 +0000 (14:52 +0000)]
* device/lib/hc08/Makefile: need to clean .rel not .o files
* src/hc08/gen.c (genDjnz): can't use djnz with extended addressing mode
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2994
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Thu, 6 Nov 2003 07:16:24 +0000 (07:16 +0000)]
* src/port.h,
* src/hc08/main.c,
* src/mcs51/main.c,
* src/ds390/main.c,
* src/z80/main.c,
* src/avr/main.c,
* src/pic/main.c,
* src/pic16/main.c,
* src/xa51/main.c: added hasExtBitOp & oclsExpense functions to ports
* src/SDCCicode.c: changed several IS_FARSPACE tests to isOclsExpensive
tests (which uses the port's oclsExpense function)
* src/SDCC.y,
* src/SDCCast.c,
* src/SDCCicode.c,
* src/hc08/gen.c,
* src/ds390/gen.c,
* src/mcs51/gen.c: added support for the SWAP iCode (RFE #834167)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2993
4a8a32a2-be11-0410-ad9d-
d568d2c75423
epetrich [Tue, 4 Nov 2003 14:19:03 +0000 (14:19 +0000)]
* src/SDCCcse.c (ifxOptimize),
* src/SDCClabel.c (labelIfx, deleteIfx): When the condition to
an IFX iCode is volatile, convert to DUMMY_READ_VOLATILE instead
deleting the IFX iCode.
* src/hc08/ralloc.c: reduced unneeded slocs
* src/hc08/gen.c: fixed bug in asmopToBoolean
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2992
4a8a32a2-be11-0410-ad9d-
d568d2c75423