EXEEXT introduces to solve Cygwin problems
[fw/sdcc] / ChangeLog
1 2003-04-24  Bernhard Held <bernhard@bernhardheld.de>
2
3         Cygwin's gcc always appends .exe: 'gcc -o a a.c' creates a.exe;
4         EXEEXT was introduced to fix all related problems with targets
5         "clean", "install" and "uninstall"; a couple of further flaws
6         especially with "clean" have been fixed too
7         * as/mcs51/Makefile.in
8         * as/mcs51/clean.mk
9         * as/z80/Makefile
10         * Makefile
11         * clean.mk
12         * debugger/mcs51/Makefile.in
13         * debugger/mcs51/clean.mk
14         * link/z80/Makefile
15         * link/z80/Makefile.in
16         * link/z80/clean.mk
17         * link/Makefile
18         * packihx/Makefile.in
19         * packihx/clean.mk
20         * sim/ucsim/Makefile
21         * sim/ucsim/clean.mk
22         * sim/ucsim/avr.src/Makefile.in
23         * sim/ucsim/avr.src/clean.mk
24         * sim/ucsim/s51.src/Makefile.in
25         * sim/ucsim/s51.src/clean.mk
26         * sim/ucsim/xa.src/Makefile.in
27         * sim/ucsim/xa.src/clean.mk
28         * sim/ucsim/z80.src/Makefile.in
29         * sim/ucsim/z80.src/clean.mk
30         * sim/ucsim/main_in.mk
31         * sim/ucsim/packages_in.mk
32         * sim/ucsim/gui.src/Makefile.in
33         * sim/ucsim/gui.src/serio.src/Makefile.in
34         * sim/ucsim/gui.src/serio.src/clean.mk
35         * src/Makefile.in
36         * src/clean.mk
37         * support/cpp2/Makefile.in
38         * support/cpp2/clean.mk
39         * support/makebin/Makefile
40         * support/makebin/clean.mk
41         * support/scripts/sdcc_mingw32: --program-suffix no longer needed
42         * doc/sdccman.lyx: --program-suffix no longer needed
43
44 2003-04-23  Karl Bongers(apply patches for Martin Helmling)
45
46          * debugger/mcs51/sdcdb.c,simi.c,cmd.c,..
47          Martin Helmling added support for ddd GUI debugger.
48          Code added to display assembly, set variables, and other commands
49          to interface to ddd.
50
51 2003-04-23  Bernhard Held <bernhard@bernhardheld.de>
52
53         * as/Makefile: fix target clean
54         * as/clean.mk: fix target clean
55         * as/z80/clean.mk: fix target clean
56
57 2003-04-22  Bernhard Held <bernhard@bernhardheld.de>
58
59         * Makefile.common.in: added @EXEEXT@
60         * configure.in: removed all mingw32 stuff
61         * configure: rebuilt from configure.in
62         * doc/sdccman.lyx: updated section "installation"
63         * support/scripts/sdcc_mingw32: adapted to configure
64         * support/scripts/sdcc_cygwin_mingw32: added
65
66 2003-04-22  Scott Dattalo  <scott@dattalo.com>
67
68         * src/pic Added object file support for the PIC port
69         * src/pic Applied patch from Craig Franklin (this started the object file support)
70         * src/regression Updated the PIC regression tests for object files
71
72 2003-04-20  Borut Razem <borut.razem@siol.net>
73
74         * sdcc/as/mcs51/lklex.c: make getfid() more robust and fixed gcc warning:
75           lklex.c: In function `getfid':
76           lklex.c:203: warning: array subscript has type `char'
77         * src/SDCCglobl.h: small change in stack handling macros, to avoid crash when compiled
78           with MSVC with global optimization enabled (probably an cl compiler bug ;-)
79         * support/Util/SDCCerr.c, support/Util/SDCCerr.h: added function fatal(), called from
80           stack handling macros
81
82 2003-04-19  Borut Razem <borut.razem@siol.net>
83
84         * "handling space characters in file path" task:
85         * src/SDCCmacro.c: fixed bug in handlig quote at the end of line
86         * support/Util/BuildCmd.c: define par as NULL if parameter value is invalid
87         * support/Util/MySystem.h: make it self-sufficient
88         * src/avr/main.c, src/ds390/main.c, src/mcs51/main.c, src/pic/main.c, src/xa51/main.c,
89           src/z80/main.c, sdcc/as/mcs51/lklex.c:
90           handling space characters in file path
91         * src/SDCCmain.c: introduced setDataPaths() function, {datadir} macro
92           (it will be used by assemblers, which have their own includes, e.g. gpasm)
93         * support/Util/MySystem.c: handling space characters in executable's path
94
95 2003-04-19  Bernhard Held <bernhard@bernhardheld.de>
96
97         * as/z80/Makefile: fix permanent rebuild of z80
98         * sim/ucsim/gui.src/Makefile.in: target "install" builds the same packages as target "all"
99         * support/regression/tests/bitfields.c: added Johan's bitfields.c
100
101 2003-04-18      Kevin Vigor <kevin@vigor.nu>
102
103         * src/SDCCopt.c: add special case optimization to replace modulo by
104           a power of two with a bitwise AND.
105
106 2003-04-18    <johan@balder>
107
108         * src/mcs51/gen.c (getFreePtr): fixed bug #635354
109
110 2003-04-17    <johan@balder>
111
112         * src/mcs51/ralloc.c (packRegsForAssign): fixed bug #716790 and removes lot's of redundant register usage around function calls
113         * src/mcs51/ralloc.c (packRegisters): fixed bug #720667
114
115 2003-04-13  Borut Razem <borut.razem@siol.net>
116
117         * doc/sdccman.lyx: updated info about #pragma SAVE/RESTORE nesting
118         * configure.in, configure: fixed problems on cygwin/WinCVS environmet with ports.* line endings;
119           fixed mingw problem in adl_NORMALIZE_PATH
120
121 2003-04-12  Borut Razem <borut.razem@siol.net>
122
123         * fixed "#pragma SAVE/RESTORE can not be nested":
124         * src/SDCC.lex: reworked pragma handling functions
125         * sdcc/src/SDCCglobl.h: reworked stack handling macros
126         * support/Util/SDCCerr.c, support/Util/SDCCerr.h: added E_STACK_VIOLATION error
127
128 2003-04-12  Bernhard Held <bernhard@bernhardheld.de>
129
130         * src/SDCCutil.c (pathEquivalent): defined but not used
131         * debugger/mcs51/sdcdb.c: replace SDCC_LIB_DIR
132         * configure.in: remove sdcc_datadir, sdcc_lib_dir and sdcc_include_dir
133         * configure: rebuilt from configure.in
134         * sdccconf_in.h: remove SDCC_LIB_DIR and SDCC_INCLUDE_DIR
135         * sdcc_vc_in.h: remove SDCC_LIB_DIR and SDCC_INCLUDE_DIR
136         * device/include/Makefile.in: replace sdcc_datadir
137         * device/lib/Makefile.in: replace sdcc_datadir
138         * Makefile.common.in: add LDFLAGS from configure
139         * packihx/Makefile.in: use LDFLAGS
140         * src/Makefile.in: use LDFLAGS
141         * support/cpp2/Makefile.in: add LDFLAGS from configure
142         * support/makebin/Makefile: use LDFLAGS
143         * .version: bumped version number to 2.3.5
144
145 2003-04-12  Borut Razem <borut.razem@siol.net>
146
147         * completed "different paths" task:
148         * src/SDCCmacro.c: fixed bug in handling quotes
149         * src/SDCCutil.c, src/SDCCutil.c: rewritten getPrefixFromBinPath()
150         * src/SDCCmain.c: _discoverPaths() replaced with setBinPaths(), setIncludePath() and setLibPath()
151
152 2003-04-12  Bernhard Held <bernhard@bernhardheld.de>
153
154         * src/pic/pcoderegs.c (Remove1pcode): fix warning on alpha
155
156 2003-04-11 kevin Vigor <kevin@vigor.nu>
157
158         * ds390/gen.c ds390/peeph.def: fix bug 706781
159
160 2003-04-11  Borut Razem <borut.razem@siol.net>
161
162         * support/Util/dbuf.c, support/Util/dbuf.h: update to version 1.1.1 - re-added C++ stuff to make it still more portable
163
164 2003-04-10  Scott Dattalo  <scott@dattalo.com>
165
166         * src/pic/* Applied the pointer-to-function patch from Steve Tell.
167         * src/pic/* Fixed several pointer bugs. (PIC port broke when the ruonly bit was
168          set - this bit used to not be set...).
169         * src/pic/gen.c Fixed buf 609268 ==> x = (x+1) & 0xf; generated 
170           bad code in PIC Port
171         * src/regression/and2.c added to test bug 609268
172         * src/regression/Makefile added and2.c to regression test
173
174
175 2003-04-08    <johan@CP255758-A>
176
177         * src/mcs51/gen.c (gen51Code): display reg usage in --icode-in-asm
178         * src/mcs51/ralloc.c (serialRegAssign): update the registers in use and save some slocs
179         * src/SDCCicode.h: added riu to show the register usage in --icode-in-asm
180
181 2003-04-07  Bernhard Held <bernhard@bernhardheld.de>
182
183         * configure.in: fully support prefix, exec_prefix, datadir, docdir;
184         fix bug #487815
185         * support/cpp2/Makefile.in: fix bug #487815
186         * configure: rebuilt from configure.in
187         * Makefile.common.in: docdir changed, new path suffixes
188         * sdccconf_in.h: new RETSIGTYPE, and other PATHs
189         * sdcc_vc_in.h: reflect changes from sdccconf.h
190         * src/SDCCglobl.h: remove *SEPARATOR_CHARS, they are now in sdccconf.h
191         * src/SDCCutil.h: remove BINDIR hack
192         * doc/sdccman.lyx: update new path hierarchy
193
194 2003-04-06    Paul Stoffregen <paul@pjrc.com>
195
196         * src/SDCCpeeph.c: added okToRemoveSLOC test
197
198 2003-04-06    Paul Stoffregen <paul@pjrc.com>
199
200         * device/lib/printf_fast.c: added leading zero format ("%06d", etc)
201
202 2003-04-06    Paul Stoffregen <paul@pjrc.com>
203
204         * src/SDCCpeeph.c: added labelIsReturnOnly test
205         * src/mcs51/peeph.def: Peephole 244: replace ljmp to ret with ret
206
207 2003-04-05    <johan@balder>
208
209         * src/SDCCcse.c (cseAllBlocks): fixed bug #460088
210         * src/SDCCloop.c (DEFSETFUNC): fixed bug #460088
211         * src/SDCCopt.c (eBBlockFromiCode): fixed bug #460088
212         * src/SDCCast.c: fixed a warning
213         * src/SDCCast.h: fixed a warning
214         * src/SDCCicode.c (operandFromAst): fixed a warning
215
216 2003-04-04    <johan@balder>
217
218         * src/SDCCloop.c (DEFSETFUNC): undid the fix for bug #519584
219         * src/SDCCast.c (decorateType): fixed bug #715076
220         * src/SDCC.y: fixed bug #702907
221
222 2003-04-03    <johan@balder>
223
224         * device/lib/_mulint.c (_muluint): new #pragma LESS_PEDANTIC
225         * src/SDCCopt.c (eBBlockFromiCode): new #pragma LESS_PEDANTIC
226         * src/SDCCglobl.h (PRAGMA_LESSPEDANTIC): new #pragma LESS_PEDANTIC
227         * src/SDCC.lex (doPragma): new #pragma LESS_PEDANTIC
228         * src/SDCCmain.c (parseCmdLine): new #pragma LESS_PEDANTIC
229
230 2003-04-03  Bernhard Held <bernhard@bernhardheld.de>
231
232         * _decdptr.c: fix return values
233         * _gptrget.c: fix return values
234         * _gptrgetc.c: fix return values
235         * _gptrput.c: fix return values
236         * _mulint.c: fix return values
237         * as/z80/Makefile: fix 'make -j' problem
238
239 2003-04-02  Bernhard Held <bernhard@bernhardheld.de>
240
241         * Makefile.common.in: unused PORT, SCC and SAS removed, fixed docdir
242         * configure.in: big cleanup, updated to autoconf 2.5x
243         * configure: rebuilt from configure.in
244         * sdccconf_in.h: new RETSIGTYPE, and other PATHs
245         * sdcc_vc_in.h: reflect changes from sdccconf.h
246         * doc/Makefile: fixed a flaw in "make install"
247
248 2003-04-02    <johan@balder>
249
250         * src/ds390/gen.c (genCmp): no comments
251         * src/mcs51/gen.c (genCmp): no comments
252         * src/SDCCopt.c (eBBlockFromiCode): detect missing return values
253         * src/SDCCast.c (ast_print): fixed the function type in --dumptree
254
255 2003-04-01  Bernhard Held <bernhard@bernhardheld.de>
256
257         * support/regression/generate-cases.py: place generated file in given sub directory
258         * support/regression/ports/host/spec.mk: prevent removal of testfwk.o
259         * support/regression/Makefile: improvements for 'make -j';
260         side effect: it's simpler and faster now
261
262 2003-03-31  Borut Razem <borut.razem@siol.net>
263
264         * src/z80/main.c: link-{port} and as-{port} defined without path
265         * src/src.dsp: support/Util/MySystem.h and src/SDCCutil.h added to project
266
267 2003-03-31  Bernhard Held <bernhard@bernhardheld.de>
268
269         * Makefile, src/Makefile.in: add dependencies, so that 'make -j' works
270
271 2003-03-30  Borut Razem <borut.razem@siol.net>
272
273         * support/Util/BuildCmd.c, support/Util/BuildCmd.h: rewrite buildCmdLine(),
274           changed type of list parameter to set
275         * src/ds390/main.c: changed type of parameter asmOptions to set in _tininative_do_assemble()
276         * src/port.h: changed type of do_assemble() parameter to set
277         * src/SDCCmain.c: type of asmOptions changed to set, introduced setParseWithComma(),
278           sdcpp defined without path, removed variable VersionString, introduced set binPathSet,
279           definition of "cppoutfilename" macro with NULL value in preProcess()
280         * src/SDCCglobl.h: included "SDCCset.h", added declaration of setParseWithComma()
281         * src/SDCCglue.c: removed variable VersionString, inroduced spacesToUnderscores()
282         * support/Util/MySystem.c, support/Util/MySystem.h: rewrite, char *ExePathList[]
283           replaced with set *binPathSet
284         * shash_add() deallocates the item, if allready exsists, before adding the new one
285         * src/SDCCmacro.c: handling macros with empty or NULL values in _evalMacros()
286
287 2003-03-30  Scott Dattalo  <scott@dattalo.com>
288
289         * src/pic/gen.c: Commit patch from Steve Tell <tell@telltronics.org> that fixes
290           a nested for loop bug in the PIC port
291         * src/regression/nestfor.c: new regression test file Steve wrote to test nested
292           for loops
293
294 2003-03-29  Bernhard Held <bernhard@bernhardheld.de>
295
296         * support/Util/dbuf.h: remove C++ stuff to make it portable
297
298 2003-03-28  Borut Razem <borut.razem@siol.net>
299
300         * src/SDCC.lex: Fix for bug #711240: dynamic buffer handling of C
301           literal strings in stringLiteral()
302         * support/Util/dbuf.c, support/Util/dbuf.h: added: dynamic buffer handling
303         * src/Makefile.bcc, src/Makefile.in, src\src.dsp: added support/Util/dbuf.c
304           to the project
305
306 2003-03-27  Paul Stoffregen <paul@pjrc.com>
307
308         * src/SDCCpeeph.c (pcDistance): accurate byte distance for mcs51
309
310 2003-03-26    <johan@balder>
311
312         * src/mcs51/gen.c (saveRegisters): catched symbol abuse
313         * src/ds390/gen.c (saveRegisters): catched symbol abuse
314         * src/SDCCast.c (decorateType): fixed " -v < 3"
315
316 2003-03-23  Bernhard Held <bernhard@bernhardheld.de>
317
318         * doc/cdbfile.html: removed, replaced by cdbfileformat.lyx
319         Added Lenny Story's debug infrastructure changes:
320         * src/Makefile.in:  added new files cdbFile.c and SDCCdebug.c
321         * src/Makefile.bcc: added new files cdbFile.c and SDCCdebug.c
322         * src/cdbFile.c: added
323         * src/SDCCdebug.c: added
324         * src/SDCCdebug.h: added
325         * src/SDCCast.c (createFunction)
326         * src/SDCCglue.c (emitRegularMap, emitStaticSeg, emitOverlay, glue)
327         * src/SDCCmain.c (parseCmdLine, main)
328         * src/SDCCmem.c (redoStackOffsets)
329         * src/SDCCsymt.c (cdbStructBlock, cdbTypeInfo, cdbSymbol, cdbStruct, cdbStructBlock)
330         * src/SDCCsymt.h
331         * src/common.h
332         * src/avr/gen.c (genAVRCode)
333         * src/ds390/gen.c (gen390Code)
334         * src/mcs51/gen.c (gen51Code) 
335         * src/pic/gen.c (genpic14Code)
336         * src/pic/glue.c (pic14emitRegularMap, pic14emitStaticSeg, pic14emitOverlay, picglue)
337         * src/xa51/gen.c (genXA51Code)
338         * src/SDCCast.c: fixed "void foo(void){char c; -c < 0;}"
339
340 2003-03-22  Frieder Ferlemann <Frieder.Ferlemann@web.de>
341
342         * src/mcs51/gen.c (genCodePointerGet): quicker code for bug #700797
343         * src/mcs51/peeph.def: added rules 177, 241.x to 243, touched 181, 182.x, 193.x
344
345 2003-03-22    <johan@balder>
346
347         * src/SDCCicode.c (geniCodeDerefPtr): fixed bug #698231
348
349 2003-03-21  Bernhard Held <bernhard@bernhardheld.de>
350
351         * support/scripts/sdcc_mingw32: adapted to configure from autoconf 2.54
352         * doc/cdbfileformat.lyx: added, written by Lenny Story
353         * doc/Makefile: added cdbfileformat.lyx
354         * doc/clean.mk: added cdbfileformat.lyx
355
356 2003-03-20  Bernhard Held <bernhard@bernhardheld.de>
357
358         * src/mcs51/peeph.def: fix bug #705773
359
360 2003-03-20    <johan@balder>
361
362         An sfr/sbit can have an "at #" AND an initializer
363         * src/SDCCsymt.c (checkSClass): 
364         * src/SDCCmem.c (allocGlobal): 
365         * src/SDCCmem.c (allocLocal): 
366         * src/SDCCast.c (createBlock): 
367
368 2003-03-17  Bernhard Held <bernhard@bernhardheld.de>
369
370         * src/ds390/peeph.def: fix bug #704878: added rule 213.b suggested by Jan Rejlek
371
372 2003-03-16    <johan@balder>
373
374         Undid the hackup of const and volatile, the problem is much bigger
375         * src/SDCC.y:1.65
376         * src/SDCCast.c:1.171
377         * src/SDCCglue.c:1.138
378         * src/SDCCicode.c:1.146
379         * src/SDCCsymt.c:1.150
380         * src/SDCCval.c:1.65
381
382 2003-03-15  Bernhard Held <bernhard@bernhardheld.de>
383
384         * src/mcs51/ralloc.c (packRegsForAssign): fixed bug #703541
385         * src/ds390/gen.c (genAddrOf): fixed bug #704087
386
387 2003-03-13    <johan@balder>
388
389         Hackup const and volatile modifiers in type chains a bit:
390         * src/SDCC.y:1.63
391         * src/SDCCast.c:1.169
392         * src/SDCCglue.c:1.136
393         * src/SDCCicode.c:1.143
394         * src/SDCCsymt.c1.146
395         * src/SDCCsymt.h1.59
396         * src/SDCCval.c:1.63
397
398 2003-03-12    <johan@balder>
399
400         * src/SDCCBBlock.h: more LRH debugging junk
401         * src/SDCCcflow.h: more LRH debugging junk
402         * src/SDCCloop.c: more LRH debugging junk
403         * src/SDCC.y (struct_declaration): fixed bug #697590
404         * src/SDCCsymt.[hc] (cloneSpec): NEVER EVER use this again
405         * src/ds390/gen.c (aopForRemat): fixed bug #700031
406         * src/SDCCglue.c (emitStaticSeg): fixed bug #700797
407
408 2003-03-11 Kevin Vigor <kevin@vigor.nu>
409         * src/SDCCpeeph.c: quit being lazy and made proper fix (peephole
410         test function names must now match exactly).
411         * src/SDCCcse.c: added special case in findCheaperOp to allow
412         extending a short integer. Makes less awful code for bug 700121 test case.
413
414 2003-03-11  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
415
416         * as/mcs51/lkmain.c: Added ASlink-Warning to messages 
417         * as/mcs51/lkaomf51.c: Fixed bug when linking asmblink example
418
419 2003-03-11 Kevin Vigor <kevin@vigor.nu>
420
421         * src/SDCCpeeph.c: fix so that operandsNotEqualX functions are
422         actually called (operandsNotEqual() was called for all 
423         operandsNotEqualX tests).
424
425 2003-03-11 Kevin Vigor <kevin@vigor.nu>
426
427         * src/SDCCcse.c: fix findCheaperOp to prevent replacing int types
428         with shorter literals. Fixes bug 700121.
429
430 2003-03-11    <johan@balder>
431
432         * src/SDCCsymt.c (compareType): a (void *) can be assigned to any pointer
433
434 2003-03-11  Bernhard Held <bernhard@bernhardheld.de>
435
436         * src/SDCCloop.c (mergeRegions): an evil beast is dead
437         * src/SDCCmain.c (preProcess): minor cleanup: eliminate preOutName
438
439 2003-03-10  Borut Razem <borut.razem@siol.net>
440
441         * src/SDCCmain.c: pipe preprocessor's output
442         * support/Util/MySystem.c, support/Util/MySystem.h: added my_popen()
443         * sdcc_vc_in.h: define pclose as _pclose for WIN32
444         * src/SDCCglue.c, src/SDCCglue.h: added set pipeSet, added function closePipes,
445         which closes all pipes in pipeSet set
446         * src/SDCCset.c: free deleted item in function deleteSetItem()
447         * src/src.dsp, src/z80/z80.dsp: files support/Util/BuildCmd.c and support/Util/MySystem.c
448         moved from z80 to src subproject
449         * .version: increased version number to 2.3.4
450
451 2003-03-10  Bernhard Held <bernhard@bernhardheld.de>
452
453         * support/regression/ports/mcs51/spec.mk: increase timeout for CF's sparc to 30s
454         * support/regression/ports/ds390/spec.mk: increase timeout for CF's sparc to 25s
455         * support/regression/ports/xa51/spec.mk: fix typo
456
457 2003-03-09  Bernhard Held <bernhard@bernhardheld.de>
458
459         * src/SDCCglobl.h: PATH_MAX is already defined in mingw32 headers
460
461 2003-03-09  Borut Razem <borut.razem@siol.net>
462
463         * src/SDCCmain.c: pipe preprocessor's output
464         * support/Util/MySystem.c, support/Util/MySystem.h: added my_popen()
465         * sdcc_vc_in.h: define pclose as _pclose for WIN32
466         * src/SDCCglue.c, src/SDCCglue.h: added set pipeSet, added function closePipes,
467         which closes all pipes in pipeSet set
468         * src/SDCCset.c: free deleted item in function deleteSetItem()
469         * src/src.dsp, src/z80/z80.dsp: files support/Util/BuildCmd.c and support/Util/MySystem.c
470         moved from z80 to src subproject
471
472 2003-03-09  Borut Razem <borut.razem@siol.net>
473
474         * src/SDCCglue.c: re-implemented tempfilename() and tempfile(): using mkstemp() if available
475         * src/SDCCsymt.h: fixed MSVC and BORLANDC compilation (included SDCCglobl.h instead srccconf.h)
476         * sdcc_vc_in.h: explicitly undefined HAVE_MKSTEMP which is not available on BORLANDC and MSVC
477         * src/SDCCset.h: removed inclusion of sdccconf.h or sdcc_vc.h
478         * src/SDCCglobl.h: unification of WIN32 native definitions
479
480 2003-03-09  Frieder Ferlemann <Frieder.Ferlemann@web.de>
481
482         * src/mcs51/gen.c: applied in-/dec patch mentioned on sdcc-devel 2003-03-01
483
484 2003-03-08  Bernhard Held <bernhard@bernhardheld.de>
485
486         * src/configure.in:   check for endianess (even while cross-compiling)
487         * src/configure:      check for endianess (even while cross-compiling)
488         * src/configure_in.h: check for endianess (even while cross-compiling)
489         * src/avr/gen.c:        remove old endianess stuff
490         * src/mcs51/gen.c:      remove old endianess stuff
491         * src/ds390/gen.c:      remove old endianess stuff
492         * src/pic/gen.c:        remove old endianess stuff
493         * src/pic/genarith.c:   remove old endianess stuff
494         * src/pic/glue.c:       fix endianess check
495         * src/pic16/gen.c:      remove old endianess stuff
496         * src/pic16/genarith.c: remove old endianess stuff
497         * src/pic16/glue.c:     fix endianess check
498         * src/xa51/gen.c:       remove old endianess stuff
499         * src/z80/gen.c:        fix endianess check
500         * src/SDCCglue.c:       fix endianess check
501         * src/ds390/peeph.def: fix bug 700036
502
503 2003-03-08  Bernhard Held <bernhard@bernhardheld.de>
504
505         * src/SDCCsymt.h: use appropriate data-types on host for SDCC's int and long
506         * src/configure: find appropriate data-types on host for SDCC's int and long
507         * src/configure.in: find appropriate data-types on host for SDCC's int and long
508         * src/sdccconf_in.h: find appropriate data-types on host for SDCC's int and long
509         * src/xa51/gen.c: use %d, not %ld for 4 byte variables
510
511 2003-03-07    <johan@balder>
512
513         Just a big NOOP:
514                 some minor cleanups before the big shot
515                 OP_DEFS and OP_USES now use Kevin's protection
516                 new option --nolabelopt
517
518         * src/SDCCBBlock.c:
519         * src/SDCCast.c,:
520         * src/SDCCcflow.c:
521         * src/SDCCcse.c:
522         * src/SDCCicode.c:
523         * src/SDCCicode.h:
524         * src/SDCClabel.c:
525         * src/SDCCloop.c:
526         * src/SDCCmain.c:
527         * src/ds390/ralloc.c:
528         * src/mcs51/ralloc.c:
529         * src/pic/ralloc.c:
530         * src/xa51/ralloc.c:
531         * src/z80/ralloc.c:
532
533 2003-03-06  Bernhard Held <bernhard@bernhardheld.de>
534
535         * src/pic/pcode.c (get_op): fix 64 bit warnings
536         * src/pic/pcode.c (pCode2str): fix 64 bit warnings
537         * src/SDCChasht.c (newHashTable): fix 64 bit warnings
538         * src/SDCCsymt.c (checkTypeSanity): fix 64 bit warnings
539         * support/regression/tests/malloc.c: fix 64 bit warnings
540
541 2003-03-04  Bernhard Held <bernhard@bernhardheld.de>
542
543         * src/mcs51/gen.c (genMinus): fixed bug 696436
544
545 2003-03-02  Borut Razem <borut.razem@siol.net>
546
547         * src/SDCCmain.c: added BORLANDC, corrected MSVC in printVersionInfo()
548
549 2003-02-26  Bernhard Held <bernhard@bernhardheld.de>
550
551         * configure.in: test for mkstemp
552         * sdccconf_in.h: add HAVE_MKSTEMP
553
554 2003-02-24  Bernhard Held <bernhard@bernhardheld.de>
555
556         * device/include/ctype.h: removed warning while using --stack-auto
557         * device/include/malloc.h: removed warning while using --stack-auto
558         * device/include/string.h: removed warning while using --stack-auto
559
560 2003-02-23  Borut Razem <borut.razem@siol.net>
561
562         * src/asm.h: corrected assertion in function printILine(): _pipe() was not executed on MSVC,
563         because NDEBUG is defined (see man assert)
564         * sdcc_vc_in.h: vsnprintf is defined as _vsnprintf on MSVC
565
566 2003-02-23  Frieder Ferlemann <Frieder.Ferlemann@web.de>
567
568         * src/mcs51/gen.c (genUminusFloat): avoided dptr in-/decrement for xdata variables
569         * src/mcs51/peeph.def: added rule suggested by Gernot Fink, white space/comment changes
570
571 2003-02-18  Frieder Ferlemann <Frieder.Ferlemann@web.de>
572
573         * src/SDCCpeeph.c: added peephole conditions testing for same arguments
574         * src/mcs51/peeph.def: added rules 238a-d which remove redundant moves
575
576 2003-02-18    <johan@balder>
577
578         * as/mcs51/asmain.c (asmbl): module can start with a digit
579         * as/z80/asmain.c (asmbl): module can start with a digit
580
581 2003-02-16  Bernhard Held <bernhard@bernhardheld.de>
582
583         * sim/ucsim/mkecho: inserted #!/bin/sh for Cygwin, so that it's executable
584         * src/asm.c: fix pipe() for Mingw32
585
586 2003-02-15  Bernhard Held <bernhard@bernhardheld.de>
587
588         * src/SDCCglue.h: make tmpfileNameSet available for preOutName
589         * src/SDCCmain.c (preProcess): make sure, that preOutName will be deleted;
590         make -V work again; --c1mode reads now from stdin
591         * doc/sdccman.lyx: added --c1mode
592         * support/Util/SDCCerr.c: new messages for c1 mode
593         * support/Util/SDCCerr.h: new messages for c1 mode
594         * src/SDCC.lex (checkCurrFile): test if fullSrcFileName is NULL for c1mode
595
596 2003-02-15    <johan@balder>
597
598         * src/asm.c: new options: --no-c-code-in-asm and --i-code-in-asm
599
600 2003-02-14  Bernhard Held <bernhard@bernhardheld.de>
601
602         * doc/sdccman.lyx: Environment variables, -o and other minor things
603
604 2003-02-14    <johan@balder>
605
606         * src/xa51/main.c: before anyone really tries to use it :)
607
608         * Install doc's in share/sdcc/doc
609         * removed some obsolete files
610         * Do a proper make distclean and uninstall
611         M Makefile.common.in
612         R sdccbuild.sh
613         M as/Makefile
614         M device/include/Makefile.in
615         M device/lib/Makefile.in
616         M doc/sdccman.lyx
617         M link/Makefile
618         M sim/ucsim/doc/Makefile.in
619         M src/clean.mk
620         R src/avr/peeph.rul
621         R src/xa51/peeph.rul
622         M support/cpp2/Makefile.in
623         M support/makebin/Makefile
624
625
626 2003-02-13  Bernhard Held <bernhard@bernhardheld.de>
627
628         * support/regression/ports/host/spec.mk: use cc as host compiler for max osx
629
630 2003-02-10  Borut Razem <borut.razem@siol.net>
631
632         * doc/bccinst.txt, packihx/packihx.c, sdcc_vc_in.h, src/SDCCset.h,
633         support/cpp2/config.in: Borland C++ build doesn't depend on Cygwin configure
634         * Bcc.ini, Makefile.bcc, as/mcs51/Makefile.bcc,
635         device/examples/ds390/tinitalk/Makefile.bcc, packihx/Makefile.bcc,
636         support/cpp2/Makefile.bcc, src/Makefile.bcc, src/avr/Makefile.bcc,
637         src/ds390/Makefile.bcc, src/izt/Makefile.bcc, src/mcs51/Makefile.bcc,
638         src/pic/Makefile.bcc, src/pic16/Makefile.bcc, src/xa15/Makefile.bcc,
639         src/z80/Makefile.bcc: Borland Makefile cleanup
640         * as/z80/Makefile.bcc: Added Borland Makefile
641         * support/cpp2/borland.h: Removed
642
643 2003-02-10  Bernhard Held <bernhard@bernhardheld.de>
644
645         * doc/sdccman.lyx: new pragma NOIV by "Johannes Stezenbach" <js@convergence.de>
646         * src/SDCC.lex: new pragma NOIV
647         * src/SDCCglobl.h: new pragma NOIV
648         * src/SDCCmem.c: new pragma NOIV
649
650 2003-02-09  Bernhard Held <bernhard@bernhardheld.de>
651
652         * src/SDCCmain.c: signal handling is switched off by SDCC_LEAVE_SIGNALS
653
654 2003-02-09  Bernhard Held <bernhard@bernhardheld.de>
655
656         * src/SDCCmain.c: signal handling is switched off by --debug
657         * doc/Makefile: small fix for install; use clean.mk again
658         * doc/clean.mk: clean *.pdf and *.html too
659
660 2003-02-08  Bernhard Held <bernhard@bernhardheld.de>
661
662         * device/lib/_mulint.c: small fix for large/ds390 --int-long-reent resp. --stack-auto
663         * device/lib/printfl.c: fix a ds390 bug by making it portable
664         * src/SDCCsymt.c (initCSupport): fix compile warning on Cygwin
665         * src/SDCCopt.c (cnvToFloatCast): fix compile warning on Cygwin
666         * src/SDCCopt.c (cnvFromFloatCast): fix compile warning on Cygwin
667         * debugger/mcs51/cmd.c: converted multi-line string literals
668         * sim/ucsim/globals.cc: converted multi-line string literals
669         * src/SDCCmain.c: introduced signal handler to remove temp files
670         * doc/Makefile: small tweaks, implement clean
671         * doc: removed generated files
672
673 2003-02-05  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
674
675         * as/mcs51/aslink.h, as/mcs51/lkihx.c, as/mcs51/lkrloc.c:  Applied
676         patch from Jan Rejlek <jr@apex-lib.cz> to fix Bug 677692: "Extended
677         Address Record is not correctly generated for DS390."
678
679 2003-02-02  Borut Razem <borut.razem@siol.net>
680
681         * Makefile.bcc: removed non existing cpp project and non compilable izt project from makefile
682         * as/mcs51/asm.h: fixed compilation with Borland C
683         * support/cpp2/Makefile.bcc: added rule to generate auto-host.h
684         * support/cpp2/auto-host_vc_in.h: fixed compilation with Borland C
685         * src/mcs51/mcs51a.dsp: corrected misspelled project name from msc51a to mcs51a
686         * src/avr/Makefile.bcc, src/ds390/Makefile.bcc, src/izt/Makefile.bcc,
687         src/mcs51/Makefile.bcc, src/pic16/Makefile.bcc, src/xa51/Makefile.bcc,
688         src/z80/Makefile.bcc: delete $(LIB) only if exist
689         * src/Makefile.bcc, src/pic/Makefile.bcc:  fixed compilation with Borland C
690
691 2003-02-02  Bernhard Held <bernhard@bernhardheld.de>
692
693         * device/include/malloc.h: introduced NULL
694         * device/include/string.h: introduced NULL
695         * device/include/stdlib.h: introduced NULL
696         * device/lib/_memcpy.c: removed NULL
697         * device/lib/_strcat.c: removed NULL
698         * device/lib/_strchr.c: removed NULL
699         * device/lib/_strcmp.c: removed NULL
700         * device/lib/_strcpy.c: removed NULL
701         * device/lib/_strcspn.c: removed NULL
702         * device/lib/_strlen.c: removed NULL
703         * device/lib/_strncat.c: removed NULL
704         * device/lib/_strncmp.c: removed NULL
705         * device/lib/_strncpy.c: removed NULL
706         * device/lib/_strpbrk.c: removed NULL
707         * device/lib/_strrchr.c: removed NULL
708         * device/lib/_strspn.c: removed NULL
709         * device/lib/_strstr.c: removed NULL
710         * device/lib/_strtok.c: removed NULL
711         * device/lib/malloc.c: removed NULL, include own header
712
713 2003-02-02    <johan@balder>
714
715         * src/mcs51/ralloc.c (packForPush): fixed bug #631653, maybe other ports need this too? At least now some new alerts in SDCCBBlock.c and SDCCicode.c gives an early warning
716         * support/regression/fwk/lib/testfwk.c: div and mod isn't broken anymore
717         * regressions ds390/spec.mk and mcs51/spec.mk (timeout): my good old balder isn't fast enough for some tests
718         * src/z80/gen.c (genZ80Code): added c-lines in asm comments
719         * as/z80/asm.h (NINPUT): increased for long c-comments in regression tests
720         * src/z80/gen.c (genRightShiftLiteral): fixed the (char)(-3)>>8 (I think)
721
722 2003-02-01  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
723
724         * src/SDCCmain.c: Fixed bug 678574: "ds390: ASlink-Error-Stack overlaps
725         area 'DATA'"
726
727 2003-02-01    <johan@balder>
728
729         * src/SDCCval.c (valBitwise): fixed Karl's "2 | (1<<8)"
730
731 2003-01-31    <johan@CP255758-A>
732
733         * src/ds390/main.c (_ds390_genAssemblerPreamble): applied Jan Rejlek's >64K startup patch
734
735 2003-01-30    <johan@balder>
736
737         * src/SDCCBBlock.c: automatic bug detection
738         * src/SDCCicode.c: automatic bug detection
739
740 2003-01-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
741
742         * src/SDCCglobl.h:   now --xram-size 0 works
743         * src/SDCCmain.c:    now --xram-size 0 works
744
745 2003-01-29    <johan@balder>
746
747         * src/almosteverything: changed OP_DEFS and OP_USES from macros to functions to catch symbol abuse (a hot topic in the bug list :)
748
749 2003-01-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
750
751         * as/mcs51/aslink.h: Added options --xram-size and --code-size 
752         * as/mcs51/lkdata.c: Added options --xram-size and --code-size 
753         * as/mcs51/lkmain.c: Added options --xram-size and --code-size 
754         * as/mcs51/lkmem.c:  Added options --xram-size and --code-size 
755         * src/SDCCglobl.h:   Added options --xram-size and --code-size 
756         * src/SDCCmain.c:    Added options --xram-size and --code-size 
757
758 2003-01-28  Bernhard Held <bernhard@bernhardheld.de>
759
760         * src/ds390/gen.c: fix deps by replacing <common.h> with "common.h"
761         * src/SDCC.lex: rename P_OVERLAY to P_OVERLAY_ for cross-gcc 3.2 MINGW32
762
763 2003-01-27    <johan@balder>
764
765         * src/SDCC.y: fixed bug #613764
766
767 2003-01-26    <johan@balder>
768
769         * src/SDCClrange.c:  fixed Bernhard's "char * code ptr = &c"
770         * src/SDCCsymt.h: fixed bug #673374
771         * src/SDCCglue.c: fixed bug #661910
772         * src/SDCCast.c: fixed bug #458099 and 673374
773
774 2003-01-26  Bernhard Held <bernhard@bernhardheld.de>
775
776         * as/mcs51/strcmpi.c: added, provides Aurelien Jarno's as_strcmpi(); strcmpi() is not ANSI
777         * as/mcs51/strcmpi.h: added
778         * as/mcs51/asm.h: remove ugly "#define strcmpi strcmp"
779         * as/mcs51/aslink.h: remove ugly "#define strcmpi strcmp"
780         * as/mcs51/asmain.c: strcmpi -> as_strcmpi
781         * as/mcs51/assym.c: strcmpi -> as_strcmpi
782         * as/mcs51/lkmem.c: strcmpi -> as_strcmpi
783         * as/mcs51/lknoice.c: strcmpi -> as_strcmpi
784         * as/mcs51/lksym.c: strcmpi -> as_strcmpi
785         * as/mcs51/Makefile.aslink: new module strcmpi
786         * as/mcs51/Makefile.asx8051: new module strcmpi
787         * as/mcs51/Makefil.bcc: new module strcmpi
788         * as/mcs51/Makefile.in: new module strcmpi
789         * sim/ucsim/s51.src/uc390.cc (get_mem_size): make RAM big enough for tinibios
790
791 2003-01-26    <johan@balder>
792
793         * src/SDCCglue.c: reverted back to 1.124
794         * src/SDCCast.c: reverted back to 1.156
795         * src/mcs51/gen.c (aopGet): applied Frieder's efficiency patch
796
797 2003-01-25    <johan@balder>
798
799         * src/SDCCglue.c: A better fix for bug #661910
800         * src/SDCCast.c: A better fix for bug #661910
801         * src/SDCCglue.c (emitRegularMap): That was a little too efficient
802
803 2003-01-24  Bernhard Held <bernhard@bernhardheld.de>
804
805         * src/Makefile.in: remove spawn.o
806         * src/SDCCmain.c: remove spawn.h
807         * src/SDCCmain.c (printVersionInfo): report MINGW32 instead of UNIX
808         * src/spawn.c: removed
809         * src/spawn.h: removed
810         * support/regression/ports/ds390/spec.mk: link with -r
811
812 2003-01-24    <johan@CP255758-A>
813
814         * src/ds390/gen.c (aopOp): fixed bug #667458
815         * src/SDCCglue.c (emitRegularMap): fixed bug #458099 again
816         * src/SDCCast.c (createIvalCharPtr): fixed bug #661910
817         (createIvalCharPtr): an ival doesn't always have a storage class anymore
818
819 2003-01-24  Bernhard Held <bernhard@bernhardheld.de>
820
821         * src/mcs51/peeph.def: better assembler identation by Frieder
822         * src/mcs51/gen.c: better assembler identation by Frieder
823
824 2003-01-22  Bernhard Held <bernhard@bernhardheld.de>
825
826         * as/z80/string.h: removed for gcc 3.2
827         * support/makebin/makebin.c: #include <string.h> for gcc 3.2
828         * src/pic/pcode.c (get_op_from_instruction): fix concatenation of string literals with __FUNCTION__ for gcc 3.2
829
830 2003-01-19  Bernhard Held <bernhard@bernhardheld.de>
831
832         * src/SDCCmain.c (linkEdit): rename mem and map files even in case of failure
833         * src/SDCCpeeph.c (replaceRule): fix bug #663503
834         * support/regression/Makefile: separate temp files for ports
835         * support/regression/generate-cases.py: separate temp files for ports
836         * src/mcs51/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
837         * src/ds390/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
838
839 2003-01-19  Bernhard Held <bernhard@bernhardheld.de>
840
841         * moved tinitalk to device/examples/ds390
842
843 2003-01-14  Bernhard Held <bernhard@bernhardheld.de>
844
845         * as/mcs51/lkmem.c: rflag is for DS390
846         * src/SDCCglobl.h: removed out_name and options stackOnData, genericPtr
847         * src/SDCCmain.c (optionsTable, setDefaultOptions): removed --stack-after-data and --generic
848                          (linkEdit): move mem- and map-files the same way as ihx-files
849         * src/z80/main.c (_setDefaultOptions): removed --generic
850         * src/SDCCmain.c (_processC1Arg, parseCmdLine, main): --c1mode works again
851         * src/SDCCglue.c (createInterruptVect, glue): --c1mode works again
852         * src/pic/glue.c (picglue): --c1mode works again
853         * src/pic16/glue.c (pic16glue): --c1mode works again
854         * src/asm.c (printCLine): fix #660034
855
856 2003-01-13  Bernhard Held <bernhard@bernhardheld.de>
857
858         * src/ds390/peeph.def: fix #123; add 14 rules by Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>, 1 by Frieder
859         * src/mcs51/peeph.def: fix #123; add 14 rules by Fiorenzo, 1 by Frieder
860         * src/mcs51/gen.c (genFunction): emit r0 instead of ar0 by Fiorenzo
861         * as/mcs51/lkmem (summary): better fix for sp problem
862         * src/SDCCglue.c (glue): __start_stack - 1, saves 1 byte!
863         * src/ds390/main.c (_ds390_finaliseOptions, _tininative_finaliseOptions): stack_loc = 0x400008
864         * support/regression/ports/*/spec.mk: moving testfwk-object to port dir allow parallel execution of regression tests
865                                               remove --stack-after-data
866
867 2003-01-12  Bernhard Held <bernhard@bernhardheld.de>
868
869         * src/SDCCmain.c (main): port->finaliseOptions() moved for z80 linking
870         * src/SDCCutil.c (join): ugly bug: missing '\0'
871         * as/mcs51/lkmem.c (summary): sp on address 7 is safe
872
873 2003-01-11  Bernhard Held <bernhard@bernhardheld.de>
874
875         * src/SDCCmain.c (assemble, linkEdit): preparations for -o
876         * src/port.h: typo
877         * src/pic/main.c (_asmCmd): gpasm supports -o
878         * src/z80/main.c: more general macros
879         * device/lib/Makefile.in: remove intermediate files
880
881 2003-01-11  Bernhard Held <bernhard@bernhardheld.de>
882
883         * .version: Bumped version number to 2.3.3
884         * src/SDCCBBlock.c: new option -o
885         * src/SDCCglobl.h: new option -o
886         * src/SDCCglue.c: new option -o
887         * src/SDCCmain.c: new option -o
888         * src/asm.c: new option -o
889         * src/ds390/main.c: new option -o
890         * src/pic/glue.c: new option -o
891         * src/pic/pcode.c: new option -o
892         * src/pic/ralloc.c: new option -o
893         * src/pic16/glue.c: new option -o
894         * src/pic16/pcode.c: new option -o
895         * src/pic16/ralloc.c: new option -o
896         * src/z80/main.c: new option -o
897         * device/lib/Makefile.in: use -o
898         * support/regression/ports/ds390/spec.mk: use -o
899         * support/regression/ports/gbz80/spec.mk: use -o
900         * support/regression/ports/mcs51/spec.mk: use -o
901         * support/regression/ports/mcs51-stack-auto/spec.mk: use -o
902         * support/regression/ports/z80/spec.mk: use -o
903         * support/regression/ports/ucz80/spec.mk: use -o
904         * support/regression/ports/xa51/spec.mk: use -o
905         * support/regression/fwk/lib/timeout.c: fix usage string
906
907 2003-01-09  Bernhard Held <bernhard@bernhardheld.de>
908         * src/mcs51/gen.c (genPlus): replaced "mov b,acc" by "mov b,a" Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>
909         
910 2003-01-07    <johan@balder>
911
912         * src/SDCCast.c (decorateType): fixed bug #600035
913
914 2003-01-07  Bernhard Held <bernhard@bernhardheld.de>
915         * as/mcs51/lkmem.c: added several l-modifiers to printf to remove warnings
916         * as/mcs51/lkaomf51.c: #include <ctype.h> to remove warnings
917         * src/pic/main.c (_hasNativeMulFor): outcommented unused variables to remove warnings
918         * src/pic/pcode.c: outcommented unused variable to remove warnings
919         * src/pic/ralloc.c: outcommented unused variable to remove warnings
920
921 2003-01-06    <karl@turbobit.com>
922         * sim/ucsim/cmd.src/command.cc: fixed so "break xram r 0x7654" works again in
923    regression tests.
924
925 2003-01-06    <johan@balder>
926
927         * src/SDCCicode.c: fixed array add
928
929 2002-01-05  Bernhard Held <bernhard@bernhardheld.de>
930         * src/SDCCmacro.c: MAX_STRING_LENGTH increased to 2048; was too small for regression tests
931         * support/regression/ports/host/support.c: #include <stdarg.h> for gcc 3.2
932
933 2003-01-04    <johan@balder>
934
935         * src/SDCCval.c (getNelements): fixed the initialized array of structures
936
937 2002-12-29  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
938         * as/mcs51/Makefile.bcc: fixed typo lkomf51.o -> lkaomf51.o
939
940 2002-12-28  Bernhard Held <bernhard@bernhardheld.de>
941         * src/mcs51/peeph.def: added rules 234 and 235 from Frieder Ferlemann <frieder.ferlemann@web.de>
942         * support/regression/tests/bug-524697.c: fit mem usage into 8032
943
944 2002-12-28  Bernhard Held <bernhard@bernhardheld.de>
945         * src/mcs51/gen.c (aopGetUsesAcc): inserted missing "return FALSE"
946
947 2002-12-27  Bernhard Held <bernhard@bernhardheld.de>
948         * as/mcs51/Makefile.in: fixed typo lkomf51.o -> lkaomf51.o
949
950 2002-12-26  Bernhard Held <bernhard@bernhardheld.de>
951         * src/mcs51/main.c: removed {bindir}{sep} from aslink
952
953 2002-12-10  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
954
955     * in \sdcc\as\mcs51\ changed these files in order to create an
956     aomf51 file: aslink.h, lkdta.c, lklex.c, lklibr.c, lklist.c,
957     lkmain.c.  Also added: lkmem.c and lkaomf51.c.  Changed the 
958     following files to include the previous two files: aslink.dsp,
959     Makefile.aslink, Makefile.bcc, and Makefile.in.
960
961     * Changed \sdcc\src\SDCCmain.c so it creates files with extension
962     .adb instead of .cdb
963     
964 2002-11-09  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
965
966         * \sdcc\as\mcs51\lklist.c: Now reports memory usage using the
967         value from option --iram-size.
968
969 2002-09-20  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
970
971         * \sdcc\as\mcs51\lklist.c: added boundary check before using
972         dram[] array.
973
974 2002-09-18    <wiml@hhhh.org>
975
976         * SDCClrange.h: exposed setFromRange() and setToRange()
977         * mcs51/ralloc.c: fixed over-eager packRegsForSupport() and
978           packRegsForAccUse() (bug 542397)
979         * mcs51/gen.c: MOVA() is now a function to avoid calling aopGet()
980           multiple times and emitting the fetch operations more than once
981           added aopGetUsesAcc() function to allow binary operators to
982           fetch their operands in the correct order; made genMinus() emit
983           compact code for X = LITERAL - Y 
984
985 2002-09-00  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
986         * \sdcc\as\mcs51\lklist.c: Fixed incorrect number of parameters to
987         sprintf() in line 1267.
988
989 2002-09-08  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
990         * \sdcc\src\SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051
991         like ports.
992
993 2002-09-04  Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
994         Changes to aslink (All the changes are marked with 'JCF'):
995
996         * \sdcc\as\mcs51\aslink.h: External definition of sflag and
997         summary().
998
999         * \sdcc\as\mcs51\lkarea.c: Computes the size of area BSEG_BYTES from
1000         area BSEG.  Also moves, if possible, the DATA area down into the internal
1001         ram so more space is available.
1002
1003         * \sdcc\as\mcs51\lkdata.c: Definition of memory summary output flag
1004         sflag.
1005
1006         * \sdcc\as\mcs51\lklist.c: For the BSEG area report the size in bits,
1007         not bytes.  Function summary() which creates a memory usage summary
1008         file with extension .mem.  Reports of overlaping stack and small stack
1009         size.  If the space for the stack is less than 16 bytes aslink trows a
1010         warning.
1011         
1012         * \sdcc\as\mcs51\lkmain.c: Creation of some of the default areas for
1013         the 8051.  Option 'y' for memory summary output file.
1014
1015         Changes to sdcc (All the changes are marked with 'JCF'):
1016
1017         * \sdcc\src\SDCCglobl.h: External definition of RegBankUsed[4].
1018
1019         * \sdcc\src\SDCCglue.c:  If a register bank is used, creates an
1020         overlaying area for it (uses RegBankUsed[4]).
1021
1022         * \sdcc\src\SDCCmain.c: Definition RegBankUsed[4]; marks register
1023         bank zero as used by default.  By default aslink locates the stack
1024         (equivalent to --stack-after-data).  Pass option 'y' to aslink for
1025         the creation of the .mem file.  Delegates the allocation of data area
1026         to aslink (it is not longer 0x30 by default).  If --stack-loc passes
1027         the begining of the stack area to aslink.
1028
1029         * \sdcc\src\SDCCmem.c:  If a register bank is used, marks it so
1030         glue() in SDCCglue.c creates an area for it.
1031         
1032 2002-09-03  Borut Razem <borut.razem@siol.net>
1033         * sdcc/src/SDCCglue.c, sdcc/src/SDCCglue.h, sdcc/src/SDCCmain.c,
1034         sdcc/src/pic/glue.c:
1035         introduced atexit() handler for teporay files removal in case of
1036         errors, assertions, ...
1037
1038 2002-08-29  Borut Razem <borut.razem@siol.net>
1039         * sdcc/support/cpp2/auto-host_vc_in.h:
1040         re-definition of O_BINARY and other O_XXX as _O_BINARY and _O_XXX, so the problem
1041         with the returned value from read() in sdcc/support/cpp2/cppfiles.c is solved for MSC.
1042         Maybe there is a similar problem with BORLANDC? It should be checked!
1043
1044         * sdcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c, sdcc/src/z80/ralloc.c:
1045         corrected improper use of assert: the assignment to clr variable was done inside the assert.
1046         In case that NDEBUG was defined, the assert macro was substituted with no-op, so the assignment
1047         was not executed, and the compiler (cl) launched a warning:
1048         ralloc.c(1442) : warning C4700: local variable 'clr' used without having been initialized
1049
1050 2002-08-28  Bernhard Held <bernhard@bernhardheld.de>
1051         * src/SDCCglue.c (printIvalArray): iterative calculation of array length
1052
1053 2002-08-28  Jesus Calvino-Fraga and Borut Razem <borut.razem@siol.net>
1054         * sdcc/sdcc.dsw: added sdcpp, sdcppa, yacc, conf projects
1055
1056         * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
1057           sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp,
1058           sdcc/src/xa51/xa51.dsp, sdcc/src/avr/avra.dsp,
1059           sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
1060           sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp,
1061           sdcc/src/xa51/xa51a.dsp, sdcc/as/as_z80.dsp,
1062           sdcc/as/aslink.dsp, sdcc/as/asx8051.dsp, sdcc/packihx/packihx.dsp:
1063         - added Release configuration in VS projects
1064         - review of compiler an linker options
1065         - VC .exe files are generated in bin_vc directory, not to interfere
1066           with binaries generated from other projects (cygwin, mingw, bcc ...)
1067
1068         * sdcc/src/yacc.dsp: added
1069
1070         * sdcc/config.dsp, sdcc/configure_vc.awk, sdcc/sdcc_vc_in.h:
1071         added - genarate sdcc_vc.h using sdcc_vc_in.h as template
1072         and insert the version number definitions from .version 
1073
1074         * sdcc/support/cpp2/sdcpp.dsp: added - VC project for sdcpp
1075
1076         * sdcc/support/cpp2/sdcppa.dsp, sdcc/support/cpp2/auto-host_vc_in.h:
1077         added - genarate auto-host.h using auto-host_vc_in.h as template
1078
1079         * sdcc/sdcc_vc.h,
1080         removed from CVS, generated automatically
1081
1082 2002-08-25  Bernhard Held <bernhard@bernhardheld.de>
1083         * support/scripts/inc2h.pl: use gputils or gpasm (from Nathan Hurst)
1084
1085 2002-08-11  Borut Razem <borut.razem@siol.net>
1086         * support/Util/NewAlloc.c: removed unneeded #include "sdccconf.h" (suggested by Jesus Calvino-Fraga)
1087
1088 2002-08-10  Borut Razem <borut.razem@siol.net>
1089         * src/SDCCmain.c (main):
1090         file preOutName was unlinked before closed. This seems to be OK on UNIX and cygwin
1091         platforms, but it doesn't work with Visual Studio: the opened file can not be removed.
1092         The consequence was that some temporary files were not removed.
1093
1094         * src/SDCCglue.c:
1095         unification of code in functions tempfilename() and tempfile():
1096         function tempnam() is defined in Visual Studio 6.0 and .NET
1097
1098         * sdcc/sdcc.dsw: removed project sdcpp, added project xa51a
1099
1100         * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
1101           sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp:
1102         - removed compiler command line option /WX: Treats all warnings as errors
1103         - update a list of source files, included into the project
1104
1105         * sdcc/src/avr/avra.dsp, sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
1106           sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp:
1107         changed project type to Generic Project so that can be correcly converted to VS.NET project
1108
1109         * sdcc/as/mcs51/asm.h: definition of PATH_MAX for MSC
1110
1111         * sdcc/src/SDCCast.c: solved MSC error in function decorateType()
1112
1113         * sdcc/src/SDCC.y: added missing ending ';' to rules to get rid of bison warnings
1114
1115         * dcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c:
1116         added return 0 statements after assert() to make compiler happy
1117
1118         * sdcc/src/xa51/peeph.rul, sdcc/src/xa51/peeph.def, sdcc/src/z80/ralloc.c:
1119         added newline in the def file to keep MSC compiler satisfied
1120
1121         * sdcc/src/z80/gen.c:
1122         - function strcasecmp() is not defined in MSC (and probably also in BORLANDC),
1123           so it is replaced with STRCASECMP, which is defined as stricmp in case of MSC and BORLANDC
1124         - solved MSC error in function aopDump()
1125
1126         * sdcc_vc.h: define PREFIX as "\\sdcc"
1127
1128 2002-07-18  Bernhard Held <bernhard@bernhardheld.de>
1129         * src/SDCCast.c (decorateType): fixed access to array of structures http://sourceforge.net/mailarchive/forum.php?thread_id=902690&forum_id=4107
1130
1131 2002-06-22  Scott Dattalo <scott@dattalo.com>
1132         * src/pic/*: Numerous bug fixes. Flow analysis has been enhanced. 
1133         - Rewrote the register banking algorithm. 
1134         - Added pCode live-range analysis to registers (for now, only non-used and 
1135         singly-used registers optimized away)
1136
1137         * src/pic/pcoderegs.[ch]: Added new files for pCode live-range analysis
1138
1139         * support/scripts/inc2h.pl Kevin L. Pauba <klpauba@cox.net> submitted this perl script for converting MicroChip include files into SDCC Pic include files.
1140         
1141 2002-05-10  Scott Dattalo <scott@dattalo.com>
1142         * src/pic/*: Added support for multiplication. Fixed many,many bugs.
1143         
1144 2002-04-22  Michael Hope  <michaelh@vroom>
1145
1146         * device/lib/z80/printf.c: Changed emitter to volatile to work around a pcall bug.
1147
1148         * configure.in (DD_COPT): Added include support required for gbdk.
1149
1150         * .version: Bumped version number just to increase it.
1151
1152         * src/SDCCmain.c: Added -nostdinc to the default options.
1153
1154 2002-04-15  Michael Hope  <michaelh@vroom>
1155
1156         * device/lib/z80/printf.c (sprintf): Added.
1157
1158         * src/z80/ralloc.c (packRegisters): Disabled pack HL use for GB as it's broken.
1159
1160         * src/z80/peeph.def: Added transpose redundent load rule.
1161
1162         * src/z80/main.c: Added force callee saves for jaune.
1163
1164         * src/port.h: Removed the i186 and tlcs-900h ports as they weren't being being developed.
1165
1166         * src/SDCCmain.c: Pulled the options definition out so that you can add port specific options without changing the main file.
1167
1168 2002-03-28  Johan Knol  <johan@balder>
1169
1170         * src/SDCCval.c: fixed bug #532436
1171
1172 2002-03-14  Scott Dattalo <scott@dattalo.com>
1173         * /src/port.h:
1174         Added "char *Processor" field to the port structure.
1175
1176         * /src/SDCCmain.c:
1177         Added -p option. Allows port dependent processor to be specified.
1178
1179         * all ports:
1180         Initialized the new field char *Processor field to NULL in all ports
1181
1182         * /src/pic/*:
1183         Compiler generated registers for interrupt context saving
1184         were not getting allocated.
1185                 
1186 2002-03-16  Sandeep Dutta  <sandeep@ddi.com>
1187
1188         * /src/SDCCast.c:
1189         Fixed left shift. Will promote the left side of a left shift
1190         if a) left shifting more than size of operand or b) when assigned
1191         to something size > size of left side
1192
1193 2002-03-14  Scott Dattalo <scott@dattalo.com>
1194         * src/pic/*
1195         tons of changes. Register allocation has been 
1196         rewritten. Added customization for the various PICs. Flow
1197         analysis is restructured. ...
1198
1199         * src/pic/device.h:
1200         Added
1201
1202         * src/pic/device.c:
1203         Added. device.c is a PIC port hack to accomodate variations
1204         in PIC devices.
1205
1206 2002-03-13  Michael Hope  <michaelh@vroom>
1207
1208         * src/z80/gen.c (genGenPointerGet): Fixed a bug where a pointer in HL is dereferenced into HL but HL is not spilled.  Yeah.
1209
1210 2002-03-04  johanknol  <johanknol@manik>
1211
1212         * /src/SDCCval.c: fixed
1213
1214         const unsigned char arr[][2] = { { 0, 1 } };
1215         t18.c:1: error: Initializer element is not constant
1216
1217 2002-03-04  bela  <bela@manik>
1218
1219         * /device/include/mcs51reg.h:
1220         ds89c420 register definition update
1221
1222 2002-03-03    <johan@FRIJA>
1223
1224         * support/Util/SDCCerr.c: did something, but don't no why anymore
1225
1226         * support/regression/tests/bug-524691.c: made it a little less shy 
1227
1228         * src/SDCCast.c (decorateType): fixed bug #524697
1229
1230         * src/SDCCast.c: made some lineno improvements
1231
1232         * src/SDCCval.c (getNelements): changed warning to error
1233
1234         * src/SDCCglue.c (printIvalArray): changed warning to error
1235
1236         * src/SDCCicode.c: fixed a warning for mingw
1237
1238         * src/SDCCast.c (decorateType): fixed the << promotion for ops
1239
1240         * src/SDCCicode.c (geniCodeDivision): divide is shift only for unsigned (bug #524685)
1241
1242 2002-03-02  Sandeep Dutta  <sandeep@ddi.com>
1243
1244         * src/ds390/peeph.def:
1245         Added some more peephole rules
1246
1247         * src/ds390/gen.c: Various fixes & enhancements
1248
1249         * src/SDCClrange.c, src/SDCClrange.h:
1250         functions "alldefsoutofrange" and "notusedinblock" moved to SDCClrange.c
1251
1252         * src/ds390/ralloc.c:
1253         various fixes & enhancements (ds390) specific
1254
1255         * src/avr/ralloc.c, src/mcs51/ralloc.c, src/pic/ralloc.c, src/xa51/ralloc.c, src/z80/ralloc.c:
1256         Functions "allDefsOutOfRange" & "notUsedinBlock" moved to SDCClrange.c
1257         from rallocs.
1258
1259         * sdcc/src/SDCCcse.c: Better fix for bug # 514308
1260
1261 2002-03-02    <johan@FRIJA>
1262
1263         * src/SDCCast.c (decorateType): fixed bug #524708
1264
1265         * src/SDCCval.c (floatFromVal): fixed the literal void (whatever that may be)
1266
1267         * src/SDCCicode.c (geniCodePtrPtrSubtract): fixed bug #524691
1268
1269 2002-03-01  Michael Hope  <michaelh@vroom>
1270
1271         * src/SDCCsymt.c (initCSupport): Removed managling of support function names.
1272
1273         * src/z80/ralloc.c (packRegsForIYUse): Fixed fp bug where four byte operands were packed into IY.
1274
1275 2002-03-01    <johan@FRIJA>
1276
1277         * src/SDCCglue.c (printIvalPtr): fixed bug #524211
1278
1279         * src/SDCCast.c (decorateType): fixed bug #524209
1280
1281         * src/SDCCval.c (valNot): fixed bug #524195
1282
1283 2002-02-26    <johan@balder>
1284
1285         * src/xa51/gen.c: fixed a warning
1286
1287         * src/SDCCglue.c (printIvalFuncPtr): fixed bug #522534
1288
1289         * src/SDCCast.c (decorateType): fixed bug #522534
1290
1291 2002-02-23    <johan@balder>
1292
1293         * src/SDCCdflow.c (computeDataFlow): fixed bug #460088
1294
1295 2002-02-22    <johan@balder>
1296
1297         * src/SDCCast.c: fixed bug #514865
1298
1299         * src/SDCCy.c ("SDCC.y"): fixed bug #516625
1300
1301 2002-02-21  Sandeep Dutta  <sandeep@ddi.com>
1302
1303         * sdcc/src/SDCCloop.c:
1304         Previous fix was not good. basic blocks that have "break" or "return" are
1305         not really partof a loop , but live ranges used in these blocks should
1306         be live thru the entire loop, so set partOfLoop but don't add them to
1307         loop region
1308
1309 2002-02-21    <johan@FRIJA>
1310
1311         * src/SDCCcse.c: fixed bug #514308
1312
1313 2002-02-20  Sandeep Dutta  <sandeep@ddi.com>
1314
1315         * src/SDCCloop.c:
1316         Fixed BUG #519583. If a conditional block ended in a return/break
1317         statement inside a loop, it was not being considered part of the loop.
1318
1319         * src/SDCCcflow.c: Removed fix (Fixed in SDCCloop.c)
1320
1321 2002-02-10  Karl Bongers <karl@turbobit.com>
1322
1323         * debugger/*:
1324         Fixed up SDCDB debugger somewhat.  Updated debugger/README
1325         with lots of comments and notes.
1326
1327         * device/examples/test2.c:
1328         Fix bug, "red" variable not being initialized(compiler complained).
1329
1330         * device/examples/Makefile, examples/test3.c:
1331         Add Makefile in device/examples folder, compiles test3.c
1332         for use as a multiple module SDCDB test case.
1333
1334         * sim/ucsim/cmd.src/cmdset.cc:
1335         Took out debug printfs in ucsim "next" command.
1336
1337         * sim/ucsim/xa.src:
1338         Karl and Johan start ucsim XA support.  Most dissassembly working,
1339         about 75% emulation done(plenty of work remaining).
1340
1341         * sim/ucsim/z80.src:
1342         Add Z80 support to ucsim, add test-ucz80 regression test,
1343         notice ucsim/z80 emulation fails on examples/test3.c/itoa code.
1344         Notice z80 compiler fails on examples/test3.c/crc code.
1345
1346 2002-01-30  Sandeep Dutta  <sandeep@ddi.com>
1347
1348         * src/mcs51/gen.c, src/mcs51/main.c, src/mcs51/ralloc.c:
1349         Added support for --parms-in-bank1
1350
1351         * src/ds390/peeph.def:
1352         added a few more peephole optimzations
1353
1354         * src/ds390/main.c:
1355         1) added __builtin_inp & __builtin_outp used to read in data of given length
1356            from a memory mapped port
1357         2) added __builtin_memcmp
1358         3) added __builtin_swapw swap bytes of a short
1359
1360         * src/ds390/gen.c, src/ds390/gen.h, src/ds390/ralloc.c:
1361         1) handle multiple send & receives from register bank1
1362         2) ralloc can now allocate DPTR1 to some liveRanges
1363
1364         * src/SDCCsymt.c, src/SDCCsymt.h:
1365         changes to handle multiple sends & receives
1366
1367         * src/SDCCptropt.h:
1368         added some pointer arithmetic optimization
1369
1370         * src/SDCCptropt.c:
1371         added some pointer arithmetic optimizations but not stable yet so not
1372         called from anywhere (will get this working shortly)
1373
1374         * src/SDCCopt.c: fixed for multiple sends & receives
1375
1376         * src/SDCCmain.c:
1377         1) added options --parms-in-bank1 (ds390/mcs51) & --protect-sp-update
1378         2) preprocessing done AFTER port->finalizeoptions . This allows ports to
1379            set preprocessor defines (depending on options)
1380
1381         * src/SDCCicode.c, src/SDCCicode.h:
1382         changes made to handle multiple sends & receives
1383
1384         * src/SDCCglobl.h:
1385         Added options --protect-sp-update (ds390) and --parms-in-bank1 (ds390/mcs51)
1386
1387         * src/SDCCcse.c, src/SDCCcse.h:
1388         added function findbackward def (to be used in upcoming optimization)
1389
1390         * src/SDCCcflow.c, src/SDCCcflow.h:
1391         added function returnAtEnd - to determine if a basic block terminates with
1392         a RETURN iCode
1393
1394         * src/SDCCast.c, src/SDCCast.h:
1395         added option parms-in-bank1
1396
1397         * device/lib/_divsint.c, device/lib/_divslong.c, device/lib/_divuint.c 
1398         * device/lib/_divulong.c, device/lib/_modsint.c, device/lib/_modslong.c 
1399         * device/lib/_modulong.c, device/lib/_mulint.c, device/lib/_mullong.c:
1400         adjusted for --parms-in-bank1 option
1401
1402         * device/include/string.h:
1403         donot redefine "reentrant" keyword
1404
1405         * device/include/ds80c390.h: Added some more SFRs
1406
1407 2002-01-28  Bernhard Held  <bernhard@bernhardheld.de>
1408
1409         * sim/ucsim: Merged branch ucsim-034-pre3 to main trunk; new version 0.4 
1410
1411 2002-01-26  Bernhard Held  <bernhard@bernhardheld.de>
1412
1413         * src/SDCCast.c (funcOfType): fix usage of double --float-reent
1414
1415 2002-01-22  Bernhard Held  <bernhard@bernhardheld.de>
1416
1417         * support/regression/fwk/lib/testfwk.c (main): Removed workaround for bug #505387
1418
1419 2002-01-18  Paul Stoffregen  <paul@pjrc.com>
1420
1421         * Added --xram-movc option
1422
1423 2002-01-13  Bernhard Held  <bernhard@bernhardheld.de>
1424
1425         * support/regression/Makefile: don't include test-mcs51-stack-auto in target all
1426
1427 2002-01-11  Johan Knol
1428
1429         * Added math lib of Jesus Calvino-Fraga
1430
1431 2002-01-08  Bernhard Held  <bernhard@bernhardheld.de>
1432
1433         * src/SDCCmain.c (processFile): fix processing of ../../src.c
1434         * support/regression/Makefile: new target test-mcs51-stack-auto
1435         * support/regression/ports/mcs51-stack-auto/spec.mk: added
1436
1437 2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
1438
1439         * src/SDCCglue.h: printIvalCharPtr(), not printIvalChar()
1440
1441 2002-01-04  Bernhard Held  <bernhard@bernhardheld.de>
1442
1443         * support/regression/ports/mcs51/support.c: correct setup of timer / UART
1444
1445 2002-01-03  Bernhard Held  <bernhard@bernhardheld.de>
1446
1447         * src/SDCCsymt.c (processFuncArgs): fix #498307 by Johan
1448
1449         * src/SDCCglue.h: add definition for printIvalChar()
1450
1451 2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
1452
1453         * src/SDCCast.c: fix #498138 by Johan
1454
1455         * src/SDCCglue.c: fix #498138 by Johan
1456
1457 2002-01-02  Bernhard Held  <bernhard@bernhardheld.de>
1458
1459         * support/regression/Makefile: fix clean
1460
1461         * support/regression/ports/ds390/support.c: fix transmission of last character
1462
1463 2001-12-29  Sandeep Dutta  <sandeep@ddi.com>
1464
1465         * /sdcc/src/ds390/gen.c:
1466         a) improved computing address of stack variable
1467         b) took out some #if 0 code
1468         c) improved parmBytes adjustment
1469         d) improved genPlusIncr & genMinusIncr
1470         e) genCmp could generate bad code (when left assigned to DPTR)
1471         f) Fixed bug in hasInc
1472
1473         * /sdcc/src/ds390/ralloc.c:
1474         a) packRegsForSupport could mess up live information (Fixed)
1475         b) packRegsDPTRuse could be incorrect for left & right shift
1476
1477         * /sdcc/src/mcs51/ralloc.c:
1478         packRegsForSupport could mess up the live information (Fixed)
1479
1480         * /sdcc/src/mcs51/gen.c: Fixed a bug in hasInc
1481
1482         * /sdcc/src/SDCCast.c:
1483         can reverse a loop even if function call is present as long
1484         as the loop control variable is local & is not passed as parameter
1485
1486 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
1487
1488         * /sdcc/ChangeLog: *** empty log message ***
1489
1490         * /sdcc/src/ds390/gen.c, /sdcc/src/ds390/main.c:
1491         More builtin function additions for TININative
1492
1493         * /sdcc/src/ds390/ralloc.c:
1494         Had broken the regression testsuite
1495
1496         * /sdcc/src/SDCCast.c: Fixed a bug in dumptree
1497
1498         * /sdcc/src/SDCCsymt.c, /sdcc/src/SDCCsymt.h:
1499         Added funcattr hasStackParms will be set for reentrant functions when there
1500         are paramteres on the stack, this helps in minimizing frame pointer generation
1501         typeFromStr can handle function pointers now
1502
1503         * /sdcc/doc/builtins.txt, /sdcc/doc/TININative.txt:
1504         *** empty log message ***
1505
1506 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
1507
1508         * /src/ds390/gen.c, /src/ds390/main.c:
1509         More builtin function additions for TININative
1510
1511         * /src/ds390/ralloc.c:
1512         Had broken the regression testsuite
1513
1514         * /src/SDCCast.c: Fixed a bug in dumptree
1515
1516         * /src/SDCCsymt.c, /src/SDCCsymt.h:
1517         Added funcattr hasStackParms will be set for reentrant functions when there
1518         are paramteres on the stack, this helps in minimizing frame pointer generation
1519         typeFromStr can handle function pointers now
1520
1521         * /doc/builtins.txt, /doc/TININative.txt:
1522         *** empty log message ***
1523
1524
1525 2001-12-24  Sandeep Dutta  <sandeep@ddi.com>
1526
1527         * /src/ds390/gen.c, /src/ds390/main.c, /src/ds390/peeph.def, /src/ds390/ralloc.c:
1528         ALPHA version for -mTININative
1529
1530         * /src/izt/i186.c, /src/izt/tlcs900h.c, /src/mcs51/main.c, /src/pic/main.c, /src/z80/main.c, /src/avr/main.c:
1531         updated to reflect changes in the port structure
1532
1533         * /src/port.h:
1534         added function do_assemble (similar to do_link) if non-null this function
1535         will be called to do assembly (-mTININative) requires a multi command
1536         assembly
1537         added function genAssemblerEnd will be called to generate assembler Epilogue
1538
1539         * /src/SDCCsymt.c:
1540         added _JavaNative to debug info printing
1541
1542         * /src/SDCCmain.c: added option --tini-libid
1543         added port->do_assemble function (-mTININative) has a multi command assemble
1544
1545         * /src/SDCCglue.c: Disabled "constExpr" check
1546         added port->genAssemblerEnd function
1547
1548         * /src/SDCCglobl.h: Added option --tini-libid value
1549
1550         * /src/SDCCast.h:
1551         tookout optimizeCompare from the header (has no external references)
1552
1553         * /src/SDCCast.c: made one more function "static"
1554
1555 2001-12-23  Michael Hope  <michaelh@juju.net.nz>
1556
1557         * src/z80/mappings.i: Added z80asm support.
1558
1559         * src/z80/main.c: Added z80asm support on --asm=z80asm
1560
1561         * src/z80/gen.c: Fixed asm portability issues.
1562
1563         * src/asm.c (tvsprintf): Removed old code, added 'N' for function name.  For extern support.
1564
1565         * src/SDCCglue.c (printExterns): Added global/extern split.
1566
1567 2001-12-17  Bernhard Held  <bernhard@bernhardheld.de>
1568
1569         * support/regression/Makefile: added test for mcs51 model large
1570
1571         * support/regression/ports/mcs51-large/spec.mk: added test for mcs51 model large
1572
1573         * support/regression/ports/gbz80/spec.mk: added -mgbz80
1574
1575 2001-12-05  Michael Hope  <michaelh@juju.net.nz>
1576
1577         * src/diff.1 (Index): Many, many optmisiations.  Dhrystone up to 201.
1578
1579 1904-01-06  Michael Hope  <michaelh@juju.net.nz>
1580
1581         * src/z80/ralloc.c (packRegsForIYUse): Fixed the case where an operand is in direct space.
1582
1583         * src/z80/gen.c (makeFreePairId): Optimised IY load by using a spare pair.
1584
1585 2001-12-02  Bernhard Held  <bernhard@bernhardheld.de>
1586
1587         * src/mcs51/gen.c (genFunction): avoid excess "inc sp"
1588
1589         * support/regression/tests/simplefloat.c: Port to mcs51.
1590
1591 2001-11-25  Michael Hope  <michaelh@juju.net.nz>
1592         * support/regression/tests/bug-485362.c: Added.
1593
1594         * support/regression/tests/simplefloat.c (testDivNearOne): Added.
1595
1596         * src/z80/gen.c (aopOp): Fixed case where left and result are in the same spill loc and they have different sizes.
1597
1598         * src/z80/peeph.def: Added rules for optimising two byte compares on the same thing, and to optimise two ptr assign.
1599
1600         * src/z80/gen.c (aopDump): Added a dump function.
1601
1602 2001-11-25  Bernhard Held  <bernhard@bernhardheld.de>
1603         * sim/ucsim/s51.src/glob.cc: DS390 SFRs and bits added.
1604
1605         * sim/ucsim/s51.src/port.cc: Port 4 and 5 added.
1606
1607         * sim/ucsim/s51.src/regs51.h: DS390 SFRs added.
1608
1609         * sim/ucsim/s51.src/uc390.cc: Some details improved, CKRDY works for tinibios.
1610
1611         * sim/ucsim/s51.src/uc390cl.h: Work in progress.
1612
1613         * sim/ucsim/sim.src/uccl.h: 6 ports for DS390.
1614
1615         * support/regression/fwk/lib/testfwk.c: Run with tinibios.
1616
1617         * support/regression/ports/mcs51/spec.mk: Fine tuninig.
1618
1619         * support/regression/ports/ds390/support.c: Use tinibios.
1620
1621         * support/regression/ports/ds390/spec.mk: Fine tuning, use tinibios.
1622
1623 2001-11-23  Michael Hope  <michaelh@juju.net.nz>support/regression/tests/bug-460010.c
1624
1625         * src/z80/ralloc.c (packRegsForHLUse3): Changed to not pack into HL if anything is in direct space.
1626         (packRegsForHLUse3): Added packing support for send, cast, and return value from a call.
1627
1628         * src/z80/peeph.def: Added rules for optimising pushes of part of a pair.
1629
1630         * src/z80/gen.c (emitCall): Changed the stack fixup to not use HL.
1631
1632 2001-11-18  Michael Hope  <michaelh@juju.net.nz>
1633
1634         * src/z80/gen.c (genCmp): Fixed compare on unsigned.
1635
1636         * src/z80/ralloc.c (packRegsForHLUse3): Created and optimised.
1637         (packRegsForIYUse): Created and optimised.
1638
1639 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
1640
1641         * support/regression/tests/float.c (testFloatAdd): Fixed up warning.
1642 2001-11-18  Bernhard Held  <bernhard@bernhardheld.de>
1643
1644         * sdcc/support/regression/tests/bug-460010.c: fix seg violation on host
1645
1646         * sdcc/support/regression/tests/muldiv.c: fix output on mcs51
1647
1648         * sdcc/support/regression/tests/stacks.c: fix DSEG overflow on mcs51
1649
1650 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1651
1652         * sdcc/sim/device/lib/_gptrget.c: mem region 5 (idata) added
1653
1654         * sdcc/sim/device/lib/_gptrput.c: mem region 5 (idata) added
1655
1656 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1657
1658         * sdcc/sim/ucsim/globals.cc: New: IXRAM.
1659
1660         * sdcc/sim/ucsim/stypes.h: New: IXRAM.
1661
1662         * sdcc/sim/ucsim/s51.src/uc390.cc: New: IXRAM.
1663
1664 2001-11-07  Michael Hope  <michaelh@juju.net.nz>
1665
1666         * src/z80/ralloc.c (packRegsForHLUse): Banned IFXs from being packed into HL.
1667         (packRegsForHLUse): Added rule to pack address of/pointer get for itemps into HL for the Z80.
1668         (packRegsForAccUse2): Added rule to pack hbit IFXs into A.
1669
1670         * src/z80/main.c (_setDefaultOptions): Made float code re-entrant by default.
1671
1672         * src/z80/gen.c (aopGetLitWordLong): Added word support for floats.
1673         (genNotFloat): Added.
1674         (genUminusFloat): Added.
1675
1676         * device/lib/z80/Makefile: Added floating pt stubs.
1677
1678         * device/lib/Makefile.in (Z80SOURCES): Added floating pt support.
1679
1680         * src/z80/gen.c (genIpush): Fixed up a push of one byte when left is in a pair.
1681
1682         * device/lib/_fsadd.c (__fsadd): Fixed up return where the numbers are hugely different.
1683
1684 2001-11-07  Bernhard Held  <bernhard@bernhardheld.de>
1685
1686         * sdcc/sim/ucsim/s51.src/glob.cc: Minor fix.
1687
1688         * sdcc/sim/ucsim/s51.src/regs51.h: Minor fix.
1689
1690         * sdcc/support/regression/Makefile: Add port ds390.
1691
1692         * sdcc/support/regression/ports/mcs51/spec.mk: Minor change.
1693
1694         * sdcc/support/regression/ports/z80/spec.mk: Minor change.
1695
1696         * sdcc/support/regression/ports/ds390/spec.mk: Added.
1697
1698         * sdcc/support/regression/ports/ds390/support.c: Added.
1699
1700         * sdcc/support/regression/ports/ds390/uCsim.cmd: Added.
1701
1702         * sdcc/support/regression/ports/mcs51/timeout.c: Cut.
1703
1704         * sdcc/support/regression/fwk/lib/timeout.c: Paste.
1705
1706 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
1707
1708         * device/include/malloc.h: Added z80 and gbz80 support.
1709
1710         * device/lib/gbz80/heap.s: Added.
1711
1712         * device/lib/z80/heap.s: Added.
1713
1714         * device/lib/malloc.c: Added z80 and gbz80 support.
1715
1716         * support/regression/tests/malloc.c (testMalloc): Added.
1717
1718         * src/SDCCmain.c (parseCmdLine): Added support for -Wp.
1719
1720         * support/regression/tests/bug-478094.c: Added.
1721
1722         * src/z80/gen.c (commitPair): Fixed silly gbz80/z80 commit to static bug.
1723
1724 2001-11-04  Bernhard Held  <bernhard@bernhardheld.de>
1725
1726         * sdcc/sim/ucsim/s51.src/uc390cl.h: Improvement for ds390 to run regression tests
1727
1728         * sdcc/sim/ucsim/s51.src/uc390.h: Improvement for ds390 to run regression tests
1729
1730         * sdcc/sim/ucsim/s51.src/regs51.h: Improvement for ds390 to run regression tests
1731
1732         * sdcc/sim/ucsim/s51.src/glob.cc: Improvement for ds390 to run regression tests
1733
1734         * sdcc/support/regression/tests/bug-460010.c: Small change for ds390
1735
1736 2001-11-04  Michael Hope  <michaelh@juju.net.nz>
1737
1738         * src/z80/peeph-gbz80.def: Removed a bad sub optimisation.
1739
1740 2001-11-03  Michael Hope  <michaelh@juju.net.nz>
1741
1742         * support/regression/tests/bug-477927.c: Added.
1743
1744         * src/z80/peeph.def: Added minor rules.
1745
1746         * src/z80/gen.c (genPlusIncr): Added an extra plusinc rule.
1747
1748         * src/z80/peeph.def: Added jump optimisation modification.
1749
1750 2001-11-01  Michael Hope  <michaelh@juju.net.nz>
1751
1752         * src/SDCCmain.c (linkEdit): Added runtime path detection to the mcs51 port.
1753
1754 2001-10-30  Michael Hope  <michaelh@juju.net.nz>
1755
1756         * support/regression/tests/funptrs.c: Added.
1757
1758 2001-10-29  Michael Hope  <michaelh@juju.net.nz>
1759
1760         * src/z80/ralloc.c (packRegsForHLUse): Fixed up bad spill due to pushing one byte via HL.
1761
1762 2001-10-28  Michael Hope  <michaelh@juju.net.nz>
1763
1764         * src/z80/gen.c (genArrayInit): Made it work for on stack arrays.
1765
1766         * src/z80/main.c (gbz80_port =): Added rle support to the gbz80 port.
1767
1768         * src/z80/gen.c (genMinus): Fixed for where the result is one byte.
1769         (movLeft2ResultLong): Created.
1770
1771         * src/z80/ralloc.c (packRegsForHLUse): Added a couple of simple cases for the GB.
1772         (joinPushes): Added.  Joins two char pushes into a word push.
1773
1774 2001-10-27  Michael Hope  <michaelh@juju.net.nz>
1775
1776         * support/cpp2/Makefile.in (install): Added creation of dest dir.
1777
1778         * support/makebin/Makefile (install): Added creation of dest dir.
1779
1780 2001-10-24 Karl Bongers <karl@turbobit.com>
1781
1782         * configure.in, configure, Makefile, support/cpp: Removed cpp folder, since we have new cpp2 preprocessor code.
1783
1784 2001-10-21  Michael Hope  <michaelh@juju.net.nz>
1785
1786         * src/z80/ralloc.c: Turned off faulty pack for one use.
1787
1788         * src/z80/peeph-gbz80.def: Removed redundent restart options.
1789
1790         * src/z80/gen.c (genMult): Added native mul for constants on the z80 and gbz80.
1791
1792 2001-10-21  Bernhard Held  <bernhard@bernhardheld.de>
1793
1794         * support/regression/Makefile: Improved clean
1795
1796         * support/regression/ports/gbz80/spec.mk: Added clean
1797
1798         * support/regression/ports/host/spec.mk: Added clean
1799
1800         * support/regression/ports/z80/spec.mk: Added clean
1801
1802         * support/regression/ports/mcs51/spec.mk: Added clean, little improvements
1803
1804         * support/regression/ports/mcs51/timeout.c: little improvements
1805
1806 2001-10-17  Michael Hope  <michaelh@juju.net.nz>
1807
1808         * device/lib/malloc.c (MEMHEADER): Fixed against new pedantic pointers.
1809
1810         * support/regression/fwk/include/testfwk.h: Fixed up to use function pts correctly.
1811
1812         * support/regression/generate-cases.py: Fixed up to use function pts correctly.
1813
1814 2001-10-16  Bernhard Held  <bernhard@bernhardheld.de>
1815
1816         * support/regression/port/mcs51/spec.mk: add timeout for uCsim
1817
1818         * support/regression/port/mcs51/timeout.c: add timeout for uCsim
1819
1820 2001-10-13  Michael Hope  <michaelh@juju.net.nz>
1821         * src/z80/gen.c (emitCall): Fixed up missing spill of HL when used to assign the result value.
1822
1823         * src/z80/ralloc.c: Turned off pack for one use as it's quite broken.
1824
1825         * src/SDCCmain.c (linkEdit): Added support for passing a legacy command line through the processor.
1826
1827         * src/mcs51/main.c (_linkCmd): Added bin path to command.
1828
1829         * src/SDCCmain.c (initValues): Added support for when it it called just to link.
1830
1831         * as/mcs51/lklibr.c (libfil;): Turned off 'library file' message.
1832
1833         * src/SDCCval.c (constVal): Fixed usage of 'L' modifier problems on ppc.
1834
1835         * support/regression/tests/longor.c: Added.
1836
1837 2001-10-11  Bernhard Held  <bernhard@bernhardheld.de>
1838
1839         * as/mcs51/asdata.c: replaced FILENAME_MAX with PATH_MAX
1840
1841         * as/mcs51/aslink.h: define PATH_MAX
1842
1843         * as/mcs51/asm.h: define PATH_MAX
1844
1845         * as/mcs51/asmain.c: replaced FILENAME_MAX with PATH_MAX
1846
1847         * as/mcs51/asnoice.c: replaced FILENAME_MAX with PATH_MAX
1848
1849         * as/mcs51/lklex.c: replaced FILENAME_MAX with PATH_MAX
1850
1851         * as/mcs51/lkmain.c: replaced FILENAME_MAX with PATH_MAX
1852
1853         * src/SDCCglobl.h: define PATH_MAX
1854
1855         * src/SDCCmacro.c: replaced FILENAME_MAX with PATH_MAX
1856
1857         * src/SDCCmain.c: replaced FILENAME_MAX with PATH_MAX
1858
1859 2001-10-11  Michael Hope  <michaelh@juju.net.nz>
1860
1861         * src/z80/gen.c (gencjneshort): Fixed
1862
1863         * src/z80/ralloc.c (packRegsForHLUse): Added pack into HL for cast then ipush.
1864
1865 2001-10-09  Michael Hope  <michaelh@juju.net.nz>
1866
1867         * support/regression/tests/bug-469671.c: Added.
1868
1869         * src/z80/gen.c (shiftIntoPair): Fixed up warning.
1870
1871 2001-10-08  Michael Hope  <michaelh@juju.net.nz>
1872
1873         * src/SDCCmain.c: Added --fommit-frame-pointer option and implemented in the z80 port.
1874
1875         * src/z80/gen.c (genPlus): Fixed to work with extended stack.  Also fixed genMinus, genCmp.  genUMinus is still left.
1876
1877 2001-10-08  Bernhar Held  <bernhard@bernhardheld.de>
1878
1879         * src/SDCCmain.c (preProcess): added define SDCC_NOOVERLAY
1880
1881         * src/device/lib/_mulint.c  : removed hint: nooverlay bug
1882
1883         * src/device/lib/_mullong.c : removed hint: nooverlay bug
1884
1885         * src/device/lib/_divuint.c : removed hint: nooverlay bug
1886
1887         * src/device/lib/_divulong.c: removed hint: nooverlay bug
1888
1889         * src/device/lib/_moduint.c : removed hint: nooverlay bug
1890
1891         * src/device/lib/_modulong.c: removed hint: nooverlay bug
1892
1893 2001-10-07  Michael Hope  <michaelh@juju.net.nz>
1894
1895         * 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.
1896
1897         * support/Util/NewAlloc.c (freeTrace): Changed free for the gc case to not free at all.  Fixes runtime segfault.
1898
1899         * support/regression/tests/scott-compare3.c (c_abcd): Fixed up casts.
1900
1901 2001-10-07    <johan@FRIJA>
1902
1903         * device/lib/gets.c (gets): fixed the return value.
1904
1905 2001-10-06  Michael Hope  <michaelh@juju.net.nz>
1906         * src/SDCCmain.c (WRITE_SEG_LOC): Fixed up to use Safe_strdup.
1907
1908         * 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.
1909
1910         * 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.
1911
1912         * src/z80/gen.c (genZ80Code): Added de-allocation via trace support.
1913
1914         * src/pic/gen.c: Removed Safe_strdup.
1915
1916         * configure.in: Added option to enable libgc support.
1917
1918         * src/SDCCbitv.c (bitVectnBitsOn): Optimised.
1919         (bitVectUnion): Optimised.
1920         (bitVectIntersect): Optimised.
1921         (bitVectBitsInCommon): Optimised.
1922         (bitVectCplAnd): Optimised.
1923
1924         * support/makebin/makebin.c (usage): Removed getopt as mingw32 doesn't have it.  Sigh.
1925
1926 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1927
1928         * src/SDCCmain.c: distinguish between assembler debug and plain options
1929
1930         * src/avr/main.c:   remove standard assembler options
1931
1932         * src/ds390/main.c: remove standard assembler options
1933
1934         * src/mcs51/main.c: remove standard assembler options
1935
1936         * src/port.h: removed "PENDING" comment
1937
1938 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1939
1940         * src/device/lib/_mulint.c  : new, with assember functions
1941
1942         * src/device/lib/_mullong.c : new, with assember functions
1943
1944         * src/device/lib/_divuint.c : with assember functions
1945
1946         * src/device/lib/_divsint.c : with assember functions
1947
1948         * src/device/lib/_divulong.c: with assember functions
1949
1950         * src/device/lib/_divslong.c: with assember functions
1951
1952         * src/device/lib/_moduint.c : with assember functions
1953
1954         * src/device/lib/_modsint.c : with assember functions
1955
1956         * src/device/lib/_modulong.c: with assember functions
1957
1958         * src/device/lib/_modslong.c: with assember functions
1959
1960         * src/device/lib/libint.lib:  replaced _muluint.c  and _mulsint.c  by _mulint.c
1961
1962         * src/device/lib/liblong.lib: replaced _mululong.c and _mulslong.c by _mullong.c
1963
1964         * src/device/lib/Makefile.in: replaced _muluint.c  and _mulsint.c  by _mulint.c
1965                                       replaced _mululong.c and _mulslong.c by _mullong.c
1966
1967 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
1968
1969         * src/SDCCsymt.c: sequence of specifiers in pintTypeChain() corrected
1970
1971 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
1972
1973         * src/SDCCglue.c: test, if win32api is available for MINGW
1974
1975 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
1976
1977         * src/SDCCsymt.c: no more _modifier in printTypeChain()
1978         * support/regression/tests/driverstruct.c: REENTRANT for mcs51
1979         * support/regression/ports/gbz80/spec.mk: removed GENERIC
1980         * support/regression/ports/host/spec.mk: removed GENERIC
1981         * support/regression/ports/mcs51/spec.mk: removed GENERIC
1982         * support/regression/ports/z80/spec.mk: removed GENERIC
1983
1984 2001-10-01  Michael Hope  <michaelh@juju.net.nz>
1985
1986         * support/regression/fwk/lib/testfwk.c (__printf): Removed GENERIC.
1987
1988         * support/regression/tests/bug-467035.c: Created.
1989
1990 2001-10-01    <johan@FRIJA>
1991
1992         * src/SDCC.y: fixed bug #466586 part 1
1993
1994 2001-10-01  Johan Knol <johan.knol@iduna.nl>
1995
1996         * SDCCicode.c: z80 has no generic pointers
1997         * removed -s from strip in all Makefile(.in)'s. It is not needed, but Solaris chocks on it.
1998         
1999 2001-09-30  Michael Hope  <michaelh@juju.net.nz>
2000
2001         * sim/ucsim/cmd.src/Makefile.in ($(PRJDIR)/libcmd.a): Changed all ar references to $(AR) for Solaris.
2002
2003 2001-09-29  Michael Hope  <michaelh@juju.net.nz>
2004
2005         * Makefile (sdcc-libs): Added makebin to the list of standard targets.
2006
2007         * support/regression/ports/z80/spec.mk: Updated to use env for sdcc bin dir for automatic regression.
2008
2009 2001-09-25  Michael Hope  <michaelh@juju.net.nz>
2010
2011         * configure.in: Fixed up so that ucsim is only configured once.
2012
2013         * support/cpp2/configure.in: Fixed to use the program transform to append the .exe for the win32 build.
2014
2015         * src/SDCCutil.c (getPrefixFromBinPath): Fixed up to work with win32 in all of its glory.
2016         (getPathDifference): As above.
2017
2018         * src/SDCCmain.c (preProcess): Changed to use a temporary file in a proper temp directory.  Fixed case where pre-processing only.
2019
2020         * src/SDCCglue.c (tempfilename): Added function for pre-processor.
2021
2022 2001-09-23  Michael Hope  <michaelh@juju.net.nz>
2023         * .version: Updated to 2.3.1
2024
2025         * src/z80/main.c (z80_port =): Added macro based linker and assembler command line support.
2026         Added copyright header.
2027
2028         * src/SDCCmain.c: Shifted various functions into SDCCutil.c
2029         (assemble): Added support for macro based assembler commands.
2030         (linkEdit): Added support for macro based linker commands.
2031         (preProcess): Changed the pre-processor to use macros.
2032         (_setPaths): Added functionality to autodetect the include, lib and bin dir paths.
2033         (_discoverPaths): Added support for overriding the install directory using the SDCCDIR env variable.
2034
2035         * device/lib/z80/crt0.s: Added module name for debugging.
2036
2037 2001-09-20  Michael Hope  <michaelh@juju.net.nz>
2038
2039         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
2040
2041         * src/SDCChasht.c (hTabDeleteByKey): Fixed delete as it would delete the last item from a bucket even if it wasn't the real one.
2042
2043         * src/SDCCglue.c: Moved gc_strdup to SDCCutil.c
2044
2045         * src/Makefile.in: Added SDCCmacro and SDCCutil
2046
2047 2001-09-19  Michael Hope  <michaelh@juju.net.nz>
2048
2049         * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
2050
2051 2001-09-16    <johan@FRIJA>
2052
2053         * 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.
2054
2055 2001-09-15    <johan@FRIJA>
2056
2057         * src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
2058         * src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
2059
2060 2001-09-11    <johan@FRIJA>
2061
2062         * src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
2063
2064 2001-09-10  Michael Hope  <michaelh@juju.net.nz>
2065
2066         * support/regression/tests/bug-460444.c: Added test case.
2067
2068         * src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
2069         (genCast): Added justification for all of the asserts.
2070
2071 2001-09-10  Bernhard Held <bernhard@bernhardheld.de>
2072
2073         * support/regression/support.c: _xdata replaced by xdata
2074
2075         * support/regression/spec.mk: removed _generic
2076
2077 2001-09-09  Michael Hope  <michaelh@juju.net.nz>
2078
2079         * src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
2080
2081         * src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
2082         (genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
2083
2084         * src/z80/peeph.def: Added a rule to optimise shift then compare.
2085
2086         * support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
2087
2088         * support/regression/tests/bug-460010.c: Added test case.
2089
2090         * support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
2091
2092 2001-09-09  Bernhard Held <bernhard@bernhardheld.de>
2093
2094         * support/regression/Makefile: inter-port-clean adjusted for mcs51
2095
2096         * support/regression/testfwk.c: removed workaround for bug #436344
2097
2098         * support/regression/tests/bp.c: use less memory with mcs51
2099
2100         * support/regression/tests/bug-441448.c: use less memory
2101
2102         * support/regression/tests/ports/mcs51/spec.mk: cleanup, use --stack-after-data
2103
2104         * support/regression/collate-results.py: typo
2105
2106 2001-09-08  Michael Hope  <michaelh@juju.net.nz>
2107
2108         * support/regression/tests/fetchoverlap.c: Added new test case.
2109
2110         * support/regression/tests/bp.c: Added new test case.
2111
2112         * support/regression/tests/bug-448984.c: Added new test case.
2113
2114         * support/regression/tests/pow2shifts.c: Added new test case.
2115
2116         * src/z80/gen.c: Turned off the noise it normally generates for the release.
2117         (genlshTwo): Fixed right shift for count > 8.
2118
2119         * src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
2120
2121 2001-09-08    <johan@FRIJA>
2122
2123         * src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
2124
2125 2001-09-07    <johan@FRIJA>
2126
2127         * src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
2128
2129         * src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
2130
2131 2001-09-06    <johan@FRIJA>
2132
2133         * src/SDCC.y: this could be a fix for bug #458744 (1.37)
2134         * bernhard noted me at this: "() equals to (void)" (1.38)
2135
2136 2001-09-05    <johan@FRIJA>
2137
2138         * src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
2139
2140 2001-09-04    <johan@FRIJA>
2141
2142         * src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
2143
2144
2145 2001-09-04  Paul Stoffregen  <paul@pjrc.com>
2146
2147         * pragma noinduction broke memcpy on mcs51 large model.  Moved it inside z80 optimization
2148
2149 2001-09-03  Michael Hope  <michaelh@juju.net.nz>
2150
2151         * link/z80/aslink.h: Fixed path for PATH_MAX
2152
2153 2001-09-02  Michael Hope  <michaelh@juju.net.nz>
2154
2155         * src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
2156
2157         * support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
2158
2159         * support/regression/tests/uminus.c: Added a test for the unary minus operator.
2160
2161         * 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.
2162
2163 2001-09-01  Michael Hope  <michaelh@juju.net.nz>
2164
2165         * src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
2166         (genCmp): Fixed up genCmp for the GB with longs.
2167
2168         * device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
2169
2170         * support/regression/ports/host/spec.mk: Updated to compile with the new type specifiers.
2171
2172         * device/lib/Makefile.in (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
2173
2174         * device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
2175
2176 2001-08-30  Paul Stoffregen  <paul@pjrc.com>
2177
2178         * added peepholes 223 to 231 to mcs51 port.  These improve code when using large model.
2179
2180 2001-08-30  Michael Hope  <michaelh@juju.net.nz>
2181
2182         * 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.
2183
2184         * src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
2185
2186 2001-08-29  Michael Hope  <michaelh@juju.net.nz>
2187
2188         * link/z80/aslink.h: Fixed long file name support.  Is now based off PATH_MAX instead of a constant.
2189
2190         * src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
2191
2192 2001-08-30 Bernhard Held   <bernhard@bernhardheld.de>
2193
2194   * sim/ucsim/configure:    little improvement of Cygwin-detection      
2195   * sim/ucsim/configure.in: little improvement of Cygwin-detection      
2196   * sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
2197   * support/regression/tests/bug-221100.c: small changes for mcs51
2198   * support/regression/tests/bug-221168.c: small changes for mcs51
2199   * support/regression/tests/bug-227710.c: small changes for mcs51
2200   * support/regression/tests/staticinit.c: small changes for mcs51
2201   * as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
2202   * as/mcs51/lklex.c:  accept everything as symbol name in rel-files, bug fix ID 452601
2203   * as/mcs51/lksym.c:  accept everything as symbol name in rel-files, bug fix ID 452601