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