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