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