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