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