* src/SDCCmain.c: signal handling is switched off by SDCC_LEAVE_SIGNALS
[fw/sdcc] / ChangeLog
1 2003-02-09  Bernhard Held <bernhard@bernhardheld.de>
2
3         * src/SDCCmain.c: signal handling is switched off by SDCC_LEAVE_SIGNALS
4
5 2003-02-09  Bernhard Held <bernhard@bernhardheld.de>
6
7         * src/SDCCmain.c: signal handling is switched off by --debug
8         * doc/Makefile: small fix for install; use clean.mk again
9         * doc/clean.mk: clean *.pdf and *.html too
10
11 2003-02-08  Bernhard Held <bernhard@bernhardheld.de>
12
13         * device/lib/_mulint.c: small fix for large/ds390 --int-long-reent resp. --stack-auto
14         * device/lib/printfl.c: fix a ds390 bug by making it portable
15         * src/SDCCsymt.c (initCSupport): fix compile warning on Cygwin
16         * src/SDCCopt.c (cnvToFloatCast): fix compile warning on Cygwin
17         * src/SDCCopt.c (cnvFromFloatCast): fix compile warning on Cygwin
18         * debugger/mcs51/cmd.c: converted multi-line string literals
19         * sim/ucsim/globals.cc: converted multi-line string literals
20         * src/SDCCmain.c: introduced signal handler to remove temp files
21         * doc/Makefile: small tweaks, implement clean
22         * doc: removed generated files
23
24 2003-02-05  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
25
26         * as/mcs51/aslink.h, as/mcs51/lkihx.c, as/mcs51/lkrloc.c:  Applied
27         patch from Jan Rejlek <jr@apex-lib.cz> to fix Bug 677692: "Extended
28         Address Record is not correctly generated for DS390."
29
30 2003-02-02  Borut Razem <borut.razem@siol.net>
31
32         * Makefile.bcc: removed non existing cpp project and non compilable izt project from makefile
33         * as/mcs51/asm.h: fixed compilation with Borland C
34         * support/cpp2/Makefile.bcc: added rule to generate auto-host.h
35         * support/cpp2/auto-host_vc_in.h: fixed compilation with Borland C
36         * src/mcs51/mcs51a.dsp: corrected misspelled project name from msc51a to mcs51a
37         * src/avr/Makefile.bcc, src/ds390/Makefile.bcc, src/izt/Makefile.bcc,
38         src/mcs51/Makefile.bcc, src/pic16/Makefile.bcc, src/xa51/Makefile.bcc,
39         src/z80/Makefile.bcc: delete $(LIB) only if exist
40         * src/Makefile.bcc, src/pic/Makefile.bcc:  fixed compilation with Borland C
41
42 2003-02-02  Bernhard Held <bernhard@bernhardheld.de>
43
44         * device/include/malloc.h: introduced NULL
45         * device/include/string.h: introduced NULL
46         * device/include/stdlib.h: introduced NULL
47         * device/lib/_memcpy.c: removed NULL
48         * device/lib/_strcat.c: removed NULL
49         * device/lib/_strchr.c: removed NULL
50         * device/lib/_strcmp.c: removed NULL
51         * device/lib/_strcpy.c: removed NULL
52         * device/lib/_strcspn.c: removed NULL
53         * device/lib/_strlen.c: removed NULL
54         * device/lib/_strncat.c: removed NULL
55         * device/lib/_strncmp.c: removed NULL
56         * device/lib/_strncpy.c: removed NULL
57         * device/lib/_strpbrk.c: removed NULL
58         * device/lib/_strrchr.c: removed NULL
59         * device/lib/_strspn.c: removed NULL
60         * device/lib/_strstr.c: removed NULL
61         * device/lib/_strtok.c: removed NULL
62         * device/lib/malloc.c: removed NULL, include own header
63
64 2003-02-02    <johan@balder>
65
66         * src/mcs51/ralloc.c (packForPush): fixed bug #631653, maybe other ports need this too? At least now some new alerts in SDCCBBlock.c and SDCCicode.c gives an early warning
67         * support/regression/fwk/lib/testfwk.c: div and mod isn't broken anymore
68         * regressions ds390/spec.mk and mcs51/spec.mk (timeout): my good old balder isn't fast enough for some tests
69         * src/z80/gen.c (genZ80Code): added c-lines in asm comments
70         * as/z80/asm.h (NINPUT): increased for long c-comments in regression tests
71         * src/z80/gen.c (genRightShiftLiteral): fixed the (char)(-3)>>8 (I think)
72
73 2003-02-01  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
74
75         * src/SDCCmain.c: Fixed bug 678574: "ds390: ASlink-Error-Stack overlaps
76         area 'DATA'"
77
78 2003-02-01    <johan@balder>
79
80         * src/SDCCval.c (valBitwise): fixed Karl's "2 | (1<<8)"
81
82 2003-01-31    <johan@CP255758-A>
83
84         * src/ds390/main.c (_ds390_genAssemblerPreamble): applied Jan Rejlek's >64K startup patch
85
86 2003-01-30    <johan@balder>
87
88         * src/SDCCBBlock.c: automatic bug detection
89         * src/SDCCicode.c: automatic bug detection
90
91 2003-01-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
92
93         * src/SDCCglobl.h:   now --xram-size 0 works
94         * src/SDCCmain.c:    now --xram-size 0 works
95
96 2003-01-29    <johan@balder>
97
98         * src/almosteverything: changed OP_DEFS and OP_USES from macros to functions to catch symbol abuse (a hot topic in the bug list :)
99
100 2003-01-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
101
102         * as/mcs51/aslink.h: Added options --xram-size and --code-size 
103         * as/mcs51/lkdata.c: Added options --xram-size and --code-size 
104         * as/mcs51/lkmain.c: Added options --xram-size and --code-size 
105         * as/mcs51/lkmem.c:  Added options --xram-size and --code-size 
106         * src/SDCCglobl.h:   Added options --xram-size and --code-size 
107         * src/SDCCmain.c:    Added options --xram-size and --code-size 
108
109 2003-01-28  Bernhard Held <bernhard@bernhardheld.de>
110
111         * src/ds390/gen.c: fix deps by replacing <common.h> with "common.h"
112         * src/SDCC.lex: rename P_OVERLAY to P_OVERLAY_ for cross-gcc 3.2 MINGW32
113
114 2003-01-27    <johan@balder>
115
116         * src/SDCC.y: fixed bug #613764
117
118 2003-01-26    <johan@balder>
119
120         * src/SDCClrange.c:  fixed Bernhard's "char * code ptr = &c"
121         * src/SDCCsymt.h: fixed bug #673374
122         * src/SDCCglue.c: fixed bug #661910
123         * src/SDCCast.c: fixed bug #458099 and 673374
124
125 2003-01-26  Bernhard Held <bernhard@bernhardheld.de>
126
127         * as/mcs51/strcmpi.c: added, provides Aurelien Jarno's as_strcmpi(); strcmpi() is not ANSI
128         * as/mcs51/strcmpi.h: added
129         * as/mcs51/asm.h: remove ugly "#define strcmpi strcmp"
130         * as/mcs51/aslink.h: remove ugly "#define strcmpi strcmp"
131         * as/mcs51/asmain.c: strcmpi -> as_strcmpi
132         * as/mcs51/assym.c: strcmpi -> as_strcmpi
133         * as/mcs51/lkmem.c: strcmpi -> as_strcmpi
134         * as/mcs51/lknoice.c: strcmpi -> as_strcmpi
135         * as/mcs51/lksym.c: strcmpi -> as_strcmpi
136         * as/mcs51/Makefile.aslink: new module strcmpi
137         * as/mcs51/Makefile.asx8051: new module strcmpi
138         * as/mcs51/Makefil.bcc: new module strcmpi
139         * as/mcs51/Makefile.in: new module strcmpi
140         * sim/ucsim/s51.src/uc390.cc (get_mem_size): make RAM big enough for tinibios
141
142 2003-01-26    <johan@balder>
143
144         * src/SDCCglue.c: reverted back to 1.124
145         * src/SDCCast.c: reverted back to 1.156
146         * src/mcs51/gen.c (aopGet): applied Frieder's efficiency patch
147
148 2003-01-25    <johan@balder>
149
150         * src/SDCCglue.c: A better fix for bug #661910
151         * src/SDCCast.c: A better fix for bug #661910
152         * src/SDCCglue.c (emitRegularMap): That was a little too efficient
153
154 2003-01-24  Bernhard Held <bernhard@bernhardheld.de>
155
156         * src/Makefile.in: remove spawn.o
157         * src/SDCCmain.c: remove spawn.h
158         * src/SDCCmain.c (printVersionInfo): report MINGW32 instead of UNIX
159         * src/spawn.c: removed
160         * src/spawn.h: removed
161         * support/regression/ports/ds390/spec.mk: link with -r
162
163 2003-01-24    <johan@CP255758-A>
164
165         * src/ds390/gen.c (aopOp): fixed bug #667458
166         * src/SDCCglue.c (emitRegularMap): fixed bug #458099 again
167         * src/SDCCast.c (createIvalCharPtr): fixed bug #661910
168         (createIvalCharPtr): an ival doesn't always have a storage class anymore
169
170 2003-01-24  Bernhard Held <bernhard@bernhardheld.de>
171
172         * src/mcs51/peeph.def: better assembler identation by Frieder
173         * src/mcs51/gen.c: better assembler identation by Frieder
174
175 2003-01-22  Bernhard Held <bernhard@bernhardheld.de>
176
177         * as/z80/string.h: removed for gcc 3.2
178         * support/makebin/makebin.c: #include <string.h> for gcc 3.2
179         * src/pic/pcode.c (get_op_from_instruction): fix concatenation of string literals with __FUNCTION__ for gcc 3.2
180
181 2003-01-19  Bernhard Held <bernhard@bernhardheld.de>
182
183         * src/SDCCmain.c (linkEdit): rename mem and map files even in case of failure
184         * src/SDCCpeeph.c (replaceRule): fix bug #663503
185         * support/regression/Makefile: separate temp files for ports
186         * support/regression/generate-cases.py: separate temp files for ports
187         * src/mcs51/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
188         * src/ds390/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
189
190 2003-01-19  Bernhard Held <bernhard@bernhardheld.de>
191
192         * moved tinitalk to device/examples/ds390
193
194 2003-01-14  Bernhard Held <bernhard@bernhardheld.de>
195
196         * as/mcs51/lkmem.c: rflag is for DS390
197         * src/SDCCglobl.h: removed out_name and options stackOnData, genericPtr
198         * src/SDCCmain.c (optionsTable, setDefaultOptions): removed --stack-after-data and --generic
199                          (linkEdit): move mem- and map-files the same way as ihx-files
200         * src/z80/main.c (_setDefaultOptions): removed --generic
201         * src/SDCCmain.c (_processC1Arg, parseCmdLine, main): --c1mode works again
202         * src/SDCCglue.c (createInterruptVect, glue): --c1mode works again
203         * src/pic/glue.c (picglue): --c1mode works again
204         * src/pic16/glue.c (pic16glue): --c1mode works again
205         * src/asm.c (printCLine): fix #660034
206
207 2003-01-13  Bernhard Held <bernhard@bernhardheld.de>
208
209         * src/ds390/peeph.def: fix #123; add 14 rules by Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>, 1 by Frieder
210         * src/mcs51/peeph.def: fix #123; add 14 rules by Fiorenzo, 1 by Frieder
211         * src/mcs51/gen.c (genFunction): emit r0 instead of ar0 by Fiorenzo
212         * as/mcs51/lkmem (summary): better fix for sp problem
213         * src/SDCCglue.c (glue): __start_stack - 1, saves 1 byte!
214         * src/ds390/main.c (_ds390_finaliseOptions, _tininative_finaliseOptions): stack_loc = 0x400008
215         * support/regression/ports/*/spec.mk: moving testfwk-object to port dir allow parallel execution of regression tests
216                                               remove --stack-after-data
217
218 2003-01-12  Bernhard Held <bernhard@bernhardheld.de>
219
220         * src/SDCCmain.c (main): port->finaliseOptions() moved for z80 linking
221         * src/SDCCutil.c (join): ugly bug: missing '\0'
222         * as/mcs51/lkmem.c (summary): sp on address 7 is safe
223
224 2003-01-11  Bernhard Held <bernhard@bernhardheld.de>
225
226         * src/SDCCmain.c (assemble, linkEdit): preparations for -o
227         * src/port.h: typo
228         * src/pic/main.c (_asmCmd): gpasm supports -o
229         * src/z80/main.c: more general macros
230         * device/lib/Makefile.in: remove intermediate files
231
232 2003-01-11  Bernhard Held <bernhard@bernhardheld.de>
233
234         * .version: Bumped version number to 2.3.3
235         * src/SDCCBBlock.c: new option -o
236         * src/SDCCglobl.h: new option -o
237         * src/SDCCglue.c: new option -o
238         * src/SDCCmain.c: new option -o
239         * src/asm.c: new option -o
240         * src/ds390/main.c: new option -o
241         * src/pic/glue.c: new option -o
242         * src/pic/pcode.c: new option -o
243         * src/pic/ralloc.c: new option -o
244         * src/pic16/glue.c: new option -o
245         * src/pic16/pcode.c: new option -o
246         * src/pic16/ralloc.c: new option -o
247         * src/z80/main.c: new option -o
248         * device/lib/Makefile.in: use -o
249         * support/regression/ports/ds390/spec.mk: use -o
250         * support/regression/ports/gbz80/spec.mk: use -o
251         * support/regression/ports/mcs51/spec.mk: use -o
252         * support/regression/ports/mcs51-stack-auto/spec.mk: use -o
253         * support/regression/ports/z80/spec.mk: use -o
254         * support/regression/ports/ucz80/spec.mk: use -o
255         * support/regression/ports/xa51/spec.mk: use -o
256         * support/regression/fwk/lib/timeout.c: fix usage string
257
258 2003-01-09  Bernhard Held <bernhard@bernhardheld.de>
259         * src/mcs51/gen.c (genPlus): replaced "mov b,acc" by "mov b,a" Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>
260         
261 2003-01-07    <johan@balder>
262
263         * src/SDCCast.c (decorateType): fixed bug #600035
264
265 2003-01-07  Bernhard Held <bernhard@bernhardheld.de>
266         * as/mcs51/lkmem.c: added several l-modifiers to printf to remove warnings
267         * as/mcs51/lkaomf51.c: #include <ctype.h> to remove warnings
268         * src/pic/main.c (_hasNativeMulFor): outcommented unused variables to remove warnings
269         * src/pic/pcode.c: outcommented unused variable to remove warnings
270         * src/pic/ralloc.c: outcommented unused variable to remove warnings
271
272 2003-01-06    <karl@turbobit.com>
273         * sim/ucsim/cmd.src/command.cc: fixed so "break xram r 0x7654" works again in
274    regression tests.
275
276 2003-01-06    <johan@balder>
277
278         * src/SDCCicode.c: fixed array add
279
280 2002-01-05  Bernhard Held <bernhard@bernhardheld.de>
281         * src/SDCCmacro.c: MAX_STRING_LENGTH increased to 2048; was too small for regression tests
282         * support/regression/ports/host/support.c: #include <stdarg.h> for gcc 3.2
283
284 2003-01-04    <johan@balder>
285
286         * src/SDCCval.c (getNelements): fixed the initialized array of structures
287
288 2002-12-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
289         * as/mcs51/Makefile.bcc: fixed typo lkomf51.o -> lkaomf51.o
290
291 2002-12-28  Bernhard Held <bernhard@bernhardheld.de>
292         * src/mcs51/peeph.def: added rules 234 and 235 from Frieder Ferlemann <frieder.ferlemann@web.de>
293         * support/regression/tests/bug-524697.c: fit mem usage into 8032
294
295 2002-12-28  Bernhard Held <bernhard@bernhardheld.de>
296         * src/mcs51/gen.c (aopGetUsesAcc): inserted missing "return FALSE"
297
298 2002-12-27  Bernhard Held <bernhard@bernhardheld.de>
299         * as/mcs51/Makefile.in: fixed typo lkomf51.o -> lkaomf51.o
300
301 2002-12-26  Bernhard Held <bernhard@bernhardheld.de>
302         * src/mcs51/main.c: removed {bindir}{sep} from aslink
303
304 2002-12-10  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
305
306     * in \sdcc\as\mcs51\ changed these files in order to create an
307     aomf51 file: aslink.h, lkdta.c, lklex.c, lklibr.c, lklist.c,
308     lkmain.c.  Also added: lkmem.c and lkaomf51.c.  Changed the 
309     following files to include the previous two files: aslink.dsp,
310     Makefile.aslink, Makefile.bcc, and Makefile.in.
311
312     * Changed \sdcc\src\SDCCmain.c so it creates files with extension
313     .adb instead of .cdb
314     
315 2002-11-09  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
316
317         * \sdcc\as\mcs51\lklist.c: Now reports memory usage using the
318         value from option --iram-size.
319
320 2002-09-20  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
321
322         * \sdcc\as\mcs51\lklist.c: added boundary check before using
323         dram[] array.
324
325 2002-09-18    <wiml@hhhh.org>
326
327         * SDCClrange.h: exposed setFromRange() and setToRange()
328         * mcs51/ralloc.c: fixed over-eager packRegsForSupport() and
329           packRegsForAccUse() (bug 542397)
330         * mcs51/gen.c: MOVA() is now a function to avoid calling aopGet()
331           multiple times and emitting the fetch operations more than once
332           added aopGetUsesAcc() function to allow binary operators to
333           fetch their operands in the correct order; made genMinus() emit
334           compact code for X = LITERAL - Y 
335
336 2002-09-00  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
337         * \sdcc\as\mcs51\lklist.c: Fixed incorrect number of parameters to
338         sprintf() in line 1267.
339
340 2002-09-08  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
341         * \sdcc\src\SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051
342         like ports.
343
344 2002-09-04  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
345         Changes to aslink (All the changes are marked with 'JCF'):
346
347         * \sdcc\as\mcs51\aslink.h: External definition of sflag and
348         summary().
349
350         * \sdcc\as\mcs51\lkarea.c: Computes the size of area BSEG_BYTES from
351         area BSEG.  Also moves, if possible, the DATA area down into the internal
352         ram so more space is available.
353
354         * \sdcc\as\mcs51\lkdata.c: Definition of memory summary output flag
355         sflag.
356
357         * \sdcc\as\mcs51\lklist.c: For the BSEG area report the size in bits,
358         not bytes.  Function summary() which creates a memory usage summary
359         file with extension .mem.  Reports of overlaping stack and small stack
360         size.  If the space for the stack is less than 16 bytes aslink trows a
361         warning.
362         
363         * \sdcc\as\mcs51\lkmain.c: Creation of some of the default areas for
364         the 8051.  Option 'y' for memory summary output file.
365
366         Changes to sdcc (All the changes are marked with 'JCF'):
367
368         * \sdcc\src\SDCCglobl.h: External definition of RegBankUsed[4].
369
370         * \sdcc\src\SDCCglue.c:  If a register bank is used, creates an
371         overlaying area for it (uses RegBankUsed[4]).
372
373         * \sdcc\src\SDCCmain.c: Definition RegBankUsed[4]; marks register
374         bank zero as used by default.  By default aslink locates the stack
375         (equivalent to --stack-after-data).  Pass option 'y' to aslink for
376         the creation of the .mem file.  Delegates the allocation of data area
377         to aslink (it is not longer 0x30 by default).  If --stack-loc passes
378         the begining of the stack area to aslink.
379
380         * \sdcc\src\SDCCmem.c:  If a register bank is used, marks it so
381         glue() in SDCCglue.c creates an area for it.
382         
383 2002-09-03  Borut Razem <borut.razem@siol.net>
384         * sdcc/src/SDCCglue.c, sdcc/src/SDCCglue.h, sdcc/src/SDCCmain.c,
385         sdcc/src/pic/glue.c:
386         introduced atexit() handler for teporay files removal in case of
387         errors, assertions, ...
388
389 2002-08-29  Borut Razem <borut.razem@siol.net>
390         * sdcc/support/cpp2/auto-host_vc_in.h:
391         re-definition of O_BINARY and other O_XXX as _O_BINARY and _O_XXX, so the problem
392         with the returned value from read() in sdcc/support/cpp2/cppfiles.c is solved for MSC.
393         Maybe there is a similar problem with BORLANDC? It should be checked!
394
395         * sdcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c, sdcc/src/z80/ralloc.c:
396         corrected improper use of assert: the assignment to clr variable was done inside the assert.
397         In case that NDEBUG was defined, the assert macro was substituted with no-op, so the assignment
398         was not executed, and the compiler (cl) launched a warning:
399         ralloc.c(1442) : warning C4700: local variable 'clr' used without having been initialized
400
401 2002-08-28  Bernhard Held <bernhard@bernhardheld.de>
402         * src/SDCCglue.c (printIvalArray): iterative calculation of array length
403
404 2002-08-28  Jesus Calvino-Fraga and Borut Razem <borut.razem@siol.net>
405         * sdcc/sdcc.dsw: added sdcpp, sdcppa, yacc, conf projects
406
407         * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
408           sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp,
409           sdcc/src/xa51/xa51.dsp, sdcc/src/avr/avra.dsp,
410           sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
411           sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp,
412           sdcc/src/xa51/xa51a.dsp, sdcc/as/as_z80.dsp,
413           sdcc/as/aslink.dsp, sdcc/as/asx8051.dsp, sdcc/packihx/packihx.dsp:
414         - added Release configuration in VS projects
415         - review of compiler an linker options
416         - VC .exe files are generated in bin_vc directory, not to interfere
417           with binaries generated from other projects (cygwin, mingw, bcc ...)
418
419         * sdcc/src/yacc.dsp: added
420
421         * sdcc/config.dsp, sdcc/configure_vc.awk, sdcc/sdcc_vc_in.h:
422         added - genarate sdcc_vc.h using sdcc_vc_in.h as template
423         and insert the version number definitions from .version 
424
425         * sdcc/support/cpp2/sdcpp.dsp: added - VC project for sdcpp
426
427         * sdcc/support/cpp2/sdcppa.dsp, sdcc/support/cpp2/auto-host_vc_in.h:
428         added - genarate auto-host.h using auto-host_vc_in.h as template
429
430         * sdcc/sdcc_vc.h,
431         removed from CVS, generated automatically
432
433 2002-08-25  Bernhard Held <bernhard@bernhardheld.de>
434         * support/scripts/inc2h.pl: use gputils or gpasm (from Nathan Hurst)
435
436 2002-08-11  Borut Razem <borut.razem@siol.net>
437         * support/Util/NewAlloc.c: removed unneeded #include "sdccconf.h" (suggested by Jesus Calvino-Fraga)
438
439 2002-08-10  Borut Razem <borut.razem@siol.net>
440         * src/SDCCmain.c (main):
441         file preOutName was unlinked before closed. This seems to be OK on UNIX and cygwin
442         platforms, but it doesn't work with Visual Studio: the opened file can not be removed.
443         The consequence was that some temporary files were not removed.
444
445         * src/SDCCglue.c:
446         unification of code in functions tempfilename() and tempfile():
447         function tempnam() is defined in Visual Studio 6.0 and .NET
448
449         * sdcc/sdcc.dsw: removed project sdcpp, added project xa51a
450
451         * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
452           sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp:
453         - removed compiler command line option /WX: Treats all warnings as errors
454         - update a list of source files, included into the project
455
456         * sdcc/src/avr/avra.dsp, sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
457           sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp:
458         changed project type to Generic Project so that can be correcly converted to VS.NET project
459
460         * sdcc/as/mcs51/asm.h: definition of PATH_MAX for MSC
461
462         * sdcc/src/SDCCast.c: solved MSC error in function decorateType()
463
464         * sdcc/src/SDCC.y: added missing ending ';' to rules to get rid of bison warnings
465
466         * dcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c:
467         added return 0 statements after assert() to make compiler happy
468
469         * sdcc/src/xa51/peeph.rul, sdcc/src/xa51/peeph.def, sdcc/src/z80/ralloc.c:
470         added newline in the def file to keep MSC compiler satisfied
471
472         * sdcc/src/z80/gen.c:
473         - function strcasecmp() is not defined in MSC (and probably also in BORLANDC),
474           so it is replaced with STRCASECMP, which is defined as stricmp in case of MSC and BORLANDC
475         - solved MSC error in function aopDump()
476
477         * sdcc_vc.h: define PREFIX as "\\sdcc"
478
479 2002-07-18  Bernhard Held <bernhard@bernhardheld.de>
480         * src/SDCCast.c (decorateType): fixed access to array of structures http://sourceforge.net/mailarchive/forum.php?thread_id=902690&forum_id=4107
481
482 2002-06-22  Scott Dattalo <scott@dattalo.com>
483         * src/pic/*: Numerous bug fixes. Flow analysis has been enhanced. 
484         - Rewrote the register banking algorithm. 
485         - Added pCode live-range analysis to registers (for now, only non-used and 
486         singly-used registers optimized away)
487
488         * src/pic/pcoderegs.[ch]: Added new files for pCode live-range analysis
489
490         * support/scripts/inc2h.pl Kevin L. Pauba <klpauba@cox.net> submitted this perl script for converting MicroChip include files into SDCC Pic include files.
491         
492 2002-05-10  Scott Dattalo <scott@dattalo.com>
493         * src/pic/*: Added support for multiplication. Fixed many,many bugs.
494         
495 2002-04-22  Michael Hope  <michaelh@vroom>
496
497         * device/lib/z80/printf.c: Changed emitter to volatile to work around a pcall bug.
498
499         * configure.in (DD_COPT): Added include support required for gbdk.
500
501         * .version: Bumped version number just to increase it.
502
503         * src/SDCCmain.c: Added -nostdinc to the default options.
504
505 2002-04-15  Michael Hope  <michaelh@vroom>
506
507         * device/lib/z80/printf.c (sprintf): Added.
508
509         * src/z80/ralloc.c (packRegisters): Disabled pack HL use for GB as it's broken.
510
511         * src/z80/peeph.def: Added transpose redundent load rule.
512
513         * src/z80/main.c: Added force callee saves for jaune.
514
515         * src/port.h: Removed the i186 and tlcs-900h ports as they weren't being being developed.
516
517         * src/SDCCmain.c: Pulled the options definition out so that you can add port specific options without changing the main file.
518
519 2002-03-28  Johan Knol  <johan@balder>
520
521         * src/SDCCval.c: fixed bug #532436
522
523 2002-03-14  Scott Dattalo <scott@dattalo.com>
524         * /src/port.h:
525         Added "char *Processor" field to the port structure.
526
527         * /src/SDCCmain.c:
528         Added -p option. Allows port dependent processor to be specified.
529
530         * all ports:
531         Initialized the new field char *Processor field to NULL in all ports
532
533         * /src/pic/*:
534         Compiler generated registers for interrupt context saving
535         were not getting allocated.
536                 
537 2002-03-16  Sandeep Dutta  <sandeep@ddi.com>
538
539         * /src/SDCCast.c:
540         Fixed left shift. Will promote the left side of a left shift
541         if a) left shifting more than size of operand or b) when assigned
542         to something size > size of left side
543
544 2002-03-14  Scott Dattalo <scott@dattalo.com>
545         * src/pic/*
546         tons of changes. Register allocation has been 
547         rewritten. Added customization for the various PICs. Flow
548         analysis is restructured. ...
549
550         * src/pic/device.h:
551         Added
552
553         * src/pic/device.c:
554         Added. device.c is a PIC port hack to accomodate variations
555         in PIC devices.
556
557 2002-03-13  Michael Hope  <michaelh@vroom>
558
559         * src/z80/gen.c (genGenPointerGet): Fixed a bug where a pointer in HL is dereferenced into HL but HL is not spilled.  Yeah.
560
561 2002-03-04  johanknol  <johanknol@manik>
562
563         * /src/SDCCval.c: fixed
564
565         const unsigned char arr[][2] = { { 0, 1 } };
566         t18.c:1: error: Initializer element is not constant
567
568 2002-03-04  bela  <bela@manik>
569
570         * /device/include/mcs51reg.h:
571         ds89c420 register definition update
572
573 2002-03-03    <johan@FRIJA>
574
575         * support/Util/SDCCerr.c: did something, but don't no why anymore
576
577         * support/regression/tests/bug-524691.c: made it a little less shy 
578
579         * src/SDCCast.c (decorateType): fixed bug #524697
580
581         * src/SDCCast.c: made some lineno improvements
582
583         * src/SDCCval.c (getNelements): changed warning to error
584
585         * src/SDCCglue.c (printIvalArray): changed warning to error
586
587         * src/SDCCicode.c: fixed a warning for mingw
588
589         * src/SDCCast.c (decorateType): fixed the << promotion for ops
590
591         * src/SDCCicode.c (geniCodeDivision): divide is shift only for unsigned (bug #524685)
592
593 2002-03-02  Sandeep Dutta  <sandeep@ddi.com>
594
595         * src/ds390/peeph.def:
596         Added some more peephole rules
597
598         * src/ds390/gen.c: Various fixes & enhancements
599
600         * src/SDCClrange.c, src/SDCClrange.h:
601         functions "alldefsoutofrange" and "notusedinblock" moved to SDCClrange.c
602
603         * src/ds390/ralloc.c:
604         various fixes & enhancements (ds390) specific
605
606         * src/avr/ralloc.c, src/mcs51/ralloc.c, src/pic/ralloc.c, src/xa51/ralloc.c, src/z80/ralloc.c:
607         Functions "allDefsOutOfRange" & "notUsedinBlock" moved to SDCClrange.c
608         from rallocs.
609
610         * sdcc/src/SDCCcse.c: Better fix for bug # 514308
611
612 2002-03-02    <johan@FRIJA>
613
614         * src/SDCCast.c (decorateType): fixed bug #524708
615
616         * src/SDCCval.c (floatFromVal): fixed the literal void (whatever that may be)
617
618         * src/SDCCicode.c (geniCodePtrPtrSubtract): fixed bug #524691
619
620 2002-03-01  Michael Hope  <michaelh@vroom>
621
622         * src/SDCCsymt.c (initCSupport): Removed managling of support function names.
623
624         * src/z80/ralloc.c (packRegsForIYUse): Fixed fp bug where four byte operands were packed into IY.
625
626 2002-03-01    <johan@FRIJA>
627
628         * src/SDCCglue.c (printIvalPtr): fixed bug #524211
629
630         * src/SDCCast.c (decorateType): fixed bug #524209
631
632         * src/SDCCval.c (valNot): fixed bug #524195
633
634 2002-02-26    <johan@balder>
635
636         * src/xa51/gen.c: fixed a warning
637
638         * src/SDCCglue.c (printIvalFuncPtr): fixed bug #522534
639
640         * src/SDCCast.c (decorateType): fixed bug #522534
641
642 2002-02-23    <johan@balder>
643
644         * src/SDCCdflow.c (computeDataFlow): fixed bug #460088
645
646 2002-02-22    <johan@balder>
647
648         * src/SDCCast.c: fixed bug #514865
649
650         * src/SDCCy.c ("SDCC.y"): fixed bug #516625
651
652 2002-02-21  Sandeep Dutta  <sandeep@ddi.com>
653
654         * sdcc/src/SDCCloop.c:
655         Previous fix was not good. basic blocks that have "break" or "return" are
656         not really partof a loop , but live ranges used in these blocks should
657         be live thru the entire loop, so set partOfLoop but don't add them to
658         loop region
659
660 2002-02-21    <johan@FRIJA>
661
662         * src/SDCCcse.c: fixed bug #514308
663
664 2002-02-20  Sandeep Dutta  <sandeep@ddi.com>
665
666         * src/SDCCloop.c:
667         Fixed BUG #519583. If a conditional block ended in a return/break
668         statement inside a loop, it was not being considered part of the loop.
669
670         * src/SDCCcflow.c: Removed fix (Fixed in SDCCloop.c)
671
672 2002-02-10  Karl Bongers <karl@turbobit.com>
673
674         * debugger/*:
675         Fixed up SDCDB debugger somewhat.  Updated debugger/README
676         with lots of comments and notes.
677
678         * device/examples/test2.c:
679         Fix bug, "red" variable not being initialized(compiler complained).
680
681         * device/examples/Makefile, examples/test3.c:
682         Add Makefile in device/examples folder, compiles test3.c
683         for use as a multiple module SDCDB test case.
684
685         * sim/ucsim/cmd.src/cmdset.cc:
686         Took out debug printfs in ucsim "next" command.
687
688         * sim/ucsim/xa.src:
689         Karl and Johan start ucsim XA support.  Most dissassembly working,
690         about 75% emulation done(plenty of work remaining).
691
692         * sim/ucsim/z80.src:
693         Add Z80 support to ucsim, add test-ucz80 regression test,
694         notice ucsim/z80 emulation fails on examples/test3.c/itoa code.
695         Notice z80 compiler fails on examples/test3.c/crc code.
696
697 2002-01-30  Sandeep Dutta  <sandeep@ddi.com>
698
699         * src/mcs51/gen.c, src/mcs51/main.c, src/mcs51/ralloc.c:
700         Added support for --parms-in-bank1
701
702         * src/ds390/peeph.def:
703         added a few more peephole optimzations
704
705         * src/ds390/main.c:
706         1) added __builtin_inp & __builtin_outp used to read in data of given length
707            from a memory mapped port
708         2) added __builtin_memcmp
709         3) added __builtin_swapw swap bytes of a short
710
711         * src/ds390/gen.c, src/ds390/gen.h, src/ds390/ralloc.c:
712         1) handle multiple send & receives from register bank1
713         2) ralloc can now allocate DPTR1 to some liveRanges
714
715         * src/SDCCsymt.c, src/SDCCsymt.h:
716         changes to handle multiple sends & receives
717
718         * src/SDCCptropt.h:
719         added some pointer arithmetic optimization
720
721         * src/SDCCptropt.c:
722         added some pointer arithmetic optimizations but not stable yet so not
723         called from anywhere (will get this working shortly)
724
725         * src/SDCCopt.c: fixed for multiple sends & receives
726
727         * src/SDCCmain.c:
728         1) added options --parms-in-bank1 (ds390/mcs51) & --protect-sp-update
729         2) preprocessing done AFTER port->finalizeoptions . This allows ports to
730            set preprocessor defines (depending on options)
731
732         * src/SDCCicode.c, src/SDCCicode.h:
733         changes made to handle multiple sends & receives
734
735         * src/SDCCglobl.h:
736         Added options --protect-sp-update (ds390) and --parms-in-bank1 (ds390/mcs51)
737
738         * src/SDCCcse.c, src/SDCCcse.h:
739         added function findbackward def (to be used in upcoming optimization)
740
741         * src/SDCCcflow.c, src/SDCCcflow.h:
742         added function returnAtEnd - to determine if a basic block terminates with
743         a RETURN iCode
744
745         * src/SDCCast.c, src/SDCCast.h:
746         added option parms-in-bank1
747
748         * device/lib/_divsint.c, device/lib/_divslong.c, device/lib/_divuint.c 
749         * device/lib/_divulong.c, device/lib/_modsint.c, device/lib/_modslong.c 
750         * device/lib/_modulong.c, device/lib/_mulint.c, device/lib/_mullong.c:
751         adjusted for --parms-in-bank1 option
752
753         * device/include/string.h:
754         donot redefine "reentrant" keyword
755
756         * device/include/ds80c390.h: Added some more SFRs
757
758 2002-01-28  Bernhard Held  <bernhard@bernhardheld.de>
759
760         * sim/ucsim: Merged branch ucsim-034-pre3 to main trunk; new version 0.4 
761
762 2002-01-26  Bernhard Held  <bernhard@bernhardheld.de>
763
764         * src/SDCCast.c (funcOfType): fix usage of double --float-reent
765
766 2002-01-22  Bernhard Held  <bernhard@bernhardheld.de>
767
768         * support/regression/fwk/lib/testfwk.c (main): Removed workaround for bug #505387
769
770 2002-01-18  Paul Stoffregen  <paul@pjrc.com>
771
772         * Added --xram-movc option
773
774 2002-01-13  Bernhard Held  <bernhard@bernhardheld.de>
775
776         * support/regression/Makefile: don't include test-mcs51-stack-auto in target all
777
778 2002-01-11  Johan Knol
779
780         * Added math lib of Jesus Calvino-Fraga
781
782 2002-01-08  Bernhard Held  <bernhard@bernhardheld.de>
783
784         * src/SDCCmain.c (processFile): fix processing of ../../src.c
785         * support/regression/Makefile: new target test-mcs51-stack-auto
786         * support/regression/ports/mcs51-stack-auto/spec.mk: added
787
788 2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
789
790         * src/SDCCglue.h: printIvalCharPtr(), not printIvalChar()
791
792 2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
793
794         * support/regression/ports/mcs51/support.c: correct setup of timer / UART
795
796 2002-01-03  Bernhard Held  <bernhard@bernhardheld.de>
797
798         * src/SDCCsymt.c (processFuncArgs): fix #498307 by Johan
799
800         * src/SDCCglue.h: add definition for printIvalChar()
801
802 2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
803
804         * src/SDCCast.c: fix #498138 by Johan
805
806         * src/SDCCglue.c: fix #498138 by Johan
807
808 2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
809
810         * support/regression/Makefile: fix clean
811
812         * support/regression/ports/ds390/support.c: fix transmission of last character
813
814 2001-12-29  Sandeep Dutta  <sandeep@ddi.com>
815
816         * /sdcc/src/ds390/gen.c:
817         a) improved computing address of stack variable
818         b) took out some #if 0 code
819         c) improved parmBytes adjustment
820         d) improved genPlusIncr & genMinusIncr
821         e) genCmp could generate bad code (when left assigned to DPTR)
822         f) Fixed bug in hasInc
823
824         * /sdcc/src/ds390/ralloc.c:
825         a) packRegsForSupport could mess up live information (Fixed)
826         b) packRegsDPTRuse could be incorrect for left & right shift
827
828         * /sdcc/src/mcs51/ralloc.c:
829         packRegsForSupport could mess up the live information (Fixed)
830
831         * /sdcc/src/mcs51/gen.c: Fixed a bug in hasInc
832
833         * /sdcc/src/SDCCast.c:
834         can reverse a loop even if function call is present as long
835         as the loop control variable is local & is not passed as parameter
836
837 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
838
839         * /sdcc/ChangeLog: *** empty log message ***
840
841         * /sdcc/src/ds390/gen.c, /sdcc/src/ds390/main.c:
842         More builtin function additions for TININative
843
844         * /sdcc/src/ds390/ralloc.c:
845         Had broken the regression testsuite
846
847         * /sdcc/src/SDCCast.c: Fixed a bug in dumptree
848
849         * /sdcc/src/SDCCsymt.c, /sdcc/src/SDCCsymt.h:
850         Added funcattr hasStackParms will be set for reentrant functions when there
851         are paramteres on the stack, this helps in minimizing frame pointer generation
852         typeFromStr can handle function pointers now
853
854         * /sdcc/doc/builtins.txt, /sdcc/doc/TININative.txt:
855         *** empty log message ***
856
857 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
858
859         * /src/ds390/gen.c, /src/ds390/main.c:
860         More builtin function additions for TININative
861
862         * /src/ds390/ralloc.c:
863         Had broken the regression testsuite
864
865         * /src/SDCCast.c: Fixed a bug in dumptree
866
867         * /src/SDCCsymt.c, /src/SDCCsymt.h:
868         Added funcattr hasStackParms will be set for reentrant functions when there
869         are paramteres on the stack, this helps in minimizing frame pointer generation
870         typeFromStr can handle function pointers now
871
872         * /doc/builtins.txt, /doc/TININative.txt:
873         *** empty log message ***
874
875
876 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
877
878         * /src/ds390/gen.c, /src/ds390/main.c, /src/ds390/peeph.def, /src/ds390/ralloc.c:
879         ALPHA version for -mTININative
880
881         * /src/izt/i186.c, /src/izt/tlcs900h.c, /src/mcs51/main.c, /src/pic/main.c, /src/z80/main.c, /src/avr/main.c:
882         updated to reflect changes in the port structure
883
884         * /src/port.h:
885         added function do_assemble (similar to do_link) if non-null this function
886         will be called to do assembly (-mTININative) requires a multi command
887         assembly
888         added function genAssemblerEnd will be called to generate assembler Epilogue
889
890         * /src/SDCCsymt.c:
891         added _JavaNative to debug info printing
892
893         * /src/SDCCmain.c: added option --tini-libid
894         added port->do_assemble function (-mTININative) has a multi command assemble
895
896         * /src/SDCCglue.c: Disabled "constExpr" check
897         added port->genAssemblerEnd function
898
899         * /src/SDCCglobl.h: Added option --tini-libid value
900
901         * /src/SDCCast.h:
902         tookout optimizeCompare from the header (has no external references)
903
904         * /src/SDCCast.c: made one more function "static"
905
906 2001-12-23  Michael Hope  <michaelh@juju.net.nz>
907
908         * src/z80/mappings.i: Added z80asm support.
909
910         * src/z80/main.c: Added z80asm support on --asm=z80asm
911
912         * src/z80/gen.c: Fixed asm portability issues.
913
914         * src/asm.c (tvsprintf): Removed old code, added 'N' for function name.  For extern support.
915
916         * src/SDCCglue.c (printExterns): Added global/extern split.
917
918 2001-12-17  Bernhard Held  <bernhard@bernhardheld.de>
919
920         * support/regression/Makefile: added test for mcs51 model large
921
922         * support/regression/ports/mcs51-large/spec.mk: added test for mcs51 model large
923
924         * support/regression/ports/gbz80/spec.mk: added -mgbz80
925
926 2001-12-05  Michael Hope  <michaelh@juju.net.nz>
927
928         * src/diff.1 (Index): Many, many optmisiations.  Dhrystone up to 201.
929
930 1904-01-06  Michael Hope  <michaelh@juju.net.nz>
931
932         * src/z80/ralloc.c (packRegsForIYUse): Fixed the case where an operand is in direct space.
933
934         * src/z80/gen.c (makeFreePairId): Optimised IY load by using a spare pair.
935
936 2001-12-02  Bernhard Held  <bernhard@bernhardheld.de>
937
938         * src/mcs51/gen.c (genFunction): avoid excess "inc sp"
939
940         * support/regression/tests/simplefloat.c: Port to mcs51.
941
942 2001-11-25  Michael Hope  <michaelh@juju.net.nz>
943         * support/regression/tests/bug-485362.c: Added.
944
945         * support/regression/tests/simplefloat.c (testDivNearOne): Added.
946
947         * src/z80/gen.c (aopOp): Fixed case where left and result are in the same spill loc and they have different sizes.
948
949         * src/z80/peeph.def: Added rules for optimising two byte compares on the same thing, and to optimise two ptr assign.
950
951         * src/z80/gen.c (aopDump): Added a dump function.
952
953 2001-11-25  Bernhard Held  <bernhard@bernhardheld.de>
954         * sim/ucsim/s51.src/glob.cc: DS390 SFRs and bits added.
955
956         * sim/ucsim/s51.src/port.cc: Port 4 and 5 added.
957
958         * sim/ucsim/s51.src/regs51.h: DS390 SFRs added.
959
960         * sim/ucsim/s51.src/uc390.cc: Some details improved, CKRDY works for tinibios.
961
962         * sim/ucsim/s51.src/uc390cl.h: Work in progress.
963
964         * sim/ucsim/sim.src/uccl.h: 6 ports for DS390.
965
966         * support/regression/fwk/lib/testfwk.c: Run with tinibios.
967
968         * support/regression/ports/mcs51/spec.mk: Fine tuninig.
969
970         * support/regression/ports/ds390/support.c: Use tinibios.
971
972         * support/regression/ports/ds390/spec.mk: Fine tuning, use tinibios.
973
974 2001-11-23  Michael Hope  <michaelh@juju.net.nz>support/regression/tests/bug-460010.c
975
976         * src/z80/ralloc.c (packRegsForHLUse3): Changed to not pack into HL if anything is in direct space.
977         (packRegsForHLUse3): Added packing support for send, cast, and return value from a call.
978
979         * src/z80/peeph.def: Added rules for optimising pushes of part of a pair.
980
981         * src/z80/gen.c (emitCall): Changed the stack fixup to not use HL.
982
983 2001-11-18  Michael Hope  <michaelh@juju.net.nz>
984
985         * src/z80/gen.c (genCmp): Fixed compare on unsigned.
986
987         * src/z80/ralloc.c (packRegsForHLUse3): Created and optimised.
988         (packRegsForIYUse): Created and optimised.
989
990 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
991
992         * support/regression/tests/float.c (testFloatAdd): Fixed up warning.
993 2001-11-18  Bernhard Held  <bernhard@bernhardheld.de>
994
995         * sdcc/support/regression/tests/bug-460010.c: fix seg violation on host
996
997         * sdcc/support/regression/tests/muldiv.c: fix output on mcs51
998
999         * sdcc/support/regression/tests/stacks.c: fix DSEG overflow on mcs51
1000
1001 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1002
1003         * sdcc/sim/device/lib/_gptrget.c: mem region 5 (idata) added
1004
1005         * sdcc/sim/device/lib/_gptrput.c: mem region 5 (idata) added
1006
1007 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1008
1009         * sdcc/sim/ucsim/globals.cc: New: IXRAM.
1010
1011         * sdcc/sim/ucsim/stypes.h: New: IXRAM.
1012
1013         * sdcc/sim/ucsim/s51.src/uc390.cc: New: IXRAM.
1014
1015 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
1016
1017         * src/z80/ralloc.c (packRegsForHLUse): Banned IFXs from being packed into HL.
1018         (packRegsForHLUse): Added rule to pack address of/pointer get for itemps into HL for the Z80.
1019         (packRegsForAccUse2): Added rule to pack hbit IFXs into A.
1020
1021         * src/z80/main.c (_setDefaultOptions): Made float code re-entrant by default.
1022
1023         * src/z80/gen.c (aopGetLitWordLong): Added word support for floats.
1024         (genNotFloat): Added.
1025         (genUminusFloat): Added.
1026
1027         * device/lib/z80/Makefile: Added floating pt stubs.
1028
1029         * device/lib/Makefile.in (Z80SOURCES): Added floating pt support.
1030
1031         * src/z80/gen.c (genIpush): Fixed up a push of one byte when left is in a pair.
1032
1033         * device/lib/_fsadd.c (__fsadd): Fixed up return where the numbers are hugely different.
1034
1035 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1036
1037         * sdcc/sim/ucsim/s51.src/glob.cc: Minor fix.
1038
1039         * sdcc/sim/ucsim/s51.src/regs51.h: Minor fix.
1040
1041         * sdcc/support/regression/Makefile: Add port ds390.
1042
1043         * sdcc/support/regression/ports/mcs51/spec.mk: Minor change.
1044
1045         * sdcc/support/regression/ports/z80/spec.mk: Minor change.
1046
1047         * sdcc/support/regression/ports/ds390/spec.mk: Added.
1048
1049         * sdcc/support/regression/ports/ds390/support.c: Added.
1050
1051         * sdcc/support/regression/ports/ds390/uCsim.cmd: Added.
1052
1053         * sdcc/support/regression/ports/mcs51/timeout.c: Cut.
1054
1055         * sdcc/support/regression/fwk/lib/timeout.c: Paste.
1056
1057 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
1058
1059         * device/include/malloc.h: Added z80 and gbz80 support.
1060
1061         * device/lib/gbz80/heap.s: Added.
1062
1063         * device/lib/z80/heap.s: Added.
1064
1065         * device/lib/malloc.c: Added z80 and gbz80 support.
1066
1067         * support/regression/tests/malloc.c (testMalloc): Added.
1068
1069         * src/SDCCmain.c (parseCmdLine): Added support for -Wp.
1070
1071         * support/regression/tests/bug-478094.c: Added.
1072
1073         * src/z80/gen.c (commitPair): Fixed silly gbz80/z80 commit to static bug.
1074
1075 2001-11-04  Bernhard Held  <bernhard@bernhardheld.de>
1076
1077         * sdcc/sim/ucsim/s51.src/uc390cl.h: Improvement for ds390 to run regression tests
1078
1079         * sdcc/sim/ucsim/s51.src/uc390.h: Improvement for ds390 to run regression tests
1080
1081         * sdcc/sim/ucsim/s51.src/regs51.h: Improvement for ds390 to run regression tests
1082
1083         * sdcc/sim/ucsim/s51.src/glob.cc: Improvement for ds390 to run regression tests
1084
1085         * sdcc/support/regression/tests/bug-460010.c: Small change for ds390
1086
1087 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
1088
1089         * src/z80/peeph-gbz80.def: Removed a bad sub optimisation.
1090
1091 2001-11-03  Michael Hope  <michaelh@juju.net.nz>
1092
1093         * support/regression/tests/bug-477927.c: Added.
1094
1095         * src/z80/peeph.def: Added minor rules.
1096
1097         * src/z80/gen.c (genPlusIncr): Added an extra plusinc rule.
1098
1099         * src/z80/peeph.def: Added jump optimisation modification.
1100
1101 2001-11-01  Michael Hope  <michaelh@juju.net.nz>
1102
1103         * src/SDCCmain.c (linkEdit): Added runtime path detection to the mcs51 port.
1104
1105 2001-10-30  Michael Hope  <michaelh@juju.net.nz>
1106
1107         * support/regression/tests/funptrs.c: Added.
1108
1109 2001-10-29  Michael Hope  <michaelh@juju.net.nz>
1110
1111         * src/z80/ralloc.c (packRegsForHLUse): Fixed up bad spill due to pushing one byte via HL.
1112
1113 2001-10-28  Michael Hope  <michaelh@juju.net.nz>
1114
1115         * src/z80/gen.c (genArrayInit): Made it work for on stack arrays.
1116
1117         * src/z80/main.c (gbz80_port =): Added rle support to the gbz80 port.
1118
1119         * src/z80/gen.c (genMinus): Fixed for where the result is one byte.
1120         (movLeft2ResultLong): Created.
1121
1122         * src/z80/ralloc.c (packRegsForHLUse): Added a couple of simple cases for the GB.
1123         (joinPushes): Added.  Joins two char pushes into a word push.
1124
1125 2001-10-27  Michael Hope  <michaelh@juju.net.nz>
1126
1127         * support/cpp2/Makefile.in (install): Added creation of dest dir.
1128
1129         * support/makebin/Makefile (install): Added creation of dest dir.
1130
1131 2001-10-24 Karl Bongers <karl@turbobit.com>
1132
1133         * configure.in, configure, Makefile, support/cpp: Removed cpp folder, since we have new cpp2 preprocessor code.
1134
1135 2001-10-21  Michael Hope  <michaelh@juju.net.nz>
1136
1137         * src/z80/ralloc.c: Turned off faulty pack for one use.
1138
1139         * src/z80/peeph-gbz80.def: Removed redundent restart options.
1140
1141         * src/z80/gen.c (genMult): Added native mul for constants on the z80 and gbz80.
1142
1143 2001-10-21  Bernhard Held  <bernhard@bernhardheld.de>
1144
1145         * support/regression/Makefile: Improved clean
1146
1147         * support/regression/ports/gbz80/spec.mk: Added clean
1148
1149         * support/regression/ports/host/spec.mk: Added clean
1150
1151         * support/regression/ports/z80/spec.mk: Added clean
1152
1153         * support/regression/ports/mcs51/spec.mk: Added clean, little improvements
1154
1155         * support/regression/ports/mcs51/timeout.c: little improvements
1156
1157 2001-10-17  Michael Hope  <michaelh@juju.net.nz>
1158
1159         * device/lib/malloc.c (MEMHEADER): Fixed against new pedantic pointers.
1160
1161         * support/regression/fwk/include/testfwk.h: Fixed up to use function pts correctly.
1162
1163         * support/regression/generate-cases.py: Fixed up to use function pts correctly.
1164
1165 2001-10-16  Bernhard Held  <bernhard@bernhardheld.de>
1166
1167         * support/regression/port/mcs51/spec.mk: add timeout for uCsim
1168
1169         * support/regression/port/mcs51/timeout.c: add timeout for uCsim
1170
1171 2001-10-13  Michael Hope  <michaelh@juju.net.nz>
1172         * src/z80/gen.c (emitCall): Fixed up missing spill of HL when used to assign the result value.
1173
1174         * src/z80/ralloc.c: Turned off pack for one use as it's quite broken.
1175
1176         * src/SDCCmain.c (linkEdit): Added support for passing a legacy command line through the processor.
1177
1178         * src/mcs51/main.c (_linkCmd): Added bin path to command.
1179
1180         * src/SDCCmain.c (initValues): Added support for when it it called just to link.
1181
1182         * as/mcs51/lklibr.c (libfil;): Turned off 'library file' message.
1183
1184         * src/SDCCval.c (constVal): Fixed usage of 'L' modifier problems on ppc.
1185
1186         * support/regression/tests/longor.c: Added.
1187
1188 2001-10-11  Bernhard Held  <bernhard@bernhardheld.de>
1189
1190         * as/mcs51/asdata.c: replaced FILENAME_MAX with PATH_MAX
1191
1192         * as/mcs51/aslink.h: define PATH_MAX
1193
1194         * as/mcs51/asm.h: define PATH_MAX
1195
1196         * as/mcs51/asmain.c: replaced FILENAME_MAX with PATH_MAX
1197
1198         * as/mcs51/asnoice.c: replaced FILENAME_MAX with PATH_MAX
1199
1200         * as/mcs51/lklex.c: replaced FILENAME_MAX with PATH_MAX
1201
1202         * as/mcs51/lkmain.c: replaced FILENAME_MAX with PATH_MAX
1203
1204         * src/SDCCglobl.h: define PATH_MAX
1205
1206         * src/SDCCmacro.c: replaced FILENAME_MAX with PATH_MAX
1207
1208         * src/SDCCmain.c: replaced FILENAME_MAX with PATH_MAX
1209
1210 2001-10-11  Michael Hope  <michaelh@juju.net.nz>
1211
1212         * src/z80/gen.c (gencjneshort): Fixed
1213
1214         * src/z80/ralloc.c (packRegsForHLUse): Added pack into HL for cast then ipush.
1215
1216 2001-10-09  Michael Hope  <michaelh@juju.net.nz>
1217
1218         * support/regression/tests/bug-469671.c: Added.
1219
1220         * src/z80/gen.c (shiftIntoPair): Fixed up warning.
1221
1222 2001-10-08  Michael Hope  <michaelh@juju.net.nz>
1223
1224         * src/SDCCmain.c: Added --fommit-frame-pointer option and implemented in the z80 port.
1225
1226         * src/z80/gen.c (genPlus): Fixed to work with extended stack.  Also fixed genMinus, genCmp.  genUMinus is still left.
1227
1228 2001-10-08  Bernhar Held  <bernhard@bernhardheld.de>
1229
1230         * src/SDCCmain.c (preProcess): added define SDCC_NOOVERLAY
1231
1232         * src/device/lib/_mulint.c  : removed hint: nooverlay bug
1233
1234         * src/device/lib/_mullong.c : removed hint: nooverlay bug
1235
1236         * src/device/lib/_divuint.c : removed hint: nooverlay bug
1237
1238         * src/device/lib/_divulong.c: removed hint: nooverlay bug
1239
1240         * src/device/lib/_moduint.c : removed hint: nooverlay bug
1241
1242         * src/device/lib/_modulong.c: removed hint: nooverlay bug
1243
1244 2001-10-07  Michael Hope  <michaelh@juju.net.nz>
1245
1246         * src/z80/gen.c (setupPair): Added 'extended stack' support for the z80.  Can now have local variables or parameters of more than 127 bytes in size.  Increadibly slow, but it will work.  Currently anything involving the carry flag.
1247
1248         * support/Util/NewAlloc.c (freeTrace): Changed free for the gc case to not free at all.  Fixes runtime segfault.
1249
1250         * support/regression/tests/scott-compare3.c (c_abcd): Fixed up casts.
1251
1252 2001-10-07    <johan@FRIJA>
1253
1254         * device/lib/gets.c (gets): fixed the return value.
1255
1256 2001-10-06  Michael Hope  <michaelh@juju.net.nz>
1257         * src/SDCCmain.c (WRITE_SEG_LOC): Fixed up to use Safe_strdup.
1258
1259         * src/SDCCpeeph.c (peepHole): Fixed all leaks.  Added trace support for freeing lines.  Optimised restart logic to re-run instead of restart.  Now compiles dscan.c on ~60MB instead of ~200MB.
1260
1261         * support/Util/NewAlloc.c: Added ability to use libgc instead of malloc.  Added Safe_free and Safe_strdup.  Added trace support where you can log allocations and free all at once.
1262
1263         * src/z80/gen.c (genZ80Code): Added de-allocation via trace support.
1264
1265         * src/pic/gen.c: Removed Safe_strdup.
1266
1267         * configure.in: Added option to enable libgc support.
1268
1269         * src/SDCCbitv.c (bitVectnBitsOn): Optimised.
1270         (bitVectUnion): Optimised.
1271         (bitVectIntersect): Optimised.
1272         (bitVectBitsInCommon): Optimised.
1273         (bitVectCplAnd): Optimised.
1274
1275         * support/makebin/makebin.c (usage): Removed getopt as mingw32 doesn't have it.  Sigh.
1276
1277 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1278
1279         * src/SDCCmain.c: distinguish between assembler debug and plain options
1280
1281         * src/avr/main.c:   remove standard assembler options
1282
1283         * src/ds390/main.c: remove standard assembler options
1284
1285         * src/mcs51/main.c: remove standard assembler options
1286
1287         * src/port.h: removed "PENDING" comment
1288
1289 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1290
1291         * src/device/lib/_mulint.c  : new, with assember functions
1292
1293         * src/device/lib/_mullong.c : new, with assember functions
1294
1295         * src/device/lib/_divuint.c : with assember functions
1296
1297         * src/device/lib/_divsint.c : with assember functions
1298
1299         * src/device/lib/_divulong.c: with assember functions
1300
1301         * src/device/lib/_divslong.c: with assember functions
1302
1303         * src/device/lib/_moduint.c : with assember functions
1304
1305         * src/device/lib/_modsint.c : with assember functions
1306
1307         * src/device/lib/_modulong.c: with assember functions
1308
1309         * src/device/lib/_modslong.c: with assember functions
1310
1311         * src/device/lib/libint.lib:  replaced _muluint.c  and _mulsint.c  by _mulint.c
1312
1313         * src/device/lib/liblong.lib: replaced _mululong.c and _mulslong.c by _mullong.c
1314
1315         * src/device/lib/Makefile.in: replaced _muluint.c  and _mulsint.c  by _mulint.c
1316                                       replaced _mululong.c and _mulslong.c by _mullong.c
1317
1318 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1319
1320         * src/SDCCsymt.c: sequence of specifiers in pintTypeChain() corrected
1321
1322 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
1323
1324         * src/SDCCglue.c: test, if win32api is available for MINGW
1325
1326 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
1327
1328         * src/SDCCsymt.c: no more _modifier in printTypeChain()
1329         * support/regression/tests/driverstruct.c: REENTRANT for mcs51
1330         * support/regression/ports/gbz80/spec.mk: removed GENERIC
1331         * support/regression/ports/host/spec.mk: removed GENERIC
1332         * support/regression/ports/mcs51/spec.mk: removed GENERIC
1333         * support/regression/ports/z80/spec.mk: removed GENERIC
1334
1335 2001-10-01  Michael Hope  <michaelh@juju.net.nz>
1336
1337         * support/regression/fwk/lib/testfwk.c (__printf): Removed GENERIC.
1338
1339         * support/regression/tests/bug-467035.c: Created.
1340
1341 2001-10-01    <johan@FRIJA>
1342
1343         * src/SDCC.y: fixed bug #466586 part 1
1344
1345 2001-10-01  Johan Knol <johan.knol@iduna.nl>
1346
1347         * SDCCicode.c: z80 has no generic pointers
1348         * removed -s from strip in all Makefile(.in)'s. It is not needed, but Solaris chocks on it.
1349         
1350 2001-09-30  Michael Hope  <michaelh@juju.net.nz>
1351
1352         * sim/ucsim/cmd.src/Makefile.in ($(PRJDIR)/libcmd.a): Changed all ar references to $(AR) for Solaris.
1353
1354 2001-09-29  Michael Hope  <michaelh@juju.net.nz>
1355
1356         * Makefile (sdcc-libs): Added makebin to the list of standard targets.
1357
1358         * support/regression/ports/z80/spec.mk: Updated to use env for sdcc bin dir for automatic regression.
1359
1360 2001-09-25  Michael Hope  <michaelh@juju.net.nz>
1361
1362         * configure.in: Fixed up so that ucsim is only configured once.
1363
1364         * support/cpp2/configure.in: Fixed to use the program transform to append the .exe for the win32 build.
1365
1366         * src/SDCCutil.c (getPrefixFromBinPath): Fixed up to work with win32 in all of its glory.
1367         (getPathDifference): As above.
1368
1369         * src/SDCCmain.c (preProcess): Changed to use a temporary file in a proper temp directory.  Fixed case where pre-processing only.
1370
1371         * src/SDCCglue.c (tempfilename): Added function for pre-processor.
1372
1373 2001-09-23  Michael Hope  <michaelh@juju.net.nz>
1374         * .version: Updated to 2.3.1
1375
1376         * src/z80/main.c (z80_port =): Added macro based linker and assembler command line support.
1377         Added copyright header.
1378
1379         * src/SDCCmain.c: Shifted various functions into SDCCutil.c
1380         (assemble): Added support for macro based assembler commands.
1381         (linkEdit): Added support for macro based linker commands.
1382         (preProcess): Changed the pre-processor to use macros.
1383         (_setPaths): Added functionality to autodetect the include, lib and bin dir paths.
1384         (_discoverPaths): Added support for overriding the install directory using the SDCCDIR env variable.
1385
1386         * device/lib/z80/crt0.s: Added module name for debugging.
1387
1388 2001-09-20  Michael Hope  <michaelh@juju.net.nz>
1389
1390         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
1391
1392         * src/SDCChasht.c (hTabDeleteByKey): Fixed delete as it would delete the last item from a bucket even if it wasn't the real one.
1393
1394         * src/SDCCglue.c: Moved gc_strdup to SDCCutil.c
1395
1396         * src/Makefile.in: Added SDCCmacro and SDCCutil
1397
1398 2001-09-19  Michael Hope  <michaelh@juju.net.nz>
1399
1400         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
1401
1402 2001-09-16    <johan@FRIJA>
1403
1404         * support/Util/SDCCerr.c: fixed up the error/warning/info database. I only changed the E_ W_ I_ prefix to what SDCCerr.c says it is.
1405
1406 2001-09-15    <johan@FRIJA>
1407
1408         * src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
1409         * src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
1410
1411 2001-09-11    <johan@FRIJA>
1412
1413         * src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
1414
1415 2001-09-10  Michael Hope  <michaelh@juju.net.nz>
1416
1417         * support/regression/tests/bug-460444.c: Added test case.
1418
1419         * src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
1420         (genCast): Added justification for all of the asserts.
1421
1422 2001-09-10  Bernhard Held <bernhard@bernhardheld.de>
1423
1424         * support/regression/support.c: _xdata replaced by xdata
1425
1426         * support/regression/spec.mk: removed _generic
1427
1428 2001-09-09  Michael Hope  <michaelh@juju.net.nz>
1429
1430         * src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
1431
1432         * src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
1433         (genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
1434
1435         * src/z80/peeph.def: Added a rule to optimise shift then compare.
1436
1437         * support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
1438
1439         * support/regression/tests/bug-460010.c: Added test case.
1440
1441         * support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
1442
1443 2001-09-09  Bernhard Held <bernhard@bernhardheld.de>
1444
1445         * support/regression/Makefile: inter-port-clean adjusted for mcs51
1446
1447         * support/regression/testfwk.c: removed workaround for bug #436344
1448
1449         * support/regression/tests/bp.c: use less memory with mcs51
1450
1451         * support/regression/tests/bug-441448.c: use less memory
1452
1453         * support/regression/tests/ports/mcs51/spec.mk: cleanup, use --stack-after-data
1454
1455         * support/regression/collate-results.py: typo
1456
1457 2001-09-08  Michael Hope  <michaelh@juju.net.nz>
1458
1459         * support/regression/tests/fetchoverlap.c: Added new test case.
1460
1461         * support/regression/tests/bp.c: Added new test case.
1462
1463         * support/regression/tests/bug-448984.c: Added new test case.
1464
1465         * support/regression/tests/pow2shifts.c: Added new test case.
1466
1467         * src/z80/gen.c: Turned off the noise it normally generates for the release.
1468         (genlshTwo): Fixed right shift for count > 8.
1469
1470         * src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
1471
1472 2001-09-08    <johan@FRIJA>
1473
1474         * src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
1475
1476 2001-09-07    <johan@FRIJA>
1477
1478         * src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
1479
1480         * src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
1481
1482 2001-09-06    <johan@FRIJA>
1483
1484         * src/SDCC.y: this could be a fix for bug #458744 (1.37)
1485         * bernhard noted me at this: "() equals to (void)" (1.38)
1486
1487 2001-09-05    <johan@FRIJA>
1488
1489         * src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
1490
1491 2001-09-04    <johan@FRIJA>
1492
1493         * src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
1494
1495
1496 2001-09-04  Paul Stoffregen  <paul@pjrc.com>
1497
1498         * pragma noinduction broke memcpy on mcs51 large model.  Moved it inside z80 optimization
1499
1500 2001-09-03  Michael Hope  <michaelh@juju.net.nz>
1501
1502         * link/z80/aslink.h: Fixed path for PATH_MAX
1503
1504 2001-09-02  Michael Hope  <michaelh@juju.net.nz>
1505
1506         * src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
1507
1508         * support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
1509
1510         * support/regression/tests/uminus.c: Added a test for the unary minus operator.
1511
1512         * src/z80/gen.c (genUminus): Fixed add, sub, and uminus on the gbz80 port for longs.  Had to shift some functions about to do it.
1513
1514 2001-09-01  Michael Hope  <michaelh@juju.net.nz>
1515
1516         * src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
1517         (genCmp): Fixed up genCmp for the GB with longs.
1518
1519         * device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
1520
1521         * support/regression/ports/host/spec.mk: Updated to compile with the new type specifiers.
1522
1523         * device/lib/Makefile.in (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
1524
1525         * device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
1526
1527 2001-08-30  Paul Stoffregen  <paul@pjrc.com>
1528
1529         * added peepholes 223 to 231 to mcs51 port.  These improve code when using large model.
1530
1531 2001-08-30  Michael Hope  <michaelh@juju.net.nz>
1532
1533         * device/lib/gbz80/crt0.s (init): Fixed up support for the gbz80 such that it will at least run (and fail badly) the regression tests.
1534
1535         * src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
1536
1537 2001-08-29  Michael Hope  <michaelh@juju.net.nz>
1538
1539         * link/z80/aslink.h: Fixed long file name support.  Is now based off PATH_MAX instead of a constant.
1540
1541         * src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
1542
1543 2001-08-30 Bernhard Held   <bernhard@bernhardheld.de>
1544
1545   * sim/ucsim/configure:    little improvement of Cygwin-detection      
1546   * sim/ucsim/configure.in: little improvement of Cygwin-detection      
1547   * sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
1548   * support/regression/tests/bug-221100.c: small changes for mcs51
1549   * support/regression/tests/bug-221168.c: small changes for mcs51
1550   * support/regression/tests/bug-227710.c: small changes for mcs51
1551   * support/regression/tests/staticinit.c: small changes for mcs51
1552   * as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
1553   * as/mcs51/lklex.c:  accept everything as symbol name in rel-files, bug fix ID 452601
1554   * as/mcs51/lksym.c:  accept everything as symbol name in rel-files, bug fix ID 452601