* support/regression/fwk/include/testfwk.h: Fixed up to use function pts correctly.
[fw/sdcc] / ChangeLog
1 2001-10-16  Bernhard Held  <bernhard@bernhardheld.de>
2
3         * support/regression/port/mcs51/spec.mk: add timeout for uCsim
4
5         * support/regression/port/mcs51/timeout.c: add timeout for uCsim
6
7 2001-10-13  Michael Hope  <michaelh@juju.net.nz>
8
9         * src/SDCCmain.c (linkEdit): Added support for passing a legacy command line through the processor.
10
11         * src/mcs51/main.c (_linkCmd): Added bin path to command.
12
13         * src/SDCCmain.c (initValues): Added support for when it it called just to link.
14
15         * as/mcs51/lklibr.c (libfil;): Turned off 'library file' message.
16
17         * src/SDCCval.c (constVal): Fixed usage of 'L' modifier problems on ppc.
18
19         * support/regression/tests/longor.c: Added.
20
21 2001-10-11  Bernhard Held  <bernhard@bernhardheld.de>
22
23         * as/mcs51/asdata.c: replaced FILENAME_MAX with PATH_MAX
24
25         * as/mcs51/aslink.h: define PATH_MAX
26
27         * as/mcs51/asm.h: define PATH_MAX
28
29         * as/mcs51/asmain.c: replaced FILENAME_MAX with PATH_MAX
30
31         * as/mcs51/asnoice.c: replaced FILENAME_MAX with PATH_MAX
32
33         * as/mcs51/lklex.c: replaced FILENAME_MAX with PATH_MAX
34
35         * as/mcs51/lkmain.c: replaced FILENAME_MAX with PATH_MAX
36
37         * src/SDCCglobl.h: define PATH_MAX
38
39         * src/SDCCmacro.c: replaced FILENAME_MAX with PATH_MAX
40
41         * src/SDCCmain.c: replaced FILENAME_MAX with PATH_MAX
42
43 2001-10-11  Michael Hope  <michaelh@juju.net.nz>
44
45         * src/z80/gen.c (gencjneshort): Fixed
46
47         * src/z80/ralloc.c (packRegsForHLUse): Added pack into HL for cast then ipush.
48
49 2001-10-09  Michael Hope  <michaelh@juju.net.nz>
50
51         * support/regression/tests/bug-469671.c: Added.
52
53         * src/z80/gen.c (shiftIntoPair): Fixed up warning.
54
55 2001-10-08  Michael Hope  <michaelh@juju.net.nz>
56
57         * src/SDCCmain.c: Added --fommit-frame-pointer option and implemented in the z80 port.
58
59         * src/z80/gen.c (genPlus): Fixed to work with extended stack.  Also fixed genMinus, genCmp.  genUMinus is still left.
60
61 2001-10-08  Bernhar Held  <bernhard@bernhardheld.de>
62
63         * src/SDCCmain.c (preProcess): added define SDCC_NOOVERLAY
64
65         * src/device/lib/_mulint.c  : removed hint: nooverlay bug
66
67         * src/device/lib/_mullong.c : removed hint: nooverlay bug
68
69         * src/device/lib/_divuint.c : removed hint: nooverlay bug
70
71         * src/device/lib/_divulong.c: removed hint: nooverlay bug
72
73         * src/device/lib/_moduint.c : removed hint: nooverlay bug
74
75         * src/device/lib/_modulong.c: removed hint: nooverlay bug
76
77 2001-10-07  Michael Hope  <michaelh@juju.net.nz>
78
79         * 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.
80
81         * support/Util/NewAlloc.c (freeTrace): Changed free for the gc case to not free at all.  Fixes runtime segfault.
82
83         * support/regression/tests/scott-compare3.c (c_abcd): Fixed up casts.
84
85 2001-10-07    <johan@FRIJA>
86
87         * device/lib/gets.c (gets): fixed the return value.
88
89 2001-10-06  Michael Hope  <michaelh@juju.net.nz>
90         * src/SDCCmain.c (WRITE_SEG_LOC): Fixed up to use Safe_strdup.
91
92         * 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.
93
94         * 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.
95
96         * src/z80/gen.c (genZ80Code): Added de-allocation via trace support.
97
98         * src/pic/gen.c: Removed Safe_strdup.
99
100         * configure.in: Added option to enable libgc support.
101
102         * src/SDCCbitv.c (bitVectnBitsOn): Optimised.
103         (bitVectUnion): Optimised.
104         (bitVectIntersect): Optimised.
105         (bitVectBitsInCommon): Optimised.
106         (bitVectCplAnd): Optimised.
107
108         * support/makebin/makebin.c (usage): Removed getopt as mingw32 doesn't have it.  Sigh.
109
110 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
111
112         * src/SDCCmain.c: distinguish between assembler debug and plain options
113
114         * src/avr/main.c:   remove standard assembler options
115
116         * src/ds390/main.c: remove standard assembler options
117
118         * src/mcs51/main.c: remove standard assembler options
119
120         * src/port.h: removed "PENDING" comment
121
122 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
123
124         * src/device/lib/_mulint.c  : new, with assember functions
125
126         * src/device/lib/_mullong.c : new, with assember functions
127
128         * src/device/lib/_divuint.c : with assember functions
129
130         * src/device/lib/_divsint.c : with assember functions
131
132         * src/device/lib/_divulong.c: with assember functions
133
134         * src/device/lib/_divslong.c: with assember functions
135
136         * src/device/lib/_moduint.c : with assember functions
137
138         * src/device/lib/_modsint.c : with assember functions
139
140         * src/device/lib/_modulong.c: with assember functions
141
142         * src/device/lib/_modslong.c: with assember functions
143
144         * src/device/lib/libint.lib:  replaced _muluint.c  and _mulsint.c  by _mulint.c
145
146         * src/device/lib/liblong.lib: replaced _mululong.c and _mulslong.c by _mullong.c
147
148         * src/device/lib/Makefile.in: replaced _muluint.c  and _mulsint.c  by _mulint.c
149                                       replaced _mululong.c and _mulslong.c by _mullong.c
150
151 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
152
153         * src/SDCCsymt.c: sequence of specifiers in pintTypeChain() corrected
154
155 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
156
157         * src/SDCCglue.c: test, if win32api is available for MINGW
158
159 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
160
161         * src/SDCCsymt.c: no more _modifier in printTypeChain()
162         * support/regression/tests/driverstruct.c: REENTRANT for mcs51
163         * support/regression/ports/gbz80/spec.mk: removed GENERIC
164         * support/regression/ports/host/spec.mk: removed GENERIC
165         * support/regression/ports/mcs51/spec.mk: removed GENERIC
166         * support/regression/ports/z80/spec.mk: removed GENERIC
167
168 2001-10-01  Michael Hope  <michaelh@juju.net.nz>
169
170         * support/regression/fwk/lib/testfwk.c (__printf): Removed GENERIC.
171
172         * support/regression/tests/bug-467035.c: Created.
173
174 2001-10-01    <johan@FRIJA>
175
176         * src/SDCC.y: fixed bug #466586 part 1
177
178 2001-10-01  Johan Knol <johan.knol@iduna.nl>
179
180         * SDCCicode.c: z80 has no generic pointers
181         * removed -s from strip in all Makefile(.in)'s. It is not needed, but Solaris chocks on it.
182         
183 2001-09-30  Michael Hope  <michaelh@juju.net.nz>
184
185         * sim/ucsim/cmd.src/Makefile.in ($(PRJDIR)/libcmd.a): Changed all ar references to $(AR) for Solaris.
186
187 2001-09-29  Michael Hope  <michaelh@juju.net.nz>
188
189         * Makefile (sdcc-libs): Added makebin to the list of standard targets.
190
191         * support/regression/ports/z80/spec.mk: Updated to use env for sdcc bin dir for automatic regression.
192
193 2001-09-25  Michael Hope  <michaelh@juju.net.nz>
194
195         * configure.in: Fixed up so that ucsim is only configured once.
196
197         * support/cpp2/configure.in: Fixed to use the program transform to append the .exe for the win32 build.
198
199         * src/SDCCutil.c (getPrefixFromBinPath): Fixed up to work with win32 in all of its glory.
200         (getPathDifference): As above.
201
202         * src/SDCCmain.c (preProcess): Changed to use a temporary file in a proper temp directory.  Fixed case where pre-processing only.
203
204         * src/SDCCglue.c (tempfilename): Added function for pre-processor.
205
206 2001-09-23  Michael Hope  <michaelh@juju.net.nz>
207         * .version: Updated to 2.3.1
208
209         * src/z80/main.c (z80_port =): Added macro based linker and assembler command line support.
210         Added copyright header.
211
212         * src/SDCCmain.c: Shifted various functions into SDCCutil.c
213         (assemble): Added support for macro based assembler commands.
214         (linkEdit): Added support for macro based linker commands.
215         (preProcess): Changed the pre-processor to use macros.
216         (_setPaths): Added functionality to autodetect the include, lib and bin dir paths.
217         (_discoverPaths): Added support for overriding the install directory using the SDCCDIR env variable.
218
219         * device/lib/z80/crt0.s: Added module name for debugging.
220
221 2001-09-20  Michael Hope  <michaelh@juju.net.nz>
222
223         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
224
225         * src/SDCChasht.c (hTabDeleteByKey): Fixed delete as it would delete the last item from a bucket even if it wasn't the real one.
226
227         * src/SDCCglue.c: Moved gc_strdup to SDCCutil.c
228
229         * src/Makefile.in: Added SDCCmacro and SDCCutil
230
231 2001-09-19  Michael Hope  <michaelh@juju.net.nz>
232
233         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
234
235 2001-09-16    <johan@FRIJA>
236
237         * 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.
238
239 2001-09-15    <johan@FRIJA>
240
241         * src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
242         * src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
243
244 2001-09-11    <johan@FRIJA>
245
246         * src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
247
248 2001-09-10  Michael Hope  <michaelh@juju.net.nz>
249
250         * support/regression/tests/bug-460444.c: Added test case.
251
252         * src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
253         (genCast): Added justification for all of the asserts.
254
255 2001-09-10  Bernhard Held <bernhard@bernhardheld.de>
256
257         * support/regression/support.c: _xdata replaced by xdata
258
259         * support/regression/spec.mk: removed _generic
260
261 2001-09-09  Michael Hope  <michaelh@juju.net.nz>
262
263         * src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
264
265         * src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
266         (genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
267
268         * src/z80/peeph.def: Added a rule to optimise shift then compare.
269
270         * support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
271
272         * support/regression/tests/bug-460010.c: Added test case.
273
274         * support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
275
276 2001-09-09  Bernhard Held <bernhard@bernhardheld.de>
277
278         * support/regression/Makefile: inter-port-clean adjusted for mcs51
279
280         * support/regression/testfwk.c: removed workaround for bug #436344
281
282         * support/regression/tests/bp.c: use less memory with mcs51
283
284         * support/regression/tests/bug-441448.c: use less memory
285
286         * support/regression/tests/ports/mcs51/spec.mk: cleanup, use --stack-after-data
287
288         * support/regression/collate-results.py: typo
289
290 2001-09-08  Michael Hope  <michaelh@juju.net.nz>
291
292         * support/regression/tests/fetchoverlap.c: Added new test case.
293
294         * support/regression/tests/bp.c: Added new test case.
295
296         * support/regression/tests/bug-448984.c: Added new test case.
297
298         * support/regression/tests/pow2shifts.c: Added new test case.
299
300         * src/z80/gen.c: Turned off the noise it normally generates for the release.
301         (genlshTwo): Fixed right shift for count > 8.
302
303         * src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
304
305 2001-09-08    <johan@FRIJA>
306
307         * src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
308
309 2001-09-07    <johan@FRIJA>
310
311         * src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
312
313         * src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
314
315 2001-09-06    <johan@FRIJA>
316
317         * src/SDCC.y: this could be a fix for bug #458744 (1.37)
318         * bernhard noted me at this: "() equals to (void)" (1.38)
319
320 2001-09-05    <johan@FRIJA>
321
322         * src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
323
324 2001-09-04    <johan@FRIJA>
325
326         * src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
327
328
329 2001-09-04  Paul Stoffregen  <paul@pjrc.com>
330
331         * pragma noinduction broke memcpy on mcs51 large model.  Moved it inside z80 optimization
332
333 2001-09-03  Michael Hope  <michaelh@juju.net.nz>
334
335         * link/z80/aslink.h: Fixed path for PATH_MAX
336
337 2001-09-02  Michael Hope  <michaelh@juju.net.nz>
338
339         * src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
340
341         * support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
342
343         * support/regression/tests/uminus.c: Added a test for the unary minus operator.
344
345         * 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.
346
347 2001-09-01  Michael Hope  <michaelh@juju.net.nz>
348
349         * src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
350         (genCmp): Fixed up genCmp for the GB with longs.
351
352         * device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
353
354         * support/regression/ports/host/spec.mk: Updated to compile with the new type specifiers.
355
356         * device/lib/Makefile.in (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
357
358         * device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
359
360 2001-08-30  Paul Stoffregen  <paul@pjrc.com>
361
362         * added peepholes 223 to 231 to mcs51 port.  These improve code when using large model.
363
364 2001-08-30  Michael Hope  <michaelh@juju.net.nz>
365
366         * 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.
367
368         * src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
369
370 2001-08-29  Michael Hope  <michaelh@juju.net.nz>
371
372         * link/z80/aslink.h: Fixed long file name support.  Is now based off PATH_MAX instead of a constant.
373
374         * src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
375
376 2001-08-30 Bernhard Held   <bernhard@bernhardheld.de>
377
378   * sim/ucsim/configure:    little improvement of Cygwin-detection      
379   * sim/ucsim/configure.in: little improvement of Cygwin-detection      
380   * sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
381   * support/regression/tests/bug-221100.c: small changes for mcs51
382   * support/regression/tests/bug-221168.c: small changes for mcs51
383   * support/regression/tests/bug-227710.c: small changes for mcs51
384   * support/regression/tests/staticinit.c: small changes for mcs51
385   * as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
386   * as/mcs51/lklex.c:  accept everything as symbol name in rel-files, bug fix ID 452601
387   * as/mcs51/lksym.c:  accept everything as symbol name in rel-files, bug fix ID 452601