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