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