fixed bug #679761
[fw/sdcc] / ChangeLog
1 2003-02-23  Borut Razem <borut.razem@siol.net>
2
3         * src/asm.h: corrected assertion in function printILine(): _pipe() was not executed on MSVC,
4         because NDEBUG is defined (see man assert)
5         * sdcc_vc_in.h: vsnprintf is defined as _vsnprintf on MSVC
6
7 2003-02-23  Frieder Ferlemann <Frieder.Ferlemann@web.de>
8
9         * src/mcs51/gen.c (genUminusFloat): avoided dptr in-/decrement for xdata variables
10         * src/mcs51/peeph.def: added rule suggested by Gernot Fink, white space/comment changes
11
12 2003-02-18  Frieder Ferlemann <Frieder.Ferlemann@web.de>
13
14         * src/SDCCpeeph.c: added peephole conditions testing for same arguments
15         * src/mcs51/peeph.def: added rules 238a-d which remove redundant moves
16
17 2003-02-18    <johan@balder>
18
19         * as/mcs51/asmain.c (asmbl): module can start with a digit
20         * as/z80/asmain.c (asmbl): module can start with a digit
21
22 2003-02-16  Bernhard Held <bernhard@bernhardheld.de>
23
24         * sim/ucsim/mkecho: inserted #!/bin/sh for Cygwin, so that it's executable
25         * src/asm.c: fix pipe() for Mingw32
26
27 2003-02-15  Bernhard Held <bernhard@bernhardheld.de>
28
29         * src/SDCCglue.h: make tmpfileNameSet available for preOutName
30         * src/SDCCmain.c (preProcess): make sure, that preOutName will be deleted;
31         make -V work again; --c1mode reads now from stdin
32         * doc/sdccman.lyx: added --c1mode
33         * support/Util/SDCCerr.c: new messages for c1 mode
34         * support/Util/SDCCerr.h: new messages for c1 mode
35         * src/SDCC.lex (checkCurrFile): test if fullSrcFileName is NULL for c1mode
36
37 2003-02-15    <johan@balder>
38
39         * src/asm.c: new options: --no-c-code-in-asm and --i-code-in-asm
40
41 2003-02-14  Bernhard Held <bernhard@bernhardheld.de>
42
43         * doc/sdccman.lyx: Environment variables, -o and other minor things
44
45 2003-02-14    <johan@balder>
46
47         * src/xa51/main.c: before anyone really tries to use it :)
48
49         * Install doc's in share/sdcc/doc
50         * removed some obsolete files
51         * Do a proper make distclean and uninstall
52         M Makefile.common.in
53         R sdccbuild.sh
54         M as/Makefile
55         M device/include/Makefile.in
56         M device/lib/Makefile.in
57         M doc/sdccman.lyx
58         M link/Makefile
59         M sim/ucsim/doc/Makefile.in
60         M src/clean.mk
61         R src/avr/peeph.rul
62         R src/xa51/peeph.rul
63         M support/cpp2/Makefile.in
64         M support/makebin/Makefile
65
66
67 2003-02-13  Bernhard Held <bernhard@bernhardheld.de>
68
69         * support/regression/ports/host/spec.mk: use cc as host compiler for max osx
70
71 2003-02-10  Borut Razem <borut.razem@siol.net>
72
73         * doc/bccinst.txt, packihx/packihx.c, sdcc_vc_in.h, src/SDCCset.h,
74         support/cpp2/config.in: Borland C++ build doesn't depend on Cygwin configure
75         * Bcc.ini, Makefile.bcc, as/mcs51/Makefile.bcc,
76         device/examples/ds390/tinitalk/Makefile.bcc, packihx/Makefile.bcc,
77         support/cpp2/Makefile.bcc, src/Makefile.bcc, src/avr/Makefile.bcc,
78         src/ds390/Makefile.bcc, src/izt/Makefile.bcc, src/mcs51/Makefile.bcc,
79         src/pic/Makefile.bcc, src/pic16/Makefile.bcc, src/xa15/Makefile.bcc,
80         src/z80/Makefile.bcc: Borland Makefile cleanup
81         * as/z80/Makefile.bcc: Added Borland Makefile
82         * support/cpp2/borland.h: Removed
83
84 2003-02-10  Bernhard Held <bernhard@bernhardheld.de>
85
86         * doc/sdccman.lyx: new pragma NOIV by "Johannes Stezenbach" <js@convergence.de>
87         * src/SDCC.lex: new pragma NOIV
88         * src/SDCCglobl.h: new pragma NOIV
89         * src/SDCCmem.c: new pragma NOIV
90
91 2003-02-09  Bernhard Held <bernhard@bernhardheld.de>
92
93         * src/SDCCmain.c: signal handling is switched off by SDCC_LEAVE_SIGNALS
94
95 2003-02-09  Bernhard Held <bernhard@bernhardheld.de>
96
97         * src/SDCCmain.c: signal handling is switched off by --debug
98         * doc/Makefile: small fix for install; use clean.mk again
99         * doc/clean.mk: clean *.pdf and *.html too
100
101 2003-02-08  Bernhard Held <bernhard@bernhardheld.de>
102
103         * device/lib/_mulint.c: small fix for large/ds390 --int-long-reent resp. --stack-auto
104         * device/lib/printfl.c: fix a ds390 bug by making it portable
105         * src/SDCCsymt.c (initCSupport): fix compile warning on Cygwin
106         * src/SDCCopt.c (cnvToFloatCast): fix compile warning on Cygwin
107         * src/SDCCopt.c (cnvFromFloatCast): fix compile warning on Cygwin
108         * debugger/mcs51/cmd.c: converted multi-line string literals
109         * sim/ucsim/globals.cc: converted multi-line string literals
110         * src/SDCCmain.c: introduced signal handler to remove temp files
111         * doc/Makefile: small tweaks, implement clean
112         * doc: removed generated files
113
114 2003-02-05  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
115
116         * as/mcs51/aslink.h, as/mcs51/lkihx.c, as/mcs51/lkrloc.c:  Applied
117         patch from Jan Rejlek <jr@apex-lib.cz> to fix Bug 677692: "Extended
118         Address Record is not correctly generated for DS390."
119
120 2003-02-02  Borut Razem <borut.razem@siol.net>
121
122         * Makefile.bcc: removed non existing cpp project and non compilable izt project from makefile
123         * as/mcs51/asm.h: fixed compilation with Borland C
124         * support/cpp2/Makefile.bcc: added rule to generate auto-host.h
125         * support/cpp2/auto-host_vc_in.h: fixed compilation with Borland C
126         * src/mcs51/mcs51a.dsp: corrected misspelled project name from msc51a to mcs51a
127         * src/avr/Makefile.bcc, src/ds390/Makefile.bcc, src/izt/Makefile.bcc,
128         src/mcs51/Makefile.bcc, src/pic16/Makefile.bcc, src/xa51/Makefile.bcc,
129         src/z80/Makefile.bcc: delete $(LIB) only if exist
130         * src/Makefile.bcc, src/pic/Makefile.bcc:  fixed compilation with Borland C
131
132 2003-02-02  Bernhard Held <bernhard@bernhardheld.de>
133
134         * device/include/malloc.h: introduced NULL
135         * device/include/string.h: introduced NULL
136         * device/include/stdlib.h: introduced NULL
137         * device/lib/_memcpy.c: removed NULL
138         * device/lib/_strcat.c: removed NULL
139         * device/lib/_strchr.c: removed NULL
140         * device/lib/_strcmp.c: removed NULL
141         * device/lib/_strcpy.c: removed NULL
142         * device/lib/_strcspn.c: removed NULL
143         * device/lib/_strlen.c: removed NULL
144         * device/lib/_strncat.c: removed NULL
145         * device/lib/_strncmp.c: removed NULL
146         * device/lib/_strncpy.c: removed NULL
147         * device/lib/_strpbrk.c: removed NULL
148         * device/lib/_strrchr.c: removed NULL
149         * device/lib/_strspn.c: removed NULL
150         * device/lib/_strstr.c: removed NULL
151         * device/lib/_strtok.c: removed NULL
152         * device/lib/malloc.c: removed NULL, include own header
153
154 2003-02-02    <johan@balder>
155
156         * 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
157         * support/regression/fwk/lib/testfwk.c: div and mod isn't broken anymore
158         * regressions ds390/spec.mk and mcs51/spec.mk (timeout): my good old balder isn't fast enough for some tests
159         * src/z80/gen.c (genZ80Code): added c-lines in asm comments
160         * as/z80/asm.h (NINPUT): increased for long c-comments in regression tests
161         * src/z80/gen.c (genRightShiftLiteral): fixed the (char)(-3)>>8 (I think)
162
163 2003-02-01  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
164
165         * src/SDCCmain.c: Fixed bug 678574: "ds390: ASlink-Error-Stack overlaps
166         area 'DATA'"
167
168 2003-02-01    <johan@balder>
169
170         * src/SDCCval.c (valBitwise): fixed Karl's "2 | (1<<8)"
171
172 2003-01-31    <johan@CP255758-A>
173
174         * src/ds390/main.c (_ds390_genAssemblerPreamble): applied Jan Rejlek's >64K startup patch
175
176 2003-01-30    <johan@balder>
177
178         * src/SDCCBBlock.c: automatic bug detection
179         * src/SDCCicode.c: automatic bug detection
180
181 2003-01-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
182
183         * src/SDCCglobl.h:   now --xram-size 0 works
184         * src/SDCCmain.c:    now --xram-size 0 works
185
186 2003-01-29    <johan@balder>
187
188         * src/almosteverything: changed OP_DEFS and OP_USES from macros to functions to catch symbol abuse (a hot topic in the bug list :)
189
190 2003-01-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
191
192         * as/mcs51/aslink.h: Added options --xram-size and --code-size 
193         * as/mcs51/lkdata.c: Added options --xram-size and --code-size 
194         * as/mcs51/lkmain.c: Added options --xram-size and --code-size 
195         * as/mcs51/lkmem.c:  Added options --xram-size and --code-size 
196         * src/SDCCglobl.h:   Added options --xram-size and --code-size 
197         * src/SDCCmain.c:    Added options --xram-size and --code-size 
198
199 2003-01-28  Bernhard Held <bernhard@bernhardheld.de>
200
201         * src/ds390/gen.c: fix deps by replacing <common.h> with "common.h"
202         * src/SDCC.lex: rename P_OVERLAY to P_OVERLAY_ for cross-gcc 3.2 MINGW32
203
204 2003-01-27    <johan@balder>
205
206         * src/SDCC.y: fixed bug #613764
207
208 2003-01-26    <johan@balder>
209
210         * src/SDCClrange.c:  fixed Bernhard's "char * code ptr = &c"
211         * src/SDCCsymt.h: fixed bug #673374
212         * src/SDCCglue.c: fixed bug #661910
213         * src/SDCCast.c: fixed bug #458099 and 673374
214
215 2003-01-26  Bernhard Held <bernhard@bernhardheld.de>
216
217         * as/mcs51/strcmpi.c: added, provides Aurelien Jarno's as_strcmpi(); strcmpi() is not ANSI
218         * as/mcs51/strcmpi.h: added
219         * as/mcs51/asm.h: remove ugly "#define strcmpi strcmp"
220         * as/mcs51/aslink.h: remove ugly "#define strcmpi strcmp"
221         * as/mcs51/asmain.c: strcmpi -> as_strcmpi
222         * as/mcs51/assym.c: strcmpi -> as_strcmpi
223         * as/mcs51/lkmem.c: strcmpi -> as_strcmpi
224         * as/mcs51/lknoice.c: strcmpi -> as_strcmpi
225         * as/mcs51/lksym.c: strcmpi -> as_strcmpi
226         * as/mcs51/Makefile.aslink: new module strcmpi
227         * as/mcs51/Makefile.asx8051: new module strcmpi
228         * as/mcs51/Makefil.bcc: new module strcmpi
229         * as/mcs51/Makefile.in: new module strcmpi
230         * sim/ucsim/s51.src/uc390.cc (get_mem_size): make RAM big enough for tinibios
231
232 2003-01-26    <johan@balder>
233
234         * src/SDCCglue.c: reverted back to 1.124
235         * src/SDCCast.c: reverted back to 1.156
236         * src/mcs51/gen.c (aopGet): applied Frieder's efficiency patch
237
238 2003-01-25    <johan@balder>
239
240         * src/SDCCglue.c: A better fix for bug #661910
241         * src/SDCCast.c: A better fix for bug #661910
242         * src/SDCCglue.c (emitRegularMap): That was a little too efficient
243
244 2003-01-24  Bernhard Held <bernhard@bernhardheld.de>
245
246         * src/Makefile.in: remove spawn.o
247         * src/SDCCmain.c: remove spawn.h
248         * src/SDCCmain.c (printVersionInfo): report MINGW32 instead of UNIX
249         * src/spawn.c: removed
250         * src/spawn.h: removed
251         * support/regression/ports/ds390/spec.mk: link with -r
252
253 2003-01-24    <johan@CP255758-A>
254
255         * src/ds390/gen.c (aopOp): fixed bug #667458
256         * src/SDCCglue.c (emitRegularMap): fixed bug #458099 again
257         * src/SDCCast.c (createIvalCharPtr): fixed bug #661910
258         (createIvalCharPtr): an ival doesn't always have a storage class anymore
259
260 2003-01-24  Bernhard Held <bernhard@bernhardheld.de>
261
262         * src/mcs51/peeph.def: better assembler identation by Frieder
263         * src/mcs51/gen.c: better assembler identation by Frieder
264
265 2003-01-22  Bernhard Held <bernhard@bernhardheld.de>
266
267         * as/z80/string.h: removed for gcc 3.2
268         * support/makebin/makebin.c: #include <string.h> for gcc 3.2
269         * src/pic/pcode.c (get_op_from_instruction): fix concatenation of string literals with __FUNCTION__ for gcc 3.2
270
271 2003-01-19  Bernhard Held <bernhard@bernhardheld.de>
272
273         * src/SDCCmain.c (linkEdit): rename mem and map files even in case of failure
274         * src/SDCCpeeph.c (replaceRule): fix bug #663503
275         * support/regression/Makefile: separate temp files for ports
276         * support/regression/generate-cases.py: separate temp files for ports
277         * src/mcs51/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
278         * src/ds390/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
279
280 2003-01-19  Bernhard Held <bernhard@bernhardheld.de>
281
282         * moved tinitalk to device/examples/ds390
283
284 2003-01-14  Bernhard Held <bernhard@bernhardheld.de>
285
286         * as/mcs51/lkmem.c: rflag is for DS390
287         * src/SDCCglobl.h: removed out_name and options stackOnData, genericPtr
288         * src/SDCCmain.c (optionsTable, setDefaultOptions): removed --stack-after-data and --generic
289                          (linkEdit): move mem- and map-files the same way as ihx-files
290         * src/z80/main.c (_setDefaultOptions): removed --generic
291         * src/SDCCmain.c (_processC1Arg, parseCmdLine, main): --c1mode works again
292         * src/SDCCglue.c (createInterruptVect, glue): --c1mode works again
293         * src/pic/glue.c (picglue): --c1mode works again
294         * src/pic16/glue.c (pic16glue): --c1mode works again
295         * src/asm.c (printCLine): fix #660034
296
297 2003-01-13  Bernhard Held <bernhard@bernhardheld.de>
298
299         * src/ds390/peeph.def: fix #123; add 14 rules by Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>, 1 by Frieder
300         * src/mcs51/peeph.def: fix #123; add 14 rules by Fiorenzo, 1 by Frieder
301         * src/mcs51/gen.c (genFunction): emit r0 instead of ar0 by Fiorenzo
302         * as/mcs51/lkmem (summary): better fix for sp problem
303         * src/SDCCglue.c (glue): __start_stack - 1, saves 1 byte!
304         * src/ds390/main.c (_ds390_finaliseOptions, _tininative_finaliseOptions): stack_loc = 0x400008
305         * support/regression/ports/*/spec.mk: moving testfwk-object to port dir allow parallel execution of regression tests
306                                               remove --stack-after-data
307
308 2003-01-12  Bernhard Held <bernhard@bernhardheld.de>
309
310         * src/SDCCmain.c (main): port->finaliseOptions() moved for z80 linking
311         * src/SDCCutil.c (join): ugly bug: missing '\0'
312         * as/mcs51/lkmem.c (summary): sp on address 7 is safe
313
314 2003-01-11  Bernhard Held <bernhard@bernhardheld.de>
315
316         * src/SDCCmain.c (assemble, linkEdit): preparations for -o
317         * src/port.h: typo
318         * src/pic/main.c (_asmCmd): gpasm supports -o
319         * src/z80/main.c: more general macros
320         * device/lib/Makefile.in: remove intermediate files
321
322 2003-01-11  Bernhard Held <bernhard@bernhardheld.de>
323
324         * .version: Bumped version number to 2.3.3
325         * src/SDCCBBlock.c: new option -o
326         * src/SDCCglobl.h: new option -o
327         * src/SDCCglue.c: new option -o
328         * src/SDCCmain.c: new option -o
329         * src/asm.c: new option -o
330         * src/ds390/main.c: new option -o
331         * src/pic/glue.c: new option -o
332         * src/pic/pcode.c: new option -o
333         * src/pic/ralloc.c: new option -o
334         * src/pic16/glue.c: new option -o
335         * src/pic16/pcode.c: new option -o
336         * src/pic16/ralloc.c: new option -o
337         * src/z80/main.c: new option -o
338         * device/lib/Makefile.in: use -o
339         * support/regression/ports/ds390/spec.mk: use -o
340         * support/regression/ports/gbz80/spec.mk: use -o
341         * support/regression/ports/mcs51/spec.mk: use -o
342         * support/regression/ports/mcs51-stack-auto/spec.mk: use -o
343         * support/regression/ports/z80/spec.mk: use -o
344         * support/regression/ports/ucz80/spec.mk: use -o
345         * support/regression/ports/xa51/spec.mk: use -o
346         * support/regression/fwk/lib/timeout.c: fix usage string
347
348 2003-01-09  Bernhard Held <bernhard@bernhardheld.de>
349         * src/mcs51/gen.c (genPlus): replaced "mov b,acc" by "mov b,a" Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>
350         
351 2003-01-07    <johan@balder>
352
353         * src/SDCCast.c (decorateType): fixed bug #600035
354
355 2003-01-07  Bernhard Held <bernhard@bernhardheld.de>
356         * as/mcs51/lkmem.c: added several l-modifiers to printf to remove warnings
357         * as/mcs51/lkaomf51.c: #include <ctype.h> to remove warnings
358         * src/pic/main.c (_hasNativeMulFor): outcommented unused variables to remove warnings
359         * src/pic/pcode.c: outcommented unused variable to remove warnings
360         * src/pic/ralloc.c: outcommented unused variable to remove warnings
361
362 2003-01-06    <karl@turbobit.com>
363         * sim/ucsim/cmd.src/command.cc: fixed so "break xram r 0x7654" works again in
364    regression tests.
365
366 2003-01-06    <johan@balder>
367
368         * src/SDCCicode.c: fixed array add
369
370 2002-01-05  Bernhard Held <bernhard@bernhardheld.de>
371         * src/SDCCmacro.c: MAX_STRING_LENGTH increased to 2048; was too small for regression tests
372         * support/regression/ports/host/support.c: #include <stdarg.h> for gcc 3.2
373
374 2003-01-04    <johan@balder>
375
376         * src/SDCCval.c (getNelements): fixed the initialized array of structures
377
378 2002-12-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
379         * as/mcs51/Makefile.bcc: fixed typo lkomf51.o -> lkaomf51.o
380
381 2002-12-28  Bernhard Held <bernhard@bernhardheld.de>
382         * src/mcs51/peeph.def: added rules 234 and 235 from Frieder Ferlemann <frieder.ferlemann@web.de>
383         * support/regression/tests/bug-524697.c: fit mem usage into 8032
384
385 2002-12-28  Bernhard Held <bernhard@bernhardheld.de>
386         * src/mcs51/gen.c (aopGetUsesAcc): inserted missing "return FALSE"
387
388 2002-12-27  Bernhard Held <bernhard@bernhardheld.de>
389         * as/mcs51/Makefile.in: fixed typo lkomf51.o -> lkaomf51.o
390
391 2002-12-26  Bernhard Held <bernhard@bernhardheld.de>
392         * src/mcs51/main.c: removed {bindir}{sep} from aslink
393
394 2002-12-10  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
395
396     * in \sdcc\as\mcs51\ changed these files in order to create an
397     aomf51 file: aslink.h, lkdta.c, lklex.c, lklibr.c, lklist.c,
398     lkmain.c.  Also added: lkmem.c and lkaomf51.c.  Changed the 
399     following files to include the previous two files: aslink.dsp,
400     Makefile.aslink, Makefile.bcc, and Makefile.in.
401
402     * Changed \sdcc\src\SDCCmain.c so it creates files with extension
403     .adb instead of .cdb
404     
405 2002-11-09  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
406
407         * \sdcc\as\mcs51\lklist.c: Now reports memory usage using the
408         value from option --iram-size.
409
410 2002-09-20  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
411
412         * \sdcc\as\mcs51\lklist.c: added boundary check before using
413         dram[] array.
414
415 2002-09-18    <wiml@hhhh.org>
416
417         * SDCClrange.h: exposed setFromRange() and setToRange()
418         * mcs51/ralloc.c: fixed over-eager packRegsForSupport() and
419           packRegsForAccUse() (bug 542397)
420         * mcs51/gen.c: MOVA() is now a function to avoid calling aopGet()
421           multiple times and emitting the fetch operations more than once
422           added aopGetUsesAcc() function to allow binary operators to
423           fetch their operands in the correct order; made genMinus() emit
424           compact code for X = LITERAL - Y 
425
426 2002-09-00  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
427         * \sdcc\as\mcs51\lklist.c: Fixed incorrect number of parameters to
428         sprintf() in line 1267.
429
430 2002-09-08  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
431         * \sdcc\src\SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051
432         like ports.
433
434 2002-09-04  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
435         Changes to aslink (All the changes are marked with 'JCF'):
436
437         * \sdcc\as\mcs51\aslink.h: External definition of sflag and
438         summary().
439
440         * \sdcc\as\mcs51\lkarea.c: Computes the size of area BSEG_BYTES from
441         area BSEG.  Also moves, if possible, the DATA area down into the internal
442         ram so more space is available.
443
444         * \sdcc\as\mcs51\lkdata.c: Definition of memory summary output flag
445         sflag.
446
447         * \sdcc\as\mcs51\lklist.c: For the BSEG area report the size in bits,
448         not bytes.  Function summary() which creates a memory usage summary
449         file with extension .mem.  Reports of overlaping stack and small stack
450         size.  If the space for the stack is less than 16 bytes aslink trows a
451         warning.
452         
453         * \sdcc\as\mcs51\lkmain.c: Creation of some of the default areas for
454         the 8051.  Option 'y' for memory summary output file.
455
456         Changes to sdcc (All the changes are marked with 'JCF'):
457
458         * \sdcc\src\SDCCglobl.h: External definition of RegBankUsed[4].
459
460         * \sdcc\src\SDCCglue.c:  If a register bank is used, creates an
461         overlaying area for it (uses RegBankUsed[4]).
462
463         * \sdcc\src\SDCCmain.c: Definition RegBankUsed[4]; marks register
464         bank zero as used by default.  By default aslink locates the stack
465         (equivalent to --stack-after-data).  Pass option 'y' to aslink for
466         the creation of the .mem file.  Delegates the allocation of data area
467         to aslink (it is not longer 0x30 by default).  If --stack-loc passes
468         the begining of the stack area to aslink.
469
470         * \sdcc\src\SDCCmem.c:  If a register bank is used, marks it so
471         glue() in SDCCglue.c creates an area for it.
472         
473 2002-09-03  Borut Razem <borut.razem@siol.net>
474         * sdcc/src/SDCCglue.c, sdcc/src/SDCCglue.h, sdcc/src/SDCCmain.c,
475         sdcc/src/pic/glue.c:
476         introduced atexit() handler for teporay files removal in case of
477         errors, assertions, ...
478
479 2002-08-29  Borut Razem <borut.razem@siol.net>
480         * sdcc/support/cpp2/auto-host_vc_in.h:
481         re-definition of O_BINARY and other O_XXX as _O_BINARY and _O_XXX, so the problem
482         with the returned value from read() in sdcc/support/cpp2/cppfiles.c is solved for MSC.
483         Maybe there is a similar problem with BORLANDC? It should be checked!
484
485         * sdcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c, sdcc/src/z80/ralloc.c:
486         corrected improper use of assert: the assignment to clr variable was done inside the assert.
487         In case that NDEBUG was defined, the assert macro was substituted with no-op, so the assignment
488         was not executed, and the compiler (cl) launched a warning:
489         ralloc.c(1442) : warning C4700: local variable 'clr' used without having been initialized
490
491 2002-08-28  Bernhard Held <bernhard@bernhardheld.de>
492         * src/SDCCglue.c (printIvalArray): iterative calculation of array length
493
494 2002-08-28  Jesus Calvino-Fraga and Borut Razem <borut.razem@siol.net>
495         * sdcc/sdcc.dsw: added sdcpp, sdcppa, yacc, conf projects
496
497         * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
498           sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp,
499           sdcc/src/xa51/xa51.dsp, sdcc/src/avr/avra.dsp,
500           sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
501           sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp,
502           sdcc/src/xa51/xa51a.dsp, sdcc/as/as_z80.dsp,
503           sdcc/as/aslink.dsp, sdcc/as/asx8051.dsp, sdcc/packihx/packihx.dsp:
504         - added Release configuration in VS projects
505         - review of compiler an linker options
506         - VC .exe files are generated in bin_vc directory, not to interfere
507           with binaries generated from other projects (cygwin, mingw, bcc ...)
508
509         * sdcc/src/yacc.dsp: added
510
511         * sdcc/config.dsp, sdcc/configure_vc.awk, sdcc/sdcc_vc_in.h:
512         added - genarate sdcc_vc.h using sdcc_vc_in.h as template
513         and insert the version number definitions from .version 
514
515         * sdcc/support/cpp2/sdcpp.dsp: added - VC project for sdcpp
516
517         * sdcc/support/cpp2/sdcppa.dsp, sdcc/support/cpp2/auto-host_vc_in.h:
518         added - genarate auto-host.h using auto-host_vc_in.h as template
519
520         * sdcc/sdcc_vc.h,
521         removed from CVS, generated automatically
522
523 2002-08-25  Bernhard Held <bernhard@bernhardheld.de>
524         * support/scripts/inc2h.pl: use gputils or gpasm (from Nathan Hurst)
525
526 2002-08-11  Borut Razem <borut.razem@siol.net>
527         * support/Util/NewAlloc.c: removed unneeded #include "sdccconf.h" (suggested by Jesus Calvino-Fraga)
528
529 2002-08-10  Borut Razem <borut.razem@siol.net>
530         * src/SDCCmain.c (main):
531         file preOutName was unlinked before closed. This seems to be OK on UNIX and cygwin
532         platforms, but it doesn't work with Visual Studio: the opened file can not be removed.
533         The consequence was that some temporary files were not removed.
534
535         * src/SDCCglue.c:
536         unification of code in functions tempfilename() and tempfile():
537         function tempnam() is defined in Visual Studio 6.0 and .NET
538
539         * sdcc/sdcc.dsw: removed project sdcpp, added project xa51a
540
541         * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
542           sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp:
543         - removed compiler command line option /WX: Treats all warnings as errors
544         - update a list of source files, included into the project
545
546         * sdcc/src/avr/avra.dsp, sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
547           sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp:
548         changed project type to Generic Project so that can be correcly converted to VS.NET project
549
550         * sdcc/as/mcs51/asm.h: definition of PATH_MAX for MSC
551
552         * sdcc/src/SDCCast.c: solved MSC error in function decorateType()
553
554         * sdcc/src/SDCC.y: added missing ending ';' to rules to get rid of bison warnings
555
556         * dcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c:
557         added return 0 statements after assert() to make compiler happy
558
559         * sdcc/src/xa51/peeph.rul, sdcc/src/xa51/peeph.def, sdcc/src/z80/ralloc.c:
560         added newline in the def file to keep MSC compiler satisfied
561
562         * sdcc/src/z80/gen.c:
563         - function strcasecmp() is not defined in MSC (and probably also in BORLANDC),
564           so it is replaced with STRCASECMP, which is defined as stricmp in case of MSC and BORLANDC
565         - solved MSC error in function aopDump()
566
567         * sdcc_vc.h: define PREFIX as "\\sdcc"
568
569 2002-07-18  Bernhard Held <bernhard@bernhardheld.de>
570         * src/SDCCast.c (decorateType): fixed access to array of structures http://sourceforge.net/mailarchive/forum.php?thread_id=902690&forum_id=4107
571
572 2002-06-22  Scott Dattalo <scott@dattalo.com>
573         * src/pic/*: Numerous bug fixes. Flow analysis has been enhanced. 
574         - Rewrote the register banking algorithm. 
575         - Added pCode live-range analysis to registers (for now, only non-used and 
576         singly-used registers optimized away)
577
578         * src/pic/pcoderegs.[ch]: Added new files for pCode live-range analysis
579
580         * support/scripts/inc2h.pl Kevin L. Pauba <klpauba@cox.net> submitted this perl script for converting MicroChip include files into SDCC Pic include files.
581         
582 2002-05-10  Scott Dattalo <scott@dattalo.com>
583         * src/pic/*: Added support for multiplication. Fixed many,many bugs.
584         
585 2002-04-22  Michael Hope  <michaelh@vroom>
586
587         * device/lib/z80/printf.c: Changed emitter to volatile to work around a pcall bug.
588
589         * configure.in (DD_COPT): Added include support required for gbdk.
590
591         * .version: Bumped version number just to increase it.
592
593         * src/SDCCmain.c: Added -nostdinc to the default options.
594
595 2002-04-15  Michael Hope  <michaelh@vroom>
596
597         * device/lib/z80/printf.c (sprintf): Added.
598
599         * src/z80/ralloc.c (packRegisters): Disabled pack HL use for GB as it's broken.
600
601         * src/z80/peeph.def: Added transpose redundent load rule.
602
603         * src/z80/main.c: Added force callee saves for jaune.
604
605         * src/port.h: Removed the i186 and tlcs-900h ports as they weren't being being developed.
606
607         * src/SDCCmain.c: Pulled the options definition out so that you can add port specific options without changing the main file.
608
609 2002-03-28  Johan Knol  <johan@balder>
610
611         * src/SDCCval.c: fixed bug #532436
612
613 2002-03-14  Scott Dattalo <scott@dattalo.com>
614         * /src/port.h:
615         Added "char *Processor" field to the port structure.
616
617         * /src/SDCCmain.c:
618         Added -p option. Allows port dependent processor to be specified.
619
620         * all ports:
621         Initialized the new field char *Processor field to NULL in all ports
622
623         * /src/pic/*:
624         Compiler generated registers for interrupt context saving
625         were not getting allocated.
626                 
627 2002-03-16  Sandeep Dutta  <sandeep@ddi.com>
628
629         * /src/SDCCast.c:
630         Fixed left shift. Will promote the left side of a left shift
631         if a) left shifting more than size of operand or b) when assigned
632         to something size > size of left side
633
634 2002-03-14  Scott Dattalo <scott@dattalo.com>
635         * src/pic/*
636         tons of changes. Register allocation has been 
637         rewritten. Added customization for the various PICs. Flow
638         analysis is restructured. ...
639
640         * src/pic/device.h:
641         Added
642
643         * src/pic/device.c:
644         Added. device.c is a PIC port hack to accomodate variations
645         in PIC devices.
646
647 2002-03-13  Michael Hope  <michaelh@vroom>
648
649         * src/z80/gen.c (genGenPointerGet): Fixed a bug where a pointer in HL is dereferenced into HL but HL is not spilled.  Yeah.
650
651 2002-03-04  johanknol  <johanknol@manik>
652
653         * /src/SDCCval.c: fixed
654
655         const unsigned char arr[][2] = { { 0, 1 } };
656         t18.c:1: error: Initializer element is not constant
657
658 2002-03-04  bela  <bela@manik>
659
660         * /device/include/mcs51reg.h:
661         ds89c420 register definition update
662
663 2002-03-03    <johan@FRIJA>
664
665         * support/Util/SDCCerr.c: did something, but don't no why anymore
666
667         * support/regression/tests/bug-524691.c: made it a little less shy 
668
669         * src/SDCCast.c (decorateType): fixed bug #524697
670
671         * src/SDCCast.c: made some lineno improvements
672
673         * src/SDCCval.c (getNelements): changed warning to error
674
675         * src/SDCCglue.c (printIvalArray): changed warning to error
676
677         * src/SDCCicode.c: fixed a warning for mingw
678
679         * src/SDCCast.c (decorateType): fixed the << promotion for ops
680
681         * src/SDCCicode.c (geniCodeDivision): divide is shift only for unsigned (bug #524685)
682
683 2002-03-02  Sandeep Dutta  <sandeep@ddi.com>
684
685         * src/ds390/peeph.def:
686         Added some more peephole rules
687
688         * src/ds390/gen.c: Various fixes & enhancements
689
690         * src/SDCClrange.c, src/SDCClrange.h:
691         functions "alldefsoutofrange" and "notusedinblock" moved to SDCClrange.c
692
693         * src/ds390/ralloc.c:
694         various fixes & enhancements (ds390) specific
695
696         * src/avr/ralloc.c, src/mcs51/ralloc.c, src/pic/ralloc.c, src/xa51/ralloc.c, src/z80/ralloc.c:
697         Functions "allDefsOutOfRange" & "notUsedinBlock" moved to SDCClrange.c
698         from rallocs.
699
700         * sdcc/src/SDCCcse.c: Better fix for bug # 514308
701
702 2002-03-02    <johan@FRIJA>
703
704         * src/SDCCast.c (decorateType): fixed bug #524708
705
706         * src/SDCCval.c (floatFromVal): fixed the literal void (whatever that may be)
707
708         * src/SDCCicode.c (geniCodePtrPtrSubtract): fixed bug #524691
709
710 2002-03-01  Michael Hope  <michaelh@vroom>
711
712         * src/SDCCsymt.c (initCSupport): Removed managling of support function names.
713
714         * src/z80/ralloc.c (packRegsForIYUse): Fixed fp bug where four byte operands were packed into IY.
715
716 2002-03-01    <johan@FRIJA>
717
718         * src/SDCCglue.c (printIvalPtr): fixed bug #524211
719
720         * src/SDCCast.c (decorateType): fixed bug #524209
721
722         * src/SDCCval.c (valNot): fixed bug #524195
723
724 2002-02-26    <johan@balder>
725
726         * src/xa51/gen.c: fixed a warning
727
728         * src/SDCCglue.c (printIvalFuncPtr): fixed bug #522534
729
730         * src/SDCCast.c (decorateType): fixed bug #522534
731
732 2002-02-23    <johan@balder>
733
734         * src/SDCCdflow.c (computeDataFlow): fixed bug #460088
735
736 2002-02-22    <johan@balder>
737
738         * src/SDCCast.c: fixed bug #514865
739
740         * src/SDCCy.c ("SDCC.y"): fixed bug #516625
741
742 2002-02-21  Sandeep Dutta  <sandeep@ddi.com>
743
744         * sdcc/src/SDCCloop.c:
745         Previous fix was not good. basic blocks that have "break" or "return" are
746         not really partof a loop , but live ranges used in these blocks should
747         be live thru the entire loop, so set partOfLoop but don't add them to
748         loop region
749
750 2002-02-21    <johan@FRIJA>
751
752         * src/SDCCcse.c: fixed bug #514308
753
754 2002-02-20  Sandeep Dutta  <sandeep@ddi.com>
755
756         * src/SDCCloop.c:
757         Fixed BUG #519583. If a conditional block ended in a return/break
758         statement inside a loop, it was not being considered part of the loop.
759
760         * src/SDCCcflow.c: Removed fix (Fixed in SDCCloop.c)
761
762 2002-02-10  Karl Bongers <karl@turbobit.com>
763
764         * debugger/*:
765         Fixed up SDCDB debugger somewhat.  Updated debugger/README
766         with lots of comments and notes.
767
768         * device/examples/test2.c:
769         Fix bug, "red" variable not being initialized(compiler complained).
770
771         * device/examples/Makefile, examples/test3.c:
772         Add Makefile in device/examples folder, compiles test3.c
773         for use as a multiple module SDCDB test case.
774
775         * sim/ucsim/cmd.src/cmdset.cc:
776         Took out debug printfs in ucsim "next" command.
777
778         * sim/ucsim/xa.src:
779         Karl and Johan start ucsim XA support.  Most dissassembly working,
780         about 75% emulation done(plenty of work remaining).
781
782         * sim/ucsim/z80.src:
783         Add Z80 support to ucsim, add test-ucz80 regression test,
784         notice ucsim/z80 emulation fails on examples/test3.c/itoa code.
785         Notice z80 compiler fails on examples/test3.c/crc code.
786
787 2002-01-30  Sandeep Dutta  <sandeep@ddi.com>
788
789         * src/mcs51/gen.c, src/mcs51/main.c, src/mcs51/ralloc.c:
790         Added support for --parms-in-bank1
791
792         * src/ds390/peeph.def:
793         added a few more peephole optimzations
794
795         * src/ds390/main.c:
796         1) added __builtin_inp & __builtin_outp used to read in data of given length
797            from a memory mapped port
798         2) added __builtin_memcmp
799         3) added __builtin_swapw swap bytes of a short
800
801         * src/ds390/gen.c, src/ds390/gen.h, src/ds390/ralloc.c:
802         1) handle multiple send & receives from register bank1
803         2) ralloc can now allocate DPTR1 to some liveRanges
804
805         * src/SDCCsymt.c, src/SDCCsymt.h:
806         changes to handle multiple sends & receives
807
808         * src/SDCCptropt.h:
809         added some pointer arithmetic optimization
810
811         * src/SDCCptropt.c:
812         added some pointer arithmetic optimizations but not stable yet so not
813         called from anywhere (will get this working shortly)
814
815         * src/SDCCopt.c: fixed for multiple sends & receives
816
817         * src/SDCCmain.c:
818         1) added options --parms-in-bank1 (ds390/mcs51) & --protect-sp-update
819         2) preprocessing done AFTER port->finalizeoptions . This allows ports to
820            set preprocessor defines (depending on options)
821
822         * src/SDCCicode.c, src/SDCCicode.h:
823         changes made to handle multiple sends & receives
824
825         * src/SDCCglobl.h:
826         Added options --protect-sp-update (ds390) and --parms-in-bank1 (ds390/mcs51)
827
828         * src/SDCCcse.c, src/SDCCcse.h:
829         added function findbackward def (to be used in upcoming optimization)
830
831         * src/SDCCcflow.c, src/SDCCcflow.h:
832         added function returnAtEnd - to determine if a basic block terminates with
833         a RETURN iCode
834
835         * src/SDCCast.c, src/SDCCast.h:
836         added option parms-in-bank1
837
838         * device/lib/_divsint.c, device/lib/_divslong.c, device/lib/_divuint.c 
839         * device/lib/_divulong.c, device/lib/_modsint.c, device/lib/_modslong.c 
840         * device/lib/_modulong.c, device/lib/_mulint.c, device/lib/_mullong.c:
841         adjusted for --parms-in-bank1 option
842
843         * device/include/string.h:
844         donot redefine "reentrant" keyword
845
846         * device/include/ds80c390.h: Added some more SFRs
847
848 2002-01-28  Bernhard Held  <bernhard@bernhardheld.de>
849
850         * sim/ucsim: Merged branch ucsim-034-pre3 to main trunk; new version 0.4 
851
852 2002-01-26  Bernhard Held  <bernhard@bernhardheld.de>
853
854         * src/SDCCast.c (funcOfType): fix usage of double --float-reent
855
856 2002-01-22  Bernhard Held  <bernhard@bernhardheld.de>
857
858         * support/regression/fwk/lib/testfwk.c (main): Removed workaround for bug #505387
859
860 2002-01-18  Paul Stoffregen  <paul@pjrc.com>
861
862         * Added --xram-movc option
863
864 2002-01-13  Bernhard Held  <bernhard@bernhardheld.de>
865
866         * support/regression/Makefile: don't include test-mcs51-stack-auto in target all
867
868 2002-01-11  Johan Knol
869
870         * Added math lib of Jesus Calvino-Fraga
871
872 2002-01-08  Bernhard Held  <bernhard@bernhardheld.de>
873
874         * src/SDCCmain.c (processFile): fix processing of ../../src.c
875         * support/regression/Makefile: new target test-mcs51-stack-auto
876         * support/regression/ports/mcs51-stack-auto/spec.mk: added
877
878 2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
879
880         * src/SDCCglue.h: printIvalCharPtr(), not printIvalChar()
881
882 2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
883
884         * support/regression/ports/mcs51/support.c: correct setup of timer / UART
885
886 2002-01-03  Bernhard Held  <bernhard@bernhardheld.de>
887
888         * src/SDCCsymt.c (processFuncArgs): fix #498307 by Johan
889
890         * src/SDCCglue.h: add definition for printIvalChar()
891
892 2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
893
894         * src/SDCCast.c: fix #498138 by Johan
895
896         * src/SDCCglue.c: fix #498138 by Johan
897
898 2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
899
900         * support/regression/Makefile: fix clean
901
902         * support/regression/ports/ds390/support.c: fix transmission of last character
903
904 2001-12-29  Sandeep Dutta  <sandeep@ddi.com>
905
906         * /sdcc/src/ds390/gen.c:
907         a) improved computing address of stack variable
908         b) took out some #if 0 code
909         c) improved parmBytes adjustment
910         d) improved genPlusIncr & genMinusIncr
911         e) genCmp could generate bad code (when left assigned to DPTR)
912         f) Fixed bug in hasInc
913
914         * /sdcc/src/ds390/ralloc.c:
915         a) packRegsForSupport could mess up live information (Fixed)
916         b) packRegsDPTRuse could be incorrect for left & right shift
917
918         * /sdcc/src/mcs51/ralloc.c:
919         packRegsForSupport could mess up the live information (Fixed)
920
921         * /sdcc/src/mcs51/gen.c: Fixed a bug in hasInc
922
923         * /sdcc/src/SDCCast.c:
924         can reverse a loop even if function call is present as long
925         as the loop control variable is local & is not passed as parameter
926
927 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
928
929         * /sdcc/ChangeLog: *** empty log message ***
930
931         * /sdcc/src/ds390/gen.c, /sdcc/src/ds390/main.c:
932         More builtin function additions for TININative
933
934         * /sdcc/src/ds390/ralloc.c:
935         Had broken the regression testsuite
936
937         * /sdcc/src/SDCCast.c: Fixed a bug in dumptree
938
939         * /sdcc/src/SDCCsymt.c, /sdcc/src/SDCCsymt.h:
940         Added funcattr hasStackParms will be set for reentrant functions when there
941         are paramteres on the stack, this helps in minimizing frame pointer generation
942         typeFromStr can handle function pointers now
943
944         * /sdcc/doc/builtins.txt, /sdcc/doc/TININative.txt:
945         *** empty log message ***
946
947 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
948
949         * /src/ds390/gen.c, /src/ds390/main.c:
950         More builtin function additions for TININative
951
952         * /src/ds390/ralloc.c:
953         Had broken the regression testsuite
954
955         * /src/SDCCast.c: Fixed a bug in dumptree
956
957         * /src/SDCCsymt.c, /src/SDCCsymt.h:
958         Added funcattr hasStackParms will be set for reentrant functions when there
959         are paramteres on the stack, this helps in minimizing frame pointer generation
960         typeFromStr can handle function pointers now
961
962         * /doc/builtins.txt, /doc/TININative.txt:
963         *** empty log message ***
964
965
966 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
967
968         * /src/ds390/gen.c, /src/ds390/main.c, /src/ds390/peeph.def, /src/ds390/ralloc.c:
969         ALPHA version for -mTININative
970
971         * /src/izt/i186.c, /src/izt/tlcs900h.c, /src/mcs51/main.c, /src/pic/main.c, /src/z80/main.c, /src/avr/main.c:
972         updated to reflect changes in the port structure
973
974         * /src/port.h:
975         added function do_assemble (similar to do_link) if non-null this function
976         will be called to do assembly (-mTININative) requires a multi command
977         assembly
978         added function genAssemblerEnd will be called to generate assembler Epilogue
979
980         * /src/SDCCsymt.c:
981         added _JavaNative to debug info printing
982
983         * /src/SDCCmain.c: added option --tini-libid
984         added port->do_assemble function (-mTININative) has a multi command assemble
985
986         * /src/SDCCglue.c: Disabled "constExpr" check
987         added port->genAssemblerEnd function
988
989         * /src/SDCCglobl.h: Added option --tini-libid value
990
991         * /src/SDCCast.h:
992         tookout optimizeCompare from the header (has no external references)
993
994         * /src/SDCCast.c: made one more function "static"
995
996 2001-12-23  Michael Hope  <michaelh@juju.net.nz>
997
998         * src/z80/mappings.i: Added z80asm support.
999
1000         * src/z80/main.c: Added z80asm support on --asm=z80asm
1001
1002         * src/z80/gen.c: Fixed asm portability issues.
1003
1004         * src/asm.c (tvsprintf): Removed old code, added 'N' for function name.  For extern support.
1005
1006         * src/SDCCglue.c (printExterns): Added global/extern split.
1007
1008 2001-12-17  Bernhard Held  <bernhard@bernhardheld.de>
1009
1010         * support/regression/Makefile: added test for mcs51 model large
1011
1012         * support/regression/ports/mcs51-large/spec.mk: added test for mcs51 model large
1013
1014         * support/regression/ports/gbz80/spec.mk: added -mgbz80
1015
1016 2001-12-05  Michael Hope  <michaelh@juju.net.nz>
1017
1018         * src/diff.1 (Index): Many, many optmisiations.  Dhrystone up to 201.
1019
1020 1904-01-06  Michael Hope  <michaelh@juju.net.nz>
1021
1022         * src/z80/ralloc.c (packRegsForIYUse): Fixed the case where an operand is in direct space.
1023
1024         * src/z80/gen.c (makeFreePairId): Optimised IY load by using a spare pair.
1025
1026 2001-12-02  Bernhard Held  <bernhard@bernhardheld.de>
1027
1028         * src/mcs51/gen.c (genFunction): avoid excess "inc sp"
1029
1030         * support/regression/tests/simplefloat.c: Port to mcs51.
1031
1032 2001-11-25  Michael Hope  <michaelh@juju.net.nz>
1033         * support/regression/tests/bug-485362.c: Added.
1034
1035         * support/regression/tests/simplefloat.c (testDivNearOne): Added.
1036
1037         * src/z80/gen.c (aopOp): Fixed case where left and result are in the same spill loc and they have different sizes.
1038
1039         * src/z80/peeph.def: Added rules for optimising two byte compares on the same thing, and to optimise two ptr assign.
1040
1041         * src/z80/gen.c (aopDump): Added a dump function.
1042
1043 2001-11-25  Bernhard Held  <bernhard@bernhardheld.de>
1044         * sim/ucsim/s51.src/glob.cc: DS390 SFRs and bits added.
1045
1046         * sim/ucsim/s51.src/port.cc: Port 4 and 5 added.
1047
1048         * sim/ucsim/s51.src/regs51.h: DS390 SFRs added.
1049
1050         * sim/ucsim/s51.src/uc390.cc: Some details improved, CKRDY works for tinibios.
1051
1052         * sim/ucsim/s51.src/uc390cl.h: Work in progress.
1053
1054         * sim/ucsim/sim.src/uccl.h: 6 ports for DS390.
1055
1056         * support/regression/fwk/lib/testfwk.c: Run with tinibios.
1057
1058         * support/regression/ports/mcs51/spec.mk: Fine tuninig.
1059
1060         * support/regression/ports/ds390/support.c: Use tinibios.
1061
1062         * support/regression/ports/ds390/spec.mk: Fine tuning, use tinibios.
1063
1064 2001-11-23  Michael Hope  <michaelh@juju.net.nz>support/regression/tests/bug-460010.c
1065
1066         * src/z80/ralloc.c (packRegsForHLUse3): Changed to not pack into HL if anything is in direct space.
1067         (packRegsForHLUse3): Added packing support for send, cast, and return value from a call.
1068
1069         * src/z80/peeph.def: Added rules for optimising pushes of part of a pair.
1070
1071         * src/z80/gen.c (emitCall): Changed the stack fixup to not use HL.
1072
1073 2001-11-18  Michael Hope  <michaelh@juju.net.nz>
1074
1075         * src/z80/gen.c (genCmp): Fixed compare on unsigned.
1076
1077         * src/z80/ralloc.c (packRegsForHLUse3): Created and optimised.
1078         (packRegsForIYUse): Created and optimised.
1079
1080 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
1081
1082         * support/regression/tests/float.c (testFloatAdd): Fixed up warning.
1083 2001-11-18  Bernhard Held  <bernhard@bernhardheld.de>
1084
1085         * sdcc/support/regression/tests/bug-460010.c: fix seg violation on host
1086
1087         * sdcc/support/regression/tests/muldiv.c: fix output on mcs51
1088
1089         * sdcc/support/regression/tests/stacks.c: fix DSEG overflow on mcs51
1090
1091 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1092
1093         * sdcc/sim/device/lib/_gptrget.c: mem region 5 (idata) added
1094
1095         * sdcc/sim/device/lib/_gptrput.c: mem region 5 (idata) added
1096
1097 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1098
1099         * sdcc/sim/ucsim/globals.cc: New: IXRAM.
1100
1101         * sdcc/sim/ucsim/stypes.h: New: IXRAM.
1102
1103         * sdcc/sim/ucsim/s51.src/uc390.cc: New: IXRAM.
1104
1105 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
1106
1107         * src/z80/ralloc.c (packRegsForHLUse): Banned IFXs from being packed into HL.
1108         (packRegsForHLUse): Added rule to pack address of/pointer get for itemps into HL for the Z80.
1109         (packRegsForAccUse2): Added rule to pack hbit IFXs into A.
1110
1111         * src/z80/main.c (_setDefaultOptions): Made float code re-entrant by default.
1112
1113         * src/z80/gen.c (aopGetLitWordLong): Added word support for floats.
1114         (genNotFloat): Added.
1115         (genUminusFloat): Added.
1116
1117         * device/lib/z80/Makefile: Added floating pt stubs.
1118
1119         * device/lib/Makefile.in (Z80SOURCES): Added floating pt support.
1120
1121         * src/z80/gen.c (genIpush): Fixed up a push of one byte when left is in a pair.
1122
1123         * device/lib/_fsadd.c (__fsadd): Fixed up return where the numbers are hugely different.
1124
1125 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1126
1127         * sdcc/sim/ucsim/s51.src/glob.cc: Minor fix.
1128
1129         * sdcc/sim/ucsim/s51.src/regs51.h: Minor fix.
1130
1131         * sdcc/support/regression/Makefile: Add port ds390.
1132
1133         * sdcc/support/regression/ports/mcs51/spec.mk: Minor change.
1134
1135         * sdcc/support/regression/ports/z80/spec.mk: Minor change.
1136
1137         * sdcc/support/regression/ports/ds390/spec.mk: Added.
1138
1139         * sdcc/support/regression/ports/ds390/support.c: Added.
1140
1141         * sdcc/support/regression/ports/ds390/uCsim.cmd: Added.
1142
1143         * sdcc/support/regression/ports/mcs51/timeout.c: Cut.
1144
1145         * sdcc/support/regression/fwk/lib/timeout.c: Paste.
1146
1147 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
1148
1149         * device/include/malloc.h: Added z80 and gbz80 support.
1150
1151         * device/lib/gbz80/heap.s: Added.
1152
1153         * device/lib/z80/heap.s: Added.
1154
1155         * device/lib/malloc.c: Added z80 and gbz80 support.
1156
1157         * support/regression/tests/malloc.c (testMalloc): Added.
1158
1159         * src/SDCCmain.c (parseCmdLine): Added support for -Wp.
1160
1161         * support/regression/tests/bug-478094.c: Added.
1162
1163         * src/z80/gen.c (commitPair): Fixed silly gbz80/z80 commit to static bug.
1164
1165 2001-11-04  Bernhard Held  <bernhard@bernhardheld.de>
1166
1167         * sdcc/sim/ucsim/s51.src/uc390cl.h: Improvement for ds390 to run regression tests
1168
1169         * sdcc/sim/ucsim/s51.src/uc390.h: Improvement for ds390 to run regression tests
1170
1171         * sdcc/sim/ucsim/s51.src/regs51.h: Improvement for ds390 to run regression tests
1172
1173         * sdcc/sim/ucsim/s51.src/glob.cc: Improvement for ds390 to run regression tests
1174
1175         * sdcc/support/regression/tests/bug-460010.c: Small change for ds390
1176
1177 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
1178
1179         * src/z80/peeph-gbz80.def: Removed a bad sub optimisation.
1180
1181 2001-11-03  Michael Hope  <michaelh@juju.net.nz>
1182
1183         * support/regression/tests/bug-477927.c: Added.
1184
1185         * src/z80/peeph.def: Added minor rules.
1186
1187         * src/z80/gen.c (genPlusIncr): Added an extra plusinc rule.
1188
1189         * src/z80/peeph.def: Added jump optimisation modification.
1190
1191 2001-11-01  Michael Hope  <michaelh@juju.net.nz>
1192
1193         * src/SDCCmain.c (linkEdit): Added runtime path detection to the mcs51 port.
1194
1195 2001-10-30  Michael Hope  <michaelh@juju.net.nz>
1196
1197         * support/regression/tests/funptrs.c: Added.
1198
1199 2001-10-29  Michael Hope  <michaelh@juju.net.nz>
1200
1201         * src/z80/ralloc.c (packRegsForHLUse): Fixed up bad spill due to pushing one byte via HL.
1202
1203 2001-10-28  Michael Hope  <michaelh@juju.net.nz>
1204
1205         * src/z80/gen.c (genArrayInit): Made it work for on stack arrays.
1206
1207         * src/z80/main.c (gbz80_port =): Added rle support to the gbz80 port.
1208
1209         * src/z80/gen.c (genMinus): Fixed for where the result is one byte.
1210         (movLeft2ResultLong): Created.
1211
1212         * src/z80/ralloc.c (packRegsForHLUse): Added a couple of simple cases for the GB.
1213         (joinPushes): Added.  Joins two char pushes into a word push.
1214
1215 2001-10-27  Michael Hope  <michaelh@juju.net.nz>
1216
1217         * support/cpp2/Makefile.in (install): Added creation of dest dir.
1218
1219         * support/makebin/Makefile (install): Added creation of dest dir.
1220
1221 2001-10-24 Karl Bongers <karl@turbobit.com>
1222
1223         * configure.in, configure, Makefile, support/cpp: Removed cpp folder, since we have new cpp2 preprocessor code.
1224
1225 2001-10-21  Michael Hope  <michaelh@juju.net.nz>
1226
1227         * src/z80/ralloc.c: Turned off faulty pack for one use.
1228
1229         * src/z80/peeph-gbz80.def: Removed redundent restart options.
1230
1231         * src/z80/gen.c (genMult): Added native mul for constants on the z80 and gbz80.
1232
1233 2001-10-21  Bernhard Held  <bernhard@bernhardheld.de>
1234
1235         * support/regression/Makefile: Improved clean
1236
1237         * support/regression/ports/gbz80/spec.mk: Added clean
1238
1239         * support/regression/ports/host/spec.mk: Added clean
1240
1241         * support/regression/ports/z80/spec.mk: Added clean
1242
1243         * support/regression/ports/mcs51/spec.mk: Added clean, little improvements
1244
1245         * support/regression/ports/mcs51/timeout.c: little improvements
1246
1247 2001-10-17  Michael Hope  <michaelh@juju.net.nz>
1248
1249         * device/lib/malloc.c (MEMHEADER): Fixed against new pedantic pointers.
1250
1251         * support/regression/fwk/include/testfwk.h: Fixed up to use function pts correctly.
1252
1253         * support/regression/generate-cases.py: Fixed up to use function pts correctly.
1254
1255 2001-10-16  Bernhard Held  <bernhard@bernhardheld.de>
1256
1257         * support/regression/port/mcs51/spec.mk: add timeout for uCsim
1258
1259         * support/regression/port/mcs51/timeout.c: add timeout for uCsim
1260
1261 2001-10-13  Michael Hope  <michaelh@juju.net.nz>
1262         * src/z80/gen.c (emitCall): Fixed up missing spill of HL when used to assign the result value.
1263
1264         * src/z80/ralloc.c: Turned off pack for one use as it's quite broken.
1265
1266         * src/SDCCmain.c (linkEdit): Added support for passing a legacy command line through the processor.
1267
1268         * src/mcs51/main.c (_linkCmd): Added bin path to command.
1269
1270         * src/SDCCmain.c (initValues): Added support for when it it called just to link.
1271
1272         * as/mcs51/lklibr.c (libfil;): Turned off 'library file' message.
1273
1274         * src/SDCCval.c (constVal): Fixed usage of 'L' modifier problems on ppc.
1275
1276         * support/regression/tests/longor.c: Added.
1277
1278 2001-10-11  Bernhard Held  <bernhard@bernhardheld.de>
1279
1280         * as/mcs51/asdata.c: replaced FILENAME_MAX with PATH_MAX
1281
1282         * as/mcs51/aslink.h: define PATH_MAX
1283
1284         * as/mcs51/asm.h: define PATH_MAX
1285
1286         * as/mcs51/asmain.c: replaced FILENAME_MAX with PATH_MAX
1287
1288         * as/mcs51/asnoice.c: replaced FILENAME_MAX with PATH_MAX
1289
1290         * as/mcs51/lklex.c: replaced FILENAME_MAX with PATH_MAX
1291
1292         * as/mcs51/lkmain.c: replaced FILENAME_MAX with PATH_MAX
1293
1294         * src/SDCCglobl.h: define PATH_MAX
1295
1296         * src/SDCCmacro.c: replaced FILENAME_MAX with PATH_MAX
1297
1298         * src/SDCCmain.c: replaced FILENAME_MAX with PATH_MAX
1299
1300 2001-10-11  Michael Hope  <michaelh@juju.net.nz>
1301
1302         * src/z80/gen.c (gencjneshort): Fixed
1303
1304         * src/z80/ralloc.c (packRegsForHLUse): Added pack into HL for cast then ipush.
1305
1306 2001-10-09  Michael Hope  <michaelh@juju.net.nz>
1307
1308         * support/regression/tests/bug-469671.c: Added.
1309
1310         * src/z80/gen.c (shiftIntoPair): Fixed up warning.
1311
1312 2001-10-08  Michael Hope  <michaelh@juju.net.nz>
1313
1314         * src/SDCCmain.c: Added --fommit-frame-pointer option and implemented in the z80 port.
1315
1316         * src/z80/gen.c (genPlus): Fixed to work with extended stack.  Also fixed genMinus, genCmp.  genUMinus is still left.
1317
1318 2001-10-08  Bernhar Held  <bernhard@bernhardheld.de>
1319
1320         * src/SDCCmain.c (preProcess): added define SDCC_NOOVERLAY
1321
1322         * src/device/lib/_mulint.c  : removed hint: nooverlay bug
1323
1324         * src/device/lib/_mullong.c : removed hint: nooverlay bug
1325
1326         * src/device/lib/_divuint.c : removed hint: nooverlay bug
1327
1328         * src/device/lib/_divulong.c: removed hint: nooverlay bug
1329
1330         * src/device/lib/_moduint.c : removed hint: nooverlay bug
1331
1332         * src/device/lib/_modulong.c: removed hint: nooverlay bug
1333
1334 2001-10-07  Michael Hope  <michaelh@juju.net.nz>
1335
1336         * 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.
1337
1338         * support/Util/NewAlloc.c (freeTrace): Changed free for the gc case to not free at all.  Fixes runtime segfault.
1339
1340         * support/regression/tests/scott-compare3.c (c_abcd): Fixed up casts.
1341
1342 2001-10-07    <johan@FRIJA>
1343
1344         * device/lib/gets.c (gets): fixed the return value.
1345
1346 2001-10-06  Michael Hope  <michaelh@juju.net.nz>
1347         * src/SDCCmain.c (WRITE_SEG_LOC): Fixed up to use Safe_strdup.
1348
1349         * 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.
1350
1351         * 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.
1352
1353         * src/z80/gen.c (genZ80Code): Added de-allocation via trace support.
1354
1355         * src/pic/gen.c: Removed Safe_strdup.
1356
1357         * configure.in: Added option to enable libgc support.
1358
1359         * src/SDCCbitv.c (bitVectnBitsOn): Optimised.
1360         (bitVectUnion): Optimised.
1361         (bitVectIntersect): Optimised.
1362         (bitVectBitsInCommon): Optimised.
1363         (bitVectCplAnd): Optimised.
1364
1365         * support/makebin/makebin.c (usage): Removed getopt as mingw32 doesn't have it.  Sigh.
1366
1367 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1368
1369         * src/SDCCmain.c: distinguish between assembler debug and plain options
1370
1371         * src/avr/main.c:   remove standard assembler options
1372
1373         * src/ds390/main.c: remove standard assembler options
1374
1375         * src/mcs51/main.c: remove standard assembler options
1376
1377         * src/port.h: removed "PENDING" comment
1378
1379 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1380
1381         * src/device/lib/_mulint.c  : new, with assember functions
1382
1383         * src/device/lib/_mullong.c : new, with assember functions
1384
1385         * src/device/lib/_divuint.c : with assember functions
1386
1387         * src/device/lib/_divsint.c : with assember functions
1388
1389         * src/device/lib/_divulong.c: with assember functions
1390
1391         * src/device/lib/_divslong.c: with assember functions
1392
1393         * src/device/lib/_moduint.c : with assember functions
1394
1395         * src/device/lib/_modsint.c : with assember functions
1396
1397         * src/device/lib/_modulong.c: with assember functions
1398
1399         * src/device/lib/_modslong.c: with assember functions
1400
1401         * src/device/lib/libint.lib:  replaced _muluint.c  and _mulsint.c  by _mulint.c
1402
1403         * src/device/lib/liblong.lib: replaced _mululong.c and _mulslong.c by _mullong.c
1404
1405         * src/device/lib/Makefile.in: replaced _muluint.c  and _mulsint.c  by _mulint.c
1406                                       replaced _mululong.c and _mulslong.c by _mullong.c
1407
1408 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1409
1410         * src/SDCCsymt.c: sequence of specifiers in pintTypeChain() corrected
1411
1412 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
1413
1414         * src/SDCCglue.c: test, if win32api is available for MINGW
1415
1416 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
1417
1418         * src/SDCCsymt.c: no more _modifier in printTypeChain()
1419         * support/regression/tests/driverstruct.c: REENTRANT for mcs51
1420         * support/regression/ports/gbz80/spec.mk: removed GENERIC
1421         * support/regression/ports/host/spec.mk: removed GENERIC
1422         * support/regression/ports/mcs51/spec.mk: removed GENERIC
1423         * support/regression/ports/z80/spec.mk: removed GENERIC
1424
1425 2001-10-01  Michael Hope  <michaelh@juju.net.nz>
1426
1427         * support/regression/fwk/lib/testfwk.c (__printf): Removed GENERIC.
1428
1429         * support/regression/tests/bug-467035.c: Created.
1430
1431 2001-10-01    <johan@FRIJA>
1432
1433         * src/SDCC.y: fixed bug #466586 part 1
1434
1435 2001-10-01  Johan Knol <johan.knol@iduna.nl>
1436
1437         * SDCCicode.c: z80 has no generic pointers
1438         * removed -s from strip in all Makefile(.in)'s. It is not needed, but Solaris chocks on it.
1439         
1440 2001-09-30  Michael Hope  <michaelh@juju.net.nz>
1441
1442         * sim/ucsim/cmd.src/Makefile.in ($(PRJDIR)/libcmd.a): Changed all ar references to $(AR) for Solaris.
1443
1444 2001-09-29  Michael Hope  <michaelh@juju.net.nz>
1445
1446         * Makefile (sdcc-libs): Added makebin to the list of standard targets.
1447
1448         * support/regression/ports/z80/spec.mk: Updated to use env for sdcc bin dir for automatic regression.
1449
1450 2001-09-25  Michael Hope  <michaelh@juju.net.nz>
1451
1452         * configure.in: Fixed up so that ucsim is only configured once.
1453
1454         * support/cpp2/configure.in: Fixed to use the program transform to append the .exe for the win32 build.
1455
1456         * src/SDCCutil.c (getPrefixFromBinPath): Fixed up to work with win32 in all of its glory.
1457         (getPathDifference): As above.
1458
1459         * src/SDCCmain.c (preProcess): Changed to use a temporary file in a proper temp directory.  Fixed case where pre-processing only.
1460
1461         * src/SDCCglue.c (tempfilename): Added function for pre-processor.
1462
1463 2001-09-23  Michael Hope  <michaelh@juju.net.nz>
1464         * .version: Updated to 2.3.1
1465
1466         * src/z80/main.c (z80_port =): Added macro based linker and assembler command line support.
1467         Added copyright header.
1468
1469         * src/SDCCmain.c: Shifted various functions into SDCCutil.c
1470         (assemble): Added support for macro based assembler commands.
1471         (linkEdit): Added support for macro based linker commands.
1472         (preProcess): Changed the pre-processor to use macros.
1473         (_setPaths): Added functionality to autodetect the include, lib and bin dir paths.
1474         (_discoverPaths): Added support for overriding the install directory using the SDCCDIR env variable.
1475
1476         * device/lib/z80/crt0.s: Added module name for debugging.
1477
1478 2001-09-20  Michael Hope  <michaelh@juju.net.nz>
1479
1480         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
1481
1482         * src/SDCChasht.c (hTabDeleteByKey): Fixed delete as it would delete the last item from a bucket even if it wasn't the real one.
1483
1484         * src/SDCCglue.c: Moved gc_strdup to SDCCutil.c
1485
1486         * src/Makefile.in: Added SDCCmacro and SDCCutil
1487
1488 2001-09-19  Michael Hope  <michaelh@juju.net.nz>
1489
1490         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
1491
1492 2001-09-16    <johan@FRIJA>
1493
1494         * 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.
1495
1496 2001-09-15    <johan@FRIJA>
1497
1498         * src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
1499         * src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
1500
1501 2001-09-11    <johan@FRIJA>
1502
1503         * src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
1504
1505 2001-09-10  Michael Hope  <michaelh@juju.net.nz>
1506
1507         * support/regression/tests/bug-460444.c: Added test case.
1508
1509         * src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
1510         (genCast): Added justification for all of the asserts.
1511
1512 2001-09-10  Bernhard Held <bernhard@bernhardheld.de>
1513
1514         * support/regression/support.c: _xdata replaced by xdata
1515
1516         * support/regression/spec.mk: removed _generic
1517
1518 2001-09-09  Michael Hope  <michaelh@juju.net.nz>
1519
1520         * src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
1521
1522         * src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
1523         (genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
1524
1525         * src/z80/peeph.def: Added a rule to optimise shift then compare.
1526
1527         * support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
1528
1529         * support/regression/tests/bug-460010.c: Added test case.
1530
1531         * support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
1532
1533 2001-09-09  Bernhard Held <bernhard@bernhardheld.de>
1534
1535         * support/regression/Makefile: inter-port-clean adjusted for mcs51
1536
1537         * support/regression/testfwk.c: removed workaround for bug #436344
1538
1539         * support/regression/tests/bp.c: use less memory with mcs51
1540
1541         * support/regression/tests/bug-441448.c: use less memory
1542
1543         * support/regression/tests/ports/mcs51/spec.mk: cleanup, use --stack-after-data
1544
1545         * support/regression/collate-results.py: typo
1546
1547 2001-09-08  Michael Hope  <michaelh@juju.net.nz>
1548
1549         * support/regression/tests/fetchoverlap.c: Added new test case.
1550
1551         * support/regression/tests/bp.c: Added new test case.
1552
1553         * support/regression/tests/bug-448984.c: Added new test case.
1554
1555         * support/regression/tests/pow2shifts.c: Added new test case.
1556
1557         * src/z80/gen.c: Turned off the noise it normally generates for the release.
1558         (genlshTwo): Fixed right shift for count > 8.
1559
1560         * src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
1561
1562 2001-09-08    <johan@FRIJA>
1563
1564         * src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
1565
1566 2001-09-07    <johan@FRIJA>
1567
1568         * src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
1569
1570         * src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
1571
1572 2001-09-06    <johan@FRIJA>
1573
1574         * src/SDCC.y: this could be a fix for bug #458744 (1.37)
1575         * bernhard noted me at this: "() equals to (void)" (1.38)
1576
1577 2001-09-05    <johan@FRIJA>
1578
1579         * src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
1580
1581 2001-09-04    <johan@FRIJA>
1582
1583         * src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
1584
1585
1586 2001-09-04  Paul Stoffregen  <paul@pjrc.com>
1587
1588         * pragma noinduction broke memcpy on mcs51 large model.  Moved it inside z80 optimization
1589
1590 2001-09-03  Michael Hope  <michaelh@juju.net.nz>
1591
1592         * link/z80/aslink.h: Fixed path for PATH_MAX
1593
1594 2001-09-02  Michael Hope  <michaelh@juju.net.nz>
1595
1596         * src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
1597
1598         * support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
1599
1600         * support/regression/tests/uminus.c: Added a test for the unary minus operator.
1601
1602         * 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.
1603
1604 2001-09-01  Michael Hope  <michaelh@juju.net.nz>
1605
1606         * src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
1607         (genCmp): Fixed up genCmp for the GB with longs.
1608
1609         * device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
1610
1611         * support/regression/ports/host/spec.mk: Updated to compile with the new type specifiers.
1612
1613         * device/lib/Makefile.in (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
1614
1615         * device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
1616
1617 2001-08-30  Paul Stoffregen  <paul@pjrc.com>
1618
1619         * added peepholes 223 to 231 to mcs51 port.  These improve code when using large model.
1620
1621 2001-08-30  Michael Hope  <michaelh@juju.net.nz>
1622
1623         * 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.
1624
1625         * src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
1626
1627 2001-08-29  Michael Hope  <michaelh@juju.net.nz>
1628
1629         * link/z80/aslink.h: Fixed long file name support.  Is now based off PATH_MAX instead of a constant.
1630
1631         * src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
1632
1633 2001-08-30 Bernhard Held   <bernhard@bernhardheld.de>
1634
1635   * sim/ucsim/configure:    little improvement of Cygwin-detection      
1636   * sim/ucsim/configure.in: little improvement of Cygwin-detection      
1637   * sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
1638   * support/regression/tests/bug-221100.c: small changes for mcs51
1639   * support/regression/tests/bug-221168.c: small changes for mcs51
1640   * support/regression/tests/bug-227710.c: small changes for mcs51
1641   * support/regression/tests/staticinit.c: small changes for mcs51
1642   * as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
1643   * as/mcs51/lklex.c:  accept everything as symbol name in rel-files, bug fix ID 452601
1644   * as/mcs51/lksym.c:  accept everything as symbol name in rel-files, bug fix ID 452601