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