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