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