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