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