aed8131a112e2165c349117080b88e031db6ce66
[fw/sdcc] / ChangeLog
1 2001-01-02  Bernhard Held  <bernhard@bernhardheld.de>
2
3         * src/SDCCast.c: fix #498138 by Johan
4
5         * src/SDCCglue.c: fix #498138 by Johan
6
7 2001-01-02  Bernhard Held  <bernhard@bernhardheld.de>
8
9         * support/regression/Makefile: fix clean
10
11         * support/regression/ports/ds390/support.c: fix transmission of last character
12
13 2001-12-29  Sandeep Dutta  <sandeep@ddi.com>
14
15         * /sdcc/src/ds390/gen.c:
16         a) improved computing address of stack variable
17         b) took out some #if 0 code
18         c) improved parmBytes adjustment
19         d) improved genPlusIncr & genMinusIncr
20         e) genCmp could generate bad code (when left assigned to DPTR)
21         f) Fixed bug in hasInc
22
23         * /sdcc/src/ds390/ralloc.c:
24         a) packRegsForSupport could mess up live information (Fixed)
25         b) packRegsDPTRuse could be incorrect for left & right shift
26
27         * /sdcc/src/mcs51/ralloc.c:
28         packRegsForSupport could mess up the live information (Fixed)
29
30         * /sdcc/src/mcs51/gen.c: Fixed a bug in hasInc
31
32         * /sdcc/src/SDCCast.c:
33         can reverse a loop even if function call is present as long
34         as the loop control variable is local & is not passed as parameter
35
36 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
37
38         * /sdcc/ChangeLog: *** empty log message ***
39
40         * /sdcc/src/ds390/gen.c, /sdcc/src/ds390/main.c:
41         More builtin function additions for TININative
42
43         * /sdcc/src/ds390/ralloc.c:
44         Had broken the regression testsuite
45
46         * /sdcc/src/SDCCast.c: Fixed a bug in dumptree
47
48         * /sdcc/src/SDCCsymt.c, /sdcc/src/SDCCsymt.h:
49         Added funcattr hasStackParms will be set for reentrant functions when there
50         are paramteres on the stack, this helps in minimizing frame pointer generation
51         typeFromStr can handle function pointers now
52
53         * /sdcc/doc/builtins.txt, /sdcc/doc/TININative.txt:
54         *** empty log message ***
55
56 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
57
58         * /src/ds390/gen.c, /src/ds390/main.c:
59         More builtin function additions for TININative
60
61         * /src/ds390/ralloc.c:
62         Had broken the regression testsuite
63
64         * /src/SDCCast.c: Fixed a bug in dumptree
65
66         * /src/SDCCsymt.c, /src/SDCCsymt.h:
67         Added funcattr hasStackParms will be set for reentrant functions when there
68         are paramteres on the stack, this helps in minimizing frame pointer generation
69         typeFromStr can handle function pointers now
70
71         * /doc/builtins.txt, /doc/TININative.txt:
72         *** empty log message ***
73
74
75 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
76
77         * /src/ds390/gen.c, /src/ds390/main.c, /src/ds390/peeph.def, /src/ds390/ralloc.c:
78         ALPHA version for -mTININative
79
80         * /src/izt/i186.c, /src/izt/tlcs900h.c, /src/mcs51/main.c, /src/pic/main.c, /src/z80/main.c, /src/avr/main.c:
81         updated to reflect changes in the port structure
82
83         * /src/port.h:
84         added function do_assemble (similar to do_link) if non-null this function
85         will be called to do assembly (-mTININative) requires a multi command
86         assembly
87         added function genAssemblerEnd will be called to generate assembler Epilogue
88
89         * /src/SDCCsymt.c:
90         added _JavaNative to debug info printing
91
92         * /src/SDCCmain.c: added option --tini-libid
93         added port->do_assemble function (-mTININative) has a multi command assemble
94
95         * /src/SDCCglue.c: Disabled "constExpr" check
96         added port->genAssemblerEnd function
97
98         * /src/SDCCglobl.h: Added option --tini-libid value
99
100         * /src/SDCCast.h:
101         tookout optimizeCompare from the header (has no external references)
102
103         * /src/SDCCast.c: made one more function "static"
104
105 2001-12-23  Michael Hope  <michaelh@juju.net.nz>
106
107         * src/z80/mappings.i: Added z80asm support.
108
109         * src/z80/main.c: Added z80asm support on --asm=z80asm
110
111         * src/z80/gen.c: Fixed asm portability issues.
112
113         * src/asm.c (tvsprintf): Removed old code, added 'N' for function name.  For extern support.
114
115         * src/SDCCglue.c (printExterns): Added global/extern split.
116
117 2001-12-17  Bernhard Held  <bernhard@bernhardheld.de>
118
119         * support/regression/Makefile: added test for mcs51 model large
120
121         * support/regression/ports/mcs51-large/spec.mk: added test for mcs51 model large
122
123         * support/regression/ports/gbz80/spec.mk: added -mgbz80
124
125 2001-12-05  Michael Hope  <michaelh@juju.net.nz>
126
127         * src/diff.1 (Index): Many, many optmisiations.  Dhrystone up to 201.
128
129 1904-01-06  Michael Hope  <michaelh@juju.net.nz>
130
131         * src/z80/ralloc.c (packRegsForIYUse): Fixed the case where an operand is in direct space.
132
133         * src/z80/gen.c (makeFreePairId): Optimised IY load by using a spare pair.
134
135 2001-12-02  Bernhard Held  <bernhard@bernhardheld.de>
136
137         * src/mcs51/gen.c (genFunction): avoid excess "inc sp"
138
139         * support/regression/tests/simplefloat.c: Port to mcs51.
140
141 2001-11-25  Michael Hope  <michaelh@juju.net.nz>
142         * support/regression/tests/bug-485362.c: Added.
143
144         * support/regression/tests/simplefloat.c (testDivNearOne): Added.
145
146         * src/z80/gen.c (aopOp): Fixed case where left and result are in the same spill loc and they have different sizes.
147
148         * src/z80/peeph.def: Added rules for optimising two byte compares on the same thing, and to optimise two ptr assign.
149
150         * src/z80/gen.c (aopDump): Added a dump function.
151
152 2001-11-25  Bernhard Held  <bernhard@bernhardheld.de>
153         * sim/ucsim/s51.src/glob.cc: DS390 SFRs and bits added.
154
155         * sim/ucsim/s51.src/port.cc: Port 4 and 5 added.
156
157         * sim/ucsim/s51.src/regs51.h: DS390 SFRs added.
158
159         * sim/ucsim/s51.src/uc390.cc: Some details improved, CKRDY works for tinibios.
160
161         * sim/ucsim/s51.src/uc390cl.h: Work in progress.
162
163         * sim/ucsim/sim.src/uccl.h: 6 ports for DS390.
164
165         * support/regression/fwk/lib/testfwk.c: Run with tinibios.
166
167         * support/regression/ports/mcs51/spec.mk: Fine tuninig.
168
169         * support/regression/ports/ds390/support.c: Use tinibios.
170
171         * support/regression/ports/ds390/spec.mk: Fine tuning, use tinibios.
172
173 2001-11-23  Michael Hope  <michaelh@juju.net.nz>support/regression/tests/bug-460010.c
174
175         * src/z80/ralloc.c (packRegsForHLUse3): Changed to not pack into HL if anything is in direct space.
176         (packRegsForHLUse3): Added packing support for send, cast, and return value from a call.
177
178         * src/z80/peeph.def: Added rules for optimising pushes of part of a pair.
179
180         * src/z80/gen.c (emitCall): Changed the stack fixup to not use HL.
181
182 2001-11-18  Michael Hope  <michaelh@juju.net.nz>
183
184         * src/z80/gen.c (genCmp): Fixed compare on unsigned.
185
186         * src/z80/ralloc.c (packRegsForHLUse3): Created and optimised.
187         (packRegsForIYUse): Created and optimised.
188
189 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
190
191         * support/regression/tests/float.c (testFloatAdd): Fixed up warning.
192 2001-11-18  Bernhard Held  <bernhard@bernhardheld.de>
193
194         * sdcc/support/regression/tests/bug-460010.c: fix seg violation on host
195
196         * sdcc/support/regression/tests/muldiv.c: fix output on mcs51
197
198         * sdcc/support/regression/tests/stacks.c: fix DSEG overflow on mcs51
199
200 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
201
202         * sdcc/sim/device/lib/_gptrget.c: mem region 5 (idata) added
203
204         * sdcc/sim/device/lib/_gptrput.c: mem region 5 (idata) added
205
206 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
207
208         * sdcc/sim/ucsim/globals.cc: New: IXRAM.
209
210         * sdcc/sim/ucsim/stypes.h: New: IXRAM.
211
212         * sdcc/sim/ucsim/s51.src/uc390.cc: New: IXRAM.
213
214 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
215
216         * src/z80/ralloc.c (packRegsForHLUse): Banned IFXs from being packed into HL.
217         (packRegsForHLUse): Added rule to pack address of/pointer get for itemps into HL for the Z80.
218         (packRegsForAccUse2): Added rule to pack hbit IFXs into A.
219
220         * src/z80/main.c (_setDefaultOptions): Made float code re-entrant by default.
221
222         * src/z80/gen.c (aopGetLitWordLong): Added word support for floats.
223         (genNotFloat): Added.
224         (genUminusFloat): Added.
225
226         * device/lib/z80/Makefile: Added floating pt stubs.
227
228         * device/lib/Makefile.in (Z80SOURCES): Added floating pt support.
229
230         * src/z80/gen.c (genIpush): Fixed up a push of one byte when left is in a pair.
231
232         * device/lib/_fsadd.c (__fsadd): Fixed up return where the numbers are hugely different.
233
234 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
235
236         * sdcc/sim/ucsim/s51.src/glob.cc: Minor fix.
237
238         * sdcc/sim/ucsim/s51.src/regs51.h: Minor fix.
239
240         * sdcc/support/regression/Makefile: Add port ds390.
241
242         * sdcc/support/regression/ports/mcs51/spec.mk: Minor change.
243
244         * sdcc/support/regression/ports/z80/spec.mk: Minor change.
245
246         * sdcc/support/regression/ports/ds390/spec.mk: Added.
247
248         * sdcc/support/regression/ports/ds390/support.c: Added.
249
250         * sdcc/support/regression/ports/ds390/uCsim.cmd: Added.
251
252         * sdcc/support/regression/ports/mcs51/timeout.c: Cut.
253
254         * sdcc/support/regression/fwk/lib/timeout.c: Paste.
255
256 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
257
258         * device/include/malloc.h: Added z80 and gbz80 support.
259
260         * device/lib/gbz80/heap.s: Added.
261
262         * device/lib/z80/heap.s: Added.
263
264         * device/lib/malloc.c: Added z80 and gbz80 support.
265
266         * support/regression/tests/malloc.c (testMalloc): Added.
267
268         * src/SDCCmain.c (parseCmdLine): Added support for -Wp.
269
270         * support/regression/tests/bug-478094.c: Added.
271
272         * src/z80/gen.c (commitPair): Fixed silly gbz80/z80 commit to static bug.
273
274 2001-11-04  Bernhard Held  <bernhard@bernhardheld.de>
275
276         * sdcc/sim/ucsim/s51.src/uc390cl.h: Improvement for ds390 to run regression tests
277
278         * sdcc/sim/ucsim/s51.src/uc390.h: Improvement for ds390 to run regression tests
279
280         * sdcc/sim/ucsim/s51.src/regs51.h: Improvement for ds390 to run regression tests
281
282         * sdcc/sim/ucsim/s51.src/glob.cc: Improvement for ds390 to run regression tests
283
284         * sdcc/support/regression/tests/bug-460010.c: Small change for ds390
285
286 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
287
288         * src/z80/peeph-gbz80.def: Removed a bad sub optimisation.
289
290 2001-11-03  Michael Hope  <michaelh@juju.net.nz>
291
292         * support/regression/tests/bug-477927.c: Added.
293
294         * src/z80/peeph.def: Added minor rules.
295
296         * src/z80/gen.c (genPlusIncr): Added an extra plusinc rule.
297
298         * src/z80/peeph.def: Added jump optimisation modification.
299
300 2001-11-01  Michael Hope  <michaelh@juju.net.nz>
301
302         * src/SDCCmain.c (linkEdit): Added runtime path detection to the mcs51 port.
303
304 2001-10-30  Michael Hope  <michaelh@juju.net.nz>
305
306         * support/regression/tests/funptrs.c: Added.
307
308 2001-10-29  Michael Hope  <michaelh@juju.net.nz>
309
310         * src/z80/ralloc.c (packRegsForHLUse): Fixed up bad spill due to pushing one byte via HL.
311
312 2001-10-28  Michael Hope  <michaelh@juju.net.nz>
313
314         * src/z80/gen.c (genArrayInit): Made it work for on stack arrays.
315
316         * src/z80/main.c (gbz80_port =): Added rle support to the gbz80 port.
317
318         * src/z80/gen.c (genMinus): Fixed for where the result is one byte.
319         (movLeft2ResultLong): Created.
320
321         * src/z80/ralloc.c (packRegsForHLUse): Added a couple of simple cases for the GB.
322         (joinPushes): Added.  Joins two char pushes into a word push.
323
324 2001-10-27  Michael Hope  <michaelh@juju.net.nz>
325
326         * support/cpp2/Makefile.in (install): Added creation of dest dir.
327
328         * support/makebin/Makefile (install): Added creation of dest dir.
329
330 2001-10-24 Karl Bongers <karl@turbobit.com>
331
332         * configure.in, configure, Makefile, support/cpp: Removed cpp folder, since we have new cpp2 preprocessor code.
333
334 2001-10-21  Michael Hope  <michaelh@juju.net.nz>
335
336         * src/z80/ralloc.c: Turned off faulty pack for one use.
337
338         * src/z80/peeph-gbz80.def: Removed redundent restart options.
339
340         * src/z80/gen.c (genMult): Added native mul for constants on the z80 and gbz80.
341
342 2001-10-21  Bernhard Held  <bernhard@bernhardheld.de>
343
344         * support/regression/Makefile: Improved clean
345
346         * support/regression/ports/gbz80/spec.mk: Added clean
347
348         * support/regression/ports/host/spec.mk: Added clean
349
350         * support/regression/ports/z80/spec.mk: Added clean
351
352         * support/regression/ports/mcs51/spec.mk: Added clean, little improvements
353
354         * support/regression/ports/mcs51/timeout.c: little improvements
355
356 2001-10-17  Michael Hope  <michaelh@juju.net.nz>
357
358         * device/lib/malloc.c (MEMHEADER): Fixed against new pedantic pointers.
359
360         * support/regression/fwk/include/testfwk.h: Fixed up to use function pts correctly.
361
362         * support/regression/generate-cases.py: Fixed up to use function pts correctly.
363
364 2001-10-16  Bernhard Held  <bernhard@bernhardheld.de>
365
366         * support/regression/port/mcs51/spec.mk: add timeout for uCsim
367
368         * support/regression/port/mcs51/timeout.c: add timeout for uCsim
369
370 2001-10-13  Michael Hope  <michaelh@juju.net.nz>
371         * src/z80/gen.c (emitCall): Fixed up missing spill of HL when used to assign the result value.
372
373         * src/z80/ralloc.c: Turned off pack for one use as it's quite broken.
374
375         * src/SDCCmain.c (linkEdit): Added support for passing a legacy command line through the processor.
376
377         * src/mcs51/main.c (_linkCmd): Added bin path to command.
378
379         * src/SDCCmain.c (initValues): Added support for when it it called just to link.
380
381         * as/mcs51/lklibr.c (libfil;): Turned off 'library file' message.
382
383         * src/SDCCval.c (constVal): Fixed usage of 'L' modifier problems on ppc.
384
385         * support/regression/tests/longor.c: Added.
386
387 2001-10-11  Bernhard Held  <bernhard@bernhardheld.de>
388
389         * as/mcs51/asdata.c: replaced FILENAME_MAX with PATH_MAX
390
391         * as/mcs51/aslink.h: define PATH_MAX
392
393         * as/mcs51/asm.h: define PATH_MAX
394
395         * as/mcs51/asmain.c: replaced FILENAME_MAX with PATH_MAX
396
397         * as/mcs51/asnoice.c: replaced FILENAME_MAX with PATH_MAX
398
399         * as/mcs51/lklex.c: replaced FILENAME_MAX with PATH_MAX
400
401         * as/mcs51/lkmain.c: replaced FILENAME_MAX with PATH_MAX
402
403         * src/SDCCglobl.h: define PATH_MAX
404
405         * src/SDCCmacro.c: replaced FILENAME_MAX with PATH_MAX
406
407         * src/SDCCmain.c: replaced FILENAME_MAX with PATH_MAX
408
409 2001-10-11  Michael Hope  <michaelh@juju.net.nz>
410
411         * src/z80/gen.c (gencjneshort): Fixed
412
413         * src/z80/ralloc.c (packRegsForHLUse): Added pack into HL for cast then ipush.
414
415 2001-10-09  Michael Hope  <michaelh@juju.net.nz>
416
417         * support/regression/tests/bug-469671.c: Added.
418
419         * src/z80/gen.c (shiftIntoPair): Fixed up warning.
420
421 2001-10-08  Michael Hope  <michaelh@juju.net.nz>
422
423         * src/SDCCmain.c: Added --fommit-frame-pointer option and implemented in the z80 port.
424
425         * src/z80/gen.c (genPlus): Fixed to work with extended stack.  Also fixed genMinus, genCmp.  genUMinus is still left.
426
427 2001-10-08  Bernhar Held  <bernhard@bernhardheld.de>
428
429         * src/SDCCmain.c (preProcess): added define SDCC_NOOVERLAY
430
431         * src/device/lib/_mulint.c  : removed hint: nooverlay bug
432
433         * src/device/lib/_mullong.c : removed hint: nooverlay bug
434
435         * src/device/lib/_divuint.c : removed hint: nooverlay bug
436
437         * src/device/lib/_divulong.c: removed hint: nooverlay bug
438
439         * src/device/lib/_moduint.c : removed hint: nooverlay bug
440
441         * src/device/lib/_modulong.c: removed hint: nooverlay bug
442
443 2001-10-07  Michael Hope  <michaelh@juju.net.nz>
444
445         * 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.
446
447         * support/Util/NewAlloc.c (freeTrace): Changed free for the gc case to not free at all.  Fixes runtime segfault.
448
449         * support/regression/tests/scott-compare3.c (c_abcd): Fixed up casts.
450
451 2001-10-07    <johan@FRIJA>
452
453         * device/lib/gets.c (gets): fixed the return value.
454
455 2001-10-06  Michael Hope  <michaelh@juju.net.nz>
456         * src/SDCCmain.c (WRITE_SEG_LOC): Fixed up to use Safe_strdup.
457
458         * 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.
459
460         * 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.
461
462         * src/z80/gen.c (genZ80Code): Added de-allocation via trace support.
463
464         * src/pic/gen.c: Removed Safe_strdup.
465
466         * configure.in: Added option to enable libgc support.
467
468         * src/SDCCbitv.c (bitVectnBitsOn): Optimised.
469         (bitVectUnion): Optimised.
470         (bitVectIntersect): Optimised.
471         (bitVectBitsInCommon): Optimised.
472         (bitVectCplAnd): Optimised.
473
474         * support/makebin/makebin.c (usage): Removed getopt as mingw32 doesn't have it.  Sigh.
475
476 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
477
478         * src/SDCCmain.c: distinguish between assembler debug and plain options
479
480         * src/avr/main.c:   remove standard assembler options
481
482         * src/ds390/main.c: remove standard assembler options
483
484         * src/mcs51/main.c: remove standard assembler options
485
486         * src/port.h: removed "PENDING" comment
487
488 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
489
490         * src/device/lib/_mulint.c  : new, with assember functions
491
492         * src/device/lib/_mullong.c : new, with assember functions
493
494         * src/device/lib/_divuint.c : with assember functions
495
496         * src/device/lib/_divsint.c : with assember functions
497
498         * src/device/lib/_divulong.c: with assember functions
499
500         * src/device/lib/_divslong.c: with assember functions
501
502         * src/device/lib/_moduint.c : with assember functions
503
504         * src/device/lib/_modsint.c : with assember functions
505
506         * src/device/lib/_modulong.c: with assember functions
507
508         * src/device/lib/_modslong.c: with assember functions
509
510         * src/device/lib/libint.lib:  replaced _muluint.c  and _mulsint.c  by _mulint.c
511
512         * src/device/lib/liblong.lib: replaced _mululong.c and _mulslong.c by _mullong.c
513
514         * src/device/lib/Makefile.in: replaced _muluint.c  and _mulsint.c  by _mulint.c
515                                       replaced _mululong.c and _mulslong.c by _mullong.c
516
517 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
518
519         * src/SDCCsymt.c: sequence of specifiers in pintTypeChain() corrected
520
521 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
522
523         * src/SDCCglue.c: test, if win32api is available for MINGW
524
525 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
526
527         * src/SDCCsymt.c: no more _modifier in printTypeChain()
528         * support/regression/tests/driverstruct.c: REENTRANT for mcs51
529         * support/regression/ports/gbz80/spec.mk: removed GENERIC
530         * support/regression/ports/host/spec.mk: removed GENERIC
531         * support/regression/ports/mcs51/spec.mk: removed GENERIC
532         * support/regression/ports/z80/spec.mk: removed GENERIC
533
534 2001-10-01  Michael Hope  <michaelh@juju.net.nz>
535
536         * support/regression/fwk/lib/testfwk.c (__printf): Removed GENERIC.
537
538         * support/regression/tests/bug-467035.c: Created.
539
540 2001-10-01    <johan@FRIJA>
541
542         * src/SDCC.y: fixed bug #466586 part 1
543
544 2001-10-01  Johan Knol <johan.knol@iduna.nl>
545
546         * SDCCicode.c: z80 has no generic pointers
547         * removed -s from strip in all Makefile(.in)'s. It is not needed, but Solaris chocks on it.
548         
549 2001-09-30  Michael Hope  <michaelh@juju.net.nz>
550
551         * sim/ucsim/cmd.src/Makefile.in ($(PRJDIR)/libcmd.a): Changed all ar references to $(AR) for Solaris.
552
553 2001-09-29  Michael Hope  <michaelh@juju.net.nz>
554
555         * Makefile (sdcc-libs): Added makebin to the list of standard targets.
556
557         * support/regression/ports/z80/spec.mk: Updated to use env for sdcc bin dir for automatic regression.
558
559 2001-09-25  Michael Hope  <michaelh@juju.net.nz>
560
561         * configure.in: Fixed up so that ucsim is only configured once.
562
563         * support/cpp2/configure.in: Fixed to use the program transform to append the .exe for the win32 build.
564
565         * src/SDCCutil.c (getPrefixFromBinPath): Fixed up to work with win32 in all of its glory.
566         (getPathDifference): As above.
567
568         * src/SDCCmain.c (preProcess): Changed to use a temporary file in a proper temp directory.  Fixed case where pre-processing only.
569
570         * src/SDCCglue.c (tempfilename): Added function for pre-processor.
571
572 2001-09-23  Michael Hope  <michaelh@juju.net.nz>
573         * .version: Updated to 2.3.1
574
575         * src/z80/main.c (z80_port =): Added macro based linker and assembler command line support.
576         Added copyright header.
577
578         * src/SDCCmain.c: Shifted various functions into SDCCutil.c
579         (assemble): Added support for macro based assembler commands.
580         (linkEdit): Added support for macro based linker commands.
581         (preProcess): Changed the pre-processor to use macros.
582         (_setPaths): Added functionality to autodetect the include, lib and bin dir paths.
583         (_discoverPaths): Added support for overriding the install directory using the SDCCDIR env variable.
584
585         * device/lib/z80/crt0.s: Added module name for debugging.
586
587 2001-09-20  Michael Hope  <michaelh@juju.net.nz>
588
589         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
590
591         * src/SDCChasht.c (hTabDeleteByKey): Fixed delete as it would delete the last item from a bucket even if it wasn't the real one.
592
593         * src/SDCCglue.c: Moved gc_strdup to SDCCutil.c
594
595         * src/Makefile.in: Added SDCCmacro and SDCCutil
596
597 2001-09-19  Michael Hope  <michaelh@juju.net.nz>
598
599         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
600
601 2001-09-16    <johan@FRIJA>
602
603         * 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.
604
605 2001-09-15    <johan@FRIJA>
606
607         * src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
608         * src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
609
610 2001-09-11    <johan@FRIJA>
611
612         * src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
613
614 2001-09-10  Michael Hope  <michaelh@juju.net.nz>
615
616         * support/regression/tests/bug-460444.c: Added test case.
617
618         * src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
619         (genCast): Added justification for all of the asserts.
620
621 2001-09-10  Bernhard Held <bernhard@bernhardheld.de>
622
623         * support/regression/support.c: _xdata replaced by xdata
624
625         * support/regression/spec.mk: removed _generic
626
627 2001-09-09  Michael Hope  <michaelh@juju.net.nz>
628
629         * src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
630
631         * src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
632         (genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
633
634         * src/z80/peeph.def: Added a rule to optimise shift then compare.
635
636         * support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
637
638         * support/regression/tests/bug-460010.c: Added test case.
639
640         * support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
641
642 2001-09-09  Bernhard Held <bernhard@bernhardheld.de>
643
644         * support/regression/Makefile: inter-port-clean adjusted for mcs51
645
646         * support/regression/testfwk.c: removed workaround for bug #436344
647
648         * support/regression/tests/bp.c: use less memory with mcs51
649
650         * support/regression/tests/bug-441448.c: use less memory
651
652         * support/regression/tests/ports/mcs51/spec.mk: cleanup, use --stack-after-data
653
654         * support/regression/collate-results.py: typo
655
656 2001-09-08  Michael Hope  <michaelh@juju.net.nz>
657
658         * support/regression/tests/fetchoverlap.c: Added new test case.
659
660         * support/regression/tests/bp.c: Added new test case.
661
662         * support/regression/tests/bug-448984.c: Added new test case.
663
664         * support/regression/tests/pow2shifts.c: Added new test case.
665
666         * src/z80/gen.c: Turned off the noise it normally generates for the release.
667         (genlshTwo): Fixed right shift for count > 8.
668
669         * src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
670
671 2001-09-08    <johan@FRIJA>
672
673         * src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
674
675 2001-09-07    <johan@FRIJA>
676
677         * src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
678
679         * src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
680
681 2001-09-06    <johan@FRIJA>
682
683         * src/SDCC.y: this could be a fix for bug #458744 (1.37)
684         * bernhard noted me at this: "() equals to (void)" (1.38)
685
686 2001-09-05    <johan@FRIJA>
687
688         * src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
689
690 2001-09-04    <johan@FRIJA>
691
692         * src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
693
694
695 2001-09-04  Paul Stoffregen  <paul@pjrc.com>
696
697         * pragma noinduction broke memcpy on mcs51 large model.  Moved it inside z80 optimization
698
699 2001-09-03  Michael Hope  <michaelh@juju.net.nz>
700
701         * link/z80/aslink.h: Fixed path for PATH_MAX
702
703 2001-09-02  Michael Hope  <michaelh@juju.net.nz>
704
705         * src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
706
707         * support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
708
709         * support/regression/tests/uminus.c: Added a test for the unary minus operator.
710
711         * 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.
712
713 2001-09-01  Michael Hope  <michaelh@juju.net.nz>
714
715         * src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
716         (genCmp): Fixed up genCmp for the GB with longs.
717
718         * device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
719
720         * support/regression/ports/host/spec.mk: Updated to compile with the new type specifiers.
721
722         * device/lib/Makefile.in (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
723
724         * device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
725
726 2001-08-30  Paul Stoffregen  <paul@pjrc.com>
727
728         * added peepholes 223 to 231 to mcs51 port.  These improve code when using large model.
729
730 2001-08-30  Michael Hope  <michaelh@juju.net.nz>
731
732         * 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.
733
734         * src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
735
736 2001-08-29  Michael Hope  <michaelh@juju.net.nz>
737
738         * link/z80/aslink.h: Fixed long file name support.  Is now based off PATH_MAX instead of a constant.
739
740         * src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
741
742 2001-08-30 Bernhard Held   <bernhard@bernhardheld.de>
743
744   * sim/ucsim/configure:    little improvement of Cygwin-detection      
745   * sim/ucsim/configure.in: little improvement of Cygwin-detection      
746   * sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
747   * support/regression/tests/bug-221100.c: small changes for mcs51
748   * support/regression/tests/bug-221168.c: small changes for mcs51
749   * support/regression/tests/bug-227710.c: small changes for mcs51
750   * support/regression/tests/staticinit.c: small changes for mcs51
751   * as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
752   * as/mcs51/lklex.c:  accept everything as symbol name in rel-files, bug fix ID 452601
753   * as/mcs51/lksym.c:  accept everything as symbol name in rel-files, bug fix ID 452601