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