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