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