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