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