+2003-08-23 Frieder Ferlemann <Frieder.Ferlemann@web.de>
+
+ * doc/sdccman.lyx: various additions and updates. Rearranged sections
+
+2003-08-22 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
+
+ Z80 and MCS51 linkers complaint if a public symbol is defined
+ in more than one library module:
+
+ * as/mcs51/lklib.c
+ * link/z80/lklib.c
+ * as/mcs51/Makefile.in
+
+2003-08-22 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+ A few small changes that speed up the peephole optimizer.
+
+ * src/SDCCpeeph.c
+
+2003-08-22 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+ Try to make the peephole optimizer smarter by maintaining
+ an association between the assembly source code and the
+ iCodes that originated them. Put this information to use
+ with a new peephole rule condition "notVolatile" so that
+ the rules can be aggressive yet still safe.
+
+ * src/SDCCpeeph.c
+ * src/SDCCpeeph.h
+ * src/mcs51/gen.c
+ * src/mcs51/peeph.def
+
+2003-08-20 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+ Fixed bug #741761
+
+ * src/mcs51/gen.c (aopForSym, leftRightUseAcc),
+ * src/ds390/gen.c (aopForSym, leftRightUseAcc): preserve A and B
+ if the left or right operand symbols have the accuse flag set.
+
+2003-08-20 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+ Changed the type of the result of the ! (NOT) operator to char;
+ previously it returned the same type as the source. This allows
+ us to eliminate all the genFloatNot functions (all of its target
+ implementations were very buggy) since !float can use the same
+ code as !long now.
+
+ * src/SDCCicode.c (ast2iCode): ! returns char
+ * src/mcs51/gen.c (genNot, genNotFloat),
+ * src/ds390/gen.c (genNot, genNotFloat),
+ * src/z80/gen.c (genNot, genNotFloat),
+ * src/pic/gen.c (genNot, genNotFloat),
+ * src/pic16/gen.c (genNot, genNotFloat): eliminated genNotFloat
+
+2003-08-19 Bernhard Held <bernhard@bernhardheld.de>
+
+ pic patch provided by Slade Rich <slade_rich@yahoo.com>
+ 1. Interrupt would not compile properly. Ensure PCLATH register is saved
+ during interrupts. Ensure WSAVE is located at a shared bank address.
+ 2. Fixed page selection in some places
+ 3. Fixed BTFSS/C to where necessary use registers directly and not simply
+ the registers name strings.
+ 4. Fixed "signed / unsigned compare" compiler warnings.
+ 5. The PIC port manages its own allocation of the general purpose
+ registers, but makes no attempt to reuse them. As a result when
+ compiling it soon runs out of general purpose registers. Some
+ additional code was added to the files pcode.c and device.c to walk
+ through the function call tree and rename the registers so that they
+ get reused.
+
+ * src/pic/device.c
+ * src/pic/gen.c
+ * src/pic/glue.c
+ * src/pic/pcode.c
+ * src/pic/pcode.h
+ * src/pic/ralloc.c
+ * src/pic/ralloc.h
+ * src/pic/genarith.c: Fixed problems with PIC 14 port in functions
+ genPlus() & genMinus() when the result is the same as left or right
+
+2003-08-18 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+ * src/z80/gen.c (isUnsplitable, fetchPairLong): fixed bug #770454
+
+2003-08-18 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+ Made bitfield a distinct type from bit so that bitfields
+ convert as per ANSI C and bits retain their traditional
+ boolean style behaviour. Implemented bitfield support in
+ the z80 port.
+
+ * src/SDCCsymt.h,
+ * src/SDCCsymt.c,
+ * src/SDCCast.c,
+ * src/cdbFile.c,
+ * src/mcs51/gen.c,
+ * src/ds390/gen.c: bit v bitfield split
+ * src/z80/gen.c: New support for bitfields
+ * support/regression/tests/bitfields.c: reenabled z80,
+ added more tests
+
+2003-08-17 Frieder Ferlemann <Frieder.Ferlemann@web.de>
+
+ Rules 246.x, 247.x relate to bitfields, the others speed up
+ access to xdata mapped I/O devices.
+
+ * src/mcs51/peeph.def: added 26 peepholes 246.x - 248.x, 180.x
+
+2003-08-16 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+ Cleaned up genPackBits and genUnpackBits and added two helper
+ functions, emitPtrByteGet & emitPtrByteSet. Added optimizations
+ for literal assignments in genPackBits (thanks to Frieder for
+ reminding me).
+
+ * src/mcs51/gen.c
+ * src/ds390/gen.c
+
+2003-08-16 Erik Petrich <epetrich@ivorytower.norman.ok.us>
+
+ Fixed bug #748310 (pointer to function type mishandled when the
+ function name is omitted). Also fixed a SIGSEGV when a function
+ attribute (reentrant, etc) is used on a non-function or on a
+ function but misplaced before the parameter list.
+
+ * src/SDCC.y (abstract_declarator, abstract_declaractor2): fixed
+ bug #748310
+ * src/SDCC.y (declarator2_function_attributes): avoided SIGSEGV
+ * support/Util/SDCCerr.h,
+ * support/Util/SDCCerr.c: Added func attr misuse error msg
+
+2003-08-13 Bernhard Held <bernhard@bernhardheld.de>
+
+ Fixed bug #787649 by anonymous
+ * src/SDCCglue.c (emitRegularMap): added emission of sloc for func ptr
+ * src/ds390/gen.c (aopForSym): fixed func ptr in sloc
+
2003-08-14 Erik Petrich <epetrich@ivorytower.norman.ok.us>
Fixed numerous bitfield problems.
* src/mcs51/gen.c (genPackBits, genUnpackBits): fixed mask bugs
* src/ds390/gen.c (genPackBits, genUnpackBits): fixed mask bugs
* support/regression/tests/bitfields.c: tests added
-
+
2003-08-13 Erik Petrich <epetrich@ivorytower.norman.ok.us>
Made the constant following the "interrupt" keyword optional. If
* link\z80\lkdata.c
* link\z80\lklibr.c
* link\z80\lkmain.c
- * src\SDCCglue.c
+ * src\SDCCglue.c
2003-07-28 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>