Fixed bug #787649 by anonymous
[fw/sdcc] / ChangeLog
1 2003-08-13  Bernhard Held <bernhard@bernhardheld.de>
2
3         Fixed bug #787649 by anonymous
4         * src/SDCCglue.c (emitRegularMap): added emission of sloc for func ptr
5         * src/ds390/gen.c (aopForSym): fixed func ptr in sloc
6
7 2003-08-14  Erik Petrich <epetrich@ivorytower.norman.ok.us>
8
9         Fixed numerous bitfield problems.
10
11         * src/SDCC.y: More bitfield related error checking
12         * src/SDCCsymt.h,
13         * src/SDCCsymt.c (compStructSize): fixed bitfield offset calc
14         * support/Util/SDCCerr.h,
15         * support/Util/SDCCerr.c: Added & edited some bitfield err msgs
16         * src/mcs51/gen.c (genPackBits, genUnpackBits): fixed mask bugs
17         * src/ds390/gen.c (genPackBits, genUnpackBits): fixed mask bugs
18         * support/regression/tests/bitfields.c: tests added
19
20 2003-08-13  Erik Petrich <epetrich@ivorytower.norman.ok.us>
21
22         Made the constant following the "interrupt" keyword optional. If
23         omitted, the function will not automatically be given an entry
24         in the interrupt vector table (similar to #pragma NOIV, but
25         less syntacticly kludgy). The interrupt number is also now
26         range checked. Also fixed a bug in the high order bit example
27         in the manual.
28
29         * src/SDCC.y
30         * src/SDCCmem.c
31         * src/SDCCglue.c
32         * src/SDCCsymt.h
33         * support/Util/SDCCerr.c
34         * support/Util/SDCCerr.h
35         * doc/sdccman.lyx
36
37 2003-08-13  Bernhard Held <bernhard@bernhardheld.de>
38
39         * src/SDCCcse.c (algebraicOpts): fix bug converting op from value to type
40         * src/SDCCicode.c (operandOperation): rewritten some ops
41         (*, ==, unary_minus) to fix possible overflows and to accord with ANSI
42         * src/SDCCsymt.c (computeType): literals are handled the same way as any
43         other type
44         * src/SDCCval.c (cheapestVal): removed, it doesn't accord with ANSI (can
45         be re-activated by defining REDUCE_LITERALS)
46         * src/SDCCval.c (constVal): fixed; hex and octal constants can be
47         unsigned, but are signed by default
48         * src/SDCCval.c (constVal): rearranged
49         * src/SDCCval.c (valMod): preliminary fix
50         * src/SDCCval.c (valCastLiteral): use TYPE_* types
51         * support/regression/literalop.c: added, work in progress
52
53 2003-08-12  Erik Petrich <epetrich@ivorytower.norman.ok.us>
54
55         Generate warnings for useless declarations like "char data;"
56         that don't do what new users expect.
57
58         * src/SDCC.y
59         * support/Util/SDCCerr.h
60         * support/Util/SDCCerr.c
61
62 2003-08-09  Bernhard Held <bernhard@bernhardheld.de>
63
64         * src/SDCCval.c (valMult): fix overflow detection of negative int
65
66 2003-08-07  Erik Petrich <epetrich@ivorytower.norman.ok.us>
67
68         * src/z80/ralloc.c (joinPushes): made compatible with new signedness
69
70         Changes to support big endian targets:
71
72         * src/ports.h
73         * src/SDCCglue.c
74         * src/avr/main.c
75         * src/ds390/main.c
76         * src/izt/i186.c
77         * src/mcs51/main.c
78         * src/pic/main.c
79         * src/pic16/main.c
80         * src/xa51/main.c
81         * src/z80/main.c
82
83 2003-08-06  Bernhard Held <bernhard@bernhardheld.de>
84
85         * src/SDCCval.c (cheapestVal): changed behaviour to the same as constVal()
86         * device/lib/time.c: fixed warning "integer overflow in expression"
87
88 2003-08-05  Bernhard Held <bernhard@bernhardheld.de>
89
90         * src/SDCCval.c (cheapestVal, valueFromLit): use TYPE_* types
91         * src/SDCCval.c (constVal): changed default to signed; hex and octal
92         constants are unsigned; added recognition of "u" flag for unsigned
93         * src/SDCCval.c (valMult): fixed signdness, added warning for overflow
94         * src/SDCCval.c (valDiv, valMod): fixed signdness
95         * src/SDCCicode.c (operandOperation): fixed critical typo; fixed
96         signedness of modulo, left and right shift
97         * support/Util/SDCCerr.c: added warning "integer overflow in expression"
98         * support/Util/SDCCerr.h: added warning W_INT_OVL
99         * src/SDCCast.c (decorateType): fixed gcc3.3 warning
100         * src/SDCCast.c (ast_print): improved output of constants
101
102 2003-08-04  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
103
104         Fixed some warnings when building with MSVC:
105
106         * as\mcs51\asdata.c
107         * as\z80\asdata.c
108         * as\mcs51\asm.h
109         * as\z80\asm.h
110         * link\z80\aslink.h
111         * link\z80\lkdata.c
112         * link\z80\lkeval.c
113         * link\z80\lkgb.c
114         * link\z80\lkihx.c
115         * link\z80\lks19.c
116         * link\z80\lksym.c
117         * support\cpp2\cpplib.c
118         * src\ds390\gen.c
119         * src\mcs51\gen.c
120     
121 2003-08-03  Bernhard Held <bernhard@bernhardheld.de>
122
123         * src/SDCCast.c (constExprTree): fix bug #781827 by Carl Worth <cworth@isi.edu>
124
125 2003-08-01  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
126
127         * support\librarian\clean.mk: Do not remove Makefile.
128         * support\librarian\Makefile: added.
129
130 2003-08-01  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
131
132         Added librarian to MSVC build:
133         * all.dsp
134         * sdcc.dsw
135         * support\librarian\librarian.dsp
136
137         'configure' not needed for librarian, removed:
138         * support\librarian\configure
139         * support\librarian\configure.in
140         * support\librarian\config_in.h
141         * support\librarian\Makefile.in
142
143         Hopefully these ones built the librarian and the rest of sdcc properly:
144         * Makefile
145         * Makefile.common.in
146
147         Messed up 'configure', so revert to previous version:
148         * configure
149         * configure.in
150
151 2003-07-31  Bernhard Held <bernhard@bernhardheld.de>
152
153         * src/SDCCicode.c (operandOperation): 3. fix, this time for Alpha; ULONG has 64 bits
154         there, while the mantissa of a double is "only" 53 bits wide.
155
156 2003-07-31  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
157
158         Adding sdcclib to the build.  MSVC project coming soon.
159         Files added/changed:
160
161         * support\librarian\clean.mk
162         * support\librarian\configure
163         * support\librarian\configure.in
164         * support\librarian\config_in.h
165         * support\librarian\Makefile.bcc
166         * support\librarian\Makefile.in
167         * support\librarian\sdcclib.c
168         * Makefile.bcc
169         * Makefile
170         * Makefile.common.in
171         * configure
172         * configure.in
173
174 2003-07-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
175
176         Linker now complaints if linked modules have conflicting options, for
177         example, one compiled using --model-large and another one compiled with
178         --model-small.  The following files were modified:
179
180         * as\mcs51\asdata.c
181         * as\mcs51\aslink.h
182         * as\mcs51\asm.h
183         * as\mcs51\asmain.c
184         * as\mcs51\asout.c
185         * as\mcs51\i51pst.c
186         * as\mcs51\lkdata.c
187         * as\mcs51\lklibr.c
188         * as\mcs51\lkmain.c
189         * as\z80\asdata.c
190         * as\z80\asm.h
191         * as\z80\asmain.c
192         * as\z80\asout.c
193         * as\z80\z80pst.c
194         * link\z80\aslink.h
195         * link\z80\lkdata.c
196         * link\z80\lklibr.c
197         * link\z80\lkmain.c
198         * src\SDCCglue.c 
199
200 2003-07-28  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
201
202         *link/z80/aslink.h, link/z80/lklibr.c, as/mcs51/aslink.h,
203         as/mcs51/lklibr.c: Generate a warning when a library is not found.
204
205 2003-07-28  Bernhard Held <bernhard@bernhardheld.de>
206
207         * src/z80/mappings.i: fix _mul[us][int,long] entries
208
209 2003-07-26  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
210
211         *src/SDCCmain.c: do not search for crt0.o when using --nostdlib
212
213 2003-07-24  Bernhard Held <bernhard@bernhardheld.de>
214
215         * src/SDCCicode.c (operandOperation): really fixed problem with bitops
216         * support/regression/tests/bitopcse.c: added
217         fixed warning:
218         * src/avr/gen.c:
219         * src/pic/gen.c:
220         * src/pic16/gen.c:
221         * src/z80/gen.c:
222         * src/xa51/gen.c:
223
224 2003-07-24  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
225
226         added support for new library format to z80, gbz80 linkers:
227         *link/z80/aslink.h
228         *link/z80/lklex.c
229         *link/z80/lklib.c
230         *link/z80/lklist.c
231
232 2003-07-24  Bernhard Held <bernhard@bernhardheld.de>
233
234         * src/SDCCicode.c (operandOperation): fixed problem with bitops and 0xffffffff;
235         after {double d = 0xffffffff; long l = d;} l will be 0x80000000 (LONG_MIN)
236
237 2003-07-23  Bernhard Held <bernhard@bernhardheld.de>
238
239         added DUMMY_READ_VOLATILE:
240         * src/SDCC.y:
241         * src/avr/gen.c:
242         * src/xa51/gen.c:
243         * src/z80/gen.c:
244         * src/pic/gen.c:
245         * src/pic16/gen.c:
246         * src/mcs51/gen.c:
247         * src/ds390/gen.c:
248         * src/SDCCcse.c (algebraicOpts): many improvements
249         * src/SDCCcse.h: removed algebraicOpts()
250         * src/SDCCicode.c (picDummyRead): added
251
252 2003-07-23  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
253
254         * as/mcs51/lkmem.c: Changed message "Insufficient DRAM memory" to
255         "Insufficient space in data memory".
256
257 2003-07-20  Erik Petrich <epetrich@ivorytower.norman.ok.us>
258
259         * src/mcs51/gen.c: fixed bug #771358
260         * src/z80/gen.c: fixed bug #759087
261
262 2003-07-20  Bernhard Held <bernhard@bernhardheld.de>
263
264         * src/pic16/glue.c: minor cleanup by Vangelis
265
266 2003-07-19  Frieder Ferlemann <Frieder.Ferlemann@web.de>
267
268         * device/include/regc515c.h: fixed #758477
269         * device/lib/_gptrget.c: saving some cycles in generic pointer get
270         * device/lib/_gptrput.c: saved a few bytes
271         * my tab spacing is 8, yours too?)
272         * device/lib/_ser.c: process RX bytes earlier than TX bytes
273         * device/lib/serial.c: process RX bytes earlier than TX bytes
274         * src/mcs51/gen.c(genGenPointerGet/Set): removed writing of type after postincrement
275
276 2003-07-18  Erik Petrich <epetrich@ivorytower.norman.ok.us>
277
278         * src/z80/gen.c: fixed some right shift bugs (#772726 among them)
279
280 2003-07-17  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
281
282     * link/z80/lklibr.c: fixed bug when there is a '.' in a library path.
283
284 2003-07-17  Bernhard Held <bernhard@bernhardheld.de>
285
286         * device/lib/Makefile.in: bad fix, reverted to 1.43
287
288 2003-07-16  Bernhard Held <bernhard@bernhardheld.de>
289
290         * device/lib/Makefile.in: added missing z80 object files
291
292 2003-07-14  Bernhard Held <bernhard@bernhardheld.de>
293
294         * src/SDCCcse.c (algebraicOpts): CSE fun with &|^ and 0x00/0xff literals
295         pic16 progress by Vangelis:
296         * src/SDCCglobl.h:
297         * src/SDCCmain.c:
298         * src/pic/Makefile:
299         * src/pic:
300         * pic/Makefile:
301         * pic16/device.c:
302         * pic16/device.h:
303         * pic16/gen.c:
304         * pic16/gen.h:
305         * pic16/genarith.c:
306         * pic16/glue.c:
307         * pic16/main.c:
308         * pic16/pcode.c:
309         * pic16/pcode.h:
310         * pic16/pcodepeep.c:
311         * pic16/peeph.def:
312
313 2003-07-13  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
314
315     * src/SDCCmain.c, src/SDCCglobl.h: added option --no-std-crt0
316
317 2003-07-12  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
318
319     * sdcc.dsw, all.dsp, link/z80/linkgbz80.dsp, as/z80/as-gbz80.dsp:
320     added gbz80 build to MSVC project.
321     * src/SDCCmain.c, src/SDCCglue.c, src/z80/main.c, src/z80/z80.dsp,
322     link/z80/aslink.h, linkz80.dsp: cleaned up z80 and gbz80 asm files
323     from 8051 stuff and setup so it links using a .lnk file.
324
325 2003-07-06  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
326
327     * support/librarian/sdcclib.c: sdcc librarian.
328     * as/mcs51/aslink.h, as/mcs51/lklib.c: Support for libraries created
329     with sdcclib.
330
331 2003-07-03  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
332
333     * as/mcs51/lkmain.c: properly handle extensions in function afile.
334
335 2003-07-02  Borut Razem <borut.razem@siol.net>
336
337         * src/port.h, src/SDCCmain.c, src/pic/glue.h, src/pic/main.c,
338         src/pic16/glue.h, sdcc/src/pic16/main.c, src/izt/i186.c,
339         src/izt/tlcs900h.c, src/avr/main.c, src/ds390/main.c, src/mcs51/main.c,
340         src/xa51/main.c, src/z80/main.c:
341         virtualization of glue() function: each port has it's own glue function,
342         which is accessed by do_glue function pointer in PORT.general structure
343
344 2003-07-01 Kevin Vigor <kevin@vigor.nu>
345
346         * DS800C400 fun, improved ROM interface and tinibios.
347
348 2003-06-27 Kevin Vigor <kevin@vigor.nu>
349
350         * More support for DS80C400. Now includes beginning of interface to ROM.
351
352 2003-06-25  Bernhard Held <bernhard@bernhardheld.de>
353
354         * src/mcs51/gen.c (gencjneshort): fixed bug #760345
355
356 2003-06-20  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
357
358         * as/mcs51/lkaomf51.c: Make sure the size of the last procedure is correct.
359
360 2003-06-19  Borut Razem <borut.razem@siol.net>
361
362         * src/z80/main.c: fixed Z80 port again: missing -k library paths in linker command line
363
364 2003-06-19  Borut Razem <borut.razem@siol.net>
365
366         * src/SDCCutil.h, src/SDCCutil.c, src/SDCCglobl.h, src/SDCCmain.c, src/z80/main.c:
367         fixed Z80 port - crt0.o: cannot open.
368
369 2003-06-19  Bernhard Held <bernhard@bernhardheld.de>
370
371         * support/Util/MySystem.c (merge_command): revert bad fix
372
373 2003-06-18  Borut Razem <borut.razem@siol.net>
374
375         * src/SDCC.lex, src/SDCCmain.c: fixed some warnings, introduced with changes made 15.06.1003
376
377 2003-06-18  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
378
379         * src/SDCCglobl.h, src/SDCCmain.c, doc/sdccman.lyx:
380         option --use-stdout sends errors to stdout instead of stderr.
381
382 2003-06-18  Bernhard Held <bernhard@bernhardheld.de>
383
384         * support/Util/MySystem.c (merge_command): quick fix for Linux segfault with \"cmd\" arg
385
386 2003-06-15  Borut Razem <borut.razem@siol.net>
387
388         * support/cpp2/sdcc.h: HAVE_DOS_BASED_FILE_SYSTEM defined for _WIN32
389         * src/SDCC.lex: cloneXxx and copyAndFreeXxx functions for options and optimize stack handling
390         * src/SDCCglobl.h, src/SDCCmain.c, src/ds390/main.c, src/mcs51/main.c, src/z80/main.c:
391         fixed width array of pointers replaced with sets;
392         multiple include and lib paths ared transferred to preprocessor and linker
393         * src/SDCCset.c, src/SDCCset.h: added function setFromSetNonRev() and mergeSets()
394         * src/SDCCsymt.c: reimplemented function inCalleeSaveList() by using sets instead
395         fixed width array of pointers
396         * src/SDCCutil.c, src/SDCCutil.h: added functions fputStrSet(), appendStrSet(), joinStrSet();
397         removed functions addToList(), join(), joinn(), pathCharsEquivalent(), pathCharTransform(),
398         fixupPath(), getPathDifference()
399         * src/ds390/gen.c, src/mcs51/gen.c: reimplemented function  inExcludeList() by using sets instead
400         fixed width array of pointers
401
402 2003-06-11  Bernhard Held <bernhard@bernhardheld.de>
403
404         * src/pic16/ralloc.c: fix warnings
405         * src/pic16/pcode.c: fix warning
406
407 2003-06-10  Scott Dattalo  <scott@dattalo.com>
408
409          Scott D. for Vangelis Rokas (vrokas@otenet.gr). I (scott) don't
410         know all the details, but essentially this set of changes enable
411         the pic16 port to generate movff instructions and generate assembler
412         directives,
413         * src/SDCCmain.c:
414         * src/pic16/gen.c:
415         * src/pic16/glue.c:
416         * src/pic16/pcode.c:
417         * src/pic16/device.c:
418         * src/pic16/main.c:
419         * src/pic16/pcode.h:
420         * src/pic16/pcoderegs.c:
421         * src/pic16/ralloc.c:
422         * src/pic16/ralloc.h:
423
424 2003-06-08  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
425
426         * support/Util/SDCCerr.c, src/SDCCglobl.h, src/SDCCmain.c, doc/sdccman.lyx:
427         added option --vc, so sdcc errors and warnings are compatible with
428         Microsoft Visual Studio.
429
430 2003-06-07  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
431
432         * device/lib/_atof.c, device/lib/Makefile.in, device/include/stdlib.h,
433           device/lib/libfloat.lib: added atof function.
434
435 2003-06-04  Bernhard Held <bernhard@bernhardheld.de>
436
437         * doc/sdccman.lyx: updated to Lyx 1.3
438         * doc/cdbfileformat.lyx: updated to Lyx 1.3
439         * doc/test_suite_spec.lyx: updated to Lyx 1.3
440         * doc/Makefile: added fix for the \tabularnewline problem, thanks to Jesus
441
442 2003-06-03  Bernhard Held <bernhard@bernhardheld.de>
443
444         * src/SDCCpeeph.c: separate peepRules2pCode() for pic16 by "Vangelis Rokas" <vrokas@otenet.gr>
445
446 2003-06-02  Frieder Ferlemann <Frieder.Ferlemann@web.de>
447
448         * doc/sdccman.lyx: cvs revision keywords, passing pdf information in latex preamble,
449           additions to the "related tools/documentation" section
450
451 2003-06-02  Bernhard Held <bernhard@bernhardheld.de>
452
453         * src/SDCCglue.c (tempfileandname): added check for missing TMP/TEMP/TMPDIR variable
454
455 2003-05-29  Bernhard Held <bernhard@bernhardheld.de>
456
457         * src/pic/device.c: added 16F819, patch by "David I. Lehn" <dlehn@vt.edu>
458         * src/SDCCcse.c (algebraicOpts): fixed "c * 1"
459
460 2003-05-28  Bernhard Held <bernhard@bernhardheld.de>
461
462         * doc/sdccman.lyx: fix double dash and other minor things
463         * doc/Makefile: fix double dash
464
465 2003-05-28  Karl Bongers(patches from Martin Helmling)
466         * debugger/mcs51/sdcdb.c,cmd.c,break.c and .h files. Martin adds
467           condition and ignore commands.
468
469 2003-05-28  Frieder Ferlemann <Frieder.Ferlemann@web.de>
470
471         * doc/sdccman.lyx: Changes all over, index improved, smaller margins. The manual
472           is in parts still quite out of date, I did changes as far as I felt makes sense
473           for a non-native english speaker.
474           Please feel free to add to the manual or to correct my changes.
475         * doc/Makefile: undid touching the date of intermediate tex files.
476
477 2003-05-26  Frieder Ferlemann <Frieder.Ferlemann@web.de>
478
479         * doc/sdccman.lyx: Manual has an index now
480
481 2003-05-25  Bernhard Held <bernhard@bernhardheld.de>
482
483         Finalize muluint/mulsint and mululong/mulslong merging:
484         * device/lib/_mulint.c
485         * device/lib/_mullong.c
486         * device/lib/gbz80/mul.s
487         * device/lib/gbz80/stubs.s
488         * device/lib/z80/mul.s
489         * device/lib/z80/stubs.s
490         * src/SDCCsymt.c (initCSupport)
491
492 2003-05-25  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
493
494         * as/mcs51/lkaomf51.c: Address space 'z' was missing.
495         * src/avr/avr.dsp, src/ds390/ds390.dsp, src/mcs51/mcs51.dsp,
496           src/pic/pic.dsp, src/pic16/pic16.dsp, src/xa51/xa51.dsp,
497           src/x80/z80.dsp: peep.rul is bigger now, so /Zm1000 is used
498           instead of /Zm500.
499
500 2003-05-25  Frieder Ferlemann <Frieder.Ferlemann@web.de>
501
502         * src/mcs51/peeph.def: added rules 244.x, 245.x. Although they pass
503           the regression tests I'm not brave enough to enable 245.b, 245.c
504         * doc/sdccman.lyx: added latex preamble for hyperref package.
505           Using pdflatex this will give you a hyperlinked pdf file with
506           bookmarks. (prepend '%' before /usepackage if this breaks something)
507
508 2003-05-24  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
509
510          * doc/sdccman.lyx: updated information about .adb files (fixed bug 742649)
511          
512 2003-05-22  Bernhard Held <bernhard@bernhardheld.de>
513
514         * src/pic16/pcode.c (pic16_get_op_from_instruction): fixed a gcc 3.x warning
515
516 2003-05-21    <johan@balder>
517
518         * src/SDCCglue.c (printIval): fixed bug #739934
519
520 2003-05-19  Bernhard Held <bernhard@bernhardheld.de>
521
522         Applied patch from bug 737905 (renamed yylineo to mylineno):
523         * src/altlex.c
524         * src/SDCCast.c
525         * src/SDCglobl.h
526         * src/SDCC.lex
527         * src/SDCCsymt.c
528         * src/SDCCval.c 
529         * src/pic16/pcode.c: Cleaned warnings
530         * src/pic16/pcodeflow.c: Cleaned warnings
531         * src/pic16/pcoderegs.c: Cleaned warnings
532
533 2003-05-19  Scott Dattalo  <scott@dattalo.com>
534
535         * src/pic16/pcode.c: Cleaned warnings
536         * src/pic16/pcodepeep.c: Cleaned warnings
537         * src/pic16/ralloc.c: Cleaned warnings
538
539 2003-05-19  Bernhard Held <bernhard@bernhardheld.de>
540
541         * doc/sdccman.lyx: fixed bug 739745
542         * src/pic16/pcode.c (pic16_get_op): fixed warning on alpha
543
544 2003-05-18  Bernhard Held <bernhard@bernhardheld.de>
545
546         * src/port.h: removed DEFAULT_PORT, it's not yet pic16 ;-)
547         it can be defined with CFLAGS when running configure
548         * src/SDCCmain.c: fixed compiling + linking with object files
549
550 2003-05-18  Vangelis Rokas (vrokas@otenet.gr)
551
552         * configure.in: configure for pic16 port,
553             added --disable-pic16-port
554         * sdccconf_in.h: added macro OPT_DISABLE_PIC16
555         * src/SDCCmain.c: linkOptions is changed to set *,
556             added if/endif conditional macros to remove options help
557             messages from optionsTable when a port is not configured, added
558             support for the PIc16 port in the ports table, when executing
559             the compiler with no port specified on command line, a default
560             port is selected with the new macro DEFAULT_PORT which is
561             defined in port.h, in setDefaultOptions() linkOptions is removed
562             from initialization assignment, since now it is a set,
563             parseCmdLine uses setParseWithComma for linkOptions, in
564             linkEdit() linkOptions are accessed with new function indexSet()
565             which returns the i'th item of a set variable. See SDCCset.c, in
566             linkEdit() when calling buildCmdLine(), added linkOptions as
567             last argument. Now users can pass arguments to gplink via the
568             -Wl option, main() uses pic16glue() to glue up pic16 programs
569         * src/SDCCpeeph.c: various changes to support pic16
570         * src/SDCCset.c: added function  void *indexSet(set *, int)  to
571             return the i'th item of the set
572         * src/SDCCset.h: added function prototype for indexSet()
573         * src/SDCCsymt.c: in checkSClass(), added support for PIC16
574         * src/clean.mk: added pic16 in CLEANALLPORTS variable
575         * src/port.h: added TARGET_ID_PIC16,TARGET_IS_PIC16 macro,
576             added macro DEFAULT_PORT
577         * src/pic/main.c: corrected arguments of gplnk in _linkCmd
578         * src/pic16/gen.c: bug fix in genCpl(), now the correct code is
579             generated
580         * src/pic16/glue.c: commented out some error producing lines
581         * src/pic16/main.c: __config directives are commented out to stop
582             gpasm complaining and test the linkage with gplink, _linkCmd and
583             _asmCmd changed to be more gplink and gpasm friendly
584         * src/pic16/peeph.def: peep rule 3 is commented out, since it
585             produced an error when parsed, peep rule 12 is added to utilize
586             movff, but it is commented out since the pCode does not support
587             yet a command with 2 address arguments
588
589 2003-05-18    <johan@balder>
590
591         * src/ds390/gen.c (genArrayInit): removed obsolete and buggy ARRAYINIT
592         * src/ds390/main.c (genArrayInit): removed obsolete and buggy ARRAYINIT
593 2003-05-17  Karl Bongers(apply patches from Martin Helmling)
594
595         * debugger/mcs51/sdcdb.c,cmd.c,break.c and .h files.
596   Added feature to script commands from file.
597
598 2003-05-14  Bernhard Held <bernhard@bernhardheld.de>
599
600         * device/lib/_strtok.c: fixed bug #734355 by Lenny Story and Tim Woodall
601         * src/SDCCutil.c: include ctype.h for win32
602
603 2003-05-13  Bernhard Held <bernhard@bernhardheld.de>
604
605         * src/pic16/*: removed CR from many files, reported by Vangelis Rokas
606
607 2003-05-12  Karl Bongers(apply development patches from Martin Helmling)
608
609         * debugger/mcs51/sdcdb.c,simi.c,cmd.c,break.c and .h files.
610   Fixed so you can set breakpoints prior to run, run does not stop
611   on entry now.  Add tbreak.  Other enhancements and fixes for use
612   with ddd.
613
614 2003-05-12  Borut Razem <borut.razem@siol.net>
615
616         * src/SDCCmain.c: fixed the problem with searching the DATADIR as the last resort on *nix
617
618 2003-05-11  Borut Razem <borut.razem@siol.net>
619
620         * src/SDCCutil.c: WIN32 version of getBinPath() calls GetModuleFileName() to determine
621         the path of bin directory, so that PATH is the only env. variable, which has to be set
622         in case of standard installation.
623         * src/ds390/ds390.dsp: increased value of /Zm option to 1000
624         * src/pic/main.c: add quotes to file name parameters for gplink and gpasm
625         * src/SDCCglobl.h, src/SDCCmain.c, doc/sdccman.lyx: added --print-search-dirs command line option
626
627 2003-05-04  Bernhard Held <bernhard@bernhardheld.de>
628
629         * src/SDCCmain.c (linkEdit): fixed buffer overflow for gbz80
630         * support/regression/Makefile: inter-port-clean is no longer nesessary, the
631         temp files are in the port dir; clean the gen/test directory when
632         generating new test.c
633         * support/regression/ports/host/spec.mk: defined OBJEXT for target clean
634         * support/regression/tests/vaargs.c: fixed gcc 3.3 warning
635         * support/regression/tests/zeropad.c: added
636
637 2003-05-09    <johan@balder>
638
639         * src/SDCCglue.c: fixed bug #597940
640
641 2003-05-05  Karl Bongers(apply patches from Martin Helmling)
642
643         * debugger/mcs51/sdcdb.c,simi.c,cmd.c,symtab.c and .h files.
644   cache sfr, optimize next,step, fix off by one sourceline,
645   support ddd list function.
646         * sim/ucsim/cmd.src/newcmd.cc - small fix for sdcdb use.
647
648 2003-05-04  Bernhard Held <bernhard@bernhardheld.de>
649
650         * support/regression/HTMLgen.py: added compare_s2f()
651         * support/regression/Makefile: redo 1.27
652         * support/regression/generate-cases.py: redo 1.5
653
654 2003-04-30  Bernhard Held <bernhard@bernhardheld.de>
655
656         * support/regression/tests/float.c: workaround 33 bit hex constant
657         * support/regression/tests/simplefloat.c: fix division for host
658
659 2003-04-29  Scott Dattalo  <scott@dattalo.com>
660
661         * src/pic/pcoderegs.c Applied patch from Jim Hawkridge <jim@jimhawkridge.uk.eu.org>
662         that tame's the PIC's over-aggressive optimizer.
663
664 2003-04-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
665
666          * src.dsw, link/z80/aslink.h, link/z80/linkz80.dsp: z80 linker
667          support for MSVC.
668          
669 2003-04-29  Kevin Vigor <kevin@vigor.nu>
670
671         Initial support for DS80C400. "Hello world" runs on TINIm400
672         (with polled I/O).
673
674 2003-04-28  Karl Bongers(apply patches for Martin Helmling)
675
676          * debugger/mcs51/sdcdb.c,simi.c,cmd.c,symtab.c and .h files.
677          * Some notes on ddd usage added in debugger/README
678          Martin Helmling adding more features and fixes for ddd GUI debugger.
679          Code added for nexti, stepi, up, down, and other adjustments.
680
681 2003-04-28  Scott Dattalo  <scott@DATTALO.COM>
682
683         * src/pic/pCodepeep.c non-wildcard asmops are now handled
684         * src/pic/peeph.def Added two rules to optimize carry manipulation
685         * src/pic/* removed debug printfs
686
687 2003-04-28  Bernhard Held <bernhard@bernhardheld.de>
688
689         * debugger/mcs51/cmd.c: added header newalloc.h
690
691 2003-04-26  Bernhard Held <bernhard@bernhardheld.de>
692
693         * as/Makefile: new EXEEXT
694         * as/z80/Makefile: remove trailing slash of BUILDIR
695         * as/z80/clean.mk: new EXEEXT
696         * Makefile.common.in: add to CFLAGS (and others), don't replace it
697         * support/cpp2/Makefile.in: new EXEEXT
698         * src/pic/glue.c (pic14emitRegularMap): fixed warning
699
700 2003-04-24  Bernhard Held <bernhard@bernhardheld.de>
701
702         Cygwin's gcc always appends .exe: 'gcc -o a a.c' creates a.exe;
703         EXEEXT was introduced to fix all related problems with targets
704         "clean", "install" and "uninstall"; a couple of further flaws
705         especially with "clean" have been fixed too
706         * as/mcs51/Makefile.in
707         * as/mcs51/clean.mk
708         * as/z80/Makefile
709         * Makefile
710         * clean.mk
711         * debugger/mcs51/Makefile.in
712         * debugger/mcs51/clean.mk
713         * link/z80/Makefile
714         * link/z80/Makefile.in
715         * link/z80/clean.mk
716         * link/Makefile
717         * packihx/Makefile.in
718         * packihx/clean.mk
719         * sim/ucsim/Makefile
720         * sim/ucsim/clean.mk
721         * sim/ucsim/avr.src/Makefile.in
722         * sim/ucsim/avr.src/clean.mk
723         * sim/ucsim/s51.src/Makefile.in
724         * sim/ucsim/s51.src/clean.mk
725         * sim/ucsim/xa.src/Makefile.in
726         * sim/ucsim/xa.src/clean.mk
727         * sim/ucsim/z80.src/Makefile.in
728         * sim/ucsim/z80.src/clean.mk
729         * sim/ucsim/main_in.mk
730         * sim/ucsim/packages_in.mk
731         * sim/ucsim/gui.src/Makefile.in
732         * sim/ucsim/gui.src/serio.src/Makefile.in
733         * sim/ucsim/gui.src/serio.src/clean.mk
734         * src/Makefile.in
735         * src/clean.mk
736         * support/cpp2/Makefile.in
737         * support/cpp2/clean.mk
738         * support/makebin/Makefile
739         * support/makebin/clean.mk
740         * support/scripts/sdcc_mingw32: --program-suffix no longer needed
741         * doc/sdccman.lyx: --program-suffix no longer needed
742
743 2003-04-23  Karl Bongers(apply patches for Martin Helmling)
744
745          * debugger/mcs51/sdcdb.c,simi.c,cmd.c,..
746          Martin Helmling added support for ddd GUI debugger.
747          Code added to display assembly, set variables, and other commands
748          to interface to ddd.
749
750 2003-04-23  Bernhard Held <bernhard@bernhardheld.de>
751
752         * as/Makefile: fix target clean
753         * as/clean.mk: fix target clean
754         * as/z80/clean.mk: fix target clean
755
756 2003-04-22  Bernhard Held <bernhard@bernhardheld.de>
757
758         * Makefile.common.in: added @EXEEXT@
759         * configure.in: removed all mingw32 stuff
760         * configure: rebuilt from configure.in
761         * doc/sdccman.lyx: updated section "installation"
762         * support/scripts/sdcc_mingw32: adapted to configure
763         * support/scripts/sdcc_cygwin_mingw32: added
764
765 2003-04-22  Scott Dattalo  <scott@dattalo.com>
766
767         * src/pic Added object file support for the PIC port
768         * src/pic Applied patch from Craig Franklin (this started the object file support)
769         * src/regression Updated the PIC regression tests for object files
770
771 2003-04-20  Borut Razem <borut.razem@siol.net>
772
773         * sdcc/as/mcs51/lklex.c: make getfid() more robust and fixed gcc warning:
774           lklex.c: In function `getfid':
775           lklex.c:203: warning: array subscript has type `char'
776         * src/SDCCglobl.h: small change in stack handling macros, to avoid crash when compiled
777           with MSVC with global optimization enabled (probably an cl compiler bug ;-)
778         * support/Util/SDCCerr.c, support/Util/SDCCerr.h: added function fatal(), called from
779           stack handling macros
780
781 2003-04-19  Borut Razem <borut.razem@siol.net>
782
783         * "handling space characters in file path" task:
784         * src/SDCCmacro.c: fixed bug in handlig quote at the end of line
785         * support/Util/BuildCmd.c: define par as NULL if parameter value is invalid
786         * support/Util/MySystem.h: make it self-sufficient
787         * src/avr/main.c, src/ds390/main.c, src/mcs51/main.c, src/pic/main.c, src/xa51/main.c,
788           src/z80/main.c, sdcc/as/mcs51/lklex.c:
789           handling space characters in file path
790         * src/SDCCmain.c: introduced setDataPaths() function, {datadir} macro
791           (it will be used by assemblers, which have their own includes, e.g. gpasm)
792         * support/Util/MySystem.c: handling space characters in executable's path
793
794 2003-04-19  Bernhard Held <bernhard@bernhardheld.de>
795
796         * as/z80/Makefile: fix permanent rebuild of z80
797         * sim/ucsim/gui.src/Makefile.in: target "install" builds the same packages as target "all"
798         * support/regression/tests/bitfields.c: added Johan's bitfields.c
799
800 2003-04-18      Kevin Vigor <kevin@vigor.nu>
801
802         * src/SDCCopt.c: add special case optimization to replace modulo by
803           a power of two with a bitwise AND.
804
805 2003-04-18    <johan@balder>
806
807         * src/mcs51/gen.c (getFreePtr): fixed bug #635354
808
809 2003-04-17    <johan@balder>
810
811         * src/mcs51/ralloc.c (packRegsForAssign): fixed bug #716790 and removes lot's of redundant register usage around function calls
812         * src/mcs51/ralloc.c (packRegisters): fixed bug #720667
813
814 2003-04-13  Borut Razem <borut.razem@siol.net>
815
816         * doc/sdccman.lyx: updated info about #pragma SAVE/RESTORE nesting
817         * configure.in, configure: fixed problems on cygwin/WinCVS environmet with ports.* line endings;
818           fixed mingw problem in adl_NORMALIZE_PATH
819
820 2003-04-12  Borut Razem <borut.razem@siol.net>
821
822         * fixed "#pragma SAVE/RESTORE can not be nested":
823         * src/SDCC.lex: reworked pragma handling functions
824         * sdcc/src/SDCCglobl.h: reworked stack handling macros
825         * support/Util/SDCCerr.c, support/Util/SDCCerr.h: added E_STACK_VIOLATION error
826
827 2003-04-12  Bernhard Held <bernhard@bernhardheld.de>
828
829         * src/SDCCutil.c (pathEquivalent): defined but not used
830         * debugger/mcs51/sdcdb.c: replace SDCC_LIB_DIR
831         * configure.in: remove sdcc_datadir, sdcc_lib_dir and sdcc_include_dir
832         * configure: rebuilt from configure.in
833         * sdccconf_in.h: remove SDCC_LIB_DIR and SDCC_INCLUDE_DIR
834         * sdcc_vc_in.h: remove SDCC_LIB_DIR and SDCC_INCLUDE_DIR
835         * device/include/Makefile.in: replace sdcc_datadir
836         * device/lib/Makefile.in: replace sdcc_datadir
837         * Makefile.common.in: add LDFLAGS from configure
838         * packihx/Makefile.in: use LDFLAGS
839         * src/Makefile.in: use LDFLAGS
840         * support/cpp2/Makefile.in: add LDFLAGS from configure
841         * support/makebin/Makefile: use LDFLAGS
842         * .version: bumped version number to 2.3.5
843
844 2003-04-12  Borut Razem <borut.razem@siol.net>
845
846         * completed "different paths" task:
847         * src/SDCCmacro.c: fixed bug in handling quotes
848         * src/SDCCutil.c, src/SDCCutil.c: rewritten getPrefixFromBinPath()
849         * src/SDCCmain.c: _discoverPaths() replaced with setBinPaths(), setIncludePath() and setLibPath()
850
851 2003-04-12  Bernhard Held <bernhard@bernhardheld.de>
852
853         * src/pic/pcoderegs.c (Remove1pcode): fix warning on alpha
854
855 2003-04-11 kevin Vigor <kevin@vigor.nu>
856
857         * ds390/gen.c ds390/peeph.def: fix bug 706781
858
859 2003-04-11  Borut Razem <borut.razem@siol.net>
860
861         * support/Util/dbuf.c, support/Util/dbuf.h: update to version 1.1.1 - re-added C++ stuff to make it still more portable
862
863 2003-04-10  Scott Dattalo  <scott@dattalo.com>
864
865         * src/pic/* Applied the pointer-to-function patch from Steve Tell.
866         * src/pic/* Fixed several pointer bugs. (PIC port broke when the ruonly bit was
867          set - this bit used to not be set...).
868         * src/pic/gen.c Fixed buf 609268 ==> x = (x+1) & 0xf; generated 
869           bad code in PIC Port
870         * src/regression/and2.c added to test bug 609268
871         * src/regression/Makefile added and2.c to regression test
872
873
874 2003-04-08    <johan@CP255758-A>
875
876         * src/mcs51/gen.c (gen51Code): display reg usage in --icode-in-asm
877         * src/mcs51/ralloc.c (serialRegAssign): update the registers in use and save some slocs
878         * src/SDCCicode.h: added riu to show the register usage in --icode-in-asm
879
880 2003-04-07  Bernhard Held <bernhard@bernhardheld.de>
881
882         * configure.in: fully support prefix, exec_prefix, datadir, docdir;
883         fix bug #487815
884         * support/cpp2/Makefile.in: fix bug #487815
885         * configure: rebuilt from configure.in
886         * Makefile.common.in: docdir changed, new path suffixes
887         * sdccconf_in.h: new RETSIGTYPE, and other PATHs
888         * sdcc_vc_in.h: reflect changes from sdccconf.h
889         * src/SDCCglobl.h: remove *SEPARATOR_CHARS, they are now in sdccconf.h
890         * src/SDCCutil.h: remove BINDIR hack
891         * doc/sdccman.lyx: update new path hierarchy
892
893 2003-04-06    Paul Stoffregen <paul@pjrc.com>
894
895         * src/SDCCpeeph.c: added okToRemoveSLOC test
896
897 2003-04-06    Paul Stoffregen <paul@pjrc.com>
898
899         * device/lib/printf_fast.c: added leading zero format ("%06d", etc)
900
901 2003-04-06    Paul Stoffregen <paul@pjrc.com>
902
903         * src/SDCCpeeph.c: added labelIsReturnOnly test
904         * src/mcs51/peeph.def: Peephole 244: replace ljmp to ret with ret
905
906 2003-04-05    <johan@balder>
907
908         * src/SDCCcse.c (cseAllBlocks): fixed bug #460088
909         * src/SDCCloop.c (DEFSETFUNC): fixed bug #460088
910         * src/SDCCopt.c (eBBlockFromiCode): fixed bug #460088
911         * src/SDCCast.c: fixed a warning
912         * src/SDCCast.h: fixed a warning
913         * src/SDCCicode.c (operandFromAst): fixed a warning
914
915 2003-04-04    <johan@balder>
916
917         * src/SDCCloop.c (DEFSETFUNC): undid the fix for bug #519584
918         * src/SDCCast.c (decorateType): fixed bug #715076
919         * src/SDCC.y: fixed bug #702907
920
921 2003-04-03    <johan@balder>
922
923         * device/lib/_mulint.c (_muluint): new #pragma LESS_PEDANTIC
924         * src/SDCCopt.c (eBBlockFromiCode): new #pragma LESS_PEDANTIC
925         * src/SDCCglobl.h (PRAGMA_LESSPEDANTIC): new #pragma LESS_PEDANTIC
926         * src/SDCC.lex (doPragma): new #pragma LESS_PEDANTIC
927         * src/SDCCmain.c (parseCmdLine): new #pragma LESS_PEDANTIC
928
929 2003-04-03  Bernhard Held <bernhard@bernhardheld.de>
930
931         * _decdptr.c: fix return values
932         * _gptrget.c: fix return values
933         * _gptrgetc.c: fix return values
934         * _gptrput.c: fix return values
935         * _mulint.c: fix return values
936         * as/z80/Makefile: fix 'make -j' problem
937
938 2003-04-02  Bernhard Held <bernhard@bernhardheld.de>
939
940         * Makefile.common.in: unused PORT, SCC and SAS removed, fixed docdir
941         * configure.in: big cleanup, updated to autoconf 2.5x
942         * configure: rebuilt from configure.in
943         * sdccconf_in.h: new RETSIGTYPE, and other PATHs
944         * sdcc_vc_in.h: reflect changes from sdccconf.h
945         * doc/Makefile: fixed a flaw in "make install"
946
947 2003-04-02    <johan@balder>
948
949         * src/ds390/gen.c (genCmp): no comments
950         * src/mcs51/gen.c (genCmp): no comments
951         * src/SDCCopt.c (eBBlockFromiCode): detect missing return values
952         * src/SDCCast.c (ast_print): fixed the function type in --dumptree
953
954 2003-04-01  Bernhard Held <bernhard@bernhardheld.de>
955
956         * support/regression/generate-cases.py: place generated file in given sub directory
957         * support/regression/ports/host/spec.mk: prevent removal of testfwk.o
958         * support/regression/Makefile: improvements for 'make -j';
959         side effect: it's simpler and faster now
960
961 2003-03-31  Borut Razem <borut.razem@siol.net>
962
963         * src/z80/main.c: link-{port} and as-{port} defined without path
964         * src/src.dsp: support/Util/MySystem.h and src/SDCCutil.h added to project
965
966 2003-03-31  Bernhard Held <bernhard@bernhardheld.de>
967
968         * Makefile, src/Makefile.in: add dependencies, so that 'make -j' works
969
970 2003-03-30  Borut Razem <borut.razem@siol.net>
971
972         * support/Util/BuildCmd.c, support/Util/BuildCmd.h: rewrite buildCmdLine(),
973           changed type of list parameter to set
974         * src/ds390/main.c: changed type of parameter asmOptions to set in _tininative_do_assemble()
975         * src/port.h: changed type of do_assemble() parameter to set
976         * src/SDCCmain.c: type of asmOptions changed to set, introduced setParseWithComma(),
977           sdcpp defined without path, removed variable VersionString, introduced set binPathSet,
978           definition of "cppoutfilename" macro with NULL value in preProcess()
979         * src/SDCCglobl.h: included "SDCCset.h", added declaration of setParseWithComma()
980         * src/SDCCglue.c: removed variable VersionString, inroduced spacesToUnderscores()
981         * support/Util/MySystem.c, support/Util/MySystem.h: rewrite, char *ExePathList[]
982           replaced with set *binPathSet
983         * shash_add() deallocates the item, if allready exsists, before adding the new one
984         * src/SDCCmacro.c: handling macros with empty or NULL values in _evalMacros()
985
986 2003-03-30  Scott Dattalo  <scott@dattalo.com>
987
988         * src/pic/gen.c: Commit patch from Steve Tell <tell@telltronics.org> that fixes
989           a nested for loop bug in the PIC port
990         * src/regression/nestfor.c: new regression test file Steve wrote to test nested
991           for loops
992
993 2003-03-29  Bernhard Held <bernhard@bernhardheld.de>
994
995         * support/Util/dbuf.h: remove C++ stuff to make it portable
996
997 2003-03-28  Borut Razem <borut.razem@siol.net>
998
999         * src/SDCC.lex: Fix for bug #711240: dynamic buffer handling of C
1000           literal strings in stringLiteral()
1001         * support/Util/dbuf.c, support/Util/dbuf.h: added: dynamic buffer handling
1002         * src/Makefile.bcc, src/Makefile.in, src\src.dsp: added support/Util/dbuf.c
1003           to the project
1004
1005 2003-03-27  Paul Stoffregen <paul@pjrc.com>
1006
1007         * src/SDCCpeeph.c (pcDistance): accurate byte distance for mcs51
1008
1009 2003-03-26    <johan@balder>
1010
1011         * src/mcs51/gen.c (saveRegisters): catched symbol abuse
1012         * src/ds390/gen.c (saveRegisters): catched symbol abuse
1013         * src/SDCCast.c (decorateType): fixed " -v < 3"
1014
1015 2003-03-23  Bernhard Held <bernhard@bernhardheld.de>
1016
1017         * doc/cdbfile.html: removed, replaced by cdbfileformat.lyx
1018         Added Lenny Story's debug infrastructure changes:
1019         * src/Makefile.in:  added new files cdbFile.c and SDCCdebug.c
1020         * src/Makefile.bcc: added new files cdbFile.c and SDCCdebug.c
1021         * src/cdbFile.c: added
1022         * src/SDCCdebug.c: added
1023         * src/SDCCdebug.h: added
1024         * src/SDCCast.c (createFunction)
1025         * src/SDCCglue.c (emitRegularMap, emitStaticSeg, emitOverlay, glue)
1026         * src/SDCCmain.c (parseCmdLine, main)
1027         * src/SDCCmem.c (redoStackOffsets)
1028         * src/SDCCsymt.c (cdbStructBlock, cdbTypeInfo, cdbSymbol, cdbStruct, cdbStructBlock)
1029         * src/SDCCsymt.h
1030         * src/common.h
1031         * src/avr/gen.c (genAVRCode)
1032         * src/ds390/gen.c (gen390Code)
1033         * src/mcs51/gen.c (gen51Code) 
1034         * src/pic/gen.c (genpic14Code)
1035         * src/pic/glue.c (pic14emitRegularMap, pic14emitStaticSeg, pic14emitOverlay, picglue)
1036         * src/xa51/gen.c (genXA51Code)
1037         * src/SDCCast.c: fixed "void foo(void){char c; -c < 0;}"
1038
1039 2003-03-22  Frieder Ferlemann <Frieder.Ferlemann@web.de>
1040
1041         * src/mcs51/gen.c (genCodePointerGet): quicker code for bug #700797
1042         * src/mcs51/peeph.def: added rules 177, 241.x to 243, touched 181, 182.x, 193.x
1043
1044 2003-03-22    <johan@balder>
1045
1046         * src/SDCCicode.c (geniCodeDerefPtr): fixed bug #698231
1047
1048 2003-03-21  Bernhard Held <bernhard@bernhardheld.de>
1049
1050         * support/scripts/sdcc_mingw32: adapted to configure from autoconf 2.54
1051         * doc/cdbfileformat.lyx: added, written by Lenny Story
1052         * doc/Makefile: added cdbfileformat.lyx
1053         * doc/clean.mk: added cdbfileformat.lyx
1054
1055 2003-03-20  Bernhard Held <bernhard@bernhardheld.de>
1056
1057         * src/mcs51/peeph.def: fix bug #705773
1058
1059 2003-03-20    <johan@balder>
1060
1061         An sfr/sbit can have an "at #" AND an initializer
1062         * src/SDCCsymt.c (checkSClass): 
1063         * src/SDCCmem.c (allocGlobal): 
1064         * src/SDCCmem.c (allocLocal): 
1065         * src/SDCCast.c (createBlock): 
1066
1067 2003-03-17  Bernhard Held <bernhard@bernhardheld.de>
1068
1069         * src/ds390/peeph.def: fix bug #704878: added rule 213.b suggested by Jan Rejlek
1070
1071 2003-03-16    <johan@balder>
1072
1073         Undid the hackup of const and volatile, the problem is much bigger
1074         * src/SDCC.y:1.65
1075         * src/SDCCast.c:1.171
1076         * src/SDCCglue.c:1.138
1077         * src/SDCCicode.c:1.146
1078         * src/SDCCsymt.c:1.150
1079         * src/SDCCval.c:1.65
1080
1081 2003-03-15  Bernhard Held <bernhard@bernhardheld.de>
1082
1083         * src/mcs51/ralloc.c (packRegsForAssign): fixed bug #703541
1084         * src/ds390/gen.c (genAddrOf): fixed bug #704087
1085
1086 2003-03-13    <johan@balder>
1087
1088         Hackup const and volatile modifiers in type chains a bit:
1089         * src/SDCC.y:1.63
1090         * src/SDCCast.c:1.169
1091         * src/SDCCglue.c:1.136
1092         * src/SDCCicode.c:1.143
1093         * src/SDCCsymt.c1.146
1094         * src/SDCCsymt.h1.59
1095         * src/SDCCval.c:1.63
1096
1097 2003-03-12    <johan@balder>
1098
1099         * src/SDCCBBlock.h: more LRH debugging junk
1100         * src/SDCCcflow.h: more LRH debugging junk
1101         * src/SDCCloop.c: more LRH debugging junk
1102         * src/SDCC.y (struct_declaration): fixed bug #697590
1103         * src/SDCCsymt.[hc] (cloneSpec): NEVER EVER use this again
1104         * src/ds390/gen.c (aopForRemat): fixed bug #700031
1105         * src/SDCCglue.c (emitStaticSeg): fixed bug #700797
1106
1107 2003-03-11 Kevin Vigor <kevin@vigor.nu>
1108         * src/SDCCpeeph.c: quit being lazy and made proper fix (peephole
1109         test function names must now match exactly).
1110         * src/SDCCcse.c: added special case in findCheaperOp to allow
1111         extending a short integer. Makes less awful code for bug 700121 test case.
1112
1113 2003-03-11  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1114
1115         * as/mcs51/lkmain.c: Added ASlink-Warning to messages 
1116         * as/mcs51/lkaomf51.c: Fixed bug when linking asmblink example
1117
1118 2003-03-11 Kevin Vigor <kevin@vigor.nu>
1119
1120         * src/SDCCpeeph.c: fix so that operandsNotEqualX functions are
1121         actually called (operandsNotEqual() was called for all 
1122         operandsNotEqualX tests).
1123
1124 2003-03-11 Kevin Vigor <kevin@vigor.nu>
1125
1126         * src/SDCCcse.c: fix findCheaperOp to prevent replacing int types
1127         with shorter literals. Fixes bug 700121.
1128
1129 2003-03-11    <johan@balder>
1130
1131         * src/SDCCsymt.c (compareType): a (void *) can be assigned to any pointer
1132
1133 2003-03-11  Bernhard Held <bernhard@bernhardheld.de>
1134
1135         * src/SDCCloop.c (mergeRegions): an evil beast is dead
1136         * src/SDCCmain.c (preProcess): minor cleanup: eliminate preOutName
1137
1138 2003-03-10  Borut Razem <borut.razem@siol.net>
1139
1140         * src/SDCCmain.c: pipe preprocessor's output
1141         * support/Util/MySystem.c, support/Util/MySystem.h: added my_popen()
1142         * sdcc_vc_in.h: define pclose as _pclose for WIN32
1143         * src/SDCCglue.c, src/SDCCglue.h: added set pipeSet, added function closePipes,
1144         which closes all pipes in pipeSet set
1145         * src/SDCCset.c: free deleted item in function deleteSetItem()
1146         * src/src.dsp, src/z80/z80.dsp: files support/Util/BuildCmd.c and support/Util/MySystem.c
1147         moved from z80 to src subproject
1148         * .version: increased version number to 2.3.4
1149
1150 2003-03-10  Bernhard Held <bernhard@bernhardheld.de>
1151
1152         * support/regression/ports/mcs51/spec.mk: increase timeout for CF's sparc to 30s
1153         * support/regression/ports/ds390/spec.mk: increase timeout for CF's sparc to 25s
1154         * support/regression/ports/xa51/spec.mk: fix typo
1155
1156 2003-03-09  Bernhard Held <bernhard@bernhardheld.de>
1157
1158         * src/SDCCglobl.h: PATH_MAX is already defined in mingw32 headers
1159
1160 2003-03-09  Borut Razem <borut.razem@siol.net>
1161
1162         * src/SDCCmain.c: pipe preprocessor's output
1163         * support/Util/MySystem.c, support/Util/MySystem.h: added my_popen()
1164         * sdcc_vc_in.h: define pclose as _pclose for WIN32
1165         * src/SDCCglue.c, src/SDCCglue.h: added set pipeSet, added function closePipes,
1166         which closes all pipes in pipeSet set
1167         * src/SDCCset.c: free deleted item in function deleteSetItem()
1168         * src/src.dsp, src/z80/z80.dsp: files support/Util/BuildCmd.c and support/Util/MySystem.c
1169         moved from z80 to src subproject
1170
1171 2003-03-09  Borut Razem <borut.razem@siol.net>
1172
1173         * src/SDCCglue.c: re-implemented tempfilename() and tempfile(): using mkstemp() if available
1174         * src/SDCCsymt.h: fixed MSVC and BORLANDC compilation (included SDCCglobl.h instead srccconf.h)
1175         * sdcc_vc_in.h: explicitly undefined HAVE_MKSTEMP which is not available on BORLANDC and MSVC
1176         * src/SDCCset.h: removed inclusion of sdccconf.h or sdcc_vc.h
1177         * src/SDCCglobl.h: unification of WIN32 native definitions
1178
1179 2003-03-09  Frieder Ferlemann <Frieder.Ferlemann@web.de>
1180
1181         * src/mcs51/gen.c: applied in-/dec patch mentioned on sdcc-devel 2003-03-01
1182
1183 2003-03-08  Bernhard Held <bernhard@bernhardheld.de>
1184
1185         * src/configure.in:   check for endianess (even while cross-compiling)
1186         * src/configure:      check for endianess (even while cross-compiling)
1187         * src/configure_in.h: check for endianess (even while cross-compiling)
1188         * src/avr/gen.c:        remove old endianess stuff
1189         * src/mcs51/gen.c:      remove old endianess stuff
1190         * src/ds390/gen.c:      remove old endianess stuff
1191         * src/pic/gen.c:        remove old endianess stuff
1192         * src/pic/genarith.c:   remove old endianess stuff
1193         * src/pic/glue.c:       fix endianess check
1194         * src/pic16/gen.c:      remove old endianess stuff
1195         * src/pic16/genarith.c: remove old endianess stuff
1196         * src/pic16/glue.c:     fix endianess check
1197         * src/xa51/gen.c:       remove old endianess stuff
1198         * src/z80/gen.c:        fix endianess check
1199         * src/SDCCglue.c:       fix endianess check
1200         * src/ds390/peeph.def: fix bug 700036
1201
1202 2003-03-08  Bernhard Held <bernhard@bernhardheld.de>
1203
1204         * src/SDCCsymt.h: use appropriate data-types on host for SDCC's int and long
1205         * src/configure: find appropriate data-types on host for SDCC's int and long
1206         * src/configure.in: find appropriate data-types on host for SDCC's int and long
1207         * src/sdccconf_in.h: find appropriate data-types on host for SDCC's int and long
1208         * src/xa51/gen.c: use %d, not %ld for 4 byte variables
1209
1210 2003-03-07    <johan@balder>
1211
1212         Just a big NOOP:
1213                 some minor cleanups before the big shot
1214                 OP_DEFS and OP_USES now use Kevin's protection
1215                 new option --nolabelopt
1216
1217         * src/SDCCBBlock.c:
1218         * src/SDCCast.c,:
1219         * src/SDCCcflow.c:
1220         * src/SDCCcse.c:
1221         * src/SDCCicode.c:
1222         * src/SDCCicode.h:
1223         * src/SDCClabel.c:
1224         * src/SDCCloop.c:
1225         * src/SDCCmain.c:
1226         * src/ds390/ralloc.c:
1227         * src/mcs51/ralloc.c:
1228         * src/pic/ralloc.c:
1229         * src/xa51/ralloc.c:
1230         * src/z80/ralloc.c:
1231
1232 2003-03-06  Bernhard Held <bernhard@bernhardheld.de>
1233
1234         * src/pic/pcode.c (get_op): fix 64 bit warnings
1235         * src/pic/pcode.c (pCode2str): fix 64 bit warnings
1236         * src/SDCChasht.c (newHashTable): fix 64 bit warnings
1237         * src/SDCCsymt.c (checkTypeSanity): fix 64 bit warnings
1238         * support/regression/tests/malloc.c: fix 64 bit warnings
1239
1240 2003-03-04  Bernhard Held <bernhard@bernhardheld.de>
1241
1242         * src/mcs51/gen.c (genMinus): fixed bug 696436
1243
1244 2003-03-02  Borut Razem <borut.razem@siol.net>
1245
1246         * src/SDCCmain.c: added BORLANDC, corrected MSVC in printVersionInfo()
1247
1248 2003-02-26  Bernhard Held <bernhard@bernhardheld.de>
1249
1250         * configure.in: test for mkstemp
1251         * sdccconf_in.h: add HAVE_MKSTEMP
1252
1253 2003-02-24  Bernhard Held <bernhard@bernhardheld.de>
1254
1255         * device/include/ctype.h: removed warning while using --stack-auto
1256         * device/include/malloc.h: removed warning while using --stack-auto
1257         * device/include/string.h: removed warning while using --stack-auto
1258
1259 2003-02-23  Borut Razem <borut.razem@siol.net>
1260
1261         * src/asm.h: corrected assertion in function printILine(): _pipe() was not executed on MSVC,
1262         because NDEBUG is defined (see man assert)
1263         * sdcc_vc_in.h: vsnprintf is defined as _vsnprintf on MSVC
1264
1265 2003-02-23  Frieder Ferlemann <Frieder.Ferlemann@web.de>
1266
1267         * src/mcs51/gen.c (genUminusFloat): avoided dptr in-/decrement for xdata variables
1268         * src/mcs51/peeph.def: added rule suggested by Gernot Fink, white space/comment changes
1269
1270 2003-02-18  Frieder Ferlemann <Frieder.Ferlemann@web.de>
1271
1272         * src/SDCCpeeph.c: added peephole conditions testing for same arguments
1273         * src/mcs51/peeph.def: added rules 238a-d which remove redundant moves
1274
1275 2003-02-18    <johan@balder>
1276
1277         * as/mcs51/asmain.c (asmbl): module can start with a digit
1278         * as/z80/asmain.c (asmbl): module can start with a digit
1279
1280 2003-02-16  Bernhard Held <bernhard@bernhardheld.de>
1281
1282         * sim/ucsim/mkecho: inserted #!/bin/sh for Cygwin, so that it's executable
1283         * src/asm.c: fix pipe() for Mingw32
1284
1285 2003-02-15  Bernhard Held <bernhard@bernhardheld.de>
1286
1287         * src/SDCCglue.h: make tmpfileNameSet available for preOutName
1288         * src/SDCCmain.c (preProcess): make sure, that preOutName will be deleted;
1289         make -V work again; --c1mode reads now from stdin
1290         * doc/sdccman.lyx: added --c1mode
1291         * support/Util/SDCCerr.c: new messages for c1 mode
1292         * support/Util/SDCCerr.h: new messages for c1 mode
1293         * src/SDCC.lex (checkCurrFile): test if fullSrcFileName is NULL for c1mode
1294
1295 2003-02-15    <johan@balder>
1296
1297         * src/asm.c: new options: --no-c-code-in-asm and --i-code-in-asm
1298
1299 2003-02-14  Bernhard Held <bernhard@bernhardheld.de>
1300
1301         * doc/sdccman.lyx: Environment variables, -o and other minor things
1302
1303 2003-02-14    <johan@balder>
1304
1305         * src/xa51/main.c: before anyone really tries to use it :)
1306
1307         * Install doc's in share/sdcc/doc
1308         * removed some obsolete files
1309         * Do a proper make distclean and uninstall
1310         M Makefile.common.in
1311         R sdccbuild.sh
1312         M as/Makefile
1313         M device/include/Makefile.in
1314         M device/lib/Makefile.in
1315         M doc/sdccman.lyx
1316         M link/Makefile
1317         M sim/ucsim/doc/Makefile.in
1318         M src/clean.mk
1319         R src/avr/peeph.rul
1320         R src/xa51/peeph.rul
1321         M support/cpp2/Makefile.in
1322         M support/makebin/Makefile
1323
1324
1325 2003-02-13  Bernhard Held <bernhard@bernhardheld.de>
1326
1327         * support/regression/ports/host/spec.mk: use cc as host compiler for max osx
1328
1329 2003-02-10  Borut Razem <borut.razem@siol.net>
1330
1331         * doc/bccinst.txt, packihx/packihx.c, sdcc_vc_in.h, src/SDCCset.h,
1332         support/cpp2/config.in: Borland C++ build doesn't depend on Cygwin configure
1333         * Bcc.ini, Makefile.bcc, as/mcs51/Makefile.bcc,
1334         device/examples/ds390/tinitalk/Makefile.bcc, packihx/Makefile.bcc,
1335         support/cpp2/Makefile.bcc, src/Makefile.bcc, src/avr/Makefile.bcc,
1336         src/ds390/Makefile.bcc, src/izt/Makefile.bcc, src/mcs51/Makefile.bcc,
1337         src/pic/Makefile.bcc, src/pic16/Makefile.bcc, src/xa15/Makefile.bcc,
1338         src/z80/Makefile.bcc: Borland Makefile cleanup
1339         * as/z80/Makefile.bcc: Added Borland Makefile
1340         * support/cpp2/borland.h: Removed
1341
1342 2003-02-10  Bernhard Held <bernhard@bernhardheld.de>
1343
1344         * doc/sdccman.lyx: new pragma NOIV by "Johannes Stezenbach" <js@convergence.de>
1345         * src/SDCC.lex: new pragma NOIV
1346         * src/SDCCglobl.h: new pragma NOIV
1347         * src/SDCCmem.c: new pragma NOIV
1348
1349 2003-02-09  Bernhard Held <bernhard@bernhardheld.de>
1350
1351         * src/SDCCmain.c: signal handling is switched off by SDCC_LEAVE_SIGNALS
1352
1353 2003-02-09  Bernhard Held <bernhard@bernhardheld.de>
1354
1355         * src/SDCCmain.c: signal handling is switched off by --debug
1356         * doc/Makefile: small fix for install; use clean.mk again
1357         * doc/clean.mk: clean *.pdf and *.html too
1358
1359 2003-02-08  Bernhard Held <bernhard@bernhardheld.de>
1360
1361         * device/lib/_mulint.c: small fix for large/ds390 --int-long-reent resp. --stack-auto
1362         * device/lib/printfl.c: fix a ds390 bug by making it portable
1363         * src/SDCCsymt.c (initCSupport): fix compile warning on Cygwin
1364         * src/SDCCopt.c (cnvToFloatCast): fix compile warning on Cygwin
1365         * src/SDCCopt.c (cnvFromFloatCast): fix compile warning on Cygwin
1366         * debugger/mcs51/cmd.c: converted multi-line string literals
1367         * sim/ucsim/globals.cc: converted multi-line string literals
1368         * src/SDCCmain.c: introduced signal handler to remove temp files
1369         * doc/Makefile: small tweaks, implement clean
1370         * doc: removed generated files
1371
1372 2003-02-05  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1373
1374         * as/mcs51/aslink.h, as/mcs51/lkihx.c, as/mcs51/lkrloc.c:  Applied
1375         patch from Jan Rejlek <jr@apex-lib.cz> to fix Bug 677692: "Extended
1376         Address Record is not correctly generated for DS390."
1377
1378 2003-02-02  Borut Razem <borut.razem@siol.net>
1379
1380         * Makefile.bcc: removed non existing cpp project and non compilable izt project from makefile
1381         * as/mcs51/asm.h: fixed compilation with Borland C
1382         * support/cpp2/Makefile.bcc: added rule to generate auto-host.h
1383         * support/cpp2/auto-host_vc_in.h: fixed compilation with Borland C
1384         * src/mcs51/mcs51a.dsp: corrected misspelled project name from msc51a to mcs51a
1385         * src/avr/Makefile.bcc, src/ds390/Makefile.bcc, src/izt/Makefile.bcc,
1386         src/mcs51/Makefile.bcc, src/pic16/Makefile.bcc, src/xa51/Makefile.bcc,
1387         src/z80/Makefile.bcc: delete $(LIB) only if exist
1388         * src/Makefile.bcc, src/pic/Makefile.bcc:  fixed compilation with Borland C
1389
1390 2003-02-02  Bernhard Held <bernhard@bernhardheld.de>
1391
1392         * device/include/malloc.h: introduced NULL
1393         * device/include/string.h: introduced NULL
1394         * device/include/stdlib.h: introduced NULL
1395         * device/lib/_memcpy.c: removed NULL
1396         * device/lib/_strcat.c: removed NULL
1397         * device/lib/_strchr.c: removed NULL
1398         * device/lib/_strcmp.c: removed NULL
1399         * device/lib/_strcpy.c: removed NULL
1400         * device/lib/_strcspn.c: removed NULL
1401         * device/lib/_strlen.c: removed NULL
1402         * device/lib/_strncat.c: removed NULL
1403         * device/lib/_strncmp.c: removed NULL
1404         * device/lib/_strncpy.c: removed NULL
1405         * device/lib/_strpbrk.c: removed NULL
1406         * device/lib/_strrchr.c: removed NULL
1407         * device/lib/_strspn.c: removed NULL
1408         * device/lib/_strstr.c: removed NULL
1409         * device/lib/_strtok.c: removed NULL
1410         * device/lib/malloc.c: removed NULL, include own header
1411
1412 2003-02-02    <johan@balder>
1413
1414         * 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
1415         * support/regression/fwk/lib/testfwk.c: div and mod isn't broken anymore
1416         * regressions ds390/spec.mk and mcs51/spec.mk (timeout): my good old balder isn't fast enough for some tests
1417         * src/z80/gen.c (genZ80Code): added c-lines in asm comments
1418         * as/z80/asm.h (NINPUT): increased for long c-comments in regression tests
1419         * src/z80/gen.c (genRightShiftLiteral): fixed the (char)(-3)>>8 (I think)
1420
1421 2003-02-01  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1422
1423         * src/SDCCmain.c: Fixed bug 678574: "ds390: ASlink-Error-Stack overlaps
1424         area 'DATA'"
1425
1426 2003-02-01    <johan@balder>
1427
1428         * src/SDCCval.c (valBitwise): fixed Karl's "2 | (1<<8)"
1429
1430 2003-01-31    <johan@CP255758-A>
1431
1432         * src/ds390/main.c (_ds390_genAssemblerPreamble): applied Jan Rejlek's >64K startup patch
1433
1434 2003-01-30    <johan@balder>
1435
1436         * src/SDCCBBlock.c: automatic bug detection
1437         * src/SDCCicode.c: automatic bug detection
1438
1439 2003-01-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1440
1441         * src/SDCCglobl.h:   now --xram-size 0 works
1442         * src/SDCCmain.c:    now --xram-size 0 works
1443
1444 2003-01-29    <johan@balder>
1445
1446         * src/almosteverything: changed OP_DEFS and OP_USES from macros to functions to catch symbol abuse (a hot topic in the bug list :)
1447
1448 2003-01-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1449
1450         * as/mcs51/aslink.h: Added options --xram-size and --code-size 
1451         * as/mcs51/lkdata.c: Added options --xram-size and --code-size 
1452         * as/mcs51/lkmain.c: Added options --xram-size and --code-size 
1453         * as/mcs51/lkmem.c:  Added options --xram-size and --code-size 
1454         * src/SDCCglobl.h:   Added options --xram-size and --code-size 
1455         * src/SDCCmain.c:    Added options --xram-size and --code-size 
1456
1457 2003-01-28  Bernhard Held <bernhard@bernhardheld.de>
1458
1459         * src/ds390/gen.c: fix deps by replacing <common.h> with "common.h"
1460         * src/SDCC.lex: rename P_OVERLAY to P_OVERLAY_ for cross-gcc 3.2 MINGW32
1461
1462 2003-01-27    <johan@balder>
1463
1464         * src/SDCC.y: fixed bug #613764
1465
1466 2003-01-26    <johan@balder>
1467
1468         * src/SDCClrange.c:  fixed Bernhard's "char * code ptr = &c"
1469         * src/SDCCsymt.h: fixed bug #673374
1470         * src/SDCCglue.c: fixed bug #661910
1471         * src/SDCCast.c: fixed bug #458099 and 673374
1472
1473 2003-01-26  Bernhard Held <bernhard@bernhardheld.de>
1474
1475         * as/mcs51/strcmpi.c: added, provides Aurelien Jarno's as_strcmpi(); strcmpi() is not ANSI
1476         * as/mcs51/strcmpi.h: added
1477         * as/mcs51/asm.h: remove ugly "#define strcmpi strcmp"
1478         * as/mcs51/aslink.h: remove ugly "#define strcmpi strcmp"
1479         * as/mcs51/asmain.c: strcmpi -> as_strcmpi
1480         * as/mcs51/assym.c: strcmpi -> as_strcmpi
1481         * as/mcs51/lkmem.c: strcmpi -> as_strcmpi
1482         * as/mcs51/lknoice.c: strcmpi -> as_strcmpi
1483         * as/mcs51/lksym.c: strcmpi -> as_strcmpi
1484         * as/mcs51/Makefile.aslink: new module strcmpi
1485         * as/mcs51/Makefile.asx8051: new module strcmpi
1486         * as/mcs51/Makefil.bcc: new module strcmpi
1487         * as/mcs51/Makefile.in: new module strcmpi
1488         * sim/ucsim/s51.src/uc390.cc (get_mem_size): make RAM big enough for tinibios
1489
1490 2003-01-26    <johan@balder>
1491
1492         * src/SDCCglue.c: reverted back to 1.124
1493         * src/SDCCast.c: reverted back to 1.156
1494         * src/mcs51/gen.c (aopGet): applied Frieder's efficiency patch
1495
1496 2003-01-25    <johan@balder>
1497
1498         * src/SDCCglue.c: A better fix for bug #661910
1499         * src/SDCCast.c: A better fix for bug #661910
1500         * src/SDCCglue.c (emitRegularMap): That was a little too efficient
1501
1502 2003-01-24  Bernhard Held <bernhard@bernhardheld.de>
1503
1504         * src/Makefile.in: remove spawn.o
1505         * src/SDCCmain.c: remove spawn.h
1506         * src/SDCCmain.c (printVersionInfo): report MINGW32 instead of UNIX
1507         * src/spawn.c: removed
1508         * src/spawn.h: removed
1509         * support/regression/ports/ds390/spec.mk: link with -r
1510
1511 2003-01-24    <johan@CP255758-A>
1512
1513         * src/ds390/gen.c (aopOp): fixed bug #667458
1514         * src/SDCCglue.c (emitRegularMap): fixed bug #458099 again
1515         * src/SDCCast.c (createIvalCharPtr): fixed bug #661910
1516         (createIvalCharPtr): an ival doesn't always have a storage class anymore
1517
1518 2003-01-24  Bernhard Held <bernhard@bernhardheld.de>
1519
1520         * src/mcs51/peeph.def: better assembler identation by Frieder
1521         * src/mcs51/gen.c: better assembler identation by Frieder
1522
1523 2003-01-22  Bernhard Held <bernhard@bernhardheld.de>
1524
1525         * as/z80/string.h: removed for gcc 3.2
1526         * support/makebin/makebin.c: #include <string.h> for gcc 3.2
1527         * src/pic/pcode.c (get_op_from_instruction): fix concatenation of string literals with __FUNCTION__ for gcc 3.2
1528
1529 2003-01-19  Bernhard Held <bernhard@bernhardheld.de>
1530
1531         * src/SDCCmain.c (linkEdit): rename mem and map files even in case of failure
1532         * src/SDCCpeeph.c (replaceRule): fix bug #663503
1533         * support/regression/Makefile: separate temp files for ports
1534         * support/regression/generate-cases.py: separate temp files for ports
1535         * src/mcs51/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
1536         * src/ds390/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
1537
1538 2003-01-19  Bernhard Held <bernhard@bernhardheld.de>
1539
1540         * moved tinitalk to device/examples/ds390
1541
1542 2003-01-14  Bernhard Held <bernhard@bernhardheld.de>
1543
1544         * as/mcs51/lkmem.c: rflag is for DS390
1545         * src/SDCCglobl.h: removed out_name and options stackOnData, genericPtr
1546         * src/SDCCmain.c (optionsTable, setDefaultOptions): removed --stack-after-data and --generic
1547                          (linkEdit): move mem- and map-files the same way as ihx-files
1548         * src/z80/main.c (_setDefaultOptions): removed --generic
1549         * src/SDCCmain.c (_processC1Arg, parseCmdLine, main): --c1mode works again
1550         * src/SDCCglue.c (createInterruptVect, glue): --c1mode works again
1551         * src/pic/glue.c (picglue): --c1mode works again
1552         * src/pic16/glue.c (pic16glue): --c1mode works again
1553         * src/asm.c (printCLine): fix #660034
1554
1555 2003-01-13  Bernhard Held <bernhard@bernhardheld.de>
1556
1557         * src/ds390/peeph.def: fix #123; add 14 rules by Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>, 1 by Frieder
1558         * src/mcs51/peeph.def: fix #123; add 14 rules by Fiorenzo, 1 by Frieder
1559         * src/mcs51/gen.c (genFunction): emit r0 instead of ar0 by Fiorenzo
1560         * as/mcs51/lkmem (summary): better fix for sp problem
1561         * src/SDCCglue.c (glue): __start_stack - 1, saves 1 byte!
1562         * src/ds390/main.c (_ds390_finaliseOptions, _tininative_finaliseOptions): stack_loc = 0x400008
1563         * support/regression/ports/*/spec.mk: moving testfwk-object to port dir allow parallel execution of regression tests
1564                                               remove --stack-after-data
1565
1566 2003-01-12  Bernhard Held <bernhard@bernhardheld.de>
1567
1568         * src/SDCCmain.c (main): port->finaliseOptions() moved for z80 linking
1569         * src/SDCCutil.c (join): ugly bug: missing '\0'
1570         * as/mcs51/lkmem.c (summary): sp on address 7 is safe
1571
1572 2003-01-11  Bernhard Held <bernhard@bernhardheld.de>
1573
1574         * src/SDCCmain.c (assemble, linkEdit): preparations for -o
1575         * src/port.h: typo
1576         * src/pic/main.c (_asmCmd): gpasm supports -o
1577         * src/z80/main.c: more general macros
1578         * device/lib/Makefile.in: remove intermediate files
1579
1580 2003-01-11  Bernhard Held <bernhard@bernhardheld.de>
1581
1582         * .version: Bumped version number to 2.3.3
1583         * src/SDCCBBlock.c: new option -o
1584         * src/SDCCglobl.h: new option -o
1585         * src/SDCCglue.c: new option -o
1586         * src/SDCCmain.c: new option -o
1587         * src/asm.c: new option -o
1588         * src/ds390/main.c: new option -o
1589         * src/pic/glue.c: new option -o
1590         * src/pic/pcode.c: new option -o
1591         * src/pic/ralloc.c: new option -o
1592         * src/pic16/glue.c: new option -o
1593         * src/pic16/pcode.c: new option -o
1594         * src/pic16/ralloc.c: new option -o
1595         * src/z80/main.c: new option -o
1596         * device/lib/Makefile.in: use -o
1597         * support/regression/ports/ds390/spec.mk: use -o
1598         * support/regression/ports/gbz80/spec.mk: use -o
1599         * support/regression/ports/mcs51/spec.mk: use -o
1600         * support/regression/ports/mcs51-stack-auto/spec.mk: use -o
1601         * support/regression/ports/z80/spec.mk: use -o
1602         * support/regression/ports/ucz80/spec.mk: use -o
1603         * support/regression/ports/xa51/spec.mk: use -o
1604         * support/regression/fwk/lib/timeout.c: fix usage string
1605
1606 2003-01-09  Bernhard Held <bernhard@bernhardheld.de>
1607         * src/mcs51/gen.c (genPlus): replaced "mov b,acc" by "mov b,a" Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>
1608         
1609 2003-01-07    <johan@balder>
1610
1611         * src/SDCCast.c (decorateType): fixed bug #600035
1612
1613 2003-01-07  Bernhard Held <bernhard@bernhardheld.de>
1614         * as/mcs51/lkmem.c: added several l-modifiers to printf to remove warnings
1615         * as/mcs51/lkaomf51.c: #include <ctype.h> to remove warnings
1616         * src/pic/main.c (_hasNativeMulFor): outcommented unused variables to remove warnings
1617         * src/pic/pcode.c: outcommented unused variable to remove warnings
1618         * src/pic/ralloc.c: outcommented unused variable to remove warnings
1619
1620 2003-01-06    <karl@turbobit.com>
1621         * sim/ucsim/cmd.src/command.cc: fixed so "break xram r 0x7654" works again in
1622    regression tests.
1623
1624 2003-01-06    <johan@balder>
1625
1626         * src/SDCCicode.c: fixed array add
1627
1628 2002-01-05  Bernhard Held <bernhard@bernhardheld.de>
1629         * src/SDCCmacro.c: MAX_STRING_LENGTH increased to 2048; was too small for regression tests
1630         * support/regression/ports/host/support.c: #include <stdarg.h> for gcc 3.2
1631
1632 2003-01-04    <johan@balder>
1633
1634         * src/SDCCval.c (getNelements): fixed the initialized array of structures
1635
1636 2002-12-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1637         * as/mcs51/Makefile.bcc: fixed typo lkomf51.o -> lkaomf51.o
1638
1639 2002-12-28  Bernhard Held <bernhard@bernhardheld.de>
1640         * src/mcs51/peeph.def: added rules 234 and 235 from Frieder Ferlemann <frieder.ferlemann@web.de>
1641         * support/regression/tests/bug-524697.c: fit mem usage into 8032
1642
1643 2002-12-28  Bernhard Held <bernhard@bernhardheld.de>
1644         * src/mcs51/gen.c (aopGetUsesAcc): inserted missing "return FALSE"
1645
1646 2002-12-27  Bernhard Held <bernhard@bernhardheld.de>
1647         * as/mcs51/Makefile.in: fixed typo lkomf51.o -> lkaomf51.o
1648
1649 2002-12-26  Bernhard Held <bernhard@bernhardheld.de>
1650         * src/mcs51/main.c: removed {bindir}{sep} from aslink
1651
1652 2002-12-10  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1653
1654     * in \sdcc\as\mcs51\ changed these files in order to create an
1655     aomf51 file: aslink.h, lkdta.c, lklex.c, lklibr.c, lklist.c,
1656     lkmain.c.  Also added: lkmem.c and lkaomf51.c.  Changed the 
1657     following files to include the previous two files: aslink.dsp,
1658     Makefile.aslink, Makefile.bcc, and Makefile.in.
1659
1660     * Changed \sdcc\src\SDCCmain.c so it creates files with extension
1661     .adb instead of .cdb
1662     
1663 2002-11-09  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1664
1665         * \sdcc\as\mcs51\lklist.c: Now reports memory usage using the
1666         value from option --iram-size.
1667
1668 2002-09-20  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1669
1670         * \sdcc\as\mcs51\lklist.c: added boundary check before using
1671         dram[] array.
1672
1673 2002-09-18    <wiml@hhhh.org>
1674
1675         * SDCClrange.h: exposed setFromRange() and setToRange()
1676         * mcs51/ralloc.c: fixed over-eager packRegsForSupport() and
1677           packRegsForAccUse() (bug 542397)
1678         * mcs51/gen.c: MOVA() is now a function to avoid calling aopGet()
1679           multiple times and emitting the fetch operations more than once
1680           added aopGetUsesAcc() function to allow binary operators to
1681           fetch their operands in the correct order; made genMinus() emit
1682           compact code for X = LITERAL - Y 
1683
1684 2002-09-00  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1685         * \sdcc\as\mcs51\lklist.c: Fixed incorrect number of parameters to
1686         sprintf() in line 1267.
1687
1688 2002-09-08  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1689         * \sdcc\src\SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051
1690         like ports.
1691
1692 2002-09-04  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1693         Changes to aslink (All the changes are marked with 'JCF'):
1694
1695         * \sdcc\as\mcs51\aslink.h: External definition of sflag and
1696         summary().
1697
1698         * \sdcc\as\mcs51\lkarea.c: Computes the size of area BSEG_BYTES from
1699         area BSEG.  Also moves, if possible, the DATA area down into the internal
1700         ram so more space is available.
1701
1702         * \sdcc\as\mcs51\lkdata.c: Definition of memory summary output flag
1703         sflag.
1704
1705         * \sdcc\as\mcs51\lklist.c: For the BSEG area report the size in bits,
1706         not bytes.  Function summary() which creates a memory usage summary
1707         file with extension .mem.  Reports of overlaping stack and small stack
1708         size.  If the space for the stack is less than 16 bytes aslink trows a
1709         warning.
1710         
1711         * \sdcc\as\mcs51\lkmain.c: Creation of some of the default areas for
1712         the 8051.  Option 'y' for memory summary output file.
1713
1714         Changes to sdcc (All the changes are marked with 'JCF'):
1715
1716         * \sdcc\src\SDCCglobl.h: External definition of RegBankUsed[4].
1717
1718         * \sdcc\src\SDCCglue.c:  If a register bank is used, creates an
1719         overlaying area for it (uses RegBankUsed[4]).
1720
1721         * \sdcc\src\SDCCmain.c: Definition RegBankUsed[4]; marks register
1722         bank zero as used by default.  By default aslink locates the stack
1723         (equivalent to --stack-after-data).  Pass option 'y' to aslink for
1724         the creation of the .mem file.  Delegates the allocation of data area
1725         to aslink (it is not longer 0x30 by default).  If --stack-loc passes
1726         the begining of the stack area to aslink.
1727
1728         * \sdcc\src\SDCCmem.c:  If a register bank is used, marks it so
1729         glue() in SDCCglue.c creates an area for it.
1730         
1731 2002-09-03  Borut Razem <borut.razem@siol.net>
1732         * sdcc/src/SDCCglue.c, sdcc/src/SDCCglue.h, sdcc/src/SDCCmain.c,
1733         sdcc/src/pic/glue.c:
1734         introduced atexit() handler for teporay files removal in case of
1735         errors, assertions, ...
1736
1737 2002-08-29  Borut Razem <borut.razem@siol.net>
1738         * sdcc/support/cpp2/auto-host_vc_in.h:
1739         re-definition of O_BINARY and other O_XXX as _O_BINARY and _O_XXX, so the problem
1740         with the returned value from read() in sdcc/support/cpp2/cppfiles.c is solved for MSC.
1741         Maybe there is a similar problem with BORLANDC? It should be checked!
1742
1743         * sdcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c, sdcc/src/z80/ralloc.c:
1744         corrected improper use of assert: the assignment to clr variable was done inside the assert.
1745         In case that NDEBUG was defined, the assert macro was substituted with no-op, so the assignment
1746         was not executed, and the compiler (cl) launched a warning:
1747         ralloc.c(1442) : warning C4700: local variable 'clr' used without having been initialized
1748
1749 2002-08-28  Bernhard Held <bernhard@bernhardheld.de>
1750         * src/SDCCglue.c (printIvalArray): iterative calculation of array length
1751
1752 2002-08-28  Jesus Calvino-Fraga and Borut Razem <borut.razem@siol.net>
1753         * sdcc/sdcc.dsw: added sdcpp, sdcppa, yacc, conf projects
1754
1755         * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
1756           sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp,
1757           sdcc/src/xa51/xa51.dsp, sdcc/src/avr/avra.dsp,
1758           sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
1759           sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp,
1760           sdcc/src/xa51/xa51a.dsp, sdcc/as/as_z80.dsp,
1761           sdcc/as/aslink.dsp, sdcc/as/asx8051.dsp, sdcc/packihx/packihx.dsp:
1762         - added Release configuration in VS projects
1763         - review of compiler an linker options
1764         - VC .exe files are generated in bin_vc directory, not to interfere
1765           with binaries generated from other projects (cygwin, mingw, bcc ...)
1766
1767         * sdcc/src/yacc.dsp: added
1768
1769         * sdcc/config.dsp, sdcc/configure_vc.awk, sdcc/sdcc_vc_in.h:
1770         added - genarate sdcc_vc.h using sdcc_vc_in.h as template
1771         and insert the version number definitions from .version 
1772
1773         * sdcc/support/cpp2/sdcpp.dsp: added - VC project for sdcpp
1774
1775         * sdcc/support/cpp2/sdcppa.dsp, sdcc/support/cpp2/auto-host_vc_in.h:
1776         added - genarate auto-host.h using auto-host_vc_in.h as template
1777
1778         * sdcc/sdcc_vc.h,
1779         removed from CVS, generated automatically
1780
1781 2002-08-25  Bernhard Held <bernhard@bernhardheld.de>
1782         * support/scripts/inc2h.pl: use gputils or gpasm (from Nathan Hurst)
1783
1784 2002-08-11  Borut Razem <borut.razem@siol.net>
1785         * support/Util/NewAlloc.c: removed unneeded #include "sdccconf.h" (suggested by Jesus Calvino-Fraga)
1786
1787 2002-08-10  Borut Razem <borut.razem@siol.net>
1788         * src/SDCCmain.c (main):
1789         file preOutName was unlinked before closed. This seems to be OK on UNIX and cygwin
1790         platforms, but it doesn't work with Visual Studio: the opened file can not be removed.
1791         The consequence was that some temporary files were not removed.
1792
1793         * src/SDCCglue.c:
1794         unification of code in functions tempfilename() and tempfile():
1795         function tempnam() is defined in Visual Studio 6.0 and .NET
1796
1797         * sdcc/sdcc.dsw: removed project sdcpp, added project xa51a
1798
1799         * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
1800           sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp:
1801         - removed compiler command line option /WX: Treats all warnings as errors
1802         - update a list of source files, included into the project
1803
1804         * sdcc/src/avr/avra.dsp, sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
1805           sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp:
1806         changed project type to Generic Project so that can be correcly converted to VS.NET project
1807
1808         * sdcc/as/mcs51/asm.h: definition of PATH_MAX for MSC
1809
1810         * sdcc/src/SDCCast.c: solved MSC error in function decorateType()
1811
1812         * sdcc/src/SDCC.y: added missing ending ';' to rules to get rid of bison warnings
1813
1814         * dcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c:
1815         added return 0 statements after assert() to make compiler happy
1816
1817         * sdcc/src/xa51/peeph.rul, sdcc/src/xa51/peeph.def, sdcc/src/z80/ralloc.c:
1818         added newline in the def file to keep MSC compiler satisfied
1819
1820         * sdcc/src/z80/gen.c:
1821         - function strcasecmp() is not defined in MSC (and probably also in BORLANDC),
1822           so it is replaced with STRCASECMP, which is defined as stricmp in case of MSC and BORLANDC
1823         - solved MSC error in function aopDump()
1824
1825         * sdcc_vc.h: define PREFIX as "\\sdcc"
1826
1827 2002-07-18  Bernhard Held <bernhard@bernhardheld.de>
1828         * src/SDCCast.c (decorateType): fixed access to array of structures http://sourceforge.net/mailarchive/forum.php?thread_id=902690&forum_id=4107
1829
1830 2002-06-22  Scott Dattalo <scott@dattalo.com>
1831         * src/pic/*: Numerous bug fixes. Flow analysis has been enhanced. 
1832         - Rewrote the register banking algorithm. 
1833         - Added pCode live-range analysis to registers (for now, only non-used and 
1834         singly-used registers optimized away)
1835
1836         * src/pic/pcoderegs.[ch]: Added new files for pCode live-range analysis
1837
1838         * support/scripts/inc2h.pl Kevin L. Pauba <klpauba@cox.net> submitted this perl script for converting MicroChip include files into SDCC Pic include files.
1839         
1840 2002-05-10  Scott Dattalo <scott@dattalo.com>
1841         * src/pic/*: Added support for multiplication. Fixed many,many bugs.
1842         
1843 2002-04-22  Michael Hope  <michaelh@vroom>
1844
1845         * device/lib/z80/printf.c: Changed emitter to volatile to work around a pcall bug.
1846
1847         * configure.in (DD_COPT): Added include support required for gbdk.
1848
1849         * .version: Bumped version number just to increase it.
1850
1851         * src/SDCCmain.c: Added -nostdinc to the default options.
1852
1853 2002-04-15  Michael Hope  <michaelh@vroom>
1854
1855         * device/lib/z80/printf.c (sprintf): Added.
1856
1857         * src/z80/ralloc.c (packRegisters): Disabled pack HL use for GB as it's broken.
1858
1859         * src/z80/peeph.def: Added transpose redundent load rule.
1860
1861         * src/z80/main.c: Added force callee saves for jaune.
1862
1863         * src/port.h: Removed the i186 and tlcs-900h ports as they weren't being being developed.
1864
1865         * src/SDCCmain.c: Pulled the options definition out so that you can add port specific options without changing the main file.
1866
1867 2002-03-28  Johan Knol  <johan@balder>
1868
1869         * src/SDCCval.c: fixed bug #532436
1870
1871 2002-03-14  Scott Dattalo <scott@dattalo.com>
1872         * /src/port.h:
1873         Added "char *Processor" field to the port structure.
1874
1875         * /src/SDCCmain.c:
1876         Added -p option. Allows port dependent processor to be specified.
1877
1878         * all ports:
1879         Initialized the new field char *Processor field to NULL in all ports
1880
1881         * /src/pic/*:
1882         Compiler generated registers for interrupt context saving
1883         were not getting allocated.
1884                 
1885 2002-03-16  Sandeep Dutta  <sandeep@ddi.com>
1886
1887         * /src/SDCCast.c:
1888         Fixed left shift. Will promote the left side of a left shift
1889         if a) left shifting more than size of operand or b) when assigned
1890         to something size > size of left side
1891
1892 2002-03-14  Scott Dattalo <scott@dattalo.com>
1893         * src/pic/*
1894         tons of changes. Register allocation has been 
1895         rewritten. Added customization for the various PICs. Flow
1896         analysis is restructured. ...
1897
1898         * src/pic/device.h:
1899         Added
1900
1901         * src/pic/device.c:
1902         Added. device.c is a PIC port hack to accomodate variations
1903         in PIC devices.
1904
1905 2002-03-13  Michael Hope  <michaelh@vroom>
1906
1907         * src/z80/gen.c (genGenPointerGet): Fixed a bug where a pointer in HL is dereferenced into HL but HL is not spilled.  Yeah.
1908
1909 2002-03-04  johanknol  <johanknol@manik>
1910
1911         * /src/SDCCval.c: fixed
1912
1913         const unsigned char arr[][2] = { { 0, 1 } };
1914         t18.c:1: error: Initializer element is not constant
1915
1916 2002-03-04  bela  <bela@manik>
1917
1918         * /device/include/mcs51reg.h:
1919         ds89c420 register definition update
1920
1921 2002-03-03    <johan@FRIJA>
1922
1923         * support/Util/SDCCerr.c: did something, but don't no why anymore
1924
1925         * support/regression/tests/bug-524691.c: made it a little less shy 
1926
1927         * src/SDCCast.c (decorateType): fixed bug #524697
1928
1929         * src/SDCCast.c: made some lineno improvements
1930
1931         * src/SDCCval.c (getNelements): changed warning to error
1932
1933         * src/SDCCglue.c (printIvalArray): changed warning to error
1934
1935         * src/SDCCicode.c: fixed a warning for mingw
1936
1937         * src/SDCCast.c (decorateType): fixed the << promotion for ops
1938
1939         * src/SDCCicode.c (geniCodeDivision): divide is shift only for unsigned (bug #524685)
1940
1941 2002-03-02  Sandeep Dutta  <sandeep@ddi.com>
1942
1943         * src/ds390/peeph.def:
1944         Added some more peephole rules
1945
1946         * src/ds390/gen.c: Various fixes & enhancements
1947
1948         * src/SDCClrange.c, src/SDCClrange.h:
1949         functions "alldefsoutofrange" and "notusedinblock" moved to SDCClrange.c
1950
1951         * src/ds390/ralloc.c:
1952         various fixes & enhancements (ds390) specific
1953
1954         * src/avr/ralloc.c, src/mcs51/ralloc.c, src/pic/ralloc.c, src/xa51/ralloc.c, src/z80/ralloc.c:
1955         Functions "allDefsOutOfRange" & "notUsedinBlock" moved to SDCClrange.c
1956         from rallocs.
1957
1958         * sdcc/src/SDCCcse.c: Better fix for bug # 514308
1959
1960 2002-03-02    <johan@FRIJA>
1961
1962         * src/SDCCast.c (decorateType): fixed bug #524708
1963
1964         * src/SDCCval.c (floatFromVal): fixed the literal void (whatever that may be)
1965
1966         * src/SDCCicode.c (geniCodePtrPtrSubtract): fixed bug #524691
1967
1968 2002-03-01  Michael Hope  <michaelh@vroom>
1969
1970         * src/SDCCsymt.c (initCSupport): Removed managling of support function names.
1971
1972         * src/z80/ralloc.c (packRegsForIYUse): Fixed fp bug where four byte operands were packed into IY.
1973
1974 2002-03-01    <johan@FRIJA>
1975
1976         * src/SDCCglue.c (printIvalPtr): fixed bug #524211
1977
1978         * src/SDCCast.c (decorateType): fixed bug #524209
1979
1980         * src/SDCCval.c (valNot): fixed bug #524195
1981
1982 2002-02-26    <johan@balder>
1983
1984         * src/xa51/gen.c: fixed a warning
1985
1986         * src/SDCCglue.c (printIvalFuncPtr): fixed bug #522534
1987
1988         * src/SDCCast.c (decorateType): fixed bug #522534
1989
1990 2002-02-23    <johan@balder>
1991
1992         * src/SDCCdflow.c (computeDataFlow): fixed bug #460088
1993
1994 2002-02-22    <johan@balder>
1995
1996         * src/SDCCast.c: fixed bug #514865
1997
1998         * src/SDCCy.c ("SDCC.y"): fixed bug #516625
1999
2000 2002-02-21  Sandeep Dutta  <sandeep@ddi.com>
2001
2002         * sdcc/src/SDCCloop.c:
2003         Previous fix was not good. basic blocks that have "break" or "return" are
2004         not really partof a loop , but live ranges used in these blocks should
2005         be live thru the entire loop, so set partOfLoop but don't add them to
2006         loop region
2007
2008 2002-02-21    <johan@FRIJA>
2009
2010         * src/SDCCcse.c: fixed bug #514308
2011
2012 2002-02-20  Sandeep Dutta  <sandeep@ddi.com>
2013
2014         * src/SDCCloop.c:
2015         Fixed BUG #519583. If a conditional block ended in a return/break
2016         statement inside a loop, it was not being considered part of the loop.
2017
2018         * src/SDCCcflow.c: Removed fix (Fixed in SDCCloop.c)
2019
2020 2002-02-10  Karl Bongers <karl@turbobit.com>
2021
2022         * debugger/*:
2023         Fixed up SDCDB debugger somewhat.  Updated debugger/README
2024         with lots of comments and notes.
2025
2026         * device/examples/test2.c:
2027         Fix bug, "red" variable not being initialized(compiler complained).
2028
2029         * device/examples/Makefile, examples/test3.c:
2030         Add Makefile in device/examples folder, compiles test3.c
2031         for use as a multiple module SDCDB test case.
2032
2033         * sim/ucsim/cmd.src/cmdset.cc:
2034         Took out debug printfs in ucsim "next" command.
2035
2036         * sim/ucsim/xa.src:
2037         Karl and Johan start ucsim XA support.  Most dissassembly working,
2038         about 75% emulation done(plenty of work remaining).
2039
2040         * sim/ucsim/z80.src:
2041         Add Z80 support to ucsim, add test-ucz80 regression test,
2042         notice ucsim/z80 emulation fails on examples/test3.c/itoa code.
2043         Notice z80 compiler fails on examples/test3.c/crc code.
2044
2045 2002-01-30  Sandeep Dutta  <sandeep@ddi.com>
2046
2047         * src/mcs51/gen.c, src/mcs51/main.c, src/mcs51/ralloc.c:
2048         Added support for --parms-in-bank1
2049
2050         * src/ds390/peeph.def:
2051         added a few more peephole optimzations
2052
2053         * src/ds390/main.c:
2054         1) added __builtin_inp & __builtin_outp used to read in data of given length
2055            from a memory mapped port
2056         2) added __builtin_memcmp
2057         3) added __builtin_swapw swap bytes of a short
2058
2059         * src/ds390/gen.c, src/ds390/gen.h, src/ds390/ralloc.c:
2060         1) handle multiple send & receives from register bank1
2061         2) ralloc can now allocate DPTR1 to some liveRanges
2062
2063         * src/SDCCsymt.c, src/SDCCsymt.h:
2064         changes to handle multiple sends & receives
2065
2066         * src/SDCCptropt.h:
2067         added some pointer arithmetic optimization
2068
2069         * src/SDCCptropt.c:
2070         added some pointer arithmetic optimizations but not stable yet so not
2071         called from anywhere (will get this working shortly)
2072
2073         * src/SDCCopt.c: fixed for multiple sends & receives
2074
2075         * src/SDCCmain.c:
2076         1) added options --parms-in-bank1 (ds390/mcs51) & --protect-sp-update
2077         2) preprocessing done AFTER port->finalizeoptions . This allows ports to
2078            set preprocessor defines (depending on options)
2079
2080         * src/SDCCicode.c, src/SDCCicode.h:
2081         changes made to handle multiple sends & receives
2082
2083         * src/SDCCglobl.h:
2084         Added options --protect-sp-update (ds390) and --parms-in-bank1 (ds390/mcs51)
2085
2086         * src/SDCCcse.c, src/SDCCcse.h:
2087         added function findbackward def (to be used in upcoming optimization)
2088
2089         * src/SDCCcflow.c, src/SDCCcflow.h:
2090         added function returnAtEnd - to determine if a basic block terminates with
2091         a RETURN iCode
2092
2093         * src/SDCCast.c, src/SDCCast.h:
2094         added option parms-in-bank1
2095
2096         * device/lib/_divsint.c, device/lib/_divslong.c, device/lib/_divuint.c 
2097         * device/lib/_divulong.c, device/lib/_modsint.c, device/lib/_modslong.c 
2098         * device/lib/_modulong.c, device/lib/_mulint.c, device/lib/_mullong.c:
2099         adjusted for --parms-in-bank1 option
2100
2101         * device/include/string.h:
2102         donot redefine "reentrant" keyword
2103
2104         * device/include/ds80c390.h: Added some more SFRs
2105
2106 2002-01-28  Bernhard Held  <bernhard@bernhardheld.de>
2107
2108         * sim/ucsim: Merged branch ucsim-034-pre3 to main trunk; new version 0.4 
2109
2110 2002-01-26  Bernhard Held  <bernhard@bernhardheld.de>
2111
2112         * src/SDCCast.c (funcOfType): fix usage of double --float-reent
2113
2114 2002-01-22  Bernhard Held  <bernhard@bernhardheld.de>
2115
2116         * support/regression/fwk/lib/testfwk.c (main): Removed workaround for bug #505387
2117
2118 2002-01-18  Paul Stoffregen  <paul@pjrc.com>
2119
2120         * Added --xram-movc option
2121
2122 2002-01-13  Bernhard Held  <bernhard@bernhardheld.de>
2123
2124         * support/regression/Makefile: don't include test-mcs51-stack-auto in target all
2125
2126 2002-01-11  Johan Knol
2127
2128         * Added math lib of Jesus Calvino-Fraga
2129
2130 2002-01-08  Bernhard Held  <bernhard@bernhardheld.de>
2131
2132         * src/SDCCmain.c (processFile): fix processing of ../../src.c
2133         * support/regression/Makefile: new target test-mcs51-stack-auto
2134         * support/regression/ports/mcs51-stack-auto/spec.mk: added
2135
2136 2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
2137
2138         * src/SDCCglue.h: printIvalCharPtr(), not printIvalChar()
2139
2140 2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
2141
2142         * support/regression/ports/mcs51/support.c: correct setup of timer / UART
2143
2144 2002-01-03  Bernhard Held  <bernhard@bernhardheld.de>
2145
2146         * src/SDCCsymt.c (processFuncArgs): fix #498307 by Johan
2147
2148         * src/SDCCglue.h: add definition for printIvalChar()
2149
2150 2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
2151
2152         * src/SDCCast.c: fix #498138 by Johan
2153
2154         * src/SDCCglue.c: fix #498138 by Johan
2155
2156 2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
2157
2158         * support/regression/Makefile: fix clean
2159
2160         * support/regression/ports/ds390/support.c: fix transmission of last character
2161
2162 2001-12-29  Sandeep Dutta  <sandeep@ddi.com>
2163
2164         * /sdcc/src/ds390/gen.c:
2165         a) improved computing address of stack variable
2166         b) took out some #if 0 code
2167         c) improved parmBytes adjustment
2168         d) improved genPlusIncr & genMinusIncr
2169         e) genCmp could generate bad code (when left assigned to DPTR)
2170         f) Fixed bug in hasInc
2171
2172         * /sdcc/src/ds390/ralloc.c:
2173         a) packRegsForSupport could mess up live information (Fixed)
2174         b) packRegsDPTRuse could be incorrect for left & right shift
2175
2176         * /sdcc/src/mcs51/ralloc.c:
2177         packRegsForSupport could mess up the live information (Fixed)
2178
2179         * /sdcc/src/mcs51/gen.c: Fixed a bug in hasInc
2180
2181         * /sdcc/src/SDCCast.c:
2182         can reverse a loop even if function call is present as long
2183         as the loop control variable is local & is not passed as parameter
2184
2185 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
2186
2187         * /sdcc/ChangeLog: *** empty log message ***
2188
2189         * /sdcc/src/ds390/gen.c, /sdcc/src/ds390/main.c:
2190         More builtin function additions for TININative
2191
2192         * /sdcc/src/ds390/ralloc.c:
2193         Had broken the regression testsuite
2194
2195         * /sdcc/src/SDCCast.c: Fixed a bug in dumptree
2196
2197         * /sdcc/src/SDCCsymt.c, /sdcc/src/SDCCsymt.h:
2198         Added funcattr hasStackParms will be set for reentrant functions when there
2199         are paramteres on the stack, this helps in minimizing frame pointer generation
2200         typeFromStr can handle function pointers now
2201
2202         * /sdcc/doc/builtins.txt, /sdcc/doc/TININative.txt:
2203         *** empty log message ***
2204
2205 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
2206
2207         * /src/ds390/gen.c, /src/ds390/main.c:
2208         More builtin function additions for TININative
2209
2210         * /src/ds390/ralloc.c:
2211         Had broken the regression testsuite
2212
2213         * /src/SDCCast.c: Fixed a bug in dumptree
2214
2215         * /src/SDCCsymt.c, /src/SDCCsymt.h:
2216         Added funcattr hasStackParms will be set for reentrant functions when there
2217         are paramteres on the stack, this helps in minimizing frame pointer generation
2218         typeFromStr can handle function pointers now
2219
2220         * /doc/builtins.txt, /doc/TININative.txt:
2221         *** empty log message ***
2222
2223
2224 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
2225
2226         * /src/ds390/gen.c, /src/ds390/main.c, /src/ds390/peeph.def, /src/ds390/ralloc.c:
2227         ALPHA version for -mTININative
2228
2229         * /src/izt/i186.c, /src/izt/tlcs900h.c, /src/mcs51/main.c, /src/pic/main.c, /src/z80/main.c, /src/avr/main.c:
2230         updated to reflect changes in the port structure
2231
2232         * /src/port.h:
2233         added function do_assemble (similar to do_link) if non-null this function
2234         will be called to do assembly (-mTININative) requires a multi command
2235         assembly
2236         added function genAssemblerEnd will be called to generate assembler Epilogue
2237
2238         * /src/SDCCsymt.c:
2239         added _JavaNative to debug info printing
2240
2241         * /src/SDCCmain.c: added option --tini-libid
2242         added port->do_assemble function (-mTININative) has a multi command assemble
2243
2244         * /src/SDCCglue.c: Disabled "constExpr" check
2245         added port->genAssemblerEnd function
2246
2247         * /src/SDCCglobl.h: Added option --tini-libid value
2248
2249         * /src/SDCCast.h:
2250         tookout optimizeCompare from the header (has no external references)
2251
2252         * /src/SDCCast.c: made one more function "static"
2253
2254 2001-12-23  Michael Hope  <michaelh@juju.net.nz>
2255
2256         * src/z80/mappings.i: Added z80asm support.
2257
2258         * src/z80/main.c: Added z80asm support on --asm=z80asm
2259
2260         * src/z80/gen.c: Fixed asm portability issues.
2261
2262         * src/asm.c (tvsprintf): Removed old code, added 'N' for function name.  For extern support.
2263
2264         * src/SDCCglue.c (printExterns): Added global/extern split.
2265
2266 2001-12-17  Bernhard Held  <bernhard@bernhardheld.de>
2267
2268         * support/regression/Makefile: added test for mcs51 model large
2269
2270         * support/regression/ports/mcs51-large/spec.mk: added test for mcs51 model large
2271
2272         * support/regression/ports/gbz80/spec.mk: added -mgbz80
2273
2274 2001-12-05  Michael Hope  <michaelh@juju.net.nz>
2275
2276         * src/diff.1 (Index): Many, many optmisiations.  Dhrystone up to 201.
2277
2278 1904-01-06  Michael Hope  <michaelh@juju.net.nz>
2279
2280         * src/z80/ralloc.c (packRegsForIYUse): Fixed the case where an operand is in direct space.
2281
2282         * src/z80/gen.c (makeFreePairId): Optimised IY load by using a spare pair.
2283
2284 2001-12-02  Bernhard Held  <bernhard@bernhardheld.de>
2285
2286         * src/mcs51/gen.c (genFunction): avoid excess "inc sp"
2287
2288         * support/regression/tests/simplefloat.c: Port to mcs51.
2289
2290 2001-11-25  Michael Hope  <michaelh@juju.net.nz>
2291         * support/regression/tests/bug-485362.c: Added.
2292
2293         * support/regression/tests/simplefloat.c (testDivNearOne): Added.
2294
2295         * src/z80/gen.c (aopOp): Fixed case where left and result are in the same spill loc and they have different sizes.
2296
2297         * src/z80/peeph.def: Added rules for optimising two byte compares on the same thing, and to optimise two ptr assign.
2298
2299         * src/z80/gen.c (aopDump): Added a dump function.
2300
2301 2001-11-25  Bernhard Held  <bernhard@bernhardheld.de>
2302         * sim/ucsim/s51.src/glob.cc: DS390 SFRs and bits added.
2303
2304         * sim/ucsim/s51.src/port.cc: Port 4 and 5 added.
2305
2306         * sim/ucsim/s51.src/regs51.h: DS390 SFRs added.
2307
2308         * sim/ucsim/s51.src/uc390.cc: Some details improved, CKRDY works for tinibios.
2309
2310         * sim/ucsim/s51.src/uc390cl.h: Work in progress.
2311
2312         * sim/ucsim/sim.src/uccl.h: 6 ports for DS390.
2313
2314         * support/regression/fwk/lib/testfwk.c: Run with tinibios.
2315
2316         * support/regression/ports/mcs51/spec.mk: Fine tuninig.
2317
2318         * support/regression/ports/ds390/support.c: Use tinibios.
2319
2320         * support/regression/ports/ds390/spec.mk: Fine tuning, use tinibios.
2321
2322 2001-11-23  Michael Hope  <michaelh@juju.net.nz>support/regression/tests/bug-460010.c
2323
2324         * src/z80/ralloc.c (packRegsForHLUse3): Changed to not pack into HL if anything is in direct space.
2325         (packRegsForHLUse3): Added packing support for send, cast, and return value from a call.
2326
2327         * src/z80/peeph.def: Added rules for optimising pushes of part of a pair.
2328
2329         * src/z80/gen.c (emitCall): Changed the stack fixup to not use HL.
2330
2331 2001-11-18  Michael Hope  <michaelh@juju.net.nz>
2332
2333         * src/z80/gen.c (genCmp): Fixed compare on unsigned.
2334
2335         * src/z80/ralloc.c (packRegsForHLUse3): Created and optimised.
2336         (packRegsForIYUse): Created and optimised.
2337
2338 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
2339
2340         * support/regression/tests/float.c (testFloatAdd): Fixed up warning.
2341 2001-11-18  Bernhard Held  <bernhard@bernhardheld.de>
2342
2343         * sdcc/support/regression/tests/bug-460010.c: fix seg violation on host
2344
2345         * sdcc/support/regression/tests/muldiv.c: fix output on mcs51
2346
2347         * sdcc/support/regression/tests/stacks.c: fix DSEG overflow on mcs51
2348
2349 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
2350
2351         * sdcc/sim/device/lib/_gptrget.c: mem region 5 (idata) added
2352
2353         * sdcc/sim/device/lib/_gptrput.c: mem region 5 (idata) added
2354
2355 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
2356
2357         * sdcc/sim/ucsim/globals.cc: New: IXRAM.
2358
2359         * sdcc/sim/ucsim/stypes.h: New: IXRAM.
2360
2361         * sdcc/sim/ucsim/s51.src/uc390.cc: New: IXRAM.
2362
2363 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
2364
2365         * src/z80/ralloc.c (packRegsForHLUse): Banned IFXs from being packed into HL.
2366         (packRegsForHLUse): Added rule to pack address of/pointer get for itemps into HL for the Z80.
2367         (packRegsForAccUse2): Added rule to pack hbit IFXs into A.
2368
2369         * src/z80/main.c (_setDefaultOptions): Made float code re-entrant by default.
2370
2371         * src/z80/gen.c (aopGetLitWordLong): Added word support for floats.
2372         (genNotFloat): Added.
2373         (genUminusFloat): Added.
2374
2375         * device/lib/z80/Makefile: Added floating pt stubs.
2376
2377         * device/lib/Makefile.in (Z80SOURCES): Added floating pt support.
2378
2379         * src/z80/gen.c (genIpush): Fixed up a push of one byte when left is in a pair.
2380
2381         * device/lib/_fsadd.c (__fsadd): Fixed up return where the numbers are hugely different.
2382
2383 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
2384
2385         * sdcc/sim/ucsim/s51.src/glob.cc: Minor fix.
2386
2387         * sdcc/sim/ucsim/s51.src/regs51.h: Minor fix.
2388
2389         * sdcc/support/regression/Makefile: Add port ds390.
2390
2391         * sdcc/support/regression/ports/mcs51/spec.mk: Minor change.
2392
2393         * sdcc/support/regression/ports/z80/spec.mk: Minor change.
2394
2395         * sdcc/support/regression/ports/ds390/spec.mk: Added.
2396
2397         * sdcc/support/regression/ports/ds390/support.c: Added.
2398
2399         * sdcc/support/regression/ports/ds390/uCsim.cmd: Added.
2400
2401         * sdcc/support/regression/ports/mcs51/timeout.c: Cut.
2402
2403         * sdcc/support/regression/fwk/lib/timeout.c: Paste.
2404
2405 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
2406
2407         * device/include/malloc.h: Added z80 and gbz80 support.
2408
2409         * device/lib/gbz80/heap.s: Added.
2410
2411         * device/lib/z80/heap.s: Added.
2412
2413         * device/lib/malloc.c: Added z80 and gbz80 support.
2414
2415         * support/regression/tests/malloc.c (testMalloc): Added.
2416
2417         * src/SDCCmain.c (parseCmdLine): Added support for -Wp.
2418
2419         * support/regression/tests/bug-478094.c: Added.
2420
2421         * src/z80/gen.c (commitPair): Fixed silly gbz80/z80 commit to static bug.
2422
2423 2001-11-04  Bernhard Held  <bernhard@bernhardheld.de>
2424
2425         * sdcc/sim/ucsim/s51.src/uc390cl.h: Improvement for ds390 to run regression tests
2426
2427         * sdcc/sim/ucsim/s51.src/uc390.h: Improvement for ds390 to run regression tests
2428
2429         * sdcc/sim/ucsim/s51.src/regs51.h: Improvement for ds390 to run regression tests
2430
2431         * sdcc/sim/ucsim/s51.src/glob.cc: Improvement for ds390 to run regression tests
2432
2433         * sdcc/support/regression/tests/bug-460010.c: Small change for ds390
2434
2435 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
2436
2437         * src/z80/peeph-gbz80.def: Removed a bad sub optimisation.
2438
2439 2001-11-03  Michael Hope  <michaelh@juju.net.nz>
2440
2441         * support/regression/tests/bug-477927.c: Added.
2442
2443         * src/z80/peeph.def: Added minor rules.
2444
2445         * src/z80/gen.c (genPlusIncr): Added an extra plusinc rule.
2446
2447         * src/z80/peeph.def: Added jump optimisation modification.
2448
2449 2001-11-01  Michael Hope  <michaelh@juju.net.nz>
2450
2451         * src/SDCCmain.c (linkEdit): Added runtime path detection to the mcs51 port.
2452
2453 2001-10-30  Michael Hope  <michaelh@juju.net.nz>
2454
2455         * support/regression/tests/funptrs.c: Added.
2456
2457 2001-10-29  Michael Hope  <michaelh@juju.net.nz>
2458
2459         * src/z80/ralloc.c (packRegsForHLUse): Fixed up bad spill due to pushing one byte via HL.
2460
2461 2001-10-28  Michael Hope  <michaelh@juju.net.nz>
2462
2463         * src/z80/gen.c (genArrayInit): Made it work for on stack arrays.
2464
2465         * src/z80/main.c (gbz80_port =): Added rle support to the gbz80 port.
2466
2467         * src/z80/gen.c (genMinus): Fixed for where the result is one byte.
2468         (movLeft2ResultLong): Created.
2469
2470         * src/z80/ralloc.c (packRegsForHLUse): Added a couple of simple cases for the GB.
2471         (joinPushes): Added.  Joins two char pushes into a word push.
2472
2473 2001-10-27  Michael Hope  <michaelh@juju.net.nz>
2474
2475         * support/cpp2/Makefile.in (install): Added creation of dest dir.
2476
2477         * support/makebin/Makefile (install): Added creation of dest dir.
2478
2479 2001-10-24 Karl Bongers <karl@turbobit.com>
2480
2481         * configure.in, configure, Makefile, support/cpp: Removed cpp folder, since we have new cpp2 preprocessor code.
2482
2483 2001-10-21  Michael Hope  <michaelh@juju.net.nz>
2484
2485         * src/z80/ralloc.c: Turned off faulty pack for one use.
2486
2487         * src/z80/peeph-gbz80.def: Removed redundent restart options.
2488
2489         * src/z80/gen.c (genMult): Added native mul for constants on the z80 and gbz80.
2490
2491 2001-10-21  Bernhard Held  <bernhard@bernhardheld.de>
2492
2493         * support/regression/Makefile: Improved clean
2494
2495         * support/regression/ports/gbz80/spec.mk: Added clean
2496
2497         * support/regression/ports/host/spec.mk: Added clean
2498
2499         * support/regression/ports/z80/spec.mk: Added clean
2500
2501         * support/regression/ports/mcs51/spec.mk: Added clean, little improvements
2502
2503         * support/regression/ports/mcs51/timeout.c: little improvements
2504
2505 2001-10-17  Michael Hope  <michaelh@juju.net.nz>
2506
2507         * device/lib/malloc.c (MEMHEADER): Fixed against new pedantic pointers.
2508
2509         * support/regression/fwk/include/testfwk.h: Fixed up to use function pts correctly.
2510
2511         * support/regression/generate-cases.py: Fixed up to use function pts correctly.
2512
2513 2001-10-16  Bernhard Held  <bernhard@bernhardheld.de>
2514
2515         * support/regression/port/mcs51/spec.mk: add timeout for uCsim
2516
2517         * support/regression/port/mcs51/timeout.c: add timeout for uCsim
2518
2519 2001-10-13  Michael Hope  <michaelh@juju.net.nz>
2520         * src/z80/gen.c (emitCall): Fixed up missing spill of HL when used to assign the result value.
2521
2522         * src/z80/ralloc.c: Turned off pack for one use as it's quite broken.
2523
2524         * src/SDCCmain.c (linkEdit): Added support for passing a legacy command line through the processor.
2525
2526         * src/mcs51/main.c (_linkCmd): Added bin path to command.
2527
2528         * src/SDCCmain.c (initValues): Added support for when it it called just to link.
2529
2530         * as/mcs51/lklibr.c (libfil;): Turned off 'library file' message.
2531
2532         * src/SDCCval.c (constVal): Fixed usage of 'L' modifier problems on ppc.
2533
2534         * support/regression/tests/longor.c: Added.
2535
2536 2001-10-11  Bernhard Held  <bernhard@bernhardheld.de>
2537
2538         * as/mcs51/asdata.c: replaced FILENAME_MAX with PATH_MAX
2539
2540         * as/mcs51/aslink.h: define PATH_MAX
2541
2542         * as/mcs51/asm.h: define PATH_MAX
2543
2544         * as/mcs51/asmain.c: replaced FILENAME_MAX with PATH_MAX
2545
2546         * as/mcs51/asnoice.c: replaced FILENAME_MAX with PATH_MAX
2547
2548         * as/mcs51/lklex.c: replaced FILENAME_MAX with PATH_MAX
2549
2550         * as/mcs51/lkmain.c: replaced FILENAME_MAX with PATH_MAX
2551
2552         * src/SDCCglobl.h: define PATH_MAX
2553
2554         * src/SDCCmacro.c: replaced FILENAME_MAX with PATH_MAX
2555
2556         * src/SDCCmain.c: replaced FILENAME_MAX with PATH_MAX
2557
2558 2001-10-11  Michael Hope  <michaelh@juju.net.nz>
2559
2560         * src/z80/gen.c (gencjneshort): Fixed
2561
2562         * src/z80/ralloc.c (packRegsForHLUse): Added pack into HL for cast then ipush.
2563
2564 2001-10-09  Michael Hope  <michaelh@juju.net.nz>
2565
2566         * support/regression/tests/bug-469671.c: Added.
2567
2568         * src/z80/gen.c (shiftIntoPair): Fixed up warning.
2569
2570 2001-10-08  Michael Hope  <michaelh@juju.net.nz>
2571
2572         * src/SDCCmain.c: Added --fommit-frame-pointer option and implemented in the z80 port.
2573
2574         * src/z80/gen.c (genPlus): Fixed to work with extended stack.  Also fixed genMinus, genCmp.  genUMinus is still left.
2575
2576 2001-10-08  Bernhar Held  <bernhard@bernhardheld.de>
2577
2578         * src/SDCCmain.c (preProcess): added define SDCC_NOOVERLAY
2579
2580         * src/device/lib/_mulint.c  : removed hint: nooverlay bug
2581
2582         * src/device/lib/_mullong.c : removed hint: nooverlay bug
2583
2584         * src/device/lib/_divuint.c : removed hint: nooverlay bug
2585
2586         * src/device/lib/_divulong.c: removed hint: nooverlay bug
2587
2588         * src/device/lib/_moduint.c : removed hint: nooverlay bug
2589
2590         * src/device/lib/_modulong.c: removed hint: nooverlay bug
2591
2592 2001-10-07  Michael Hope  <michaelh@juju.net.nz>
2593
2594         * 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.
2595
2596         * support/Util/NewAlloc.c (freeTrace): Changed free for the gc case to not free at all.  Fixes runtime segfault.
2597
2598         * support/regression/tests/scott-compare3.c (c_abcd): Fixed up casts.
2599
2600 2001-10-07    <johan@FRIJA>
2601
2602         * device/lib/gets.c (gets): fixed the return value.
2603
2604 2001-10-06  Michael Hope  <michaelh@juju.net.nz>
2605         * src/SDCCmain.c (WRITE_SEG_LOC): Fixed up to use Safe_strdup.
2606
2607         * 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.
2608
2609         * 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.
2610
2611         * src/z80/gen.c (genZ80Code): Added de-allocation via trace support.
2612
2613         * src/pic/gen.c: Removed Safe_strdup.
2614
2615         * configure.in: Added option to enable libgc support.
2616
2617         * src/SDCCbitv.c (bitVectnBitsOn): Optimised.
2618         (bitVectUnion): Optimised.
2619         (bitVectIntersect): Optimised.
2620         (bitVectBitsInCommon): Optimised.
2621         (bitVectCplAnd): Optimised.
2622
2623         * support/makebin/makebin.c (usage): Removed getopt as mingw32 doesn't have it.  Sigh.
2624
2625 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
2626
2627         * src/SDCCmain.c: distinguish between assembler debug and plain options
2628
2629         * src/avr/main.c:   remove standard assembler options
2630
2631         * src/ds390/main.c: remove standard assembler options
2632
2633         * src/mcs51/main.c: remove standard assembler options
2634
2635         * src/port.h: removed "PENDING" comment
2636
2637 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
2638
2639         * src/device/lib/_mulint.c  : new, with assember functions
2640
2641         * src/device/lib/_mullong.c : new, with assember functions
2642
2643         * src/device/lib/_divuint.c : with assember functions
2644
2645         * src/device/lib/_divsint.c : with assember functions
2646
2647         * src/device/lib/_divulong.c: with assember functions
2648
2649         * src/device/lib/_divslong.c: with assember functions
2650
2651         * src/device/lib/_moduint.c : with assember functions
2652
2653         * src/device/lib/_modsint.c : with assember functions
2654
2655         * src/device/lib/_modulong.c: with assember functions
2656
2657         * src/device/lib/_modslong.c: with assember functions
2658
2659         * src/device/lib/libint.lib:  replaced _muluint.c  and _mulsint.c  by _mulint.c
2660
2661         * src/device/lib/liblong.lib: replaced _mululong.c and _mulslong.c by _mullong.c
2662
2663         * src/device/lib/Makefile.in: replaced _muluint.c  and _mulsint.c  by _mulint.c
2664                                       replaced _mululong.c and _mulslong.c by _mullong.c
2665
2666 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
2667
2668         * src/SDCCsymt.c: sequence of specifiers in pintTypeChain() corrected
2669
2670 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
2671
2672         * src/SDCCglue.c: test, if win32api is available for MINGW
2673
2674 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
2675
2676         * src/SDCCsymt.c: no more _modifier in printTypeChain()
2677         * support/regression/tests/driverstruct.c: REENTRANT for mcs51
2678         * support/regression/ports/gbz80/spec.mk: removed GENERIC
2679         * support/regression/ports/host/spec.mk: removed GENERIC
2680         * support/regression/ports/mcs51/spec.mk: removed GENERIC
2681         * support/regression/ports/z80/spec.mk: removed GENERIC
2682
2683 2001-10-01  Michael Hope  <michaelh@juju.net.nz>
2684
2685         * support/regression/fwk/lib/testfwk.c (__printf): Removed GENERIC.
2686
2687         * support/regression/tests/bug-467035.c: Created.
2688
2689 2001-10-01    <johan@FRIJA>
2690
2691         * src/SDCC.y: fixed bug #466586 part 1
2692
2693 2001-10-01  Johan Knol <johan.knol@iduna.nl>
2694
2695         * SDCCicode.c: z80 has no generic pointers
2696         * removed -s from strip in all Makefile(.in)'s. It is not needed, but Solaris chocks on it.
2697         
2698 2001-09-30  Michael Hope  <michaelh@juju.net.nz>
2699
2700         * sim/ucsim/cmd.src/Makefile.in ($(PRJDIR)/libcmd.a): Changed all ar references to $(AR) for Solaris.
2701
2702 2001-09-29  Michael Hope  <michaelh@juju.net.nz>
2703
2704         * Makefile (sdcc-libs): Added makebin to the list of standard targets.
2705
2706         * support/regression/ports/z80/spec.mk: Updated to use env for sdcc bin dir for automatic regression.
2707
2708 2001-09-25  Michael Hope  <michaelh@juju.net.nz>
2709
2710         * configure.in: Fixed up so that ucsim is only configured once.
2711
2712         * support/cpp2/configure.in: Fixed to use the program transform to append the .exe for the win32 build.
2713
2714         * src/SDCCutil.c (getPrefixFromBinPath): Fixed up to work with win32 in all of its glory.
2715         (getPathDifference): As above.
2716
2717         * src/SDCCmain.c (preProcess): Changed to use a temporary file in a proper temp directory.  Fixed case where pre-processing only.
2718
2719         * src/SDCCglue.c (tempfilename): Added function for pre-processor.
2720
2721 2001-09-23  Michael Hope  <michaelh@juju.net.nz>
2722         * .version: Updated to 2.3.1
2723
2724         * src/z80/main.c (z80_port =): Added macro based linker and assembler command line support.
2725         Added copyright header.
2726
2727         * src/SDCCmain.c: Shifted various functions into SDCCutil.c
2728         (assemble): Added support for macro based assembler commands.
2729         (linkEdit): Added support for macro based linker commands.
2730         (preProcess): Changed the pre-processor to use macros.
2731         (_setPaths): Added functionality to autodetect the include, lib and bin dir paths.
2732         (_discoverPaths): Added support for overriding the install directory using the SDCCDIR env variable.
2733
2734         * device/lib/z80/crt0.s: Added module name for debugging.
2735
2736 2001-09-20  Michael Hope  <michaelh@juju.net.nz>
2737
2738         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
2739
2740         * src/SDCChasht.c (hTabDeleteByKey): Fixed delete as it would delete the last item from a bucket even if it wasn't the real one.
2741
2742         * src/SDCCglue.c: Moved gc_strdup to SDCCutil.c
2743
2744         * src/Makefile.in: Added SDCCmacro and SDCCutil
2745
2746 2001-09-19  Michael Hope  <michaelh@juju.net.nz>
2747
2748         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
2749
2750 2001-09-16    <johan@FRIJA>
2751
2752         * 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.
2753
2754 2001-09-15    <johan@FRIJA>
2755
2756         * src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
2757         * src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
2758
2759 2001-09-11    <johan@FRIJA>
2760
2761         * src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
2762
2763 2001-09-10  Michael Hope  <michaelh@juju.net.nz>
2764
2765         * support/regression/tests/bug-460444.c: Added test case.
2766
2767         * src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
2768         (genCast): Added justification for all of the asserts.
2769
2770 2001-09-10  Bernhard Held <bernhard@bernhardheld.de>
2771
2772         * support/regression/support.c: _xdata replaced by xdata
2773
2774         * support/regression/spec.mk: removed _generic
2775
2776 2001-09-09  Michael Hope  <michaelh@juju.net.nz>
2777
2778         * src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
2779
2780         * src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
2781         (genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
2782
2783         * src/z80/peeph.def: Added a rule to optimise shift then compare.
2784
2785         * support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
2786
2787         * support/regression/tests/bug-460010.c: Added test case.
2788
2789         * support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
2790
2791 2001-09-09  Bernhard Held <bernhard@bernhardheld.de>
2792
2793         * support/regression/Makefile: inter-port-clean adjusted for mcs51
2794
2795         * support/regression/testfwk.c: removed workaround for bug #436344
2796
2797         * support/regression/tests/bp.c: use less memory with mcs51
2798
2799         * support/regression/tests/bug-441448.c: use less memory
2800
2801         * support/regression/tests/ports/mcs51/spec.mk: cleanup, use --stack-after-data
2802
2803         * support/regression/collate-results.py: typo
2804
2805 2001-09-08  Michael Hope  <michaelh@juju.net.nz>
2806
2807         * support/regression/tests/fetchoverlap.c: Added new test case.
2808
2809         * support/regression/tests/bp.c: Added new test case.
2810
2811         * support/regression/tests/bug-448984.c: Added new test case.
2812
2813         * support/regression/tests/pow2shifts.c: Added new test case.
2814
2815         * src/z80/gen.c: Turned off the noise it normally generates for the release.
2816         (genlshTwo): Fixed right shift for count > 8.
2817
2818         * src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
2819
2820 2001-09-08    <johan@FRIJA>
2821
2822         * src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
2823
2824 2001-09-07    <johan@FRIJA>
2825
2826         * src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
2827
2828         * src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
2829
2830 2001-09-06    <johan@FRIJA>
2831
2832         * src/SDCC.y: this could be a fix for bug #458744 (1.37)
2833         * bernhard noted me at this: "() equals to (void)" (1.38)
2834
2835 2001-09-05    <johan@FRIJA>
2836
2837         * src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
2838
2839 2001-09-04    <johan@FRIJA>
2840
2841         * src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
2842
2843
2844 2001-09-04  Paul Stoffregen  <paul@pjrc.com>
2845
2846         * pragma noinduction broke memcpy on mcs51 large model.  Moved it inside z80 optimization
2847
2848 2001-09-03  Michael Hope  <michaelh@juju.net.nz>
2849
2850         * link/z80/aslink.h: Fixed path for PATH_MAX
2851
2852 2001-09-02  Michael Hope  <michaelh@juju.net.nz>
2853
2854         * src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
2855
2856         * support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
2857
2858         * support/regression/tests/uminus.c: Added a test for the unary minus operator.
2859
2860         * 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.
2861
2862 2001-09-01  Michael Hope  <michaelh@juju.net.nz>
2863
2864         * src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
2865         (genCmp): Fixed up genCmp for the GB with longs.
2866
2867         * device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
2868
2869         * support/regression/ports/host/spec.mk: Updated to compile with the new type specifiers.
2870
2871         * device/lib/Makefile.in (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
2872
2873         * device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
2874
2875 2001-08-30  Paul Stoffregen  <paul@pjrc.com>
2876
2877         * added peepholes 223 to 231 to mcs51 port.  These improve code when using large model.
2878
2879 2001-08-30  Michael Hope  <michaelh@juju.net.nz>
2880
2881         * 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.
2882
2883         * src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
2884
2885 2001-08-29  Michael Hope  <michaelh@juju.net.nz>
2886
2887         * link/z80/aslink.h: Fixed long file name support.  Is now based off PATH_MAX instead of a constant.
2888
2889         * src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
2890
2891 2001-08-30 Bernhard Held   <bernhard@bernhardheld.de>
2892
2893   * sim/ucsim/configure:    little improvement of Cygwin-detection      
2894   * sim/ucsim/configure.in: little improvement of Cygwin-detection      
2895   * sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
2896   * support/regression/tests/bug-221100.c: small changes for mcs51
2897   * support/regression/tests/bug-221168.c: small changes for mcs51
2898   * support/regression/tests/bug-227710.c: small changes for mcs51
2899   * support/regression/tests/staticinit.c: small changes for mcs51
2900   * as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
2901   * as/mcs51/lklex.c:  accept everything as symbol name in rel-files, bug fix ID 452601
2902   * as/mcs51/lksym.c:  accept everything as symbol name in rel-files, bug fix ID 452601