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