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