1 2003-06-07 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
3 * device/lib/_atof.c, device/lib/Makefile.in, device/include/stdlib.h,
4 device/lib/libfloat.lib: added atof function.
6 2003-06-04 Bernhard Held <bernhard@bernhardheld.de>
8 * doc/sdccman.lyx: updated to Lyx 1.3
9 * doc/cdbfileformat.lyx: updated to Lyx 1.3
10 * doc/test_suite_spec.lyx: updated to Lyx 1.3
11 * doc/Makefile: added fix for the \tabularnewline problem, thanks to Jesus
13 2003-06-03 Bernhard Held <bernhard@bernhardheld.de>
15 * src/SDCCpeeph.c: separate peepRules2pCode() for pic16 by "Vangelis Rokas" <vrokas@otenet.gr>
17 2003-06-02 Frieder Ferlemann <Frieder.Ferlemann@web.de>
19 * doc/sdccman.lyx: cvs revision keywords, passing pdf information in latex preamble,
20 additions to the "related tools/documentation" section
22 2003-06-02 Bernhard Held <bernhard@bernhardheld.de>
24 * src/SDCCglue.c (tempfileandname): added check for missing TMP/TEMP/TMPDIR variable
26 2003-05-29 Bernhard Held <bernhard@bernhardheld.de>
28 * src/pic/device.c: added 16F819, patch by "David I. Lehn" <dlehn@vt.edu>
29 * src/SDCCcse.c (algebraicOpts): fixed "c * 1"
31 2003-05-28 Bernhard Held <bernhard@bernhardheld.de>
33 * doc/sdccman.lyx: fix double dash and other minor things
34 * doc/Makefile: fix double dash
36 2003-05-28 Karl Bongers(patches from Martin Helmling)
37 * debugger/mcs51/sdcdb.c,cmd.c,break.c and .h files. Martin adds
38 condition and ignore commands.
40 2003-05-28 Frieder Ferlemann <Frieder.Ferlemann@web.de>
42 * doc/sdccman.lyx: Changes all over, index improved, smaller margins. The manual
43 is in parts still quite out of date, I did changes as far as I felt makes sense
44 for a non-native english speaker.
45 Please feel free to add to the manual or to correct my changes.
46 * doc/Makefile: undid touching the date of intermediate tex files.
48 2003-05-26 Frieder Ferlemann <Frieder.Ferlemann@web.de>
50 * doc/sdccman.lyx: Manual has an index now
52 2003-05-25 Bernhard Held <bernhard@bernhardheld.de>
54 Finalize muluint/mulsint and mululong/mulslong merging:
55 * device/lib/_mulint.c
56 * device/lib/_mullong.c
57 * device/lib/gbz80/mul.s
58 * device/lib/gbz80/stubs.s
59 * device/lib/z80/mul.s
60 * device/lib/z80/stubs.s
61 * src/SDCCsymt.c (initCSupport)
63 2003-05-25 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
65 * as/mcs51/lkaomf51.c: Address space 'z' was missing.
66 * src/avr/avr.dsp, src/ds390/ds390.dsp, src/mcs51/mcs51.dsp,
67 src/pic/pic.dsp, src/pic16/pic16.dsp, src/xa51/xa51.dsp,
68 src/x80/z80.dsp: peep.rul is bigger now, so /Zm1000 is used
71 2003-05-25 Frieder Ferlemann <Frieder.Ferlemann@web.de>
73 * src/mcs51/peeph.def: added rules 244.x, 245.x. Although they pass
74 the regression tests I'm not brave enough to enable 245.b, 245.c
75 * doc/sdccman.lyx: added latex preamble for hyperref package.
76 Using pdflatex this will give you a hyperlinked pdf file with
77 bookmarks. (prepend '%' before /usepackage if this breaks something)
79 2003-05-24 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
81 * doc/sdccman.lyx: updated information about .adb files (fixed bug 742649)
83 2003-05-22 Bernhard Held <bernhard@bernhardheld.de>
85 * src/pic16/pcode.c (pic16_get_op_from_instruction): fixed a gcc 3.x warning
87 2003-05-21 <johan@balder>
89 * src/SDCCglue.c (printIval): fixed bug #739934
91 2003-05-19 Bernhard Held <bernhard@bernhardheld.de>
93 Applied patch from bug 737905 (renamed yylineo to mylineno):
100 * src/pic16/pcode.c: Cleaned warnings
101 * src/pic16/pcodeflow.c: Cleaned warnings
102 * src/pic16/pcoderegs.c: Cleaned warnings
104 2003-05-19 Scott Dattalo <scott@dattalo.com>
106 * src/pic16/pcode.c: Cleaned warnings
107 * src/pic16/pcodepeep.c: Cleaned warnings
108 * src/pic16/ralloc.c: Cleaned warnings
110 2003-05-19 Bernhard Held <bernhard@bernhardheld.de>
112 * doc/sdccman.lyx: fixed bug 739745
113 * src/pic16/pcode.c (pic16_get_op): fixed warning on alpha
115 2003-05-18 Bernhard Held <bernhard@bernhardheld.de>
117 * src/port.h: removed DEFAULT_PORT, it's not yet pic16 ;-)
118 it can be defined with CFLAGS when running configure
119 * src/SDCCmain.c: fixed compiling + linking with object files
121 2003-05-18 Vangelis Rokas (vrokas@otenet.gr)
123 * configure.in: configure for pic16 port,
124 added --disable-pic16-port
125 * sdccconf_in.h: added macro OPT_DISABLE_PIC16
126 * src/SDCCmain.c: linkOptions is changed to set *,
127 added if/endif conditional macros to remove options help
128 messages from optionsTable when a port is not configured, added
129 support for the PIc16 port in the ports table, when executing
130 the compiler with no port specified on command line, a default
131 port is selected with the new macro DEFAULT_PORT which is
132 defined in port.h, in setDefaultOptions() linkOptions is removed
133 from initialization assignment, since now it is a set,
134 parseCmdLine uses setParseWithComma for linkOptions, in
135 linkEdit() linkOptions are accessed with new function indexSet()
136 which returns the i'th item of a set variable. See SDCCset.c, in
137 linkEdit() when calling buildCmdLine(), added linkOptions as
138 last argument. Now users can pass arguments to gplink via the
139 -Wl option, main() uses pic16glue() to glue up pic16 programs
140 * src/SDCCpeeph.c: various changes to support pic16
141 * src/SDCCset.c: added function void *indexSet(set *, int) to
142 return the i'th item of the set
143 * src/SDCCset.h: added function prototype for indexSet()
144 * src/SDCCsymt.c: in checkSClass(), added support for PIC16
145 * src/clean.mk: added pic16 in CLEANALLPORTS variable
146 * src/port.h: added TARGET_ID_PIC16,TARGET_IS_PIC16 macro,
147 added macro DEFAULT_PORT
148 * src/pic/main.c: corrected arguments of gplnk in _linkCmd
149 * src/pic16/gen.c: bug fix in genCpl(), now the correct code is
151 * src/pic16/glue.c: commented out some error producing lines
152 * src/pic16/main.c: __config directives are commented out to stop
153 gpasm complaining and test the linkage with gplink, _linkCmd and
154 _asmCmd changed to be more gplink and gpasm friendly
155 * src/pic16/peeph.def: peep rule 3 is commented out, since it
156 produced an error when parsed, peep rule 12 is added to utilize
157 movff, but it is commented out since the pCode does not support
158 yet a command with 2 address arguments
160 2003-05-18 <johan@balder>
162 * src/ds390/gen.c (genArrayInit): removed obsolete and buggy ARRAYINIT
163 * src/ds390/main.c (genArrayInit): removed obsolete and buggy ARRAYINIT
164 2003-05-17 Karl Bongers(apply patches from Martin Helmling)
166 * debugger/mcs51/sdcdb.c,cmd.c,break.c and .h files.
167 Added feature to script commands from file.
169 2003-05-14 Bernhard Held <bernhard@bernhardheld.de>
171 * device/lib/_strtok.c: fixed bug #734355 by Lenny Story and Tim Woodall
172 * src/SDCCutil.c: include ctype.h for win32
174 2003-05-13 Bernhard Held <bernhard@bernhardheld.de>
176 * src/pic16/*: removed CR from many files, reported by Vangelis Rokas
178 2003-05-12 Karl Bongers(apply development patches from Martin Helmling)
180 * debugger/mcs51/sdcdb.c,simi.c,cmd.c,break.c and .h files.
181 Fixed so you can set breakpoints prior to run, run does not stop
182 on entry now. Add tbreak. Other enhancements and fixes for use
185 2003-05-12 Borut Razem <borut.razem@siol.net>
187 * src/SDCCmain.c: fixed the problem with searching the DATADIR as the last resort on *nix
189 2003-05-11 Borut Razem <borut.razem@siol.net>
191 * src/SDCCutil.c: WIN32 version of getBinPath() calls GetModuleFileName() to determine
192 the path of bin directory, so that PATH is the only env. variable, which has to be set
193 in case of standard installation.
194 * src/ds390/ds390.dsp: increased value of /Zm option to 1000
195 * src/pic/main.c: add quotes to file name parameters for gplink and gpasm
196 * src/SDCCglobl.h, src/SDCCmain.c, doc/sdccman.lyx: added --print-search-dirs command line option
198 2003-05-04 Bernhard Held <bernhard@bernhardheld.de>
200 * src/SDCCmain.c (linkEdit): fixed buffer overflow for gbz80
201 * support/regression/Makefile: inter-port-clean is no longer nesessary, the
202 temp files are in the port dir; clean the gen/test directory when
203 generating new test.c
204 * support/regression/ports/host/spec.mk: defined OBJEXT for target clean
205 * support/regression/tests/vaargs.c: fixed gcc 3.3 warning
206 * support/regression/tests/zeropad.c: added
208 2003-05-09 <johan@balder>
210 * src/SDCCglue.c: fixed bug #597940
212 2003-05-05 Karl Bongers(apply patches from Martin Helmling)
214 * debugger/mcs51/sdcdb.c,simi.c,cmd.c,symtab.c and .h files.
215 cache sfr, optimize next,step, fix off by one sourceline,
216 support ddd list function.
217 * sim/ucsim/cmd.src/newcmd.cc - small fix for sdcdb use.
219 2003-05-04 Bernhard Held <bernhard@bernhardheld.de>
221 * support/regression/HTMLgen.py: added compare_s2f()
222 * support/regression/Makefile: redo 1.27
223 * support/regression/generate-cases.py: redo 1.5
225 2003-04-30 Bernhard Held <bernhard@bernhardheld.de>
227 * support/regression/tests/float.c: workaround 33 bit hex constant
228 * support/regression/tests/simplefloat.c: fix division for host
230 2003-04-29 Scott Dattalo <scott@dattalo.com>
232 * src/pic/pcoderegs.c Applied patch from Jim Hawkridge <jim@jimhawkridge.uk.eu.org>
233 that tame's the PIC's over-aggressive optimizer.
235 2003-04-29 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
237 * src.dsw, link/z80/aslink.h, link/z80/linkz80.dsp: z80 linker
240 2003-04-29 Kevin Vigor <kevin@vigor.nu>
242 Initial support for DS80C400. "Hello world" runs on TINIm400
245 2003-04-28 Karl Bongers(apply patches for Martin Helmling)
247 * debugger/mcs51/sdcdb.c,simi.c,cmd.c,symtab.c and .h files.
248 * Some notes on ddd usage added in debugger/README
249 Martin Helmling adding more features and fixes for ddd GUI debugger.
250 Code added for nexti, stepi, up, down, and other adjustments.
252 2003-04-28 Scott Dattalo <scott@DATTALO.COM>
254 * src/pic/pCodepeep.c non-wildcard asmops are now handled
255 * src/pic/peeph.def Added two rules to optimize carry manipulation
256 * src/pic/* removed debug printfs
258 2003-04-28 Bernhard Held <bernhard@bernhardheld.de>
260 * debugger/mcs51/cmd.c: added header newalloc.h
262 2003-04-26 Bernhard Held <bernhard@bernhardheld.de>
264 * as/Makefile: new EXEEXT
265 * as/z80/Makefile: remove trailing slash of BUILDIR
266 * as/z80/clean.mk: new EXEEXT
267 * Makefile.common.in: add to CFLAGS (and others), don't replace it
268 * support/cpp2/Makefile.in: new EXEEXT
269 * src/pic/glue.c (pic14emitRegularMap): fixed warning
271 2003-04-24 Bernhard Held <bernhard@bernhardheld.de>
273 Cygwin's gcc always appends .exe: 'gcc -o a a.c' creates a.exe;
274 EXEEXT was introduced to fix all related problems with targets
275 "clean", "install" and "uninstall"; a couple of further flaws
276 especially with "clean" have been fixed too
277 * as/mcs51/Makefile.in
282 * debugger/mcs51/Makefile.in
283 * debugger/mcs51/clean.mk
285 * link/z80/Makefile.in
288 * packihx/Makefile.in
292 * sim/ucsim/avr.src/Makefile.in
293 * sim/ucsim/avr.src/clean.mk
294 * sim/ucsim/s51.src/Makefile.in
295 * sim/ucsim/s51.src/clean.mk
296 * sim/ucsim/xa.src/Makefile.in
297 * sim/ucsim/xa.src/clean.mk
298 * sim/ucsim/z80.src/Makefile.in
299 * sim/ucsim/z80.src/clean.mk
300 * sim/ucsim/main_in.mk
301 * sim/ucsim/packages_in.mk
302 * sim/ucsim/gui.src/Makefile.in
303 * sim/ucsim/gui.src/serio.src/Makefile.in
304 * sim/ucsim/gui.src/serio.src/clean.mk
307 * support/cpp2/Makefile.in
308 * support/cpp2/clean.mk
309 * support/makebin/Makefile
310 * support/makebin/clean.mk
311 * support/scripts/sdcc_mingw32: --program-suffix no longer needed
312 * doc/sdccman.lyx: --program-suffix no longer needed
314 2003-04-23 Karl Bongers(apply patches for Martin Helmling)
316 * debugger/mcs51/sdcdb.c,simi.c,cmd.c,..
317 Martin Helmling added support for ddd GUI debugger.
318 Code added to display assembly, set variables, and other commands
321 2003-04-23 Bernhard Held <bernhard@bernhardheld.de>
323 * as/Makefile: fix target clean
324 * as/clean.mk: fix target clean
325 * as/z80/clean.mk: fix target clean
327 2003-04-22 Bernhard Held <bernhard@bernhardheld.de>
329 * Makefile.common.in: added @EXEEXT@
330 * configure.in: removed all mingw32 stuff
331 * configure: rebuilt from configure.in
332 * doc/sdccman.lyx: updated section "installation"
333 * support/scripts/sdcc_mingw32: adapted to configure
334 * support/scripts/sdcc_cygwin_mingw32: added
336 2003-04-22 Scott Dattalo <scott@dattalo.com>
338 * src/pic Added object file support for the PIC port
339 * src/pic Applied patch from Craig Franklin (this started the object file support)
340 * src/regression Updated the PIC regression tests for object files
342 2003-04-20 Borut Razem <borut.razem@siol.net>
344 * sdcc/as/mcs51/lklex.c: make getfid() more robust and fixed gcc warning:
345 lklex.c: In function `getfid':
346 lklex.c:203: warning: array subscript has type `char'
347 * src/SDCCglobl.h: small change in stack handling macros, to avoid crash when compiled
348 with MSVC with global optimization enabled (probably an cl compiler bug ;-)
349 * support/Util/SDCCerr.c, support/Util/SDCCerr.h: added function fatal(), called from
350 stack handling macros
352 2003-04-19 Borut Razem <borut.razem@siol.net>
354 * "handling space characters in file path" task:
355 * src/SDCCmacro.c: fixed bug in handlig quote at the end of line
356 * support/Util/BuildCmd.c: define par as NULL if parameter value is invalid
357 * support/Util/MySystem.h: make it self-sufficient
358 * src/avr/main.c, src/ds390/main.c, src/mcs51/main.c, src/pic/main.c, src/xa51/main.c,
359 src/z80/main.c, sdcc/as/mcs51/lklex.c:
360 handling space characters in file path
361 * src/SDCCmain.c: introduced setDataPaths() function, {datadir} macro
362 (it will be used by assemblers, which have their own includes, e.g. gpasm)
363 * support/Util/MySystem.c: handling space characters in executable's path
365 2003-04-19 Bernhard Held <bernhard@bernhardheld.de>
367 * as/z80/Makefile: fix permanent rebuild of z80
368 * sim/ucsim/gui.src/Makefile.in: target "install" builds the same packages as target "all"
369 * support/regression/tests/bitfields.c: added Johan's bitfields.c
371 2003-04-18 Kevin Vigor <kevin@vigor.nu>
373 * src/SDCCopt.c: add special case optimization to replace modulo by
374 a power of two with a bitwise AND.
376 2003-04-18 <johan@balder>
378 * src/mcs51/gen.c (getFreePtr): fixed bug #635354
380 2003-04-17 <johan@balder>
382 * src/mcs51/ralloc.c (packRegsForAssign): fixed bug #716790 and removes lot's of redundant register usage around function calls
383 * src/mcs51/ralloc.c (packRegisters): fixed bug #720667
385 2003-04-13 Borut Razem <borut.razem@siol.net>
387 * doc/sdccman.lyx: updated info about #pragma SAVE/RESTORE nesting
388 * configure.in, configure: fixed problems on cygwin/WinCVS environmet with ports.* line endings;
389 fixed mingw problem in adl_NORMALIZE_PATH
391 2003-04-12 Borut Razem <borut.razem@siol.net>
393 * fixed "#pragma SAVE/RESTORE can not be nested":
394 * src/SDCC.lex: reworked pragma handling functions
395 * sdcc/src/SDCCglobl.h: reworked stack handling macros
396 * support/Util/SDCCerr.c, support/Util/SDCCerr.h: added E_STACK_VIOLATION error
398 2003-04-12 Bernhard Held <bernhard@bernhardheld.de>
400 * src/SDCCutil.c (pathEquivalent): defined but not used
401 * debugger/mcs51/sdcdb.c: replace SDCC_LIB_DIR
402 * configure.in: remove sdcc_datadir, sdcc_lib_dir and sdcc_include_dir
403 * configure: rebuilt from configure.in
404 * sdccconf_in.h: remove SDCC_LIB_DIR and SDCC_INCLUDE_DIR
405 * sdcc_vc_in.h: remove SDCC_LIB_DIR and SDCC_INCLUDE_DIR
406 * device/include/Makefile.in: replace sdcc_datadir
407 * device/lib/Makefile.in: replace sdcc_datadir
408 * Makefile.common.in: add LDFLAGS from configure
409 * packihx/Makefile.in: use LDFLAGS
410 * src/Makefile.in: use LDFLAGS
411 * support/cpp2/Makefile.in: add LDFLAGS from configure
412 * support/makebin/Makefile: use LDFLAGS
413 * .version: bumped version number to 2.3.5
415 2003-04-12 Borut Razem <borut.razem@siol.net>
417 * completed "different paths" task:
418 * src/SDCCmacro.c: fixed bug in handling quotes
419 * src/SDCCutil.c, src/SDCCutil.c: rewritten getPrefixFromBinPath()
420 * src/SDCCmain.c: _discoverPaths() replaced with setBinPaths(), setIncludePath() and setLibPath()
422 2003-04-12 Bernhard Held <bernhard@bernhardheld.de>
424 * src/pic/pcoderegs.c (Remove1pcode): fix warning on alpha
426 2003-04-11 kevin Vigor <kevin@vigor.nu>
428 * ds390/gen.c ds390/peeph.def: fix bug 706781
430 2003-04-11 Borut Razem <borut.razem@siol.net>
432 * support/Util/dbuf.c, support/Util/dbuf.h: update to version 1.1.1 - re-added C++ stuff to make it still more portable
434 2003-04-10 Scott Dattalo <scott@dattalo.com>
436 * src/pic/* Applied the pointer-to-function patch from Steve Tell.
437 * src/pic/* Fixed several pointer bugs. (PIC port broke when the ruonly bit was
438 set - this bit used to not be set...).
439 * src/pic/gen.c Fixed buf 609268 ==> x = (x+1) & 0xf; generated
441 * src/regression/and2.c added to test bug 609268
442 * src/regression/Makefile added and2.c to regression test
445 2003-04-08 <johan@CP255758-A>
447 * src/mcs51/gen.c (gen51Code): display reg usage in --icode-in-asm
448 * src/mcs51/ralloc.c (serialRegAssign): update the registers in use and save some slocs
449 * src/SDCCicode.h: added riu to show the register usage in --icode-in-asm
451 2003-04-07 Bernhard Held <bernhard@bernhardheld.de>
453 * configure.in: fully support prefix, exec_prefix, datadir, docdir;
455 * support/cpp2/Makefile.in: fix bug #487815
456 * configure: rebuilt from configure.in
457 * Makefile.common.in: docdir changed, new path suffixes
458 * sdccconf_in.h: new RETSIGTYPE, and other PATHs
459 * sdcc_vc_in.h: reflect changes from sdccconf.h
460 * src/SDCCglobl.h: remove *SEPARATOR_CHARS, they are now in sdccconf.h
461 * src/SDCCutil.h: remove BINDIR hack
462 * doc/sdccman.lyx: update new path hierarchy
464 2003-04-06 Paul Stoffregen <paul@pjrc.com>
466 * src/SDCCpeeph.c: added okToRemoveSLOC test
468 2003-04-06 Paul Stoffregen <paul@pjrc.com>
470 * device/lib/printf_fast.c: added leading zero format ("%06d", etc)
472 2003-04-06 Paul Stoffregen <paul@pjrc.com>
474 * src/SDCCpeeph.c: added labelIsReturnOnly test
475 * src/mcs51/peeph.def: Peephole 244: replace ljmp to ret with ret
477 2003-04-05 <johan@balder>
479 * src/SDCCcse.c (cseAllBlocks): fixed bug #460088
480 * src/SDCCloop.c (DEFSETFUNC): fixed bug #460088
481 * src/SDCCopt.c (eBBlockFromiCode): fixed bug #460088
482 * src/SDCCast.c: fixed a warning
483 * src/SDCCast.h: fixed a warning
484 * src/SDCCicode.c (operandFromAst): fixed a warning
486 2003-04-04 <johan@balder>
488 * src/SDCCloop.c (DEFSETFUNC): undid the fix for bug #519584
489 * src/SDCCast.c (decorateType): fixed bug #715076
490 * src/SDCC.y: fixed bug #702907
492 2003-04-03 <johan@balder>
494 * device/lib/_mulint.c (_muluint): new #pragma LESS_PEDANTIC
495 * src/SDCCopt.c (eBBlockFromiCode): new #pragma LESS_PEDANTIC
496 * src/SDCCglobl.h (PRAGMA_LESSPEDANTIC): new #pragma LESS_PEDANTIC
497 * src/SDCC.lex (doPragma): new #pragma LESS_PEDANTIC
498 * src/SDCCmain.c (parseCmdLine): new #pragma LESS_PEDANTIC
500 2003-04-03 Bernhard Held <bernhard@bernhardheld.de>
502 * _decdptr.c: fix return values
503 * _gptrget.c: fix return values
504 * _gptrgetc.c: fix return values
505 * _gptrput.c: fix return values
506 * _mulint.c: fix return values
507 * as/z80/Makefile: fix 'make -j' problem
509 2003-04-02 Bernhard Held <bernhard@bernhardheld.de>
511 * Makefile.common.in: unused PORT, SCC and SAS removed, fixed docdir
512 * configure.in: big cleanup, updated to autoconf 2.5x
513 * configure: rebuilt from configure.in
514 * sdccconf_in.h: new RETSIGTYPE, and other PATHs
515 * sdcc_vc_in.h: reflect changes from sdccconf.h
516 * doc/Makefile: fixed a flaw in "make install"
518 2003-04-02 <johan@balder>
520 * src/ds390/gen.c (genCmp): no comments
521 * src/mcs51/gen.c (genCmp): no comments
522 * src/SDCCopt.c (eBBlockFromiCode): detect missing return values
523 * src/SDCCast.c (ast_print): fixed the function type in --dumptree
525 2003-04-01 Bernhard Held <bernhard@bernhardheld.de>
527 * support/regression/generate-cases.py: place generated file in given sub directory
528 * support/regression/ports/host/spec.mk: prevent removal of testfwk.o
529 * support/regression/Makefile: improvements for 'make -j';
530 side effect: it's simpler and faster now
532 2003-03-31 Borut Razem <borut.razem@siol.net>
534 * src/z80/main.c: link-{port} and as-{port} defined without path
535 * src/src.dsp: support/Util/MySystem.h and src/SDCCutil.h added to project
537 2003-03-31 Bernhard Held <bernhard@bernhardheld.de>
539 * Makefile, src/Makefile.in: add dependencies, so that 'make -j' works
541 2003-03-30 Borut Razem <borut.razem@siol.net>
543 * support/Util/BuildCmd.c, support/Util/BuildCmd.h: rewrite buildCmdLine(),
544 changed type of list parameter to set
545 * src/ds390/main.c: changed type of parameter asmOptions to set in _tininative_do_assemble()
546 * src/port.h: changed type of do_assemble() parameter to set
547 * src/SDCCmain.c: type of asmOptions changed to set, introduced setParseWithComma(),
548 sdcpp defined without path, removed variable VersionString, introduced set binPathSet,
549 definition of "cppoutfilename" macro with NULL value in preProcess()
550 * src/SDCCglobl.h: included "SDCCset.h", added declaration of setParseWithComma()
551 * src/SDCCglue.c: removed variable VersionString, inroduced spacesToUnderscores()
552 * support/Util/MySystem.c, support/Util/MySystem.h: rewrite, char *ExePathList[]
553 replaced with set *binPathSet
554 * shash_add() deallocates the item, if allready exsists, before adding the new one
555 * src/SDCCmacro.c: handling macros with empty or NULL values in _evalMacros()
557 2003-03-30 Scott Dattalo <scott@dattalo.com>
559 * src/pic/gen.c: Commit patch from Steve Tell <tell@telltronics.org> that fixes
560 a nested for loop bug in the PIC port
561 * src/regression/nestfor.c: new regression test file Steve wrote to test nested
564 2003-03-29 Bernhard Held <bernhard@bernhardheld.de>
566 * support/Util/dbuf.h: remove C++ stuff to make it portable
568 2003-03-28 Borut Razem <borut.razem@siol.net>
570 * src/SDCC.lex: Fix for bug #711240: dynamic buffer handling of C
571 literal strings in stringLiteral()
572 * support/Util/dbuf.c, support/Util/dbuf.h: added: dynamic buffer handling
573 * src/Makefile.bcc, src/Makefile.in, src\src.dsp: added support/Util/dbuf.c
576 2003-03-27 Paul Stoffregen <paul@pjrc.com>
578 * src/SDCCpeeph.c (pcDistance): accurate byte distance for mcs51
580 2003-03-26 <johan@balder>
582 * src/mcs51/gen.c (saveRegisters): catched symbol abuse
583 * src/ds390/gen.c (saveRegisters): catched symbol abuse
584 * src/SDCCast.c (decorateType): fixed " -v < 3"
586 2003-03-23 Bernhard Held <bernhard@bernhardheld.de>
588 * doc/cdbfile.html: removed, replaced by cdbfileformat.lyx
589 Added Lenny Story's debug infrastructure changes:
590 * src/Makefile.in: added new files cdbFile.c and SDCCdebug.c
591 * src/Makefile.bcc: added new files cdbFile.c and SDCCdebug.c
592 * src/cdbFile.c: added
593 * src/SDCCdebug.c: added
594 * src/SDCCdebug.h: added
595 * src/SDCCast.c (createFunction)
596 * src/SDCCglue.c (emitRegularMap, emitStaticSeg, emitOverlay, glue)
597 * src/SDCCmain.c (parseCmdLine, main)
598 * src/SDCCmem.c (redoStackOffsets)
599 * src/SDCCsymt.c (cdbStructBlock, cdbTypeInfo, cdbSymbol, cdbStruct, cdbStructBlock)
602 * src/avr/gen.c (genAVRCode)
603 * src/ds390/gen.c (gen390Code)
604 * src/mcs51/gen.c (gen51Code)
605 * src/pic/gen.c (genpic14Code)
606 * src/pic/glue.c (pic14emitRegularMap, pic14emitStaticSeg, pic14emitOverlay, picglue)
607 * src/xa51/gen.c (genXA51Code)
608 * src/SDCCast.c: fixed "void foo(void){char c; -c < 0;}"
610 2003-03-22 Frieder Ferlemann <Frieder.Ferlemann@web.de>
612 * src/mcs51/gen.c (genCodePointerGet): quicker code for bug #700797
613 * src/mcs51/peeph.def: added rules 177, 241.x to 243, touched 181, 182.x, 193.x
615 2003-03-22 <johan@balder>
617 * src/SDCCicode.c (geniCodeDerefPtr): fixed bug #698231
619 2003-03-21 Bernhard Held <bernhard@bernhardheld.de>
621 * support/scripts/sdcc_mingw32: adapted to configure from autoconf 2.54
622 * doc/cdbfileformat.lyx: added, written by Lenny Story
623 * doc/Makefile: added cdbfileformat.lyx
624 * doc/clean.mk: added cdbfileformat.lyx
626 2003-03-20 Bernhard Held <bernhard@bernhardheld.de>
628 * src/mcs51/peeph.def: fix bug #705773
630 2003-03-20 <johan@balder>
632 An sfr/sbit can have an "at #" AND an initializer
633 * src/SDCCsymt.c (checkSClass):
634 * src/SDCCmem.c (allocGlobal):
635 * src/SDCCmem.c (allocLocal):
636 * src/SDCCast.c (createBlock):
638 2003-03-17 Bernhard Held <bernhard@bernhardheld.de>
640 * src/ds390/peeph.def: fix bug #704878: added rule 213.b suggested by Jan Rejlek
642 2003-03-16 <johan@balder>
644 Undid the hackup of const and volatile, the problem is much bigger
646 * src/SDCCast.c:1.171
647 * src/SDCCglue.c:1.138
648 * src/SDCCicode.c:1.146
649 * src/SDCCsymt.c:1.150
652 2003-03-15 Bernhard Held <bernhard@bernhardheld.de>
654 * src/mcs51/ralloc.c (packRegsForAssign): fixed bug #703541
655 * src/ds390/gen.c (genAddrOf): fixed bug #704087
657 2003-03-13 <johan@balder>
659 Hackup const and volatile modifiers in type chains a bit:
661 * src/SDCCast.c:1.169
662 * src/SDCCglue.c:1.136
663 * src/SDCCicode.c:1.143
664 * src/SDCCsymt.c1.146
668 2003-03-12 <johan@balder>
670 * src/SDCCBBlock.h: more LRH debugging junk
671 * src/SDCCcflow.h: more LRH debugging junk
672 * src/SDCCloop.c: more LRH debugging junk
673 * src/SDCC.y (struct_declaration): fixed bug #697590
674 * src/SDCCsymt.[hc] (cloneSpec): NEVER EVER use this again
675 * src/ds390/gen.c (aopForRemat): fixed bug #700031
676 * src/SDCCglue.c (emitStaticSeg): fixed bug #700797
678 2003-03-11 Kevin Vigor <kevin@vigor.nu>
679 * src/SDCCpeeph.c: quit being lazy and made proper fix (peephole
680 test function names must now match exactly).
681 * src/SDCCcse.c: added special case in findCheaperOp to allow
682 extending a short integer. Makes less awful code for bug 700121 test case.
684 2003-03-11 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
686 * as/mcs51/lkmain.c: Added ASlink-Warning to messages
687 * as/mcs51/lkaomf51.c: Fixed bug when linking asmblink example
689 2003-03-11 Kevin Vigor <kevin@vigor.nu>
691 * src/SDCCpeeph.c: fix so that operandsNotEqualX functions are
692 actually called (operandsNotEqual() was called for all
693 operandsNotEqualX tests).
695 2003-03-11 Kevin Vigor <kevin@vigor.nu>
697 * src/SDCCcse.c: fix findCheaperOp to prevent replacing int types
698 with shorter literals. Fixes bug 700121.
700 2003-03-11 <johan@balder>
702 * src/SDCCsymt.c (compareType): a (void *) can be assigned to any pointer
704 2003-03-11 Bernhard Held <bernhard@bernhardheld.de>
706 * src/SDCCloop.c (mergeRegions): an evil beast is dead
707 * src/SDCCmain.c (preProcess): minor cleanup: eliminate preOutName
709 2003-03-10 Borut Razem <borut.razem@siol.net>
711 * src/SDCCmain.c: pipe preprocessor's output
712 * support/Util/MySystem.c, support/Util/MySystem.h: added my_popen()
713 * sdcc_vc_in.h: define pclose as _pclose for WIN32
714 * src/SDCCglue.c, src/SDCCglue.h: added set pipeSet, added function closePipes,
715 which closes all pipes in pipeSet set
716 * src/SDCCset.c: free deleted item in function deleteSetItem()
717 * src/src.dsp, src/z80/z80.dsp: files support/Util/BuildCmd.c and support/Util/MySystem.c
718 moved from z80 to src subproject
719 * .version: increased version number to 2.3.4
721 2003-03-10 Bernhard Held <bernhard@bernhardheld.de>
723 * support/regression/ports/mcs51/spec.mk: increase timeout for CF's sparc to 30s
724 * support/regression/ports/ds390/spec.mk: increase timeout for CF's sparc to 25s
725 * support/regression/ports/xa51/spec.mk: fix typo
727 2003-03-09 Bernhard Held <bernhard@bernhardheld.de>
729 * src/SDCCglobl.h: PATH_MAX is already defined in mingw32 headers
731 2003-03-09 Borut Razem <borut.razem@siol.net>
733 * src/SDCCmain.c: pipe preprocessor's output
734 * support/Util/MySystem.c, support/Util/MySystem.h: added my_popen()
735 * sdcc_vc_in.h: define pclose as _pclose for WIN32
736 * src/SDCCglue.c, src/SDCCglue.h: added set pipeSet, added function closePipes,
737 which closes all pipes in pipeSet set
738 * src/SDCCset.c: free deleted item in function deleteSetItem()
739 * src/src.dsp, src/z80/z80.dsp: files support/Util/BuildCmd.c and support/Util/MySystem.c
740 moved from z80 to src subproject
742 2003-03-09 Borut Razem <borut.razem@siol.net>
744 * src/SDCCglue.c: re-implemented tempfilename() and tempfile(): using mkstemp() if available
745 * src/SDCCsymt.h: fixed MSVC and BORLANDC compilation (included SDCCglobl.h instead srccconf.h)
746 * sdcc_vc_in.h: explicitly undefined HAVE_MKSTEMP which is not available on BORLANDC and MSVC
747 * src/SDCCset.h: removed inclusion of sdccconf.h or sdcc_vc.h
748 * src/SDCCglobl.h: unification of WIN32 native definitions
750 2003-03-09 Frieder Ferlemann <Frieder.Ferlemann@web.de>
752 * src/mcs51/gen.c: applied in-/dec patch mentioned on sdcc-devel 2003-03-01
754 2003-03-08 Bernhard Held <bernhard@bernhardheld.de>
756 * src/configure.in: check for endianess (even while cross-compiling)
757 * src/configure: check for endianess (even while cross-compiling)
758 * src/configure_in.h: check for endianess (even while cross-compiling)
759 * src/avr/gen.c: remove old endianess stuff
760 * src/mcs51/gen.c: remove old endianess stuff
761 * src/ds390/gen.c: remove old endianess stuff
762 * src/pic/gen.c: remove old endianess stuff
763 * src/pic/genarith.c: remove old endianess stuff
764 * src/pic/glue.c: fix endianess check
765 * src/pic16/gen.c: remove old endianess stuff
766 * src/pic16/genarith.c: remove old endianess stuff
767 * src/pic16/glue.c: fix endianess check
768 * src/xa51/gen.c: remove old endianess stuff
769 * src/z80/gen.c: fix endianess check
770 * src/SDCCglue.c: fix endianess check
771 * src/ds390/peeph.def: fix bug 700036
773 2003-03-08 Bernhard Held <bernhard@bernhardheld.de>
775 * src/SDCCsymt.h: use appropriate data-types on host for SDCC's int and long
776 * src/configure: find appropriate data-types on host for SDCC's int and long
777 * src/configure.in: find appropriate data-types on host for SDCC's int and long
778 * src/sdccconf_in.h: find appropriate data-types on host for SDCC's int and long
779 * src/xa51/gen.c: use %d, not %ld for 4 byte variables
781 2003-03-07 <johan@balder>
784 some minor cleanups before the big shot
785 OP_DEFS and OP_USES now use Kevin's protection
786 new option --nolabelopt
797 * src/ds390/ralloc.c:
798 * src/mcs51/ralloc.c:
803 2003-03-06 Bernhard Held <bernhard@bernhardheld.de>
805 * src/pic/pcode.c (get_op): fix 64 bit warnings
806 * src/pic/pcode.c (pCode2str): fix 64 bit warnings
807 * src/SDCChasht.c (newHashTable): fix 64 bit warnings
808 * src/SDCCsymt.c (checkTypeSanity): fix 64 bit warnings
809 * support/regression/tests/malloc.c: fix 64 bit warnings
811 2003-03-04 Bernhard Held <bernhard@bernhardheld.de>
813 * src/mcs51/gen.c (genMinus): fixed bug 696436
815 2003-03-02 Borut Razem <borut.razem@siol.net>
817 * src/SDCCmain.c: added BORLANDC, corrected MSVC in printVersionInfo()
819 2003-02-26 Bernhard Held <bernhard@bernhardheld.de>
821 * configure.in: test for mkstemp
822 * sdccconf_in.h: add HAVE_MKSTEMP
824 2003-02-24 Bernhard Held <bernhard@bernhardheld.de>
826 * device/include/ctype.h: removed warning while using --stack-auto
827 * device/include/malloc.h: removed warning while using --stack-auto
828 * device/include/string.h: removed warning while using --stack-auto
830 2003-02-23 Borut Razem <borut.razem@siol.net>
832 * src/asm.h: corrected assertion in function printILine(): _pipe() was not executed on MSVC,
833 because NDEBUG is defined (see man assert)
834 * sdcc_vc_in.h: vsnprintf is defined as _vsnprintf on MSVC
836 2003-02-23 Frieder Ferlemann <Frieder.Ferlemann@web.de>
838 * src/mcs51/gen.c (genUminusFloat): avoided dptr in-/decrement for xdata variables
839 * src/mcs51/peeph.def: added rule suggested by Gernot Fink, white space/comment changes
841 2003-02-18 Frieder Ferlemann <Frieder.Ferlemann@web.de>
843 * src/SDCCpeeph.c: added peephole conditions testing for same arguments
844 * src/mcs51/peeph.def: added rules 238a-d which remove redundant moves
846 2003-02-18 <johan@balder>
848 * as/mcs51/asmain.c (asmbl): module can start with a digit
849 * as/z80/asmain.c (asmbl): module can start with a digit
851 2003-02-16 Bernhard Held <bernhard@bernhardheld.de>
853 * sim/ucsim/mkecho: inserted #!/bin/sh for Cygwin, so that it's executable
854 * src/asm.c: fix pipe() for Mingw32
856 2003-02-15 Bernhard Held <bernhard@bernhardheld.de>
858 * src/SDCCglue.h: make tmpfileNameSet available for preOutName
859 * src/SDCCmain.c (preProcess): make sure, that preOutName will be deleted;
860 make -V work again; --c1mode reads now from stdin
861 * doc/sdccman.lyx: added --c1mode
862 * support/Util/SDCCerr.c: new messages for c1 mode
863 * support/Util/SDCCerr.h: new messages for c1 mode
864 * src/SDCC.lex (checkCurrFile): test if fullSrcFileName is NULL for c1mode
866 2003-02-15 <johan@balder>
868 * src/asm.c: new options: --no-c-code-in-asm and --i-code-in-asm
870 2003-02-14 Bernhard Held <bernhard@bernhardheld.de>
872 * doc/sdccman.lyx: Environment variables, -o and other minor things
874 2003-02-14 <johan@balder>
876 * src/xa51/main.c: before anyone really tries to use it :)
878 * Install doc's in share/sdcc/doc
879 * removed some obsolete files
880 * Do a proper make distclean and uninstall
884 M device/include/Makefile.in
885 M device/lib/Makefile.in
888 M sim/ucsim/doc/Makefile.in
892 M support/cpp2/Makefile.in
893 M support/makebin/Makefile
896 2003-02-13 Bernhard Held <bernhard@bernhardheld.de>
898 * support/regression/ports/host/spec.mk: use cc as host compiler for max osx
900 2003-02-10 Borut Razem <borut.razem@siol.net>
902 * doc/bccinst.txt, packihx/packihx.c, sdcc_vc_in.h, src/SDCCset.h,
903 support/cpp2/config.in: Borland C++ build doesn't depend on Cygwin configure
904 * Bcc.ini, Makefile.bcc, as/mcs51/Makefile.bcc,
905 device/examples/ds390/tinitalk/Makefile.bcc, packihx/Makefile.bcc,
906 support/cpp2/Makefile.bcc, src/Makefile.bcc, src/avr/Makefile.bcc,
907 src/ds390/Makefile.bcc, src/izt/Makefile.bcc, src/mcs51/Makefile.bcc,
908 src/pic/Makefile.bcc, src/pic16/Makefile.bcc, src/xa15/Makefile.bcc,
909 src/z80/Makefile.bcc: Borland Makefile cleanup
910 * as/z80/Makefile.bcc: Added Borland Makefile
911 * support/cpp2/borland.h: Removed
913 2003-02-10 Bernhard Held <bernhard@bernhardheld.de>
915 * doc/sdccman.lyx: new pragma NOIV by "Johannes Stezenbach" <js@convergence.de>
916 * src/SDCC.lex: new pragma NOIV
917 * src/SDCCglobl.h: new pragma NOIV
918 * src/SDCCmem.c: new pragma NOIV
920 2003-02-09 Bernhard Held <bernhard@bernhardheld.de>
922 * src/SDCCmain.c: signal handling is switched off by SDCC_LEAVE_SIGNALS
924 2003-02-09 Bernhard Held <bernhard@bernhardheld.de>
926 * src/SDCCmain.c: signal handling is switched off by --debug
927 * doc/Makefile: small fix for install; use clean.mk again
928 * doc/clean.mk: clean *.pdf and *.html too
930 2003-02-08 Bernhard Held <bernhard@bernhardheld.de>
932 * device/lib/_mulint.c: small fix for large/ds390 --int-long-reent resp. --stack-auto
933 * device/lib/printfl.c: fix a ds390 bug by making it portable
934 * src/SDCCsymt.c (initCSupport): fix compile warning on Cygwin
935 * src/SDCCopt.c (cnvToFloatCast): fix compile warning on Cygwin
936 * src/SDCCopt.c (cnvFromFloatCast): fix compile warning on Cygwin
937 * debugger/mcs51/cmd.c: converted multi-line string literals
938 * sim/ucsim/globals.cc: converted multi-line string literals
939 * src/SDCCmain.c: introduced signal handler to remove temp files
940 * doc/Makefile: small tweaks, implement clean
941 * doc: removed generated files
943 2003-02-05 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
945 * as/mcs51/aslink.h, as/mcs51/lkihx.c, as/mcs51/lkrloc.c: Applied
946 patch from Jan Rejlek <jr@apex-lib.cz> to fix Bug 677692: "Extended
947 Address Record is not correctly generated for DS390."
949 2003-02-02 Borut Razem <borut.razem@siol.net>
951 * Makefile.bcc: removed non existing cpp project and non compilable izt project from makefile
952 * as/mcs51/asm.h: fixed compilation with Borland C
953 * support/cpp2/Makefile.bcc: added rule to generate auto-host.h
954 * support/cpp2/auto-host_vc_in.h: fixed compilation with Borland C
955 * src/mcs51/mcs51a.dsp: corrected misspelled project name from msc51a to mcs51a
956 * src/avr/Makefile.bcc, src/ds390/Makefile.bcc, src/izt/Makefile.bcc,
957 src/mcs51/Makefile.bcc, src/pic16/Makefile.bcc, src/xa51/Makefile.bcc,
958 src/z80/Makefile.bcc: delete $(LIB) only if exist
959 * src/Makefile.bcc, src/pic/Makefile.bcc: fixed compilation with Borland C
961 2003-02-02 Bernhard Held <bernhard@bernhardheld.de>
963 * device/include/malloc.h: introduced NULL
964 * device/include/string.h: introduced NULL
965 * device/include/stdlib.h: introduced NULL
966 * device/lib/_memcpy.c: removed NULL
967 * device/lib/_strcat.c: removed NULL
968 * device/lib/_strchr.c: removed NULL
969 * device/lib/_strcmp.c: removed NULL
970 * device/lib/_strcpy.c: removed NULL
971 * device/lib/_strcspn.c: removed NULL
972 * device/lib/_strlen.c: removed NULL
973 * device/lib/_strncat.c: removed NULL
974 * device/lib/_strncmp.c: removed NULL
975 * device/lib/_strncpy.c: removed NULL
976 * device/lib/_strpbrk.c: removed NULL
977 * device/lib/_strrchr.c: removed NULL
978 * device/lib/_strspn.c: removed NULL
979 * device/lib/_strstr.c: removed NULL
980 * device/lib/_strtok.c: removed NULL
981 * device/lib/malloc.c: removed NULL, include own header
983 2003-02-02 <johan@balder>
985 * 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
986 * support/regression/fwk/lib/testfwk.c: div and mod isn't broken anymore
987 * regressions ds390/spec.mk and mcs51/spec.mk (timeout): my good old balder isn't fast enough for some tests
988 * src/z80/gen.c (genZ80Code): added c-lines in asm comments
989 * as/z80/asm.h (NINPUT): increased for long c-comments in regression tests
990 * src/z80/gen.c (genRightShiftLiteral): fixed the (char)(-3)>>8 (I think)
992 2003-02-01 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
994 * src/SDCCmain.c: Fixed bug 678574: "ds390: ASlink-Error-Stack overlaps
997 2003-02-01 <johan@balder>
999 * src/SDCCval.c (valBitwise): fixed Karl's "2 | (1<<8)"
1001 2003-01-31 <johan@CP255758-A>
1003 * src/ds390/main.c (_ds390_genAssemblerPreamble): applied Jan Rejlek's >64K startup patch
1005 2003-01-30 <johan@balder>
1007 * src/SDCCBBlock.c: automatic bug detection
1008 * src/SDCCicode.c: automatic bug detection
1010 2003-01-29 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1012 * src/SDCCglobl.h: now --xram-size 0 works
1013 * src/SDCCmain.c: now --xram-size 0 works
1015 2003-01-29 <johan@balder>
1017 * src/almosteverything: changed OP_DEFS and OP_USES from macros to functions to catch symbol abuse (a hot topic in the bug list :)
1019 2003-01-29 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1021 * as/mcs51/aslink.h: Added options --xram-size and --code-size
1022 * as/mcs51/lkdata.c: Added options --xram-size and --code-size
1023 * as/mcs51/lkmain.c: Added options --xram-size and --code-size
1024 * as/mcs51/lkmem.c: Added options --xram-size and --code-size
1025 * src/SDCCglobl.h: Added options --xram-size and --code-size
1026 * src/SDCCmain.c: Added options --xram-size and --code-size
1028 2003-01-28 Bernhard Held <bernhard@bernhardheld.de>
1030 * src/ds390/gen.c: fix deps by replacing <common.h> with "common.h"
1031 * src/SDCC.lex: rename P_OVERLAY to P_OVERLAY_ for cross-gcc 3.2 MINGW32
1033 2003-01-27 <johan@balder>
1035 * src/SDCC.y: fixed bug #613764
1037 2003-01-26 <johan@balder>
1039 * src/SDCClrange.c: fixed Bernhard's "char * code ptr = &c"
1040 * src/SDCCsymt.h: fixed bug #673374
1041 * src/SDCCglue.c: fixed bug #661910
1042 * src/SDCCast.c: fixed bug #458099 and 673374
1044 2003-01-26 Bernhard Held <bernhard@bernhardheld.de>
1046 * as/mcs51/strcmpi.c: added, provides Aurelien Jarno's as_strcmpi(); strcmpi() is not ANSI
1047 * as/mcs51/strcmpi.h: added
1048 * as/mcs51/asm.h: remove ugly "#define strcmpi strcmp"
1049 * as/mcs51/aslink.h: remove ugly "#define strcmpi strcmp"
1050 * as/mcs51/asmain.c: strcmpi -> as_strcmpi
1051 * as/mcs51/assym.c: strcmpi -> as_strcmpi
1052 * as/mcs51/lkmem.c: strcmpi -> as_strcmpi
1053 * as/mcs51/lknoice.c: strcmpi -> as_strcmpi
1054 * as/mcs51/lksym.c: strcmpi -> as_strcmpi
1055 * as/mcs51/Makefile.aslink: new module strcmpi
1056 * as/mcs51/Makefile.asx8051: new module strcmpi
1057 * as/mcs51/Makefil.bcc: new module strcmpi
1058 * as/mcs51/Makefile.in: new module strcmpi
1059 * sim/ucsim/s51.src/uc390.cc (get_mem_size): make RAM big enough for tinibios
1061 2003-01-26 <johan@balder>
1063 * src/SDCCglue.c: reverted back to 1.124
1064 * src/SDCCast.c: reverted back to 1.156
1065 * src/mcs51/gen.c (aopGet): applied Frieder's efficiency patch
1067 2003-01-25 <johan@balder>
1069 * src/SDCCglue.c: A better fix for bug #661910
1070 * src/SDCCast.c: A better fix for bug #661910
1071 * src/SDCCglue.c (emitRegularMap): That was a little too efficient
1073 2003-01-24 Bernhard Held <bernhard@bernhardheld.de>
1075 * src/Makefile.in: remove spawn.o
1076 * src/SDCCmain.c: remove spawn.h
1077 * src/SDCCmain.c (printVersionInfo): report MINGW32 instead of UNIX
1078 * src/spawn.c: removed
1079 * src/spawn.h: removed
1080 * support/regression/ports/ds390/spec.mk: link with -r
1082 2003-01-24 <johan@CP255758-A>
1084 * src/ds390/gen.c (aopOp): fixed bug #667458
1085 * src/SDCCglue.c (emitRegularMap): fixed bug #458099 again
1086 * src/SDCCast.c (createIvalCharPtr): fixed bug #661910
1087 (createIvalCharPtr): an ival doesn't always have a storage class anymore
1089 2003-01-24 Bernhard Held <bernhard@bernhardheld.de>
1091 * src/mcs51/peeph.def: better assembler identation by Frieder
1092 * src/mcs51/gen.c: better assembler identation by Frieder
1094 2003-01-22 Bernhard Held <bernhard@bernhardheld.de>
1096 * as/z80/string.h: removed for gcc 3.2
1097 * support/makebin/makebin.c: #include <string.h> for gcc 3.2
1098 * src/pic/pcode.c (get_op_from_instruction): fix concatenation of string literals with __FUNCTION__ for gcc 3.2
1100 2003-01-19 Bernhard Held <bernhard@bernhardheld.de>
1102 * src/SDCCmain.c (linkEdit): rename mem and map files even in case of failure
1103 * src/SDCCpeeph.c (replaceRule): fix bug #663503
1104 * support/regression/Makefile: separate temp files for ports
1105 * support/regression/generate-cases.py: separate temp files for ports
1106 * src/mcs51/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
1107 * src/ds390/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
1109 2003-01-19 Bernhard Held <bernhard@bernhardheld.de>
1111 * moved tinitalk to device/examples/ds390
1113 2003-01-14 Bernhard Held <bernhard@bernhardheld.de>
1115 * as/mcs51/lkmem.c: rflag is for DS390
1116 * src/SDCCglobl.h: removed out_name and options stackOnData, genericPtr
1117 * src/SDCCmain.c (optionsTable, setDefaultOptions): removed --stack-after-data and --generic
1118 (linkEdit): move mem- and map-files the same way as ihx-files
1119 * src/z80/main.c (_setDefaultOptions): removed --generic
1120 * src/SDCCmain.c (_processC1Arg, parseCmdLine, main): --c1mode works again
1121 * src/SDCCglue.c (createInterruptVect, glue): --c1mode works again
1122 * src/pic/glue.c (picglue): --c1mode works again
1123 * src/pic16/glue.c (pic16glue): --c1mode works again
1124 * src/asm.c (printCLine): fix #660034
1126 2003-01-13 Bernhard Held <bernhard@bernhardheld.de>
1128 * src/ds390/peeph.def: fix #123; add 14 rules by Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>, 1 by Frieder
1129 * src/mcs51/peeph.def: fix #123; add 14 rules by Fiorenzo, 1 by Frieder
1130 * src/mcs51/gen.c (genFunction): emit r0 instead of ar0 by Fiorenzo
1131 * as/mcs51/lkmem (summary): better fix for sp problem
1132 * src/SDCCglue.c (glue): __start_stack - 1, saves 1 byte!
1133 * src/ds390/main.c (_ds390_finaliseOptions, _tininative_finaliseOptions): stack_loc = 0x400008
1134 * support/regression/ports/*/spec.mk: moving testfwk-object to port dir allow parallel execution of regression tests
1135 remove --stack-after-data
1137 2003-01-12 Bernhard Held <bernhard@bernhardheld.de>
1139 * src/SDCCmain.c (main): port->finaliseOptions() moved for z80 linking
1140 * src/SDCCutil.c (join): ugly bug: missing '\0'
1141 * as/mcs51/lkmem.c (summary): sp on address 7 is safe
1143 2003-01-11 Bernhard Held <bernhard@bernhardheld.de>
1145 * src/SDCCmain.c (assemble, linkEdit): preparations for -o
1147 * src/pic/main.c (_asmCmd): gpasm supports -o
1148 * src/z80/main.c: more general macros
1149 * device/lib/Makefile.in: remove intermediate files
1151 2003-01-11 Bernhard Held <bernhard@bernhardheld.de>
1153 * .version: Bumped version number to 2.3.3
1154 * src/SDCCBBlock.c: new option -o
1155 * src/SDCCglobl.h: new option -o
1156 * src/SDCCglue.c: new option -o
1157 * src/SDCCmain.c: new option -o
1158 * src/asm.c: new option -o
1159 * src/ds390/main.c: new option -o
1160 * src/pic/glue.c: new option -o
1161 * src/pic/pcode.c: new option -o
1162 * src/pic/ralloc.c: new option -o
1163 * src/pic16/glue.c: new option -o
1164 * src/pic16/pcode.c: new option -o
1165 * src/pic16/ralloc.c: new option -o
1166 * src/z80/main.c: new option -o
1167 * device/lib/Makefile.in: use -o
1168 * support/regression/ports/ds390/spec.mk: use -o
1169 * support/regression/ports/gbz80/spec.mk: use -o
1170 * support/regression/ports/mcs51/spec.mk: use -o
1171 * support/regression/ports/mcs51-stack-auto/spec.mk: use -o
1172 * support/regression/ports/z80/spec.mk: use -o
1173 * support/regression/ports/ucz80/spec.mk: use -o
1174 * support/regression/ports/xa51/spec.mk: use -o
1175 * support/regression/fwk/lib/timeout.c: fix usage string
1177 2003-01-09 Bernhard Held <bernhard@bernhardheld.de>
1178 * src/mcs51/gen.c (genPlus): replaced "mov b,acc" by "mov b,a" Fiorenzo D. Ramaglia <fd.ramaglia@tin.it>
1180 2003-01-07 <johan@balder>
1182 * src/SDCCast.c (decorateType): fixed bug #600035
1184 2003-01-07 Bernhard Held <bernhard@bernhardheld.de>
1185 * as/mcs51/lkmem.c: added several l-modifiers to printf to remove warnings
1186 * as/mcs51/lkaomf51.c: #include <ctype.h> to remove warnings
1187 * src/pic/main.c (_hasNativeMulFor): outcommented unused variables to remove warnings
1188 * src/pic/pcode.c: outcommented unused variable to remove warnings
1189 * src/pic/ralloc.c: outcommented unused variable to remove warnings
1191 2003-01-06 <karl@turbobit.com>
1192 * sim/ucsim/cmd.src/command.cc: fixed so "break xram r 0x7654" works again in
1195 2003-01-06 <johan@balder>
1197 * src/SDCCicode.c: fixed array add
1199 2002-01-05 Bernhard Held <bernhard@bernhardheld.de>
1200 * src/SDCCmacro.c: MAX_STRING_LENGTH increased to 2048; was too small for regression tests
1201 * support/regression/ports/host/support.c: #include <stdarg.h> for gcc 3.2
1203 2003-01-04 <johan@balder>
1205 * src/SDCCval.c (getNelements): fixed the initialized array of structures
1207 2002-12-29 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1208 * as/mcs51/Makefile.bcc: fixed typo lkomf51.o -> lkaomf51.o
1210 2002-12-28 Bernhard Held <bernhard@bernhardheld.de>
1211 * src/mcs51/peeph.def: added rules 234 and 235 from Frieder Ferlemann <frieder.ferlemann@web.de>
1212 * support/regression/tests/bug-524697.c: fit mem usage into 8032
1214 2002-12-28 Bernhard Held <bernhard@bernhardheld.de>
1215 * src/mcs51/gen.c (aopGetUsesAcc): inserted missing "return FALSE"
1217 2002-12-27 Bernhard Held <bernhard@bernhardheld.de>
1218 * as/mcs51/Makefile.in: fixed typo lkomf51.o -> lkaomf51.o
1220 2002-12-26 Bernhard Held <bernhard@bernhardheld.de>
1221 * src/mcs51/main.c: removed {bindir}{sep} from aslink
1223 2002-12-10 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1225 * in \sdcc\as\mcs51\ changed these files in order to create an
1226 aomf51 file: aslink.h, lkdta.c, lklex.c, lklibr.c, lklist.c,
1227 lkmain.c. Also added: lkmem.c and lkaomf51.c. Changed the
1228 following files to include the previous two files: aslink.dsp,
1229 Makefile.aslink, Makefile.bcc, and Makefile.in.
1231 * Changed \sdcc\src\SDCCmain.c so it creates files with extension
1232 .adb instead of .cdb
1234 2002-11-09 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1236 * \sdcc\as\mcs51\lklist.c: Now reports memory usage using the
1237 value from option --iram-size.
1239 2002-09-20 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1241 * \sdcc\as\mcs51\lklist.c: added boundary check before using
1244 2002-09-18 <wiml@hhhh.org>
1246 * SDCClrange.h: exposed setFromRange() and setToRange()
1247 * mcs51/ralloc.c: fixed over-eager packRegsForSupport() and
1248 packRegsForAccUse() (bug 542397)
1249 * mcs51/gen.c: MOVA() is now a function to avoid calling aopGet()
1250 multiple times and emitting the fetch operations more than once
1251 added aopGetUsesAcc() function to allow binary operators to
1252 fetch their operands in the correct order; made genMinus() emit
1253 compact code for X = LITERAL - Y
1255 2002-09-00 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1256 * \sdcc\as\mcs51\lklist.c: Fixed incorrect number of parameters to
1257 sprintf() in line 1267.
1259 2002-09-08 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1260 * \sdcc\src\SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051
1263 2002-09-04 Jesus Calvino-Fraga <jesusc@ece.ubc.ca>
1264 Changes to aslink (All the changes are marked with 'JCF'):
1266 * \sdcc\as\mcs51\aslink.h: External definition of sflag and
1269 * \sdcc\as\mcs51\lkarea.c: Computes the size of area BSEG_BYTES from
1270 area BSEG. Also moves, if possible, the DATA area down into the internal
1271 ram so more space is available.
1273 * \sdcc\as\mcs51\lkdata.c: Definition of memory summary output flag
1276 * \sdcc\as\mcs51\lklist.c: For the BSEG area report the size in bits,
1277 not bytes. Function summary() which creates a memory usage summary
1278 file with extension .mem. Reports of overlaping stack and small stack
1279 size. If the space for the stack is less than 16 bytes aslink trows a
1282 * \sdcc\as\mcs51\lkmain.c: Creation of some of the default areas for
1283 the 8051. Option 'y' for memory summary output file.
1285 Changes to sdcc (All the changes are marked with 'JCF'):
1287 * \sdcc\src\SDCCglobl.h: External definition of RegBankUsed[4].
1289 * \sdcc\src\SDCCglue.c: If a register bank is used, creates an
1290 overlaying area for it (uses RegBankUsed[4]).
1292 * \sdcc\src\SDCCmain.c: Definition RegBankUsed[4]; marks register
1293 bank zero as used by default. By default aslink locates the stack
1294 (equivalent to --stack-after-data). Pass option 'y' to aslink for
1295 the creation of the .mem file. Delegates the allocation of data area
1296 to aslink (it is not longer 0x30 by default). If --stack-loc passes
1297 the begining of the stack area to aslink.
1299 * \sdcc\src\SDCCmem.c: If a register bank is used, marks it so
1300 glue() in SDCCglue.c creates an area for it.
1302 2002-09-03 Borut Razem <borut.razem@siol.net>
1303 * sdcc/src/SDCCglue.c, sdcc/src/SDCCglue.h, sdcc/src/SDCCmain.c,
1304 sdcc/src/pic/glue.c:
1305 introduced atexit() handler for teporay files removal in case of
1306 errors, assertions, ...
1308 2002-08-29 Borut Razem <borut.razem@siol.net>
1309 * sdcc/support/cpp2/auto-host_vc_in.h:
1310 re-definition of O_BINARY and other O_XXX as _O_BINARY and _O_XXX, so the problem
1311 with the returned value from read() in sdcc/support/cpp2/cppfiles.c is solved for MSC.
1312 Maybe there is a similar problem with BORLANDC? It should be checked!
1314 * sdcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c, sdcc/src/z80/ralloc.c:
1315 corrected improper use of assert: the assignment to clr variable was done inside the assert.
1316 In case that NDEBUG was defined, the assert macro was substituted with no-op, so the assignment
1317 was not executed, and the compiler (cl) launched a warning:
1318 ralloc.c(1442) : warning C4700: local variable 'clr' used without having been initialized
1320 2002-08-28 Bernhard Held <bernhard@bernhardheld.de>
1321 * src/SDCCglue.c (printIvalArray): iterative calculation of array length
1323 2002-08-28 Jesus Calvino-Fraga and Borut Razem <borut.razem@siol.net>
1324 * sdcc/sdcc.dsw: added sdcpp, sdcppa, yacc, conf projects
1326 * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
1327 sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp,
1328 sdcc/src/xa51/xa51.dsp, sdcc/src/avr/avra.dsp,
1329 sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
1330 sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp,
1331 sdcc/src/xa51/xa51a.dsp, sdcc/as/as_z80.dsp,
1332 sdcc/as/aslink.dsp, sdcc/as/asx8051.dsp, sdcc/packihx/packihx.dsp:
1333 - added Release configuration in VS projects
1334 - review of compiler an linker options
1335 - VC .exe files are generated in bin_vc directory, not to interfere
1336 with binaries generated from other projects (cygwin, mingw, bcc ...)
1338 * sdcc/src/yacc.dsp: added
1340 * sdcc/config.dsp, sdcc/configure_vc.awk, sdcc/sdcc_vc_in.h:
1341 added - genarate sdcc_vc.h using sdcc_vc_in.h as template
1342 and insert the version number definitions from .version
1344 * sdcc/support/cpp2/sdcpp.dsp: added - VC project for sdcpp
1346 * sdcc/support/cpp2/sdcppa.dsp, sdcc/support/cpp2/auto-host_vc_in.h:
1347 added - genarate auto-host.h using auto-host_vc_in.h as template
1350 removed from CVS, generated automatically
1352 2002-08-25 Bernhard Held <bernhard@bernhardheld.de>
1353 * support/scripts/inc2h.pl: use gputils or gpasm (from Nathan Hurst)
1355 2002-08-11 Borut Razem <borut.razem@siol.net>
1356 * support/Util/NewAlloc.c: removed unneeded #include "sdccconf.h" (suggested by Jesus Calvino-Fraga)
1358 2002-08-10 Borut Razem <borut.razem@siol.net>
1359 * src/SDCCmain.c (main):
1360 file preOutName was unlinked before closed. This seems to be OK on UNIX and cygwin
1361 platforms, but it doesn't work with Visual Studio: the opened file can not be removed.
1362 The consequence was that some temporary files were not removed.
1365 unification of code in functions tempfilename() and tempfile():
1366 function tempnam() is defined in Visual Studio 6.0 and .NET
1368 * sdcc/sdcc.dsw: removed project sdcpp, added project xa51a
1370 * sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
1371 sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp:
1372 - removed compiler command line option /WX: Treats all warnings as errors
1373 - update a list of source files, included into the project
1375 * sdcc/src/avr/avra.dsp, sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
1376 sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp:
1377 changed project type to Generic Project so that can be correcly converted to VS.NET project
1379 * sdcc/as/mcs51/asm.h: definition of PATH_MAX for MSC
1381 * sdcc/src/SDCCast.c: solved MSC error in function decorateType()
1383 * sdcc/src/SDCC.y: added missing ending ';' to rules to get rid of bison warnings
1385 * dcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c:
1386 added return 0 statements after assert() to make compiler happy
1388 * sdcc/src/xa51/peeph.rul, sdcc/src/xa51/peeph.def, sdcc/src/z80/ralloc.c:
1389 added newline in the def file to keep MSC compiler satisfied
1391 * sdcc/src/z80/gen.c:
1392 - function strcasecmp() is not defined in MSC (and probably also in BORLANDC),
1393 so it is replaced with STRCASECMP, which is defined as stricmp in case of MSC and BORLANDC
1394 - solved MSC error in function aopDump()
1396 * sdcc_vc.h: define PREFIX as "\\sdcc"
1398 2002-07-18 Bernhard Held <bernhard@bernhardheld.de>
1399 * src/SDCCast.c (decorateType): fixed access to array of structures http://sourceforge.net/mailarchive/forum.php?thread_id=902690&forum_id=4107
1401 2002-06-22 Scott Dattalo <scott@dattalo.com>
1402 * src/pic/*: Numerous bug fixes. Flow analysis has been enhanced.
1403 - Rewrote the register banking algorithm.
1404 - Added pCode live-range analysis to registers (for now, only non-used and
1405 singly-used registers optimized away)
1407 * src/pic/pcoderegs.[ch]: Added new files for pCode live-range analysis
1409 * support/scripts/inc2h.pl Kevin L. Pauba <klpauba@cox.net> submitted this perl script for converting MicroChip include files into SDCC Pic include files.
1411 2002-05-10 Scott Dattalo <scott@dattalo.com>
1412 * src/pic/*: Added support for multiplication. Fixed many,many bugs.
1414 2002-04-22 Michael Hope <michaelh@vroom>
1416 * device/lib/z80/printf.c: Changed emitter to volatile to work around a pcall bug.
1418 * configure.in (DD_COPT): Added include support required for gbdk.
1420 * .version: Bumped version number just to increase it.
1422 * src/SDCCmain.c: Added -nostdinc to the default options.
1424 2002-04-15 Michael Hope <michaelh@vroom>
1426 * device/lib/z80/printf.c (sprintf): Added.
1428 * src/z80/ralloc.c (packRegisters): Disabled pack HL use for GB as it's broken.
1430 * src/z80/peeph.def: Added transpose redundent load rule.
1432 * src/z80/main.c: Added force callee saves for jaune.
1434 * src/port.h: Removed the i186 and tlcs-900h ports as they weren't being being developed.
1436 * src/SDCCmain.c: Pulled the options definition out so that you can add port specific options without changing the main file.
1438 2002-03-28 Johan Knol <johan@balder>
1440 * src/SDCCval.c: fixed bug #532436
1442 2002-03-14 Scott Dattalo <scott@dattalo.com>
1444 Added "char *Processor" field to the port structure.
1447 Added -p option. Allows port dependent processor to be specified.
1450 Initialized the new field char *Processor field to NULL in all ports
1453 Compiler generated registers for interrupt context saving
1454 were not getting allocated.
1456 2002-03-16 Sandeep Dutta <sandeep@ddi.com>
1459 Fixed left shift. Will promote the left side of a left shift
1460 if a) left shifting more than size of operand or b) when assigned
1461 to something size > size of left side
1463 2002-03-14 Scott Dattalo <scott@dattalo.com>
1465 tons of changes. Register allocation has been
1466 rewritten. Added customization for the various PICs. Flow
1467 analysis is restructured. ...
1473 Added. device.c is a PIC port hack to accomodate variations
1476 2002-03-13 Michael Hope <michaelh@vroom>
1478 * src/z80/gen.c (genGenPointerGet): Fixed a bug where a pointer in HL is dereferenced into HL but HL is not spilled. Yeah.
1480 2002-03-04 johanknol <johanknol@manik>
1482 * /src/SDCCval.c: fixed
1484 const unsigned char arr[][2] = { { 0, 1 } };
1485 t18.c:1: error: Initializer element is not constant
1487 2002-03-04 bela <bela@manik>
1489 * /device/include/mcs51reg.h:
1490 ds89c420 register definition update
1492 2002-03-03 <johan@FRIJA>
1494 * support/Util/SDCCerr.c: did something, but don't no why anymore
1496 * support/regression/tests/bug-524691.c: made it a little less shy
1498 * src/SDCCast.c (decorateType): fixed bug #524697
1500 * src/SDCCast.c: made some lineno improvements
1502 * src/SDCCval.c (getNelements): changed warning to error
1504 * src/SDCCglue.c (printIvalArray): changed warning to error
1506 * src/SDCCicode.c: fixed a warning for mingw
1508 * src/SDCCast.c (decorateType): fixed the << promotion for ops
1510 * src/SDCCicode.c (geniCodeDivision): divide is shift only for unsigned (bug #524685)
1512 2002-03-02 Sandeep Dutta <sandeep@ddi.com>
1514 * src/ds390/peeph.def:
1515 Added some more peephole rules
1517 * src/ds390/gen.c: Various fixes & enhancements
1519 * src/SDCClrange.c, src/SDCClrange.h:
1520 functions "alldefsoutofrange" and "notusedinblock" moved to SDCClrange.c
1522 * src/ds390/ralloc.c:
1523 various fixes & enhancements (ds390) specific
1525 * src/avr/ralloc.c, src/mcs51/ralloc.c, src/pic/ralloc.c, src/xa51/ralloc.c, src/z80/ralloc.c:
1526 Functions "allDefsOutOfRange" & "notUsedinBlock" moved to SDCClrange.c
1529 * sdcc/src/SDCCcse.c: Better fix for bug # 514308
1531 2002-03-02 <johan@FRIJA>
1533 * src/SDCCast.c (decorateType): fixed bug #524708
1535 * src/SDCCval.c (floatFromVal): fixed the literal void (whatever that may be)
1537 * src/SDCCicode.c (geniCodePtrPtrSubtract): fixed bug #524691
1539 2002-03-01 Michael Hope <michaelh@vroom>
1541 * src/SDCCsymt.c (initCSupport): Removed managling of support function names.
1543 * src/z80/ralloc.c (packRegsForIYUse): Fixed fp bug where four byte operands were packed into IY.
1545 2002-03-01 <johan@FRIJA>
1547 * src/SDCCglue.c (printIvalPtr): fixed bug #524211
1549 * src/SDCCast.c (decorateType): fixed bug #524209
1551 * src/SDCCval.c (valNot): fixed bug #524195
1553 2002-02-26 <johan@balder>
1555 * src/xa51/gen.c: fixed a warning
1557 * src/SDCCglue.c (printIvalFuncPtr): fixed bug #522534
1559 * src/SDCCast.c (decorateType): fixed bug #522534
1561 2002-02-23 <johan@balder>
1563 * src/SDCCdflow.c (computeDataFlow): fixed bug #460088
1565 2002-02-22 <johan@balder>
1567 * src/SDCCast.c: fixed bug #514865
1569 * src/SDCCy.c ("SDCC.y"): fixed bug #516625
1571 2002-02-21 Sandeep Dutta <sandeep@ddi.com>
1573 * sdcc/src/SDCCloop.c:
1574 Previous fix was not good. basic blocks that have "break" or "return" are
1575 not really partof a loop , but live ranges used in these blocks should
1576 be live thru the entire loop, so set partOfLoop but don't add them to
1579 2002-02-21 <johan@FRIJA>
1581 * src/SDCCcse.c: fixed bug #514308
1583 2002-02-20 Sandeep Dutta <sandeep@ddi.com>
1586 Fixed BUG #519583. If a conditional block ended in a return/break
1587 statement inside a loop, it was not being considered part of the loop.
1589 * src/SDCCcflow.c: Removed fix (Fixed in SDCCloop.c)
1591 2002-02-10 Karl Bongers <karl@turbobit.com>
1594 Fixed up SDCDB debugger somewhat. Updated debugger/README
1595 with lots of comments and notes.
1597 * device/examples/test2.c:
1598 Fix bug, "red" variable not being initialized(compiler complained).
1600 * device/examples/Makefile, examples/test3.c:
1601 Add Makefile in device/examples folder, compiles test3.c
1602 for use as a multiple module SDCDB test case.
1604 * sim/ucsim/cmd.src/cmdset.cc:
1605 Took out debug printfs in ucsim "next" command.
1608 Karl and Johan start ucsim XA support. Most dissassembly working,
1609 about 75% emulation done(plenty of work remaining).
1611 * sim/ucsim/z80.src:
1612 Add Z80 support to ucsim, add test-ucz80 regression test,
1613 notice ucsim/z80 emulation fails on examples/test3.c/itoa code.
1614 Notice z80 compiler fails on examples/test3.c/crc code.
1616 2002-01-30 Sandeep Dutta <sandeep@ddi.com>
1618 * src/mcs51/gen.c, src/mcs51/main.c, src/mcs51/ralloc.c:
1619 Added support for --parms-in-bank1
1621 * src/ds390/peeph.def:
1622 added a few more peephole optimzations
1625 1) added __builtin_inp & __builtin_outp used to read in data of given length
1626 from a memory mapped port
1627 2) added __builtin_memcmp
1628 3) added __builtin_swapw swap bytes of a short
1630 * src/ds390/gen.c, src/ds390/gen.h, src/ds390/ralloc.c:
1631 1) handle multiple send & receives from register bank1
1632 2) ralloc can now allocate DPTR1 to some liveRanges
1634 * src/SDCCsymt.c, src/SDCCsymt.h:
1635 changes to handle multiple sends & receives
1638 added some pointer arithmetic optimization
1641 added some pointer arithmetic optimizations but not stable yet so not
1642 called from anywhere (will get this working shortly)
1644 * src/SDCCopt.c: fixed for multiple sends & receives
1647 1) added options --parms-in-bank1 (ds390/mcs51) & --protect-sp-update
1648 2) preprocessing done AFTER port->finalizeoptions . This allows ports to
1649 set preprocessor defines (depending on options)
1651 * src/SDCCicode.c, src/SDCCicode.h:
1652 changes made to handle multiple sends & receives
1655 Added options --protect-sp-update (ds390) and --parms-in-bank1 (ds390/mcs51)
1657 * src/SDCCcse.c, src/SDCCcse.h:
1658 added function findbackward def (to be used in upcoming optimization)
1660 * src/SDCCcflow.c, src/SDCCcflow.h:
1661 added function returnAtEnd - to determine if a basic block terminates with
1664 * src/SDCCast.c, src/SDCCast.h:
1665 added option parms-in-bank1
1667 * device/lib/_divsint.c, device/lib/_divslong.c, device/lib/_divuint.c
1668 * device/lib/_divulong.c, device/lib/_modsint.c, device/lib/_modslong.c
1669 * device/lib/_modulong.c, device/lib/_mulint.c, device/lib/_mullong.c:
1670 adjusted for --parms-in-bank1 option
1672 * device/include/string.h:
1673 donot redefine "reentrant" keyword
1675 * device/include/ds80c390.h: Added some more SFRs
1677 2002-01-28 Bernhard Held <bernhard@bernhardheld.de>
1679 * sim/ucsim: Merged branch ucsim-034-pre3 to main trunk; new version 0.4
1681 2002-01-26 Bernhard Held <bernhard@bernhardheld.de>
1683 * src/SDCCast.c (funcOfType): fix usage of double --float-reent
1685 2002-01-22 Bernhard Held <bernhard@bernhardheld.de>
1687 * support/regression/fwk/lib/testfwk.c (main): Removed workaround for bug #505387
1689 2002-01-18 Paul Stoffregen <paul@pjrc.com>
1691 * Added --xram-movc option
1693 2002-01-13 Bernhard Held <bernhard@bernhardheld.de>
1695 * support/regression/Makefile: don't include test-mcs51-stack-auto in target all
1697 2002-01-11 Johan Knol
1699 * Added math lib of Jesus Calvino-Fraga
1701 2002-01-08 Bernhard Held <bernhard@bernhardheld.de>
1703 * src/SDCCmain.c (processFile): fix processing of ../../src.c
1704 * support/regression/Makefile: new target test-mcs51-stack-auto
1705 * support/regression/ports/mcs51-stack-auto/spec.mk: added
1707 2002-01-04 Bernhard Held <bernhard@bernhardheld.de>
1709 * src/SDCCglue.h: printIvalCharPtr(), not printIvalChar()
1711 2002-01-04 Bernhard Held <bernhard@bernhardheld.de>
1713 * support/regression/ports/mcs51/support.c: correct setup of timer / UART
1715 2002-01-03 Bernhard Held <bernhard@bernhardheld.de>
1717 * src/SDCCsymt.c (processFuncArgs): fix #498307 by Johan
1719 * src/SDCCglue.h: add definition for printIvalChar()
1721 2002-01-02 Bernhard Held <bernhard@bernhardheld.de>
1723 * src/SDCCast.c: fix #498138 by Johan
1725 * src/SDCCglue.c: fix #498138 by Johan
1727 2002-01-02 Bernhard Held <bernhard@bernhardheld.de>
1729 * support/regression/Makefile: fix clean
1731 * support/regression/ports/ds390/support.c: fix transmission of last character
1733 2001-12-29 Sandeep Dutta <sandeep@ddi.com>
1735 * /sdcc/src/ds390/gen.c:
1736 a) improved computing address of stack variable
1737 b) took out some #if 0 code
1738 c) improved parmBytes adjustment
1739 d) improved genPlusIncr & genMinusIncr
1740 e) genCmp could generate bad code (when left assigned to DPTR)
1741 f) Fixed bug in hasInc
1743 * /sdcc/src/ds390/ralloc.c:
1744 a) packRegsForSupport could mess up live information (Fixed)
1745 b) packRegsDPTRuse could be incorrect for left & right shift
1747 * /sdcc/src/mcs51/ralloc.c:
1748 packRegsForSupport could mess up the live information (Fixed)
1750 * /sdcc/src/mcs51/gen.c: Fixed a bug in hasInc
1752 * /sdcc/src/SDCCast.c:
1753 can reverse a loop even if function call is present as long
1754 as the loop control variable is local & is not passed as parameter
1756 2001-12-24 Sandeep Dutta <sandeep@ddi.com>
1758 * /sdcc/ChangeLog: *** empty log message ***
1760 * /sdcc/src/ds390/gen.c, /sdcc/src/ds390/main.c:
1761 More builtin function additions for TININative
1763 * /sdcc/src/ds390/ralloc.c:
1764 Had broken the regression testsuite
1766 * /sdcc/src/SDCCast.c: Fixed a bug in dumptree
1768 * /sdcc/src/SDCCsymt.c, /sdcc/src/SDCCsymt.h:
1769 Added funcattr hasStackParms will be set for reentrant functions when there
1770 are paramteres on the stack, this helps in minimizing frame pointer generation
1771 typeFromStr can handle function pointers now
1773 * /sdcc/doc/builtins.txt, /sdcc/doc/TININative.txt:
1774 *** empty log message ***
1776 2001-12-24 Sandeep Dutta <sandeep@ddi.com>
1778 * /src/ds390/gen.c, /src/ds390/main.c:
1779 More builtin function additions for TININative
1781 * /src/ds390/ralloc.c:
1782 Had broken the regression testsuite
1784 * /src/SDCCast.c: Fixed a bug in dumptree
1786 * /src/SDCCsymt.c, /src/SDCCsymt.h:
1787 Added funcattr hasStackParms will be set for reentrant functions when there
1788 are paramteres on the stack, this helps in minimizing frame pointer generation
1789 typeFromStr can handle function pointers now
1791 * /doc/builtins.txt, /doc/TININative.txt:
1792 *** empty log message ***
1795 2001-12-24 Sandeep Dutta <sandeep@ddi.com>
1797 * /src/ds390/gen.c, /src/ds390/main.c, /src/ds390/peeph.def, /src/ds390/ralloc.c:
1798 ALPHA version for -mTININative
1800 * /src/izt/i186.c, /src/izt/tlcs900h.c, /src/mcs51/main.c, /src/pic/main.c, /src/z80/main.c, /src/avr/main.c:
1801 updated to reflect changes in the port structure
1804 added function do_assemble (similar to do_link) if non-null this function
1805 will be called to do assembly (-mTININative) requires a multi command
1807 added function genAssemblerEnd will be called to generate assembler Epilogue
1810 added _JavaNative to debug info printing
1812 * /src/SDCCmain.c: added option --tini-libid
1813 added port->do_assemble function (-mTININative) has a multi command assemble
1815 * /src/SDCCglue.c: Disabled "constExpr" check
1816 added port->genAssemblerEnd function
1818 * /src/SDCCglobl.h: Added option --tini-libid value
1821 tookout optimizeCompare from the header (has no external references)
1823 * /src/SDCCast.c: made one more function "static"
1825 2001-12-23 Michael Hope <michaelh@juju.net.nz>
1827 * src/z80/mappings.i: Added z80asm support.
1829 * src/z80/main.c: Added z80asm support on --asm=z80asm
1831 * src/z80/gen.c: Fixed asm portability issues.
1833 * src/asm.c (tvsprintf): Removed old code, added 'N' for function name. For extern support.
1835 * src/SDCCglue.c (printExterns): Added global/extern split.
1837 2001-12-17 Bernhard Held <bernhard@bernhardheld.de>
1839 * support/regression/Makefile: added test for mcs51 model large
1841 * support/regression/ports/mcs51-large/spec.mk: added test for mcs51 model large
1843 * support/regression/ports/gbz80/spec.mk: added -mgbz80
1845 2001-12-05 Michael Hope <michaelh@juju.net.nz>
1847 * src/diff.1 (Index): Many, many optmisiations. Dhrystone up to 201.
1849 1904-01-06 Michael Hope <michaelh@juju.net.nz>
1851 * src/z80/ralloc.c (packRegsForIYUse): Fixed the case where an operand is in direct space.
1853 * src/z80/gen.c (makeFreePairId): Optimised IY load by using a spare pair.
1855 2001-12-02 Bernhard Held <bernhard@bernhardheld.de>
1857 * src/mcs51/gen.c (genFunction): avoid excess "inc sp"
1859 * support/regression/tests/simplefloat.c: Port to mcs51.
1861 2001-11-25 Michael Hope <michaelh@juju.net.nz>
1862 * support/regression/tests/bug-485362.c: Added.
1864 * support/regression/tests/simplefloat.c (testDivNearOne): Added.
1866 * src/z80/gen.c (aopOp): Fixed case where left and result are in the same spill loc and they have different sizes.
1868 * src/z80/peeph.def: Added rules for optimising two byte compares on the same thing, and to optimise two ptr assign.
1870 * src/z80/gen.c (aopDump): Added a dump function.
1872 2001-11-25 Bernhard Held <bernhard@bernhardheld.de>
1873 * sim/ucsim/s51.src/glob.cc: DS390 SFRs and bits added.
1875 * sim/ucsim/s51.src/port.cc: Port 4 and 5 added.
1877 * sim/ucsim/s51.src/regs51.h: DS390 SFRs added.
1879 * sim/ucsim/s51.src/uc390.cc: Some details improved, CKRDY works for tinibios.
1881 * sim/ucsim/s51.src/uc390cl.h: Work in progress.
1883 * sim/ucsim/sim.src/uccl.h: 6 ports for DS390.
1885 * support/regression/fwk/lib/testfwk.c: Run with tinibios.
1887 * support/regression/ports/mcs51/spec.mk: Fine tuninig.
1889 * support/regression/ports/ds390/support.c: Use tinibios.
1891 * support/regression/ports/ds390/spec.mk: Fine tuning, use tinibios.
1893 2001-11-23 Michael Hope <michaelh@juju.net.nz>support/regression/tests/bug-460010.c
1895 * src/z80/ralloc.c (packRegsForHLUse3): Changed to not pack into HL if anything is in direct space.
1896 (packRegsForHLUse3): Added packing support for send, cast, and return value from a call.
1898 * src/z80/peeph.def: Added rules for optimising pushes of part of a pair.
1900 * src/z80/gen.c (emitCall): Changed the stack fixup to not use HL.
1902 2001-11-18 Michael Hope <michaelh@juju.net.nz>
1904 * src/z80/gen.c (genCmp): Fixed compare on unsigned.
1906 * src/z80/ralloc.c (packRegsForHLUse3): Created and optimised.
1907 (packRegsForIYUse): Created and optimised.
1909 2001-11-07 Michael Hope <michaelh@juju.net.nz>
1911 * support/regression/tests/float.c (testFloatAdd): Fixed up warning.
1912 2001-11-18 Bernhard Held <bernhard@bernhardheld.de>
1914 * sdcc/support/regression/tests/bug-460010.c: fix seg violation on host
1916 * sdcc/support/regression/tests/muldiv.c: fix output on mcs51
1918 * sdcc/support/regression/tests/stacks.c: fix DSEG overflow on mcs51
1920 2001-11-07 Bernhard Held <bernhard@bernhardheld.de>
1922 * sdcc/sim/device/lib/_gptrget.c: mem region 5 (idata) added
1924 * sdcc/sim/device/lib/_gptrput.c: mem region 5 (idata) added
1926 2001-11-07 Bernhard Held <bernhard@bernhardheld.de>
1928 * sdcc/sim/ucsim/globals.cc: New: IXRAM.
1930 * sdcc/sim/ucsim/stypes.h: New: IXRAM.
1932 * sdcc/sim/ucsim/s51.src/uc390.cc: New: IXRAM.
1934 2001-11-07 Michael Hope <michaelh@juju.net.nz>
1936 * src/z80/ralloc.c (packRegsForHLUse): Banned IFXs from being packed into HL.
1937 (packRegsForHLUse): Added rule to pack address of/pointer get for itemps into HL for the Z80.
1938 (packRegsForAccUse2): Added rule to pack hbit IFXs into A.
1940 * src/z80/main.c (_setDefaultOptions): Made float code re-entrant by default.
1942 * src/z80/gen.c (aopGetLitWordLong): Added word support for floats.
1943 (genNotFloat): Added.
1944 (genUminusFloat): Added.
1946 * device/lib/z80/Makefile: Added floating pt stubs.
1948 * device/lib/Makefile.in (Z80SOURCES): Added floating pt support.
1950 * src/z80/gen.c (genIpush): Fixed up a push of one byte when left is in a pair.
1952 * device/lib/_fsadd.c (__fsadd): Fixed up return where the numbers are hugely different.
1954 2001-11-07 Bernhard Held <bernhard@bernhardheld.de>
1956 * sdcc/sim/ucsim/s51.src/glob.cc: Minor fix.
1958 * sdcc/sim/ucsim/s51.src/regs51.h: Minor fix.
1960 * sdcc/support/regression/Makefile: Add port ds390.
1962 * sdcc/support/regression/ports/mcs51/spec.mk: Minor change.
1964 * sdcc/support/regression/ports/z80/spec.mk: Minor change.
1966 * sdcc/support/regression/ports/ds390/spec.mk: Added.
1968 * sdcc/support/regression/ports/ds390/support.c: Added.
1970 * sdcc/support/regression/ports/ds390/uCsim.cmd: Added.
1972 * sdcc/support/regression/ports/mcs51/timeout.c: Cut.
1974 * sdcc/support/regression/fwk/lib/timeout.c: Paste.
1976 2001-11-04 Michael Hope <michaelh@juju.net.nz>
1978 * device/include/malloc.h: Added z80 and gbz80 support.
1980 * device/lib/gbz80/heap.s: Added.
1982 * device/lib/z80/heap.s: Added.
1984 * device/lib/malloc.c: Added z80 and gbz80 support.
1986 * support/regression/tests/malloc.c (testMalloc): Added.
1988 * src/SDCCmain.c (parseCmdLine): Added support for -Wp.
1990 * support/regression/tests/bug-478094.c: Added.
1992 * src/z80/gen.c (commitPair): Fixed silly gbz80/z80 commit to static bug.
1994 2001-11-04 Bernhard Held <bernhard@bernhardheld.de>
1996 * sdcc/sim/ucsim/s51.src/uc390cl.h: Improvement for ds390 to run regression tests
1998 * sdcc/sim/ucsim/s51.src/uc390.h: Improvement for ds390 to run regression tests
2000 * sdcc/sim/ucsim/s51.src/regs51.h: Improvement for ds390 to run regression tests
2002 * sdcc/sim/ucsim/s51.src/glob.cc: Improvement for ds390 to run regression tests
2004 * sdcc/support/regression/tests/bug-460010.c: Small change for ds390
2006 2001-11-04 Michael Hope <michaelh@juju.net.nz>
2008 * src/z80/peeph-gbz80.def: Removed a bad sub optimisation.
2010 2001-11-03 Michael Hope <michaelh@juju.net.nz>
2012 * support/regression/tests/bug-477927.c: Added.
2014 * src/z80/peeph.def: Added minor rules.
2016 * src/z80/gen.c (genPlusIncr): Added an extra plusinc rule.
2018 * src/z80/peeph.def: Added jump optimisation modification.
2020 2001-11-01 Michael Hope <michaelh@juju.net.nz>
2022 * src/SDCCmain.c (linkEdit): Added runtime path detection to the mcs51 port.
2024 2001-10-30 Michael Hope <michaelh@juju.net.nz>
2026 * support/regression/tests/funptrs.c: Added.
2028 2001-10-29 Michael Hope <michaelh@juju.net.nz>
2030 * src/z80/ralloc.c (packRegsForHLUse): Fixed up bad spill due to pushing one byte via HL.
2032 2001-10-28 Michael Hope <michaelh@juju.net.nz>
2034 * src/z80/gen.c (genArrayInit): Made it work for on stack arrays.
2036 * src/z80/main.c (gbz80_port =): Added rle support to the gbz80 port.
2038 * src/z80/gen.c (genMinus): Fixed for where the result is one byte.
2039 (movLeft2ResultLong): Created.
2041 * src/z80/ralloc.c (packRegsForHLUse): Added a couple of simple cases for the GB.
2042 (joinPushes): Added. Joins two char pushes into a word push.
2044 2001-10-27 Michael Hope <michaelh@juju.net.nz>
2046 * support/cpp2/Makefile.in (install): Added creation of dest dir.
2048 * support/makebin/Makefile (install): Added creation of dest dir.
2050 2001-10-24 Karl Bongers <karl@turbobit.com>
2052 * configure.in, configure, Makefile, support/cpp: Removed cpp folder, since we have new cpp2 preprocessor code.
2054 2001-10-21 Michael Hope <michaelh@juju.net.nz>
2056 * src/z80/ralloc.c: Turned off faulty pack for one use.
2058 * src/z80/peeph-gbz80.def: Removed redundent restart options.
2060 * src/z80/gen.c (genMult): Added native mul for constants on the z80 and gbz80.
2062 2001-10-21 Bernhard Held <bernhard@bernhardheld.de>
2064 * support/regression/Makefile: Improved clean
2066 * support/regression/ports/gbz80/spec.mk: Added clean
2068 * support/regression/ports/host/spec.mk: Added clean
2070 * support/regression/ports/z80/spec.mk: Added clean
2072 * support/regression/ports/mcs51/spec.mk: Added clean, little improvements
2074 * support/regression/ports/mcs51/timeout.c: little improvements
2076 2001-10-17 Michael Hope <michaelh@juju.net.nz>
2078 * device/lib/malloc.c (MEMHEADER): Fixed against new pedantic pointers.
2080 * support/regression/fwk/include/testfwk.h: Fixed up to use function pts correctly.
2082 * support/regression/generate-cases.py: Fixed up to use function pts correctly.
2084 2001-10-16 Bernhard Held <bernhard@bernhardheld.de>
2086 * support/regression/port/mcs51/spec.mk: add timeout for uCsim
2088 * support/regression/port/mcs51/timeout.c: add timeout for uCsim
2090 2001-10-13 Michael Hope <michaelh@juju.net.nz>
2091 * src/z80/gen.c (emitCall): Fixed up missing spill of HL when used to assign the result value.
2093 * src/z80/ralloc.c: Turned off pack for one use as it's quite broken.
2095 * src/SDCCmain.c (linkEdit): Added support for passing a legacy command line through the processor.
2097 * src/mcs51/main.c (_linkCmd): Added bin path to command.
2099 * src/SDCCmain.c (initValues): Added support for when it it called just to link.
2101 * as/mcs51/lklibr.c (libfil;): Turned off 'library file' message.
2103 * src/SDCCval.c (constVal): Fixed usage of 'L' modifier problems on ppc.
2105 * support/regression/tests/longor.c: Added.
2107 2001-10-11 Bernhard Held <bernhard@bernhardheld.de>
2109 * as/mcs51/asdata.c: replaced FILENAME_MAX with PATH_MAX
2111 * as/mcs51/aslink.h: define PATH_MAX
2113 * as/mcs51/asm.h: define PATH_MAX
2115 * as/mcs51/asmain.c: replaced FILENAME_MAX with PATH_MAX
2117 * as/mcs51/asnoice.c: replaced FILENAME_MAX with PATH_MAX
2119 * as/mcs51/lklex.c: replaced FILENAME_MAX with PATH_MAX
2121 * as/mcs51/lkmain.c: replaced FILENAME_MAX with PATH_MAX
2123 * src/SDCCglobl.h: define PATH_MAX
2125 * src/SDCCmacro.c: replaced FILENAME_MAX with PATH_MAX
2127 * src/SDCCmain.c: replaced FILENAME_MAX with PATH_MAX
2129 2001-10-11 Michael Hope <michaelh@juju.net.nz>
2131 * src/z80/gen.c (gencjneshort): Fixed
2133 * src/z80/ralloc.c (packRegsForHLUse): Added pack into HL for cast then ipush.
2135 2001-10-09 Michael Hope <michaelh@juju.net.nz>
2137 * support/regression/tests/bug-469671.c: Added.
2139 * src/z80/gen.c (shiftIntoPair): Fixed up warning.
2141 2001-10-08 Michael Hope <michaelh@juju.net.nz>
2143 * src/SDCCmain.c: Added --fommit-frame-pointer option and implemented in the z80 port.
2145 * src/z80/gen.c (genPlus): Fixed to work with extended stack. Also fixed genMinus, genCmp. genUMinus is still left.
2147 2001-10-08 Bernhar Held <bernhard@bernhardheld.de>
2149 * src/SDCCmain.c (preProcess): added define SDCC_NOOVERLAY
2151 * src/device/lib/_mulint.c : removed hint: nooverlay bug
2153 * src/device/lib/_mullong.c : removed hint: nooverlay bug
2155 * src/device/lib/_divuint.c : removed hint: nooverlay bug
2157 * src/device/lib/_divulong.c: removed hint: nooverlay bug
2159 * src/device/lib/_moduint.c : removed hint: nooverlay bug
2161 * src/device/lib/_modulong.c: removed hint: nooverlay bug
2163 2001-10-07 Michael Hope <michaelh@juju.net.nz>
2165 * 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.
2167 * support/Util/NewAlloc.c (freeTrace): Changed free for the gc case to not free at all. Fixes runtime segfault.
2169 * support/regression/tests/scott-compare3.c (c_abcd): Fixed up casts.
2171 2001-10-07 <johan@FRIJA>
2173 * device/lib/gets.c (gets): fixed the return value.
2175 2001-10-06 Michael Hope <michaelh@juju.net.nz>
2176 * src/SDCCmain.c (WRITE_SEG_LOC): Fixed up to use Safe_strdup.
2178 * 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.
2180 * 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.
2182 * src/z80/gen.c (genZ80Code): Added de-allocation via trace support.
2184 * src/pic/gen.c: Removed Safe_strdup.
2186 * configure.in: Added option to enable libgc support.
2188 * src/SDCCbitv.c (bitVectnBitsOn): Optimised.
2189 (bitVectUnion): Optimised.
2190 (bitVectIntersect): Optimised.
2191 (bitVectBitsInCommon): Optimised.
2192 (bitVectCplAnd): Optimised.
2194 * support/makebin/makebin.c (usage): Removed getopt as mingw32 doesn't have it. Sigh.
2196 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
2198 * src/SDCCmain.c: distinguish between assembler debug and plain options
2200 * src/avr/main.c: remove standard assembler options
2202 * src/ds390/main.c: remove standard assembler options
2204 * src/mcs51/main.c: remove standard assembler options
2206 * src/port.h: removed "PENDING" comment
2208 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
2210 * src/device/lib/_mulint.c : new, with assember functions
2212 * src/device/lib/_mullong.c : new, with assember functions
2214 * src/device/lib/_divuint.c : with assember functions
2216 * src/device/lib/_divsint.c : with assember functions
2218 * src/device/lib/_divulong.c: with assember functions
2220 * src/device/lib/_divslong.c: with assember functions
2222 * src/device/lib/_moduint.c : with assember functions
2224 * src/device/lib/_modsint.c : with assember functions
2226 * src/device/lib/_modulong.c: with assember functions
2228 * src/device/lib/_modslong.c: with assember functions
2230 * src/device/lib/libint.lib: replaced _muluint.c and _mulsint.c by _mulint.c
2232 * src/device/lib/liblong.lib: replaced _mululong.c and _mulslong.c by _mullong.c
2234 * src/device/lib/Makefile.in: replaced _muluint.c and _mulsint.c by _mulint.c
2235 replaced _mululong.c and _mulslong.c by _mullong.c
2237 2001-10-03 Bernhard Held <bernhard@bernhardheld.de>
2239 * src/SDCCsymt.c: sequence of specifiers in pintTypeChain() corrected
2241 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
2243 * src/SDCCglue.c: test, if win32api is available for MINGW
2245 2001-10-01 Bernhard Held <bernhard@bernhardheld.de>
2247 * src/SDCCsymt.c: no more _modifier in printTypeChain()
2248 * support/regression/tests/driverstruct.c: REENTRANT for mcs51
2249 * support/regression/ports/gbz80/spec.mk: removed GENERIC
2250 * support/regression/ports/host/spec.mk: removed GENERIC
2251 * support/regression/ports/mcs51/spec.mk: removed GENERIC
2252 * support/regression/ports/z80/spec.mk: removed GENERIC
2254 2001-10-01 Michael Hope <michaelh@juju.net.nz>
2256 * support/regression/fwk/lib/testfwk.c (__printf): Removed GENERIC.
2258 * support/regression/tests/bug-467035.c: Created.
2260 2001-10-01 <johan@FRIJA>
2262 * src/SDCC.y: fixed bug #466586 part 1
2264 2001-10-01 Johan Knol <johan.knol@iduna.nl>
2266 * SDCCicode.c: z80 has no generic pointers
2267 * removed -s from strip in all Makefile(.in)'s. It is not needed, but Solaris chocks on it.
2269 2001-09-30 Michael Hope <michaelh@juju.net.nz>
2271 * sim/ucsim/cmd.src/Makefile.in ($(PRJDIR)/libcmd.a): Changed all ar references to $(AR) for Solaris.
2273 2001-09-29 Michael Hope <michaelh@juju.net.nz>
2275 * Makefile (sdcc-libs): Added makebin to the list of standard targets.
2277 * support/regression/ports/z80/spec.mk: Updated to use env for sdcc bin dir for automatic regression.
2279 2001-09-25 Michael Hope <michaelh@juju.net.nz>
2281 * configure.in: Fixed up so that ucsim is only configured once.
2283 * support/cpp2/configure.in: Fixed to use the program transform to append the .exe for the win32 build.
2285 * src/SDCCutil.c (getPrefixFromBinPath): Fixed up to work with win32 in all of its glory.
2286 (getPathDifference): As above.
2288 * src/SDCCmain.c (preProcess): Changed to use a temporary file in a proper temp directory. Fixed case where pre-processing only.
2290 * src/SDCCglue.c (tempfilename): Added function for pre-processor.
2292 2001-09-23 Michael Hope <michaelh@juju.net.nz>
2293 * .version: Updated to 2.3.1
2295 * src/z80/main.c (z80_port =): Added macro based linker and assembler command line support.
2296 Added copyright header.
2298 * src/SDCCmain.c: Shifted various functions into SDCCutil.c
2299 (assemble): Added support for macro based assembler commands.
2300 (linkEdit): Added support for macro based linker commands.
2301 (preProcess): Changed the pre-processor to use macros.
2302 (_setPaths): Added functionality to autodetect the include, lib and bin dir paths.
2303 (_discoverPaths): Added support for overriding the install directory using the SDCCDIR env variable.
2305 * device/lib/z80/crt0.s: Added module name for debugging.
2307 2001-09-20 Michael Hope <michaelh@juju.net.nz>
2309 * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
2311 * src/SDCChasht.c (hTabDeleteByKey): Fixed delete as it would delete the last item from a bucket even if it wasn't the real one.
2313 * src/SDCCglue.c: Moved gc_strdup to SDCCutil.c
2315 * src/Makefile.in: Added SDCCmacro and SDCCutil
2317 2001-09-19 Michael Hope <michaelh@juju.net.nz>
2319 * src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
2321 2001-09-16 <johan@FRIJA>
2323 * 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.
2325 2001-09-15 <johan@FRIJA>
2327 * src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
2328 * src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
2330 2001-09-11 <johan@FRIJA>
2332 * src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
2334 2001-09-10 Michael Hope <michaelh@juju.net.nz>
2336 * support/regression/tests/bug-460444.c: Added test case.
2338 * src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
2339 (genCast): Added justification for all of the asserts.
2341 2001-09-10 Bernhard Held <bernhard@bernhardheld.de>
2343 * support/regression/support.c: _xdata replaced by xdata
2345 * support/regression/spec.mk: removed _generic
2347 2001-09-09 Michael Hope <michaelh@juju.net.nz>
2349 * src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
2351 * src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
2352 (genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
2354 * src/z80/peeph.def: Added a rule to optimise shift then compare.
2356 * support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
2358 * support/regression/tests/bug-460010.c: Added test case.
2360 * support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
2362 2001-09-09 Bernhard Held <bernhard@bernhardheld.de>
2364 * support/regression/Makefile: inter-port-clean adjusted for mcs51
2366 * support/regression/testfwk.c: removed workaround for bug #436344
2368 * support/regression/tests/bp.c: use less memory with mcs51
2370 * support/regression/tests/bug-441448.c: use less memory
2372 * support/regression/tests/ports/mcs51/spec.mk: cleanup, use --stack-after-data
2374 * support/regression/collate-results.py: typo
2376 2001-09-08 Michael Hope <michaelh@juju.net.nz>
2378 * support/regression/tests/fetchoverlap.c: Added new test case.
2380 * support/regression/tests/bp.c: Added new test case.
2382 * support/regression/tests/bug-448984.c: Added new test case.
2384 * support/regression/tests/pow2shifts.c: Added new test case.
2386 * src/z80/gen.c: Turned off the noise it normally generates for the release.
2387 (genlshTwo): Fixed right shift for count > 8.
2389 * src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
2391 2001-09-08 <johan@FRIJA>
2393 * src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
2395 2001-09-07 <johan@FRIJA>
2397 * src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
2399 * src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
2401 2001-09-06 <johan@FRIJA>
2403 * src/SDCC.y: this could be a fix for bug #458744 (1.37)
2404 * bernhard noted me at this: "() equals to (void)" (1.38)
2406 2001-09-05 <johan@FRIJA>
2408 * src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
2410 2001-09-04 <johan@FRIJA>
2412 * src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
2415 2001-09-04 Paul Stoffregen <paul@pjrc.com>
2417 * pragma noinduction broke memcpy on mcs51 large model. Moved it inside z80 optimization
2419 2001-09-03 Michael Hope <michaelh@juju.net.nz>
2421 * link/z80/aslink.h: Fixed path for PATH_MAX
2423 2001-09-02 Michael Hope <michaelh@juju.net.nz>
2425 * src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
2427 * support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
2429 * support/regression/tests/uminus.c: Added a test for the unary minus operator.
2431 * 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.
2433 2001-09-01 Michael Hope <michaelh@juju.net.nz>
2435 * src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
2436 (genCmp): Fixed up genCmp for the GB with longs.
2438 * device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
2440 * support/regression/ports/host/spec.mk: Updated to compile with the new type specifiers.
2442 * device/lib/Makefile.in (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
2444 * device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
2446 2001-08-30 Paul Stoffregen <paul@pjrc.com>
2448 * added peepholes 223 to 231 to mcs51 port. These improve code when using large model.
2450 2001-08-30 Michael Hope <michaelh@juju.net.nz>
2452 * 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.
2454 * src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
2456 2001-08-29 Michael Hope <michaelh@juju.net.nz>
2458 * link/z80/aslink.h: Fixed long file name support. Is now based off PATH_MAX instead of a constant.
2460 * src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
2462 2001-08-30 Bernhard Held <bernhard@bernhardheld.de>
2464 * sim/ucsim/configure: little improvement of Cygwin-detection
2465 * sim/ucsim/configure.in: little improvement of Cygwin-detection
2466 * sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
2467 * support/regression/tests/bug-221100.c: small changes for mcs51
2468 * support/regression/tests/bug-221168.c: small changes for mcs51
2469 * support/regression/tests/bug-227710.c: small changes for mcs51
2470 * support/regression/tests/staticinit.c: small changes for mcs51
2471 * as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
2472 * as/mcs51/lklex.c: accept everything as symbol name in rel-files, bug fix ID 452601
2473 * as/mcs51/lksym.c: accept everything as symbol name in rel-files, bug fix ID 452601