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