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