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