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