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