12020-01-23 Philipp Klaus Krause <pkk AT spth.de>
2
3	* sdas/linksrc/Makefile.in:
4	  Fix bug #2969.
5
62020-01-22 Philipp Klaus Krause <pkk AT spth.de>
7
8	* src/z80/gen.c:
9	  Fix bug #2967.
10
112020-01-19 Philipp Klaus Krause <pkk AT spth.de>
12
13	* doc/sdccman.lyx:
14	  Fix a typo in documentation.
15
162020-01-18 Philipp Klaus Krause <pkk AT spth.de>
17
18	* doc/sdccman.lyx:
19	  Update manual.
20	* .version,
21	  doc/INSTALL.txt,
22	  sdcc.spec:
23	  Bump version in preparation of 4.0.0 release.
24
252020-01-14 Philipp Klaus Krause <pkk AT spth.de>
26
27	* src/z80/peep.c,
28	  support/regression/tests/bug-2966.c:
29	  Fix bug #2966.
30
312020-01-14 Benedikt Freisen <b.freisen AT gmx.net>
32
33	* src/SDCCglue.c,
34	  support/regression/tests/fptr_cast_array_init.c:
35	  Implement feature request #598 (Cannot initialize arrays with type cast function pointers).
36
372020-01-13 Benedikt Freisen <b.freisen AT gmx.net>
38
39	* src/SDCCast.c,
40	  support/regression/tests/bug-2859.c,
41	  support/valdiag/tests/bug-2859.c:
42	  Fix bug #2859 (Cannot compare function to 0)
43
442020-01-13 Benedikt Freisen <b.freisen AT gmx.net>
45
46	* src/SDCC.y,
47	  src/SDCCerr.c,
48	  src/SDCCerr.h: Add parser rules and an error message for compound literals.
49
502020-01-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
51
52	* configure.ac,
53	  configure,
54	  src/SDCC.lex: Gracefully handle when uchar.h is missing
55
562020-01-10 Benedikt Freisen <b.freisen AT gmx.net>
57
58	* sdas/asxxsrc/asdata.c,
59	  sdas/asxxsrc/aslex.c,
60	  sdas/asxxsrc/asxxxx.h,
61	  sdas/linksrc/aslink.h,
62	  sdas/linksrc/lkdata.c,
63	  sdas/linksrc/lklex.c:
64	  Make the character input routines in sdas and sdld 8-bit-safe (bug #2961) and interpret all extended ASCII characters as letters.
65	* src/SDCC.lex,
66	  src/SDCCutil.c,
67	  support/regression/tests/idf_ucn_utf8.c:
68	  Add compiler support for UCNs and non-ASCII-utf8 in identifiers (patch #311) -- the internal representation is utf8.
69
702020-01-09 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
71
72	* src/hc08/gen.c,
73	  support/regression/tests/bug-2825.c:
74	  Fix bug #2825.
75	* support/regression/tests/gcc-torture-execute-20040409-1.c,
76	  support/regression/tests/gcc-torture-execute-20040409-2.c,
77	  support/regression/tests/gcc-torture-execute-20040409-3.c:
78	  Remove some tests that depend on older GCC implementation-defined behaviour on signed int overflow.
79
802020-01-08 Philipp Klaus Krause <pkk AT spth.de>
81
82	* src/stm8/gen.c,
83	  support/regression/tests/bug-2964.c:
84	  Fix bug #2964.
85
862019-12-29 Philipp Klaus Krause <pkk AT spth.de>
87
88	* src/stm8/ralloc2.cc,
89	  src/stm8/gen.c,
90	  src/SDCCsymt.c:
91	  Reenable partial register allocation for stm8, that was accidentially partially disabled when enabling the new stack allocator.
92
932019-12-14 Philipp Klaus Krause <pkk AT spth.de>
94
95	* src/z80/gen.c:
96	  Revive non-destructive &.
97
982019-12-14 Philipp Klaus Krause <pkk AT spth.de>
99
100	* sdas/asrab/rabmch.c:
101	  Fix ex (sp), hl for Rabbits.
102	* src/z80/gen.c:
103	  Fix an issue in eZ80 pointer read.
104
1052019-12-12 Philipp Klaus Krause <pkk AT spth.de>
106
107	* src/SDCCopt.c,
108	  support/regression/tests/bug-2932.c:
109	  Fix bug #2932.
110
1112019-12-12 Philipp Klaus Krause <pkk AT spth.de>
112
113	* src/z80/gen.c,
114	  src/z80/ralloc2.cc,
115	  src/z80/main.c:
116	  Improve use of sbc hl, rr in comparisons, part of RFE #641.
117
1182019-12-12 Philipp Klaus Krause <pkk AT spth.de>
119
120	* src/z80/gen.c,
121	  src/z80/ralloc2.cc:
122	  Improve <<, part of RFE #639.
123
1242019-12-10 Philipp Klaus Krause <pkk AT spth.de>
125
126	* support/regression/tests/literalop.c:
127	  Avoid testing for undefined behaviour that happens to be implementation-defined in GCC, but not clang.
128
1292019-12-09 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
130
131	* src/SDCClospre.cc:
132	  Improve handling of ADDRESS_OF.
133	* support/regression/tests/bug-2957.c:
134	  Test for bug #2957.
135	* src/pdk/gen.c,
136	  support/regression/tests/bug-2959.c,
137	  support/regression/tests/bug-2958.c:
138	  Fix bugs #2959, #2958.
139
1402019-12-02 Philipp Klaus Krause <pkk AT spth.de>
141
142	* support/regression/tests/string.c:
143	  Make preprocessor guards compatible with default setting of clang-9.
144
1452019-11-28 Philipp Klaus Krause <pkk AT spth.de>
146
147	* src/SDCClrange.c,
148	  support/regression/tests/bug-2956.c:
149	  Fix bug #2956.
150
1512019-11-22 Philipp Klaus Krause <pkk AT spth.de>
152
153	* src/SDCC.y:
154	  Fix bug #2953.
155
1562019-11-21 Philipp Klaus Krause <pkk AT spth.de>
157
158	* src/SDCC.y:
159	  Fix bug #2954.
160
1612019-11-21 Philipp Klaus Krause <pkk AT spth.de>
162
163	* src/SDCC.y:
164	  Revert previous syntax error on multiple data types commit, since it broke __at (which in SDCC is a type specifier).
165
1662019-11-20 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
167
168	* src/SDCC.y:
169	  Allow C2X attribute declarations and attribute arguments.
170
1712019-11-20 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
172
173	* src/SDCC.y:
174	  Reorganize grammar by appendix A.2 of C2X.
175
1762019-11-19 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
177
178	* src/SDCC.lex,
179	  src/SDCC.y,
180	  src/SDCCerr.h,
181	  src/SDCCerr.c:
182	  Allow C2X attributes on statements.
183
1842019-11-19 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
185
186	* src/pdk/gen.c,
187	  support/regression/tests/gcc-torture-execute-20181120-1.c:
188	  Fix bug #2947.
189	* src/SDCC.lex,
190	  support/regression/tests/c2xkeywords.c:
191	  Support C2X keyword from N2457.
192	* support/regression/tests/gcc-torture-execute-pr47148.c,
193	  support/regression/tests/gcc-torture-execute-pr63659.c,
194	  support/regression/tests/gcc-torture-execute-pr64682.c:
195	  Enable some tests that depend on C99 features now supported by SDCC.
196
1972019-11-19 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
198
199	* support/regression/tests/gcc-torture-execute-*:
200	  Add more GCC tests, RFE #652.
201
2022019-11-14 Philipp Klaus Krause <pkk AT spth.de>
203
204	* src/z80/peeph-z80.def,
205	  src/z80/peeph-tlcs90.def,
206	  src/z80/peeph-r2k.def,
207	  src/z80/peeph-gbz80.def:
208	  Improve fix for bug #2914.
209
2102019-11-11 Philipp Klaus Krause <pkk AT spth.de>
211
212	* src/SDCC.lex,
213	  src/SDCCval.c,
214	  src/SDCCerr.h,
215	  src/SDCCerr.c:
216	  C2X u8 character constants (N2418).
217
2182019-11-09 Philipp Klaus Krause <pkk AT spth.de>
219
220	* src/SDCClospre.cc,
221	  support/regression/tests/bug-2942.c:
222	  Fix bug #2942.
223
2242019-11-06 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
225
226	* support/regression/ports/pdk15-stack-auto/spec.mk:
227	  Increase timeout for regression testing on ARMv6.
228
2292019-11-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
230
231	* src/SDCClrange.c:
232	  Allow more live-range shortening for stm8, pdk.
233
2342019-11-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
235
236	* src/stm8/gen.c:
237	  Improve wide & by small constants and register result.
238	* src/SDCCsymt.c,
239	  src/SDCCerr.h,
240	  src/SDCCerr.c,
241	  support/valdiag/tests/bug-2940.c:
242	  Fix bug #2940.
243
2442019-11-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
245
246	* src/pdk/gen.c,
247	  src/stm8/gen.c,
248	  src/z80/gen.c:
249	  Fix a bug in optimization of tail calls in interrupt handlers.
250
2512019-11-02 Philipp Klaus Krause <pkk AT spth.de>
252
253	* support/scripts/sdcc.nsi:
254	  Fix Windows installation of pdk13 and pdk15-stack-auto files.
255
2562019-11-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
257
258	* support/sdbinutils/binutils/Makefile.am,
259	  support/sdbinutils/binutils/Makefile.in: prefer static linked libz
260	  for the Windows snapshot builds so that we don't need another DLL
261
2622019-11-01 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
263
264	* src/SDCCsymt.c,
265	  src/SDCCopt.c,
266	  support/regression/tests/bug-2907.c:
267	  Fix bug #2907.
268	* support/regression/ports/pdk15-stack-auto/spec.mk:
269	  Increase timeout for regression testing on ARMv6.
270
2712019-10-25 Philipp Klaus Krause <pkk AT spth.de>
272
273	* src/stm8/gen.c:
274	  Fix handling of rematerialized pointers to the stack in y.
275
2762019-10-24 Philipp Klaus Krause <pkk AT spth.de>
277
278	* src/stm8/peeph.def,
279	  src/stm8/gen.c,
280	  src/stm8/ralloc.c:
281	  Various small improvements.
282
2832019-10-23 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
284
285	* src/stm8/gen.c,
286	  src/pdk/gen.c:
287	  Improve ! of bool.
288
2892019-10-23 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
290
291	* src/stm8/gen.c:
292	  Register shuffling fix, small | improvement.
293
2942019-10-21 Philipp Klaus Krause <pkk AT spth.de>
295
296	* src/pdk/gen.c:
297	  Fix an issue in stack operands of shifts.
298	* support/regression/tests/gcc-torture-execute-20000113-1.c,
299	  support/regression/tests/gcc-torture-execute-950511-1.c,
300	  support/regression/tests/gcc-torture-execute-pr42833.c:
301	  Disable tests failing due to known bugs.
302
3032019-10-16 Philipp Klaus Krause <pkk AT spth.de>
304
305	* src/pdk/gen.c:
306	  Fix a typo that resulted in comp being emitted for pdk13.
307
3082019-10-19 Philipp Klaus Krause <pkk AT spth.de>
309
310	* device/lib/pdk15-stack-auto/__setjmp.s:
311	  Fix bug #2934.
312	* src/pdk/gen.c:
313	  Fix 3 issues in handling of non-dead p.
314
3152019-10-16 Philipp Klaus Krause <pkk AT spth.de>
316
317	* src/pdk/gen.c:
318	  Use pdk15 comp.
319
3202019-10-15 Philipp Klaus Krause <pkk AT spth.de>
321
322	* src/stm8/gen.c:
323	  Fix code generation for calls via function pointers.
324
3252019-10-14 Philipp Klaus Krause <pkk AT spth.de>
326
327	* Merge pic14 branch.
328
3292019-10-13 Philipp Klaus Krause <pkk AT spth.de>
330
331	* src/SDCCicode.h,
332	  src/SDCCicode.c,
333	  src/SDCCsalloc.hpp,
334	  src/stm8/gen.c,
335	  src/z80/gen.c,
336	  src/pdk/gen.c:
337	  Improve tail call optimization.
338
3392019-10-11 Philipp Klaus Krause <pkk AT spth.de>
340
341	* src/SDCCsymt.h:
342	  Fix error message, patch #307 by RvS.
343	* src/SDCCsymt.c:
344	  Indentation fix.
345
3462019-10-07 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
347
348	* src/pic14/glue.c:
349	  Improve compability with trunk, patches by Gonzalo Pérez de Olaguer Córdoba.
350
3512019-10-06 Philipp Klaus Krause <pkk AT spth.de>
352
353	* sdas/aspdk15/pdk15pst.c:
354	  Fix swapc bug #2935.
355
3562019-10-02 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
357
358	* src/pdk/gen.c:
359	  Improve handling of stack operands in comparison.
360
3612019-10-01 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
362
363	* src/pdk/gen.c:
364	  Fixes and improvements for stack operands.
365	* .version:
366	  Bump version for advances in -mpdk15 --stack-auto.
367	* configure.ac,
368	  configure,
369	  sim/ucsim/configure.ac,
370	  sim/ucsim/configure,
371	  sdccconf_in.h,
372	  sim/ucsim/ddconfig_in.h:
373	  Remove check for strerror(), which is part of C89 and used unconditionally in SDCC anyway.
374
3752019-09-30 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
376
377	* src/pdk/gen.c:
378	  Fixes and improvements for stack operands.
379	* configure,
380	  configure.ac,
381	  device/lib/Makefile.in,
382	  device/lib/clean.mk,
383	  device/lib/pdk15-stack-auto,
384	  src/pdk/main.c,
385	  support/regression/Makefile.in,
386	  support/regression/ports/pdk15-stack-auto:
387	  Infrastructure for -mpdk15 --stack-auto regression testing.
388
3892019-09-28 Philipp Klaus Krause <pkk AT spth.de>
390
391	* src/pdk/gen.c:
392	  Fixes for stack operands and rematerialized stack locations.
393
3942019-09-27 Philipp Klaus Krause <pkk AT spth.de>
395
396	* src/pdk/gen.c:
397	  Fixes for stack operands.
398
3992019-09-27 Philipp Klaus Krause <pkk AT spth.de>
400
401	* src/pdk/gen.c:
402	  Fix tracking of pseudoregister in shifts.
403
4042019-09-27 Philipp Klaus Krause <pkk AT spth.de>
405
406	* src/pdk/ralloc.c:
407	  Fix a bug affecting rematerialized addresses cast to integers of multiple widths.
408
4092019-09-27 Philipp Klaus Krause <pkk AT spth.de>
410
411	* src/pdk/gen.c,
412	  src/pdk/ralloc2.cc:
413	  Improve register allocation.
414
4152019-09-26 Philipp Klaus Krause <pkk AT spth.de>
416
417	* src/pdk/gen.c,
418	  src/pdk/gen.h,
419	  src/pdk/ralloc.c,
420	  src/pdk/ralloc2.cc:
421	  Rematerialize stack adresses, improve handling of on-stack operands.
422
4232019-09-25 Philipp Klaus Krause <pkk AT spth.de>
424
425	* src/pdk/gen.c,
426	  support/regression/tests/gcc-torture-execute-20020402-3.c,
427	  support/regression/tests/gcc-torture-execute-divconst-2.c,
428	  support/regression/tests/gcc-torture-execute-pr78791.c:
429	  Fixes for on-stack operands.
430
4312019-09-24 Philipp Klaus Krause <pkk AT spth.de>
432
433	* support/regression/tests/addsub.c,
434	  support/regression/tests/ato.c,
435	  support/regression/tests/bitfields.c,
436	  support/regression/tests/bitwise.c,
437	  support/regression/tests/bug-2621.c,
438	  support/regression/tests/bug-2833.c,
439	  support/regression/tests/bug1115321.c,
440	  support/regression/tests/bug3410878.c,
441	  support/regression/tests/bug3521024.c,
442	  support/regression/tests/compare.c,
443	  support/regression/tests/condopptr.c,
444	  support/regression/tests/constantRange.c,
445	  support/regression/tests/ctype.c,
446	  support/regression/tests/funptrs.c,
447	  support/regression/tests/gcc-torture-execute-20000603-1.c,
448	  support/regression/tests/gcc-torture-execute-20000731-1.c,
449	  support/regression/tests/gcc-torture-execute-20020201-1.c,
450	  support/regression/tests/gcc-torture-execute-20020506-1.c,
451	  support/regression/tests/gcc-torture-execute-20040409-2.c,
452	  support/regression/tests/gcc-torture-execute-ashldi-1.c,
453	  support/regression/tests/gcc-torture-execute-ashrdi-1.c,
454	  support/regression/tests/gcc-torture-execute-divcmp-4.c,
455	  support/regression/tests/gcc-torture-execute-divconst-3.c,
456	  support/regression/tests/gcc-torture-execute-divmod-1.c,
457	  support/regression/tests/gcc-torture-execute-lshrdi-1.c,
458	  support/regression/tests/gcc-torture-execute-pr19606.c,
459	  support/regression/tests/gcc-torture-execute-pr39339.c,
460	  support/regression/tests/gcc-torture-execute-pr19606.c,
461	  support/regression/tests/gcc-torture-execute-string-opt-5.c,
462	  support/regression/tests/gcc-torture-execute-pr19606.c,
463	  support/regression/tests/gcc-torture-execute-va-arg-10.c
464	  support/regression/tests/gcc-torture-execute-pr19606.c,
465	  support/regression/tests/gcc-torture-execute-va-arg-9.c,
466	  support/regression/tests/gcc-torture-execute-pr19606.c,
467	  support/regression/tests/logic.c,
468	  support/regression/tests/gcc-torture-execute-pr19606.c,
469	  support/regression/tests/malloc.c,
470	  support/regression/tests/gcc-torture-execute-pr19606.c,
471	  support/regression/tests/memory.c,
472	  support/regression/tests/gcc-torture-execute-pr19606.c,
473	  support/regression/tests/muldiv.c,
474	  support/regression/tests/gcc-torture-execute-pr19606.c,
475	  support/regression/tests/onebyte.c,
476	  support/regression/tests/gcc-torture-execute-pr19606.c,
477	  support/regression/tests/rotate.c,
478	  support/regression/tests/shifts.c,
479	  support/regression/tests/shifts2.c,
480	  support/regression/tests/staticinit.c,
481	  support/regression/tests/string.c,
482	  support/regression/tests/switch.c,
483	  support/regression/tests/wchar.c:
484	  Preparations for -mpdk15 --stack-auto regression testing.
485
4862019-09-24 Philipp Klaus Krause <pkk AT spth.de>
487
488	* src/SDCCopt.c,
489	  src/pdk/gen.c,
490	  support/regression/ports/pdk14/support.c,
491	  support/regression/ports/pdk15/support.c:
492	  Fixes for on-stack operands.
493
4942019-09-21 Philipp Klaus Krause <pkk AT spth.de>
495
496	* src/pdk/gen.c,
497	  src/pdk/ralloc2.cc,
498	  src/pdk/peeph.def:
499	  Fixes for on-stack operands.
500
5012019-09-16 Philipp Klaus Krause <pkk AT spth.de>
502
503	* src/pdk/gen.c,
504	  src/pdk/ralloc2.cc:
505	  Fixes for on-stack operands.
506
5072019-09-13 Philipp Klaus Krause <pkk AT spth.de>
508
509	* src/z80/gen.c:
510	  Fix wide load via pointer with register result in ahl.
511
5122019-09-12 Philipp Klaus Krause <pkk AT spth.de>
513
514	* src/pdk/gen.c:
515	  Fixes for on-stack operands.
516
5172019-09-09 Philipp Klaus Krause <pkk AT spth.de>
518
519	* src/pdk/gen.c:
520	  Various improvements.
521	* device/lib/_fseq.c:
522	  Refactor to reduce RAM use.
523
5242019-09-09 Philipp Klaus Krause <pkk AT spth.de>
525
526	* src/pdk/gen.c:
527	  Improve handling of stack operands.
528
5292019-09-08 Philipp Klaus Krause <pkk AT spth.de>
530
531	* src/pdk/gen.c:
532	  Fix handling of stack operands in right shift.
533
5342019-09-08 Philipp Klaus Krause <pkk AT spth.de>
535
536	* src/pdk/gen.c,
537	  src/pdk/ralloc2.cc:
538	  Improve push.
539
5402019-09-07 Philipp Klaus Krause <pkk AT spth.de>
541
542	* src/pdk/gen.c:
543	  Improve subtraction flexibility.
544
5452019-09-03 Philipp Klaus Krause <pkk AT spth.de>
546
547	* src/pdk/ralloc2.cc,
548	  src/SDCCsalloc.hpp,
549	  src/pdk/ralloc.c,
550	  support/regression/tests/gcc-torture-execute-va-arg-19.c:
551	  Use Chaitin-style allocator for stack variables.
552	* src/pdk/gen.c:
553	  Optimize out assignments between coalesced stack variables.
554
5552019-09-02 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
556
557	* src/pdk/gen.c:
558	  Emulate nadd a, m for pdk14, pdk13.
559
5602019-09-02 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
561
562	* src/pdk/gen.c,
563	  src/SDCCopt.c,
564	  support/regression/tests/bug-2931.c:
565	  Fix bug #2931.
566
5672019-09-02 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
568
569	* src/pdk/gen.c,
570	  support/regression/tests/nadd.c:
571	  Use nadd in subtraction for pdk15.
572
5732019-08-22 Philipp Klaus Krause <pkk AT spth.de>
574
575	* sim/ucsim/pdk.src/glob.cc,
576	  sim/ucsim/pdk.src/inst.cc,
577	  sim/ucsim/pdk.src/instcl.h,
578	  sim/ucsim/pdk.src/pdk.cc,
579	  sim/ucsim/pdk.src/pdkcl.h,
580	  sim/ucsim/pdk.src/regspdk.h:
581	  pdk13 I/O fix (patch #305 by Serge Rabyking).
582	  .version:
583	  Bump version for all the pdk13 fixes we got so far.
584	* src/z80/gen.c,
585	  src/z80/ralloc2.cc:
586	  Improve unsigned char right shift by literal (also part of RFE #639).
587
5882019-08-20 Philipp Klaus Krause <pkk AT spth.de>
589
590	* src/z80/gen.c:
591	  Improve wide ==, !=, part of RFE #641.
592
5932019-08-19 Philipp Klaus Krause <pkk AT spth.de>
594
595	* src/z80/gen.c,
596	  src/z80/ralloc2.cc,
597	  support/regression/test/bug-2929.c:
598	  Fix bug #2929.
599
6002019-08-17 Philipp Klaus Krause <pkk AT spth.de>
601
602	* device/lib/strdup.c:
603	  Fix strdup buffer overflow (patch #306).
604
6052019-08-16 Philipp Klaus Krause <pkk AT spth.de>
606
607	* src/z80/ralloc2.cc,
608	  src/z80/gen.c:
609	  Improve ~ register allocation (RFE #638).
610
6112019-08-16 Philipp Klaus Krause <pkk AT spth.de>
612
613	* src/z80/gen.c,
614	  src/z80/peeph-z80.def,
615	  src/z80/peeph-tlcs90.def,
616	  src/z80/peeph-r2k.def:
617	  Improve caching of zero on pointer write.
618
6192019-08-16 Philipp Klaus Krause <pkk AT spth.de>
620
621	* src/z80/gen.c:
622	  Improve assignment.
623	* device/include/string.h,
624	  device/lib/strdup.c,
625	  device/lib/strndup.c,
626	  device/lib/incl.mk:
627	  Implement C2X string duplication functions.
628
6292019-08-14 Philipp Klaus Krause <pkk AT spth.de>
630
631	* src/z80/peep.c:
632	  Improve notUsed() precision, alternative to patch from z88dk fork.
633	* src/stm8/*.def:
634	  Add rule from patch #304.
635	* src/z80/gen.c:
636	  Improve load of hl.
637
6382019-08-14 Philipp Klaus Krause <pkk AT spth.de>
639
640	* src/stm8/peep.c,
641	  src/stm8/peeph.def:
642	  stm8 peephole optimization improvements, mostly picked from patch #290.
643	* sdas/asxxsrc/asmcro.c:
644	  Improve sdas behaviour on internal error, patch from bug #2626.
645	* src/z80/peep.c:
646	  Pick some peephole optimization improvements from z88dk fork.
647
6482019-08-12 Philipp Klaus Krause <pkk AT spth.de>
649
650	* sdas/aspdk13/pdk13mch.c:
651	  Bit instruction fixes by Free-PDK.
652	* device/lib/pdk13/__gptrget.s:
653	  Pointer read fix as suggested by Serge Rabyking (see patch #305).
654
6552019-07-24 Philipp Klaus Krause <pkk AT spth.de>
656
657	* src/z80/gen.c:
658	  Small improvements in handling of wide values.
659
6602019-07-18 Philipp Klaus Krause <pkk AT spth.de>
661
662	* support/regression/tests/bug-2363.c:
663	  Disabled a test that won't work on pic14 due to lack of memory.
664
6652019-07-17 Philipp Klaus Krause <pkk AT spth.de>
666
667	* src/z80/gen.c:
668	  Improve aop moves (in particular wrt. 16-bit ld).
669
6702019-07-12 Philipp Klaus Krause <pkk AT spth.de>
671
672	* device/include/ctype.h,
673	  device/include/pic14/stdlib.h,
674	  support/regression/fwk/include/testfwk.h:
675	  Minor improvements towards pic14 regression testing suggested by Gonzalo Pérez de Olaguer Córdoba.
676
6772019-07-11 Philipp Klaus Krause <pkk AT spth.de>
678
679	* sdcc/device/lib/pic14/libsdcc/idata.c:
680	  Fix missing extern declaration of main.
681
6822019-07-11 Philipp Klaus Krause <pkk AT spth.de>
683
684	* .version:
685	  Reflect recent progress on pdk13 by bumping the version number.
686
6872019-07-08 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
688
689	* sim/ucsim/pdk.src/inst.cc,
690	  sdas/aspdk13/pdk13pst.c,
691	  sdas/aspdk13/pdk13mch.c,
692	  src/pdk/main.c,
693	  src/pdk/gen.c:
694	  Remove cneqsn for pdk13 fixing bug #2923.
695
6962019-07-01 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
697
698	* src/pic14/gen.c:
699	  Fixes for bit-fields, from patches by Gonzalo Pérez de Olaguer Córdoba.
700	* src/pic14/glue.c:
701	  Fixes from patches by Gonzalo Pérez de Olaguer Córdoba.
702
7032019-06-30 Philipp Klaus Krause <pkk AT spth.de>
704
705	* src/z80/gen.c,
706	  support/regression/tests/preserves_regs.c:
707	  Improve handling of iy, should fix bug #2918.
708
7092019-06-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
710
711	* src/z80/ralloc.c,
712	  src/hc08/ralloc.c,
713	  src/mcs51/ralloc.c,
714	  src/ds390/ralloc.c,
715	  src/stm8/ralloc.c,
716	  src/pdk/ralloc.c,
717	  src/pic14/ralloc.c,
718	  src/pic16/ralloc.c: fix bug #2920
719	* src/hc08/gen.c: fix bug with negative array index
720
7212019-06-28 Philipp Klaus Krause <pkk AT spth.de>
722
723	* src/pdk/peeph.def:
724	  Add a rule suggested by Free-PDK in RFE #630.
725	* sdas/aspdk13/pdk13mch.c:
726	  Fix curly brackets.
727	* Makefile.in:
728	  Fail build if any assembler fails to build.
729
7302019-06-27 Philipp Klaus Krause <pkk AT spth.de>
731
732	* sdas/aspdk13/pdk13pst.c,
733	  sdas/aspdk13/pdk13mch.c:
734	  Fix bug #2919 via suggestion by Free-PDK.
735
7362019-06-24 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
737
738	* Merge pdk branch to trunk.
739
7402019-06-24 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
741
742	* sdas/aspdk13/pdk13pst.c,
743	  sdas/aspdk13/pdk13mch.c:
744	  Fix bug #2915 via suggestion by Free-PDK.
745	* configure.ac,
746	  configure:
747	  Disable pdk16 port by default.
748
7492019-06-23 Philipp Klaus Krause <pkk AT spth.de>
750
751	* support/regression/tests/*.c:
752	  Disable some tests for pic14 that won't work anytime soon.
753	  Partially picked from patch by Gonzalo Pérez de Olaguer Córdoba.
754	* src/SDCCast.c,
755	  src/pic14/gen.c,
756	  src/pic14/gen.h,
757	  src/pic14/genarith.c,
758	  src/pic14/pcode.c,
759	  src/pic14/pcodepeep.c,
760	  src/pic14/ralloc.c:
761	  Fixes from patch by Gonzalo Pérez de Olaguer Córdoba.
762
7632019-06-22 Philipp Klaus Krause <pkk AT spth.de>
764
765	* src/z88/ralloc2.cc,
766	  src/z80/gen.c:
767	  Improve handling of a in bitwise operations.
768	* src/pdk/main.c:
769	  Fix bug #2916.
770	* src/z80/peeph-z80.def:
771	  Fix bug #2914.
772
7732019-06-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
774
775	* support/scripts/sdcc.nsi: pic14/libm no longer has *.c files
776	  to install
777
7782019-06-18 Philipp Klaus Krause <pkk AT spth.de>
779
780	* src/z80/ralloc2.cc,
781	  src/z80/gen.c:
782	  Improve handling of a in &.
783
7842019-06-18 Philipp Klaus Krause <pkk AT spth.de>
785
786	* src/z80/ralloc2.cc:
787	  Fix an issue in register allocation for GET_VALUE_AT_ADRESS.
788
7892019-06-17 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
790
791	* support/regression/tests/bug-2912.c:
792	  Fix a typo that resulted in a test being accidentially enabled for pdk.
793	* src/z80/gen.c:
794	  Fix handling of swapped register operand in 16-bit shift by literal.
795
7962019-06-16 Philipp Klaus Krause <pkk AT spth.de>
797
798	* src/z80/ralloc2.cc,
799	  src/SDCCgen.h,
800	  src/SDCCgen.c,
801	  src/z80/gen.c:
802	  Improve handling of a.
803
8042019-06-16 Philipp Klaus Krause <pkk AT spth.de>
805
806	* src/z80/gen.c:
807	  Fix an issue in iy shuffling.
808
8092019-06-15 Philipp Klaus Krause <pkk AT spth.de>
810
811	* src/z80/gen.c,
812	  src/z80/ralloc.c,
813	  src/z80/ralloc2.cc:
814	  Handle iy like other registers.
815
8162019-06-15 Philipp Klaus Krause <pkk AT spth.de>
817
818	* src/z80/gen.c,
819	  src/z80/ralloc2.cc:
820	  Minor register allocation improvement,
821	  fix a --reserve-regs-iy issue.
822
8232019-06-14 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
824
825	* src/z80/gen.c,
826	  support/regression/tests/bug-2912.c:
827	  Fix bug #2912.
828
8292019-06-13 Philipp Klaus Krause <pkk AT spth.de>
830
831	* src/regression/*:
832	  Update pic-specific rudimentary regression test framework.
833
8342019-06-12 Philipp Klaus Krause <pkk AT spth.de>
835
836	* Merge pic14 branch.
837
8382019-06-12 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
839
840	* device/lib/pic14/Makefile.common,
841	  device/lib/pic14/Makefile.in,
842	  device/lib/pic14/libc/Makefile.in,
843	  device/lib/pic14/libm/Makefile.in,
844	  device/lib/pic14/libsdcc/enhanced/Makefile.in,
845	  device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in,
846	  device/lib/pic14/libsdcc/regular/Makefile.in:
847	  Fix another pic14 out-of-tree-build issue.
848
8492019-06-11 Philipp Klaus Krause <pkk AT spth.de>
850
851	* device/include/ctype.h,
852	  device/include/pic14/stdlib.h:
853	  Work around some pic14 inlining issue.
854	* sdcc/aclocal.m4,
855	  sdcc/config.guess,
856	  sdcc/config.sub,
857	  sdcc/device/lib/pic14/install-sh,
858	  sdcc/device/lib/pic14/libc/Makefile.am,
859	  sdcc/device/lib/pic14/libc/Makefile.in,
860	  sdcc/device/lib/pic14/libm/Makefile.am,
861	  sdcc/device/lib/pic14/libm/Makefile.in,
862	  sdcc/device/lib/pic14/libsdcc/enhanced/Makefile.am,
863	  sdcc/device/lib/pic14/libsdcc/enhanced/Makefile.in,
864	  sdcc/device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.am,
865	  sdcc/device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in,
866	  sdcc/device/lib/pic14/libsdcc/regular/Makefile.am,
867	  sdcc/device/lib/pic14/libsdcc/regular/Makefile.in,
868	  sdcc/device/lib/pic14/missing,
869	  sdcc/install-sh,
870	  sdcc/sim/ucsim/ddconfig_in.h,
871	  sdcc/support/sdbinutils/bfd/doc/bfdver.texi:
872	  Fix pic14 library out-of-tree build.
873	* device/lib/pic14/configure.ac,
874	  device/lib/pic14/configure:
875	  Disable default build of extra libary flavors.
876
8772019-06-11 Philipp Klaus Krause <pkk AT spth.de>
878
879	* device/include/ctype.h,
880	  device/include/pic14/stdlib.h:
881	  Work around some pic14 inlining issue.
882
8832019-06-10 Philipp Klaus Krause <pkk AT spth.de>
884
885	* src/SDCCpeeph.c,
886	  src/pdk/gen.c,
887	  src/pdk/peep.c,
888	  src/pdk/peeph.def:
889	  pdk peephole improvements.
890
8912019-06-10 Philipp Klaus Krause <pkk AT spth.de>
892
893	* src/pdk/main.c,
894	  src/pdk/peep.h,
895	  src/pdk/peep.c,
896	  src/pdk/peeph.def:
897	  notUsed() and notUsedFrom().
898	* src/stm8/peep.c,
899	  src/z80/peep.c:
900	  Fixes for notUsedFrom().
901
9022019-06-10 Philipp Klaus Krause <pkk AT spth.de>
903
904	* src/SDCCpeeph.c,
905	  src/pdk/gen.c,
906	  src/pdk/peep.c,
907	  src/pdk/peeph.def:
908	  pdk peephole improvements.
909
9102019-06-10 Philipp Klaus Krause <pkk AT spth.de>
911
912	* src/pdk/main.c,
913	  src/pdk/peep.h,
914	  src/pdk/peep.c,
915	  src/pdk/peeph.def:
916	  notUsed() and notUsedFrom().
917	* src/stm8/peep.c,
918	  src/z80/peep.c:
919	  Fixes for notUsedFrom().
920
9212019-06-06 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
922
923	* device/include/wchar.h,
924	  device/lib/mbrtowc.c,
925	  device/lib/mbtowc.c,
926	  device/lib/wctomb.c,
927	  support/regression/tests/constantRange.c,
928	  support/regression/tests/driverstruct.c,
929	  support/regression/tests/float.c,
930	  support/regression/tests/nullstring.c,
931	  support/regression/tests/snprintf.c:
932	  Library and test improvements, from patch by Gonzalo Pérez de Olaguer Córdoba.
933	* src/pic14/glue.c,
934	  src/pic14/main.c:
935	  Predefined macros for pic14 variants, patch by Gonzalo Pérez de Olaguer Córdoba.
936	* device/lib/clean.mk:
937	  Cleanup pdk13 library files.
938	* device/include/asm/pic14/features.h,
939	  device/include/pic14,
940	  device/lib/pic14,
941	  src/SDCCsymt.c,
942	  src/pic14/main.c:
943	  pic14 library cleanup, patch by Gonzalo Pérez de Olaguer Córdoba.
944	* sdas/asz80/z80mch.c:
945	  Fix bug #2910.
946	* src/pdk/gen.c:
947	  Use xch for wide in-place shift by 8.
948
9492019-06-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
950
951	* support/regress/tests/gcc-torture-execute-pr34456.c:
952	  added missing __reentrant and re-enabled for ds390
953
9542019-06-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
955
956	* support/regression/tests/bugs-1596270-1736867.c:
957	  re-enable test for ds390; it passes now
958
9592019-05-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
960
961	* src/ds390/gen.c: fix assignment into far space from dph/dpl
962	* src/mcs51/peep.c: fix bug #2909
963
9642019-05-29 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
965
966	* src/pdk/gen.c:
967	  Improve arithmetic right shift.
968	* src/hc08/gen.c:
969	  Minor improvements suggested by Tony Papadimitriou.
970	* src/stm8/gen.c,
971	  support/regression/tests/gcc-torture-execute-stdarg-5.c:
972	  Improve addition flexibility wrt. register assignment.
973
9742019-05-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
975
976	* src/SDCCcse.c,
977	  src/SDCCopt.c: fix some def/use bugs
978	* support/regression/tests/gcc-torture-execute-stdarg-5.c:
979	  disable test for stm8, unimplemented addition op
980	* src/mcs51/ralloc.c,
981	  src/ds390/ralloc.c,
982	  src/hc08/ralloc.c,
983	  src/z80/ralloc.c,
984	  src/pdk/ralloc.c,
985	  src/pic14/ralloc.c,
986	  src/pic16/ralloc.c: fix a live range bug
987
9882019-05-02 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
989
990	* device/include/string.h,
991	  device/lib/incl.mk,
992	  device/lib/memccpy.c,
993	  support/regression/tests/memory.c:
994	  Implement C2X memccpy().
995
9962019-04-27 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
997
998	* src/pdk/ralloc.c,
999	  src/pdk/gen.c:
1000	  Improve register packing.
1001
10022019-04-27 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1003
1004	* src/pdk/gen.c,
1005	  src/pdk/peeph.def:
1006	  Improve workaround for missing addc/subc a, k; improve shifts by 7, 15, etc; fix handling of non-dead a in wide right shifty by literal.
1007
10082019-04-24 Philipp Klaus Krause <pkk AT spth.de>
1009
1010	* doc/sdccman.lyx:
1011	  Fix note on endianness.
1012
10132019-04-21 Philipp Klaus Krause <pkk AT spth.de>
1014
1015	* src/pdk/gen.c:
1016	  Fix bug #2904.
1017	* src/z80/gen.c:
1018	  Implement RFE #623.
1019
10202019-04-18 Philipp Klaus Krause <pkk AT spth.de>
1021
1022	* sim/ucsim/pdk.src/inst.cc:
1023	  Fix addc m, a, patch by Nicolas Lesser,
1024	  fix subs m, a.
1025	* src/pdk/gen.c:
1026	  +=, -= optimization; fix wide == between stack and register operand.
1027
10282019-04-17 Philipp Klaus Krause <pkk AT spth.de>
1029
1030	* sim/ucsim/pdk.src/pdk.cc:
1031	  Fix register dump, patch by Nicolas Lesser.
1032
10332019-04-17 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1034
1035	* src/pdk/gen.c:
1036	  Various fixes and improvements.
1037	* src/SDCCpeeph.c,
1038	  src/pdk/peeph.def:
1039	  Remove untargeted labels.
1040	* support/regression/tests/*.c:
1041	  Disable tests that won't work anytime soon on pkd15.
1042	* sim/ucsim/globals.cc:
1043	  More verbose pdk subtype output.
1044
10452019-04-16 Philipp Klaus Krause <pkk AT spth.de>
1046
1047	* sdas/aspdk16,
1048	  Makefile.common.in,
1049	  Makefile.in,
1050	  configure,
1051	  configure.ac,
1052	  sdas/asxxsrc/sdas.c,
1053	  sdas/asxxsrc/sdas.h:
1054	  Infrastructure for pdk16 assembler, based on patch
1055	  by Leo and Nicolas.
1056
10572019-04-16 Philipp Klaus Krause <pkk AT spth.de>
1058
1059	* Merged pdk branch to trunk.
1060
10612019-04-15 Philipp Klaus Krause <pkk AT spth.de>
1062
1063	* sdas/linksrc/lkrloc3.c:
1064	  pdk13 linker fix, patch By Nicolas Lesser.
1065
10662019-04-15 Philipp Klaus Krause <pkk AT spth.de>
1067
1068	* Merged post-3.9 branch to trunk.
1069
10702019-04-15 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1071
1072	* src/pdk/gen.c:
1073	  Fix POINTER_SET with left operand on stack, right operand in pseudo-register.
1074
10752019-04-14 Philipp Klaus Krause <pkk AT spth.de>
1076
1077	* support/regression/tests/bug-460010.c,
1078	  support/regression/tests/bug1928022.c,
1079	  support/regression/tests/gcc-torture-execute-991216-2.c,
1080	  support/regression/tests/gcc-torture-execute-va-arg-1.c,
1081	  support/regression/tests/gcc-torture-execute-va-arg-15.c:
1082	  Disable some tests for pdk15, on which they won't work anytime soon.
1083	* src/pdk/gen.c:
1084	  Improve handling of 16-bit return value,
1085	  fix stack parameters,
1086	  fix carry in comparison of wide stack values.
1087	* src/pdk/peeph.def:
1088	  Remove double exchange.
1089
10902019-04-13 Philipp Klaus Krause <pkk AT spth.de>
1091
1092	* src/pdk/gen.c:
1093	  Fix a bug in 16-bit store from registers via rematerialized pointer with non-zero offset;
1094	  fix a bug in handling of on-stack operands to &,|;
1095	  fix a bug in handling of past-end offsets for stack operands.
1096
10972019-04-09 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1098
1099	* src/pdk/gen.c:
1100	  Fix handling of -0.0 in ifx.
1101
11022019-04-09 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1103
1104	* sdas/linksrc/lkrloc3.c:
1105	  Linker warning improvement, patch by Nicolas Lesser.
1106	* support/regression/tests/*.c:
1107	  Disable some tests for pdk15, on which they won't work anytime soon.
1108	* src/pdk/gen.c:
1109	  Fix wide left shift by large literal.
1110	* sim/ucsim/pdk.src/glob.cc,
1111	  sim/ucsim/pdk.src/glob.h,
1112	  sim/ucsim/pdk.src/inst.cc,
1113	  sim/ucsim/pdk.src/instcl.h,
1114	  sim/ucsim/pdk.src/pdk.cc:
1115	  pdk13 simulator, patch by Nicolas Lesser.
1116
11172019-04-08 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1118
1119	* support/regression/tests/*.c:
1120	  Disable some tests for pdk15, on which they won't work anytime soon.
1121	* sdas/linksrc/aslink.h,
1122	  sdas/linksrc/lkmain.c,
1123	  sdas/linksrc/lkrloc3.c:
1124	  Linker memory size warning fixes, patches by Nicolas Lesser.
1125	* src/pdk/ralloc.c:
1126	  Fix handling of shift result assigned to sfr.
1127
11282019-04-06 Philipp Klaus Krause <pkk AT spth.de>
1129
1130	* sdas/aspdk13/pdk13pst.c,
1131	  sdas/aspdk13/pdk13mch.c:
1132	  Assembler fixes.
1133
11342019-04-05 Philipp Klaus Krause <pkk AT spth.de>
1135
1136	* sdas/aspdk13/pdk13pst.c,
1137	  sdas/aspdk13/pdk13mch.c:
1138	  Assembler fixes.
1139
11402019-04-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1141
1142	* sdas/aspdk13/pdk13mch.c,
1143	  sdas/aspdk13/pdk13pst.c:
1144	  Assembler fix, patch by Leo.
1145	* sim/ucsim/pdk.src/pdk.cc:
1146	  Simulator fix, patch by Nicolas Lesser.
1147
11482019-04-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1149
1150	* .version,
1151	  doc/INSTALL.txt,
1152	  sdcc.spec:
1153	  Bump version in preparation of 3.9.0 release.
1154
11552019-04-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1156
1157	* support/regression/tests/*:
1158	  Disable some tests for pdk15, on which they won't work anytime soon.
1159	* sdas/aspdk15/pdk15mch.c
1160	  Assembler fix, patch by Nicolas Lesser.
1161	* sim/ucsim/pdk.src/inst.cc,
1162	  sim/ucsim/pdk.src/pdk.cc,
1163	  sim/ucsim/pdk.src/regspdk.h:
1164	  Simulator fix, patch by Nicolas Lesser.
1165	* sdas/aspdk13/pdk13mch.c:
1166	  Assembler fix, patch by Leo.
1167
11682019-04-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1169
1170	* src/pdk/gen.c,
1171	  support/regression/tests/bug-2274.c:
1172	  Support dummy write for handling of uninitialized variables, better code for write of literal to bit-field.
1173	* sim/ucsim/pdk.src/inst.cc:
1174	  Fix dec m for pdk15.
1175	* support/regression/tests/bitfields.c,
1176	  support/regression/tests/bug-2181.c,
1177	  support/regression/tests/bug-2197.c,
1178	  support/regression/tests/bug-221100.c,
1179	  support/regression/tests/bug-221168.c,
1180	  support/regression/tests/bug-2305.c,
1181	  support/regression/tests/bug-2349.c,
1182	  support/regression/tests/bug-2357.c,
1183	  support/regression/tests/bug-2363.c,
1184	  support/regression/tests/bug-2373.c,
1185	  support/regression/tests/bug-2455.c,
1186	  support/regression/tests/bug-2497.c:
1187	  Disable some tests for pdk15, on which they won't work anytime soon.
1188	* sdas/linksrc/lkmain.c,
1189	  sdas/linksrc/lkrloc3.c,
1190	  sdas/linksrc/sdld.c,
1191	  sdas/linksrc/sdld.h:
1192	  Fix bug #2896, patch by Nicolas Lesser.
1193	* src/pdk/main.c:
1194	  Enable peephole optimizer for pdk13, pdk15.
1195	* sim/ucsim/pdk.src/inst.cc:
1196	  Fix and m, a, patch by Nicolas Lesser.
1197
11982019-04-04 Philipp Klaus Krause <pkk AT spth.de>
1199
1200	* sdas/aspdk15/pdk15mch.c,
1201	  sdas/asxxsrc/asout.c,
1202	  sdas/linksrc/lkrloc3.c:
1203	  Assembler fix, patch by Nicolas Lesser.
1204	* support/regression/fwk/include/testfwk.h,
1205	  support/regression/tests/absolute.c,
1206	  support/regression/tests/bug-1918.c,
1207	  support/regression/tests/bug-2124.c,
1208	  support/regression/tests/bug-2271.c:
1209	  Towards regression testing for pdk15.
1210
12112019-04-04 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1212
1213	* sdas/aspdk13/pdk13mch.c:
1214	  Assembler fixes, patch by Leo.
1215	* sdas/aspdk13/pdk13pst.c:
1216	  Assembler fixes.
1217	* device/lib/Makefile.in:
1218	  Build pdk13 library.
1219	* sim/ucsim/globals.cc,
1220	  sim/ucsim/pdk.src/*,
1221	  sim/ucsim/stypes.h,
1222	  pdk15 simulator, patch by Nicolas Lesser.
1223	* support/regression/Makefile.in,
1224	  support/regression/ports/pdk15:
1225	  pdk15 regression testing infrastructure.
1226
12272019-04-04 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1228
1229	* src/z80/peep.c:
1230	  Fix bug #2898.
1231
12322019-04-03 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1233
1234	* src/pdk/gen.c,
1235	  support/regression/tests/bug-2897.c:
1236	  Fix bug #2897.
1237	* sdas/aspdk14/pdk14mch.c,
1238	  sdas/aspdk15/pdk15mch.c,
1239	  sdas/asxxsrc/asout.c,
1240	  sdas/asxxsrc/sdas.c,
1241	  sdas/asxxsrc/sdas.h,
1242	  sdas/linksrc/lkrloc3.c:
1243	  Fix bug #2900, patch by Nicolas Lesser.
1244
12452019-04-03 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1246
1247	* device/include/signal.h,
1248	  device/include/stdint.h:
1249	  Support sig_atomic_t.
1250	* src/stm8/peep.c,
1251	  src/stm8/peeph.def:
1252	  Peephole improvements, picked from patch #290 by Visenri.
1253	* src/z80/peeph-gbz80.def,
1254	  src/z80/peeph-r2k.def,
1255	  src/z80/peeph-z80.def:
1256	  Peephole rule improvements, patch by b-s-a.
1257
12582019-04-02 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1259
1260	* src/SDCCpeeph.c,
1261	  src/pdk/gen.c,
1262	  src/pdk/main.c,
1263	  src/pdk/peeph.def:
1264	  Basic peephole optimizer.
1265	* sdas/aspdk13/pdk13mch.c,
1266	  sdas/aspdk13/pdk13pst.c:
1267	  Basic pdk13 assembler, patch by Leo.
1268
12692019-04-02 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1270
1271	* sdas/aspdk15/Makefile:
1272	  Remove generated file from svn.
1273
12742019-04-01 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1275
1276	* configure,
1277	  configure.ac,
1278	  Makefile.in,
1279	  Makefile.common.in,
1280	  sdas/aspdk13:
1281	  Infrastructure for pdk13 assembler.
1282
12832019-03-29 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1284
1285	* src/SDCCast.c,
1286	  src/SDCCsymt.h,
1287	  src/SDCCsymt.c,
1288	  src/SDCCval.c,
1289	  support/regression/tests/bug-2751.c,
1290	  support/regression/tests/generic.c:
1291	  Fix bug #2751.
1292	* sdas/aspdk/pdk.h,
1293	  sdas/aspdk/pdkmch.c,
1294	  sdas/aspdk14/pdk14mch.c,
1295	  sdas/aspdk15/pdk15mch.c:
1296	  Bit instruction fix, patch by Nicolas Lesser.
1297
12982019-03-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1299
1300	* src/SDCCopt.c: fix bug #2892
1301
13022019-03-28 Philipp Klaus Krause <pkk AT spth.de>
1303
1304	* src/SDCCglue.c:
1305	  Fix bug #2837, patch by Alan Cox.
1306	* sdas/asrab/rabmch.c,
1307	  sdas/asrab/rabpst.c:
1308	  Support standard ipset syntax, patch by Alan Cox.
1309	* src/z80/gen.c:
1310	  Fix an increment bug, patch by Nick Downing.
1311
13122019-03-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1313
1314	* sdas/asxxsrc/sdas.c,
1315	* sdas/asxxsrc/sdas.h,
1316	* sdas/aspdk14/pdk14mch.c,
1317	* sdas/aspdk15/pdk15mch.c: possible fix for bug #2890
1318
13192019-03-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1320
1321	* src/SDCCcse.c: fix bug #2099
1322	* support/regression/tests/gcc-torture-execute-20041019-1.c:
1323	  re-enable test
1324
13252019-03-21 Philipp Klaus Krause <pkk AT spth.de>
1326
1327	* doc/sdccman.lyx:
1328	  Update manual.
1329
13302019-03-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1331
1332	* src/SDCCast.c: fix bug #2834
1333	* support/regression/tests/bug-2834.c: re-enable test
1334	* src/ds390/ralloc.c: fix bug #2603
1335	* support/regression/tests/gcc-torture-execute-20021120-1.c:
1336	  re-enable test
1337
13382019-03-21 Philipp Klaus Krause <pkk AT spth.de>
1339
1340	* device/lib/pdk14/__setjmp.s,
1341	  device/lib/pdk15/__setjmp.s,
1342	  device/lib/pdk14/Makefile.in,
1343	  device/lib/pdk15/Makefile.in,
1344	  support/regression/tests/setjmp.c,
1345	  support/regression/tests/gcc-torture-execute-20010409-1.c,
1346	  support/regression/tests/gcc-torture-execute-pr60003.c:
1347	  setjmp() / longjmp() for pdk.
1348
13492019-03-21 Philipp Klaus Krause <pkk AT spth.de>
1350
1351	* support/regression/tests/gcc-torture-execute-20051110-2.c:
1352	  Enable a test (bug got fixed a few days ago via patch by Nicolas).
1353	* device/lib/Makefile.in,
1354	  device/lib/*/Makefile.in,
1355	  support/regression/tests/wchar.c,
1356	  support/regression/tests/bug-2855.c:
1357	  Fix bug #2855.
1358
13592019-03-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1360
1361	* src/SDCCopt.c: fix bug #2793
1362	* support/regression/tests/bug-2793: re-enable test
1363	* support/regression/tests/gcc-torture-execute-20120817-1.c:
1364	  re-enable test
1365
13662019-03-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1367
1368	* src/hc08/main.c: fix bug #2713
1369	* support/regression/tests/bug2783061.c: bug #2713 tested
1370
13712019-03-20 Philipp Klaus Krause <pkk AT spth.de>
1372
1373	* support/scripts/sdcc.nsi:
1374	  Include pdk libraries in Windows installer.
1375
13762019-03-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1377
1378	* device/lib/_ulong2fs.c: fix bug #2787
1379	* support/regression/tests/gcc-torture-execute-floatunsisf-1.c:
1380	  re-enable test
1381	* src/ds390/gen.c: fix bug #2835
1382	* support/regression/tests/bug-2833.c: re-enable tests
1383
13842019-03-19 Philipp Klaus Krause <pkk AT spth.de>
1385
1386	* support/scripts/sdcc.nsi:
1387	  Include pdk binaries in Windows installer.
1388
13892019-03-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1390
1391	* device/lib/_modslonglong.c: fix bug #2790
1392	* support/regression/tests/gcc-torture-execute-arith-rand-ll.c:
1393	  re-enable tests
1394
13952019-03-19 Philipp Klaus Krause <pkk AT spth.de>
1396
1397	* sim/ucsim/pdk.src/inst.cc:
1398	  Simulator fixes, patches by Nicolas Lesser.
1399	* sdas/aspdk15/pdk15mch.c:
1400	  Assembler fix, patch by Nicolas Lesser
1401	* support/regression/tests/staticinit.c,
1402	  src/pdk/gen.c,
1403	  src/pdk/ralloc2.cc:
1404	  Implement RFE #614.
1405
14062019-03-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1407
1408	* src/ds390/gen.c: fix bug #2702
1409	* device/lib/_rrulonglong.c,
1410	* device/lib/_rrslonglong.c: fix bug #2704
1411	* support/regression/tests/longlong.c: re-enable tests for
1412	  hc08/s08/ds390, add more long long shifting tests
1413	* support/regression/tests/gcc-torture-execute-ashldi-1.c,
1414	* support/regression/tests/gcc-torture-execute-ashrdi-1.c,
1415	* support/regression/tests/gcc-torture-execute-divconst-3.c,
1416	* support/regression/tests/gcc-torture-execute-lshrdi-1.c,
1417	* support/regression/tests/gcc-torture-execute-vrp-7.c:
1418	  re-enable tests
1419
1420
14212019-03-18 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1422
1423	* src/pdk/gen.c:
1424	  Improve |=, &=, ^=.
1425
14262019-03-18 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1427
1428	* src/pdk/gen.c,
1429	  src/pdk/ralloc2.cc,
1430	  support/regression/tests/bug3564104.c:
1431	  Improve register allocation for shift and addition, RFE #608.
1432	* support/valdiag/valdiag.py,
1433	  support/valdiag/Makefile.in:
1434	  Enable testing of diagnostics for pdk14.
1435
14362019-03-17 Philipp Klaus Krause <pkk AT spth.de>
1437
1438	* src/pdk/ralloc2.cc,
1439	  src/pdk/gen.c,
1440	  support/regression/tests/gcc-torture-execute-20020508-2.c,
1441	  support/regression/tests/gcc-torture-execute-pr41750.c:
1442	  Improve register allocation, RFE #611, RFE #612, RFE #606.
1443
14442019-03-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1445
1446	* sim/ucsim/aclocal.m4,
1447	* sim/ucsim/configure.ac,
1448	* sim/ucsim/configure: reverting previous changes; go back to
1449	  using default C++ dialect instead of C++11
1450
14512019-03-17 Philipp Klaus Krause <pkk AT spth.de>
1452
1453	* src/pdk/ralloc2.cc,
1454	  src/pdk/gen.c,
1455	  support/regression/tests/gcc-torture-execute-pr70005.c:
1456	  Better register allocation for assignment, RFE #615, fix some bugs in code generation.
1457
14582019-03-16 Philipp Klaus Krause <pkk AT spth.de>
1459
1460	* src/pdk/ralloc2.cc,
1461	  src/pdk/gen.c:
1462	  Better register allocation for surviving ifx operands, RFE #610.
1463
14642019-03-16 Philipp Klaus Krause <pkk AT spth.de>
1465
1466	* support/regression/tests/gcc-torture-execute-divcmp-2.c:
1467	  Enable passing test for pdk14.
1468	* src/z80/gen.c,
1469	  support/regression/tests/z88dk.c,
1470	  support/regression/tests/bug-2881.c:
1471	  Fix bug #2881.
1472
14732019-03-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1474
1475	* sim/ucsim/aclocal.m4,
1476	* sim/ucsim/configure.ac,
1477	* sim/ucsim/configure: request c++11 dialect
1478
14792019-03-15 Philipp Klaus Krause <pkk AT spth.de>
1480
1481	* src/pdk/gen.c:
1482	  Cheaper adjustment of pointer in p.
1483	* device/include/limits.h,
1484	  support/regression/tests/bug-2885.c:
1485	  Fix bug #2885.
1486
14872019-03-15 Philipp Klaus Krause <pkk AT spth.de>
1488
1489	* src/pdk/gen.c:
1490	  Fix calculation of cycle cost.
1491	* support/regression/tests/gcc-torture-execute-va-arg-19.c,
1492	  support/regression/tests/gcc-torture-execute-960302-1.c,
1493	  support/regression/tests/getbyte.c,
1494	  support/regression/tests/literalop.c:
1495	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1496	* support/regression/tests/gcc-torture-execute-20041011-1.c:
1497	  Redisable test for ds390 that got enabled accientially.
1498	* support/regression/tests/gcc-torture-execute-pr34456.c:
1499	  Disable a test for ds390, where it fails (bug #2883).
1500	* sim/ucsim/pdk.src/glob.cc:
1501	  Fix ret k debug output, patch by Nicolas Lesser.
1502	* src/SDCCglue.c:
1503	  Fix initalization of const pointers to non-const char for pdk.
1504	* src/pdk/ralloc2.cc,
1505	  support/regression/tests/bug2817646.c:
1506	  Improve register allocation for pointer read and some arithmetic operations.
1507	* support/regression/tests/gcc-torture-execute-20051110-2.c:
1508	  Disable test that fails due to bug #2884.
1509	* src/SDCCopt.c:
1510	  Move width optimization so that it gets proper information from ic sequencing.
1511
15122019-03-14 Philipp Klaus Krause <pkk AT spth.de>
1513
1514	* support/regression/tests/cse.c,
1515	  support/regression/tests/gcc-torture-execute-991216-2.c,
1516	  support/regression/tests/gcc-torture-execute-pr70005.c,
1517	  support/regression/tests/swap.c:
1518	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1519
15202019-03-14 Philipp Klaus Krause <pkk AT spth.de>
1521
1522	* Merged pdk branch to trunk.
1523
15242019-03-14 Philipp Klaus Krause <pkk AT spth.de>
1525
1526	* support/regression/tests/gcc-torture-execute-20000412-2.c,
1527	  support/regression/tests/gcc-torture-execute-20180112-1.c,
1528	  support/regression/tests/gcc-torture-execute-920922-1.c,
1529	  support/regression/tests/gcc-torture-execute-arith-rand.c,
1530	  support/regression/tests/gcc-torture-execute-ashldi-1.c,
1531	  support/regression/tests/gcc-torture-execute-divconst-3.c,
1532	  support/regression/tests/gcc-torture-execute-divmod-1.c,
1533	  support/regression/tests/gcc-torture-execute-index-1.c,
1534	  support/regression/tests/gcc-torture-execute-loop-15.c,
1535	  support/regression/tests/gcc-torture-execute-multdi-1.c,
1536	  support/regression/tests/gcc-torture-execute-pr39100.c,
1537	  support/regression/tests/gcc-torture-execute-pr49419.c,
1538	  support/regression/tests/gcc-torture-execute-pr60454.c,
1539	  support/regression/tests/gcc-torture-execute-pr61306-1.c,
1540	  support/regression/tests/gcc-torture-execute-pr61306-2.c,
1541	  support/regression/tests/gcc-torture-execute-pr64979.c,
1542	  support/regression/tests/gcc-torture-execute-pr78378.c,
1543	  support/regression/tests/gcc-torture-execute-pr79121.c,
1544	  support/regression/tests/onebyte.c,
1545	  support/regression/tests/gcc-torture-execute-va-arg-1.c,
1546	  support/regression/tests/gcc-torture-execute-va-arg-12.c,
1547	  support/regression/tests/gcc-torture-execute-va-arg-15.c,
1548	  support/regression/tests/gcc-torture-execute-va-arg-16.c,
1549	  support/regression/tests/gcc-torture-execute-va-arg-18.c,
1550	  support/regression/tests/gcc-torture-execute-va-arg-26.c,
1551	  support/regression/tests/gcc-torture-execute-va-arg-5.c,
1552	  support/regression/tests/gcc-torture-execute-va-arg-6.c,
1553	  support/regression/tests/gcc-torture-execute-va-arg-9.c,
1554	  support/regression/tests/gcc-torture-execute-loop-8.c:
1555	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1556	* src/pdk/gen.c:
1557	  Fix non-dead-register bugs, fix a carry issue.
1558
15592019-03-14 Philipp Klaus Krause <pkk AT spth.de>
1560
1561	* device/lib/pdk14/Makefile.in,
1562	  device/lib/pdk14/__gptrget.s,
1563	  device/lib/pdk15/Makefile.in,
1564	  device/lib/pdk15/__gptrget.s,
1565	  src/pdk/gen.c,
1566	  src/pdk/ralloc2.cc:
1567	  Improve read of 16-bit value via pointer.
1568	* support/regression/tests/gcc-torture-execute-pure-1.c,
1569	  support/regression/tests/gcc-torture-execute-string-opt-18.c,
1570	  support/regression/tests/io.c,
1571	  support/regression/tests/key.c,
1572	  support/regression/tests/string.c,
1573	  support/regression/tests/switch.c:
1574	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1575	* src/SDCCglue.c:
1576	  Fix UTF-16 and UTF-16 string literals for pdk.
1577
15782019-03-14 Philipp Klaus Krause <pkk AT spth.de>
1579
1580	* doc/sdccman.lyx,
1581	  src/SDCCast.c,
1582	  support/regression/tests/vaargs.c:
1583	  Disable omission of integer promotion of varargs for pdk.
1584	* device/include/stdarg.h:
1585	  Fix variable arguments for pdk.
1586	  src/pdk/gen.c:
1587	  Fix stack adjustment for reentrant function returning 16-bit value.
1588	* support/regression/tests/bug2084206.c,
1589	  support/regression/tests/gcc-torture-execute-920721-1.c,
1590	  support/regression/tests/gcc-torture-execute-920829-1.c,
1591	  support/regression/tests/gcc-torture-execute-921013-1.c,
1592	  support/regression/tests/gcc-torture-execute-921124-1.c,
1593	  support/regression/tests/gcc-torture-execute-980604-1.c:
1594	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1595
15962019-03-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1597
1598	* src/hc08/gen.c: fix bug in optimized 2 byte swap
1599	* support/regression/tests/bool.c: pass all ds390 tests now
1600
16012019-03-13 Philipp Klaus Krause <pkk AT spth.de>
1602
1603	* support/regression/tests/gcc-torture-execute-pr39339.c,
1604	  support/regression/tests/gcc-torture-execute-pr41750.c,
1605	  support/regression/tests/gcc-torture-execute-pr42833.c,
1606	  support/regression/tests/gcc-torture-execute-pr43236.c,
1607	  support/regression/tests/gcc-torture-execute-pr44575.c,
1608	  support/regression/tests/gcc-torture-execute-20030717-1.c,
1609	  support/regression/tests/gcc-torture-execute-20031204-1.c,
1610	  support/regression/tests/gcc-torture-execute-20040409-2.c,
1611	  support/regression/tests/gcc-torture-execute-20050218-1.c,
1612	  support/regression/tests/gcc-torture-execute-20050502-1.c,
1613	  support/regression/tests/gcc-torture-execute-20050826-1.c,
1614	  support/regression/tests/gcc-torture-execute-20060110-2.c,
1615	  support/regression/tests/gcc-torture-execute-20090207-1.c_
1616	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1617	* src/pdk/gen.c:
1618	  Fix read from signed bit-field, fix +/- lower result byte in a, fix xor operand upper byte in a.
1619
16202019-03-13 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1621
1622	* support/regression/tests/bug-2630.c,
1623	  support/regression/tests/bug-2822.c,
1624	  support/regression/tests/bug-441448.c,
1625	  support/regression/tests/bug-460010.c,
1626          support/regression/tests/bug-2712.c,
1627          support/regression/tests/bug1665511.c,
1628	  support/regression/tests/bug1757671.c,
1629	  support/regression/tests/bug1928022.c,
1630	  support/regression/tests/bug2729218.c,
1631	  support/regression/tests/bug2817646.c,
1632	  support/regression/tests/bug2862650.c,
1633	  support/regression/tests/bug2935162.c,
1634	  support/regression/tests/bug3027957.c,
1635	  support/regression/tests/bug3183823.c,
1636	  support/regression/tests/bug3381400.c,
1637	  support/regression/tests/bug3424150.c,
1638	  support/regression/tests/bug3564104.c,
1639	  support/regression/tests/bugs-1596270-1736867.c,
1640	  support/regression/tests/gcc-torture-execute-postmod-1.c,
1641	  support/regression/tests/gcc-torture-execute-pr15262.c,
1642	  support/regression/tests/gcc-torture-execute-pr15296.c,
1643	  support/regression/tests/gcc-torture-execute-pr19606.c,
1644	  support/regression/tests/gcc-torture-execute-pr20527-1.c,
1645	  support/regression/tests/gcc-torture-execute-pr20601-1.c,
1646	  support/regression/tests/gcc-torture-execute-pr27073.c,
1647	  support/regression/tests/gcc-torture-execute-pr27260.c,
1648	  support/regression/tests/gcc-torture-execute-pr27285.c,
1649	  support/regression/tests/gcc-torture-execute-pr28982a.c,
1650	  support/regression/tests/condopptr.c,
1651	  support/regression/tests/constantRange.c,
1652	  support/regression/tests/frexpf.c,
1653	  support/regression/tests/gcc-torture-execute-20000603-1.c,
1654	  support/regression/tests/gcc-torture-execute-20000717-4.c,
1655	  support/regression/tests/gcc-torture-execute-20000731-1.c,
1656	  support/regression/tests/gcc-torture-execute-20001024-1.c,
1657	  support/regression/tests/gcc-torture-execute-20010910-1.c,
1658	  support/regression/tests/gcc-torture-execute-20010915-1.c,
1659	  support/regression/tests/gcc-torture-execute-20020129-1.c,
1660	  support/regression/tests/gcc-torture-execute-20020402-3.c,
1661	  support/regression/tests/gcc-torture-execute-20020508-2.c,
1662	  support/regression/tests/gcc-torture-execute-20020615-1.c:
1663	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1664	* src/pdk/gen.h,
1665	  src/pdk/gen.c:
1666	  Fix arithmetic right shift, jump on &, static function pointer initalization, zeroing of bit-fields, ==, bit-field write from register p, bit-field write with non-dead register p, ^, immediate in -.
1667	* src/SDCCglue.c:
1668	  Fix pdk pointer initalization corner case.
1669	* sim/ucsim/pdk.src/inst.cc:
1670	  Fix ov.
1671
16722019-03-12 Philipp Klaus Krause <pkk AT spth.de>
1673
1674	* support/regression/tests/bug-2854.c,
1675	  support/regression/tests/gcc-torture-execute-arith-rand-ll.c,
1676	  support/regression/tests/bug-2222.c,
1677	  support/regression/tests/bug-2231.c,
1678	  support/regression/tests/bug-2427.c,
1679	  support/regression/tests/bug-2611.c,
1680	  support/regression/tests/bug-2890326.c,
1681	  support/regression/tests/bug3474855.c,
1682	  support/regression/tests/bug3475630.c,
1683	  support/regression/tests/gcc-torture-execute-20021120-1.c,
1684	  support/regression/tests/gcc-torture-execute-20030916-1.c,
1685	  support/regression/tests/gcc-torture-execute-20121108-1.c,
1686	  support/regression/tests/qsort.c,
1687	  support/regression/tests/bug-2188.c,
1688	  support/regression/tests/bug-2304.c,
1689	  support/regression/tests/bug-2501.c,
1690	  support/regression/tests/bug-2568.c,
1691	  support/regression/tests/bug-2621.c,
1692	  support/regression/tests/bug-2764.c,
1693	  support/regression/tests/gcc-torture-execute-pr39501.c,
1694	  support/regression/tests/gcc-torture-execute-pr78586.c,
1695	  support/regression/tests/bug1723128.c,
1696	  support/regression/tests/bug3410878.c,
1697	  support/regression/tests/ctype.c,
1698	  support/regression/tests/gcc-torture-execute-20030313-1.c,
1699	  support/regression/tests/p99-conformance.c,
1700	  support/regression/tests/scott-compare3.c:
1701	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1702	* support/regression/tests/gcc-torture-execute-divcmp-2.c,
1703	  support/regression/tests/staticinit.c:
1704	  Disable tests that fail in annoying ways.
1705	* src/SDCCglue.c:
1706	  Pointer initialization fix.
1707	* src/pdk/gen.c:
1708	  Shift fix, pointer read fix, jump table fix, negation fix, address offset fix, big return fix.
1709	* src/pdk/ralloc2.cc:
1710	  Improve register use at pointer read.
1711	* sim/ucsim/pdk.src/inst.cc:
1712	  Simulator fixes, patches by Nicolas Lesser.
1713	* src/pdk/ralloc2.cc,
1714	  src/pdk/gen.c:
1715	  Improve jump on &.
1716
17172019-03-12 Philipp Klaus Krause <pkk AT spth.de>
1718
1719	* support/regression/collate-results.py:
1720	  Improve error handling in regression test result parsing, fix bug #2675.
1721
17222019-03-11 Philipp Klaus Krause <pkk AT spth.de>
1723
1724	* sdas/aspdk14/pdk14mch.c,
1725	  sdas/asxxsrc/asdata.c,
1726	  sdas/asxxsrc/asexpr.c,
1727	  sdas/asxxsrc/asxxxx.h:
1728	  Fix handling of offsets to word addresses, patch by Nicolas Lesser.
1729	* src/pdk/gen.c:
1730	  Remove workarounds for word address offset handling issue.
1731	* support/regression/tests/*:
1732	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1733
17342019-03-11 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1735
1736	* src/pdk/gen.c:
1737	  Codegen fixes.
1738	* sim/ucsim/pdk.src/pdk.cc,
1739	  sdas/linksrc/lkmain.c:
1740	  Memory limit diagnostics, patch by Nicolas Lesser.
1741	* support/regression/tests/bug-2208.c,
1742	  support/regression/tests/bug-2253.c,
1743	  support/regression/tests/bug-2357.c,
1744	  support/regression/tests/bug-2516.c,
1745	  support/regression/tests/bug-2625.c,
1746	  support/regression/tests/bug-2254.c,
1747	  support/regression/tests/bug-2403.c,
1748	  support/regression/tests/bug-2516.c,
1749	  support/regression/tests/bug-2820.c:
1750	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1751
17522019-03-11 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1753
1754	* src/pdk/gen.c,
1755	  src/SDCCglue.c:
1756	  Pointer handling fixes.
1757	* support/regression/tests/bp.c,
1758	  support/regression/tests/bug-1805702.c:
1759	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1760
17612019-03-11 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1762
1763	* src/pdk/ralloc2.cc,
1764	  src/pdk/gen.c:
1765	  Improve register use.
1766	* sim/ucsim/pdk.src/inst.cc,
1767	  sim/ucsim/pdk.src/instcl.h:
1768	  Fix flag handling, patch by Nicolas Lesser.
1769
17702019-03-11 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
1771
1772	* src/pdk/gen.c:
1773	  Fix arithmetic right shift, assembler issue workaround for variables in ROM.
1774	* src/pdk/ralloc2.cc:
1775	  Try to save abit more RAM.
1776	* support/regression/tests/and_survive.c,
1777	  support/regression/tests/ato.c,
1778	  support/regression/tests/bitopcse.c,
1779	  support/regression/tests/bug-2031.c,
1780	  support/regression/tests/bug-1953.c:
1781	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1782
17832019-03-10 Philipp Klaus Krause <pkk AT spth.de>
1784
1785	* src/pdk/gen.c,
1786	  src/pdk/ralloc2.cc:
1787	  Improve register allocation, small code generation fixes.
1788	* support/regression/tests/absolute.c,
1789	  support/regression/tests/addsub.c,
1790	  support/regression/tests/args.c,
1791	  support/regression/tests/array.c,
1792	  support/regression/tests/bug-221100.c,
1793	  support/regression/tests/bug-221168.c,
1794	  support/regression/tests/bug1477149.c,
1795	  support/regression/tests/bug3401973.c:
1796	  Disable some tests for pdk14 (on which they won't work anytime soon due to lack of memory).
1797	* sim/ucsim/pdk.src/inst.cc:
1798	  Carry bug workaround.
1799
18002019-03-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1801
1802	* src/SDCCast.c: fix bugs #2750 and #2867 (same root cause)
1803	* support/regression/tests/bug-2750.c: enable test
1804
18052019-03-10 Philipp Klaus Krause <pkk AT spth.de>
1806
1807	* src/pdk/gen.c:
1808
18092019-03-10 Philipp Klaus Krause <pkk AT spth.de>
1810
1811	* src/pdk/gen.c:
1812	  Workaround for lack of support for offset at call in assembler.
1813	* sim/ucsim/pdk.src/inst.cc:
1814	  Carry bug workaround.
1815	* src/pdk/ralloc2.cc,
1816	  src/pdk/ralloc.c,
1817	  src/pdk/main.c:
1818	  Enable local variable overlay for leaf functions.
1819	* configure.ac,
1820	  configure:
1821	  Fix display of pdk13 enable.
1822
18232019-03-07 Philipp Klaus Krause <pkk AT spth.de>
1824
1825	* sim/ucsim/pdk.src/inst.cc:
1826	  Carry workaround.
1827	* src/pdk/gen.c:
1828	  Comparison fix.
1829	* sim/ucsim/pdk.src/glob.cc:
1830	  dzsn / izsn debug output fix, patch by Nicolas Lesser.
1831	* sdas/asxxsrc/asout.c,
1832	  sdas/linksrc/lkrloc3.c:
1833	  Fix handling of addresses of variables in RAM, patch by Nicolas Lesser.
1834
18352019-03-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1836
1837	* support/scripts/sdcc.nsi: sdcclib.exe is not built
1838	  anymore, so don't try to include it in the installer
1839
18402019-03-06 Philipp Klaus Krause <pkk AT spth.de>
1841
1842	* src/pdk/gen.c:
1843	  Improve pointer handling and subtraction.
1844	* sim/ucsim/pdk.src/inst.cc:
1845	  Fix idxm.
1846	* src/pdk/gen.c:
1847	  Comparison fix.
1848
18492019-03-06 Philipp Klaus Krause <pkk AT spth.de>
1850
1851	* sdas/asxxsrc/asout.c:
1852	  Address handling fix, patch by Nicolas Lesser.
1853	* sim/ucsim/pdk.src/glob.cc,
1854	  sim/ucsim/pdk.src/pdk.cc:
1855	  State output fix, patch by Nicolas Lesser.
1856	* src/pdk/gen.c:
1857	  Comparison fix.
1858	* sim/ucsim/pdk.src/inst.cc:
1859	  Fix src, slc.
1860
18612019-03-05 Philipp Klaus Krause <pkk AT spth.de>
1862
1863	* device/lib/pdk14/__gptrget.s,
1864	  device/lib/pdk15/__gptrget.s:
1865	  Fix generic pointer read.
1866	* sim/ucsim/pdk.src/inst.cc:
1867	  Fix push af / pop af simulation.
1868
18692019-03-05 Philipp Klaus Krause <pkk AT spth.de>
1870
1871	* support/regression/ports/pdk14/support.c:
1872	  Fix regression-test _putchar for pdk14.
1873	* device/lib/pdk14/__gptrget.s,
1874	  device/lib/pdk15/__gptrget.s:
1875	  Fix generic pointer read.
1876	* sim/ucsim/pdk.src/glob.cc,
1877	  sim/ucsim/pdk.src/inst.cc:
1878	  pdk14 bit instruction fix, patch by Nicolas Lesser.
1879
18802019-03-05 Philipp Klaus Krause <pkk AT spth.de>
1881
1882	* support/regression/tests/bug-2363.c,
1883	  support/regression/tests/bug-2756.c,
1884	  support/regression/tests/gcc-torture-execute-20011008-3.c,
1885	  support/regression/tests/gcc-torture-execute-20020402-3.c,
1886	  support/regression/tests/gcc-torture-execute-20100430-1.c,
1887	  support/regression/tests/gcc-torture-execute-cmpdi-1.c,
1888	  support/regression/tests/gcc-torture-execute-longlong.c,
1889	  support/regression/tests/gcc-torture-execute-memcpy-bi.c,
1890	  support/regression/tests/gcc-torture-execute-mode-dependent-address.c,
1891	  support/regression/tests/gcc-torture-execute-p18298.c,
1892	  support/regression/tests/gcc-torture-execute-strcmp-1.c,
1893	  support/regression/tests/gcc-torture-execute-strcpy-1.c,
1894	  support/regression/tests/gcc-torture-execute-strncmp-1.c,
1895	  support/regression/tests/gcc-torture-execute-struct-cpy-1.c,
1896	  support/regression/tests/new_wide.c,
1897	  support/regression/tests/wchar.c
1898	  support/regression/tests/bug-2684.c,
1899	  support/regression/tests/bug-2732.c,
1900	  support/regression/tests/dhrystone.c,
1901	  support/regression/tests/gcc-torture-execute-20050826-1.c,
1902	  support/regression/tests/gcc-torture-execute-991216-1.c,
1903	  support/regression/tests/gcc-torture-execute-pr47538.c,
1904	  support/regression/tests/gcc-torture-execute-pr68532.c,
1905	  support/regression/tests/qsort.c:
1906	  Disable tests that won't work for pdk14 due to lack of memory.
1907	* sdas/asxxsrc/asout.c,
1908	  sdas/linksrc/lkrloc3.c,
1909	  sim/ucsim/pdk.src/pdk.cc,
1910	  sim/ucsim/pdk.src/inst.cc:
1911	  pdk14 fixes, patch by Nicolas Lesser.
1912
19132019-03-04 Philipp Klaus Krause <pkk AT spth.de>
1914
1915	* sdas/asxxsrc/asout.c:
1916	  Assembler fix, patch by Nicolas Lesser.
1917	* sim/ucsim/Makefile.in,
1918	  sim/ucsim/configure,
1919	  sim/ucsim/configure.ac,
1920	  sim/ucsim/globals.cc,
1921	  sim/ucsim/globals.h,
1922	  sim/ucsim/packages_in.mk,
1923	  sim/ucsim/stypes.h,
1924	  support/regression/ports/pdk14/spec.mk,
1925	  support/regression/ports/pdk14/support.c:
1926	  pdk14 simulator, patch by Nicolas Lesser.
1927
19282019-03-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1929
1930        * src/mcs51/gen.c: fix bug #2729
1931        * support/regression/tests/bool.c: reenable test
1932
19332019-03-01 Philipp Klaus Krause <pkk AT spth.de>
1934
1935	* src/pdk/ralloc.c:
1936	  Dump debug info after register assignment.
1937	* support/regression/tests/gcc-torture-execute-20000314-3.c:
1938	  Disable failing test, where solution is not clear yet (bug #2878).
1939
19402019-03-01 Philipp Klaus Krause <pkk AT spth.de>
1941
1942	* src/SDCCopt.c:
1943	  Fix bug #2876.
1944
19452019-03-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1946
1947	* src/SDCCast.c: fix bug #2873
1948	* support/regression/tests/literalop.c: add casts to fix
1949	  integer promotion of hexadeciaml constants in ?: operator.
1950
19512019-02-26 Philipp Klaus Krause <pkk AT spth.de>
1952
1953	* support/regression/tests/gcc-torture-execute-960116-1.c
1954	  support/regression/tests/gcc-torture-execute-cvt-1.c
1955	  support/regression/tests/gcc-torture-execute-loop-2c.c
1956	  support/regression/tests/gcc-torture-execute-pr20601-1.c
1957	  support/regression/tests/gcc-torture-execute-pr33870-1.c
1958	  support/regression/tests/gcc-torture-execute-pr33870.c
1959	  support/regression/tests/gcc-torture-execute-pr37125.c
1960	  support/regression/tests/gcc-torture-execute-pr63843.c
1961	  support/regression/tests/gcc-torture-execute-pr65215-1.c
1962	  support/regression/tests/gcc-torture-execute-pr65215-2.c
1963	  support/regression/tests/gcc-torture-execute-pr68841.c
1964	  support/regression/tests/gcc-torture-execute-stdarg-5.c
1965	  support/regression/tests/gcc-torture-execute-unroll-1.c
1966	  support/regression/tests/inline.c
1967	  Disable tests that are unlikely to compile for pdk14 anytime soon.
1968	* src/pdk/gen.c:
1969	  Fix an issue in handling aop for spilt variables.
1970
19712019-02-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
1972
1973	* src/SDCCsymt.c: fix bug #2861
1974
19752019-02-20 Philipp Klaus Krause <pkk AT spth.de>
1976
1977	* src/SDCCopt.c:
1978	  Generalize loop narrowing (part of RFE #530).
1979
19802019-02-20 Philipp Klaus Krause <pkk AT spth.de>
1981
1982	* src/pdk/gen.c:
1983	  Do not emit set0, set1 with memory operand fpr pdk13, as assembler support for these likely won't be ready for SDCC 3.9.0.
1984	* device/lib/pdk13:
1985	  Infrastructure for pdk13 library.
1986
19872019-02-15 Philipp Klaus Krause <pkk AT spth.de>
1988
1989	* sdas/asxxsrc/asout.c,
1990	  sdas/linksrc/lkrloc3.c:
1991	  Fix relocation of addresses in ROM, patches by Nicolas Lesser.
1992	* sdas/aspdk/pdkmch.c:
1993	  Fix handling of literals, patch by Nicolas Lesser.
1994
19952019-02-14 Philipp Klaus Krause <pkk AT spth.de>
1996
1997	* src/pdk/gen.c:
1998	  Disable use of idxm, ldtabl, stt16, ldt16 on direct operands, since we can't handle alignment requirements yet.
1999	* sdas/aspdk/pdkmch.c,
2000	  sdas/aspdk14/pdk14mch.c,
2001	  sdas/aspdk15/pdk15mch.c,
2002	  sdas/asxxsrc/asout.c,
2003	  sdas/asxxsrc/asxxxx.h,
2004	  sdas/linksrc/lkrloc3.c:
2005	  pdk assembler fixes, patch by Nicolas Lesser.
2006
20072019-02-13 Philipp Klaus Krause <pkk AT spth.de>
2008
2009	* support/regression/tests/gcc-torture-execute-20030714-1.c,
2010	  support/regression/tests/gcc-torture-execute-921208-1.c,
2011	  support/regression/tests/gcc-torture-execute-930702-1.c,
2012	  support/regression/tests/gcc-torture-execute-991112-1.c,
2013	  support/regression/tests/gcc-torture-execute-func-ptr-1.c,
2014	  support/regression/tests/gcc-torture-execute-pr34456.c,
2015	  support/regression/tests/z88dk.c,
2016	  support/regression/tests/gcc-torture-execute-20010409-1.c,
2017	  support/regression/tests/gcc-torture-execute-pr60003.c,
2018	  support/regression/tests/setjmp.c,
2019	  support/regression/tests/loop.c:
2020	  Disable tests that are unlikely to compile for pdk14 anytime soon.
2021	* src/z80/gen.c:
2022	  Fix wide comparison with immediate, fix a corner case of & with one stack operand, fix comparison with stack operand, fix multiplication by negative literal.
2023	* src/pdk/main.c,
2024	  src/stm8/main.c:
2025	  Fix extended alignment.
2026
20272019-02-13 Philipp Klaus Krause <pkk AT spth.de>
2028
2029	* src/z80/gen.c:
2030	  Fix bug #2875.
2031
20322019-02-12 Philipp Klaus Krause <pkk AT spth.de>
2033
2034	* src/pdk/gen.c,
2035	  src/pdk/ralloc2.cc:
2036	  Fix subtraction by immediate, &^| with both operands on stack, left shift of on-stack operand.
2037	* device/lib/pdk14/Makefile.in,
2038	  device/lib/pdk15/Makefile.in:
2039	  Enable missing support functions.
2040	* support/regression/tests/bug-2551.c,
2041	  support/regression/tests/bug-2554.c,
2042	  support/regression/tests/bug-2558.c,
2043	  support/regression/tests/bug-2559.c,
2044	  support/regression/tests/gcc-torture-execute-920721-3.c,
2045	  support/regression/tests/gcc-torture-execute-20050106-1.c,
2046	  support/regression/tests/gcc-torture-execute-20060930-2.c:
2047	  Disable tests that fail to compile due to bug #2874.
2048	* support/regression/tests/bug-2663.c,
2049	  support/regression/tests/bug-2767.c,
2050	  support/regression/tests/bug-716242.c,
2051	  support/regression/tests/bug1908493.c,
2052	  support/regression/tests/bug2077267.c,
2053	  support/regression/tests/bug3379723.c:
2054	  Disable tests that are unlikely to compile for pdk14 anytime soon.
2055	* device/lib/pdk14/heap.s,
2056	  device/lib/pdk14/heap.s:
2057	  Default heap of 64 Bytes for pdk14, pdk15.
2058	* src/pdk/main.c:
2059	  Report lack of code generation support for division by constant.
2060
20612019-02-12 Philipp Klaus Krause <pkk AT spth.de>
2062
2063	* src/z80/ralloc.c,
2064	  support/regression/tests/bug-2031.c:
2065	  Allow rematerialization of pointer-to-integer cast, fixes a gbz80 initialization bug.
2066
20672019-02-12 Philipp Klaus Krause <pkk AT spth.de>
2068
2069	* src/pdk/gen.c,
2070	  src/pdk/ralloc.c:
2071	  Fix various pdk issues.
2072	* support/regression/tests/bug-1918.c,
2073	  support/regression/tests/bug-2124.c,
2074	  support/regression/tests/bug-2271.c,
2075	  support/regression/tests/bug-2274.c,
2076	  support/regression/tests/bug-2305.c,
2077	  support/regression/tests/bug-2349.c,
2078	  support/regression/tests/bug-2373.c,
2079	  support/regression/tests/bug-2455.c,
2080	  support/regression/tests/bug-2497.c:
2081	  Disable tests that are unlikely to compile for pdk14 anytime soon.
2082
20832019-02-12 Philipp Klaus Krause <pkk AT spth.de>
2084
2085	* src/pdk/gen.c:
2086	  Use ltabl for pdk15, improve shifts.
2087	* src/SDCCglue.c:
2088	  Fix initialization of bit-fields in code space for pdk.
2089
20902019-02-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
2091
2092	* src/SDCCicode.c: fix bug #2829
2093
20942019-02-11 Philipp Klaus Krause <pkk AT spth.de>
2095
2096	* support/regression/ports/pdk14/support.c:
2097	  Make regression tests compile, even before simulator is ready.
2098	* device/lib/pdk14/Makefile.in,
2099	  device/lib/pdk15/Makefile.in:
2100	  Enable a missing support function.
2101	* src/pdk/gen.c:
2102	  Improve bit-field access.
2103
21042019-02-11 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2105
2106	* src/pdk/gen.c:
2107	  Fix handling of wide return values.
2108
21092019-02-11 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2110
2111	* sim/ucsim/z80.src/inst_ed.c:
2112	  Implement Z80/Z180/eZ80 rld, rrd.
2113	* src/z80/gen.c,
2114	  support/regression/tests/bitfields.c:
2115	  Improve bit-field write.
2116
21172019-02-11 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2118
2119	* sdas/asrab/rabadr.c,
2120	  src/z80/gen.c:
2121	  Fix bug #2869.
2122
21232019-02-08 Philipp Klaus Krause <pkk AT spth.de>
2124
2125	* src/pdk/gen.c
2126	  src/pdk/ralloc2.cc:
2127	  Various pdk improvements.
2128
21292019-02-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
2130
2131	* src/SDCCdwarf2.c: fix bug #2762
2132
21332019-02-08 Philipp Klaus Krause <pkk AT spth.de>
2134
2135	* src/pdk/gen.c,
2136	  src/pdk/main.c,
2137	  src/pdk/ralloc2.cc:
2138	  Various pdk improvements.
2139	* device/lib/calloc.c,
2140	  device/lib/free.c,
2141	  device/lib/malloc.c,
2142	  device/lib/realloc.c:
2143	  Improve dynamic memory management for pdk.
2144	* device/lib/_memchr.c:
2145	  Improve comparison.
2146
21472019-02-08 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2148
2149	* configure,
2150	  configure.ac,
2151	  device/include/stdlib.h,
2152	  device/lib/Makefile.in,
2153	  device/lib/clean.mk,
2154	  device/lib/pdk15/Makefile.in,
2155	  device/lib/pdk15:
2156	  pdk15 library.
2157	* src/pdk/main.c,
2158	  src/pdk/gen.c:
2159	  Improve read from pointer.
2160
21612019-02-08 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2162
2163	* Makefile.common.in,
2164	  Makefile.in,
2165	  configure,
2166	  configure.ac,
2167	  sdccconf_in.h,
2168	  src/pdk/main.c,
2169	  sdas/aspdk15:
2170	  pdk15 assembler, patch by Nicolas Lesser.
2171
21722019-02-07 Philipp Klaus Krause <pkk AT spth.de>
2173
2174	* .version,
2175	  Makefile.in,
2176	  configure,
2177	  configure.ac,
2178	  doc/sdccman.lyx:
2179	  Remove sdcclib.
2180	* sim/ucsim/sim.src/var.cc,
2181	  sim/ucsim/sim.src/varcl.h,
2182	  sim/ucsim/stm8.src/glob.cc,
2183	  sim/ucsim/stm8.src/stm8.cc:
2184	  stm8 simulator fixes, patches by Mike Jagdis.
2185
21862019-02-07 Philipp Klaus Krause <pkk AT spth.de>
2187
2188	* sdas/aspdk14,
2189	  sdas/aspdk,
2190	  device/lib/pdk14/Makefile.in:
2191	  Assembler refactoring, patch by Nicolas Lesser.
2192
21932019-02-06 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2194
2195	* src/pdk/gen.c,
2196	  src/pdk/gen.h,
2197	  src/pdk/ralloc.c,
2198	  src/pdk/ralloc2.cc,
2199	  src/pdk/gen.c:
2200	  Various improvements in register allocation.
2201	* sdas/linksrc/lkrloc3.c:
2202	  Fix a linker issue, patch by Nicolas Lesser.
2203	* device/lib/pdk14/__gptrget.s:
2204	  Fix an issue in read from pointer to ROM.
2205
22062019-02-06 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2207
2208	* src/pdk/ralloc.c,
2209	  src/pdk/gen.c:
2210	  Rematerialization.
2211
22122019-02-06 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2213
2214	* src/pdk/gen.c:
2215	  Fix direct read from variable in code space.
2216
22172019-02-06 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2218
2219	* src/pdk/gen.c:
2220	  Implement write of non-literal to bit-field.
2221
22222019-02-05 Philipp Klaus Krause <pkk AT spth.de>
2223
2224	* src/pdk/gen.c:
2225	  Implement read from bit-field, literal write to bit-field.
2226	* src/pdk/ralloc2.cc:
2227	  Improve handling of p wrt. pointer read / write in register allocation.
2228
22292019-02-05 Philipp Klaus Krause <pkk AT spth.de>
2230
2231	* src/pdk/gen.c:
2232	  Fix signed comparison by 0.
2233	* Makefile.in,
2234	  configure,
2235	  configure.ac,
2236	  src/pdk/main.c,
2237	  sdas/aspdk,
2238	  sdas/aspdk14:
2239	  Assembler rename, based on patch by Nicolas Lesser.
2240
22412019-02-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
2242
2243	* src/SDCCast.c: fix bug #2863
2244
22452019-02-03 Philipp Klaus Krause <pkk AT spth.de>
2246
2247	* src/pdk/gen.c:
2248	  Fix early return from interrupt.
2249
22502019-02-03 Philipp Klaus Krause <pkk AT spth.de>
2251
2252	* doc/Makefile.in:
2253	  Fix dependencies.
2254
22552019-02-03 Philipp Klaus Krause <pkk AT spth.de>
2256
2257	* src/SDCCglue.c:
2258	  Fix a pointer initalization issue.
2259	* src/pdk/main.c:
2260	  Save a word in stack-pointer setup.
2261
22622019-02-02 Philipp Klaus Krause <pkk AT spth.de>
2263
2264	* src/SDCCglue.c,
2265	  src/SDCCglue.h,
2266	  src/ds390/gen.c,
2267	  src/hc08/gen.c,
2268	  src/mcs51/gen.c:
2269	  Use ret k for constant data.
2270
22712019-02-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
2272
2273	* support/scripts/sdcc.nsi: add support for ez80_z80
2274
22752019-01-31 Philipp Klaus Krause <pkk AT spth.de>
2276
2277	* src/SDCCasm.c,
2278	  src/SDCCasm.h,
2279	  src/pdk/main.c:
2280	  Use ret k for constant data bytes.
2281
22822019-01-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
2283
2284	* sim/ucsim/z80.src/ez80.cc: add needed header for int8_t
2285
22862019-01-30 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2287
2288	* doc/sdccman.lyx:
2289	  Clarify documentation on library path options.
2290
22912019-01-28 Philipp Klaus Krause <pkk AT spth.de>
2292
2293	* src/SDCC.y:
2294	  Document bug #2858 workaround.
2295
22962019-01-27 Philipp Klaus Krause <pkk AT spth.de>
2297
2298	* sdas/aspdk/pdkmch.c:
2299	  Fix idxm, patch by Tim (cpldcpu).
2300	* device/lib/pdk14/Makefile.in:
2301	  Use generic memcpy(), unsigned 8 x 8 -> 16 multiplication and unsigned division for pdk14.
2302	* src/pdk/main.c:
2303	  Fix int x int -> long multiplication.
2304	* src/pdk/main.c,
2305	  src/pdk/gen.c:
2306	  Code generation for 8 x 8 (lit) -> 8 multiplication.
2307	* configure,
2308	  configure.ac,
2309	  src/SDCCmain.c,
2310	  src/pdk/main.c,
2311	  src/pdk/ralloc2.cc,
2312	  src/port.h:
2313	  Infrastructure for pdk13, pdk15.
2314
23152019-01-27 Philipp Klaus Krause <pkk AT spth.de>
2316
2317	* aspdk/pdkmch.c,
2318	  asxxsrc/asout.c,
2319	  asxxsrc/asxxxx.h,
2320	  asxxsrc/sdas.c,
2321	  asxxsrc/sdas.h,
2322	  linksrc/lkrloc3.c:
2323	  Linker and assembler fixes for pdk14, patch by Nicolas Lesser.
2324	* src/pdk/gen.c:
2325	  Fix code generation for unary float minus and calls to functions returning more than a word.
2326	* device/lib/pdk14/__gptrget.s:
2327	  Asm syntax fix.
2328
23292019-01-20 Philipp Klaus Krause <pkk AT spth.de>
2330
2331	* src/z80/gen.c,
2332	  support/regression/tests/bug-2866.c:
2333	  Fix bug #2866.
2334
23352019-01-19 Philipp Klaus Krause <pkk AT spth.de>
2336
2337	* sdas/aspdk/pdkmch.c:
2338	  Fix shifts, patch by Tim (cpldcpu).
2339	* src/pdk/gen.c:
2340	  Fix signed comparison, fix pointer write with integer literal cast to pointer.
2341
23422019-01-18 Philipp Klaus Krause <pkk AT spth.de>
2343
2344	* src/pdk/gen.c:
2345	  Fix !.
2346
23472019-01-16 Philipp Klaus Krause <pkk AT spth.de>
2348
2349	* src/pdk/main.c:
2350	  Switch default code location for bytewise addressing in ROM.
2351
23522019-01-15 Philipp Klaus Krause <pkk AT spth.de>
2353
2354	* sdas/aspdk/pdk.h,
2355	  sdas/aspdk/pdkadr.c,
2356	  sdas/aspdk/pdkmch.c,
2357	  sdas/aspdk/pdkpst.c:
2358	  Assembler fixes, patch by Nicolas Lesser.
2359	* src/pdk/main.c:
2360	  Switch .org use to bytewise addressing in ROM.
2361
23622019-01-12 Philipp Klaus Krause <pkk AT spth.de>
2363
2364	* src/pdk/main.c:
2365	  Use sensible default for --code-loc.
2366
23672019-01-12 Philipp Klaus Krause <pkk AT spth.de>
2368
2369	* src/pdk/main.c:
2370	  Various glue code for program startup.
2371
23722019-01-12 Philipp Klaus Krause <pkk AT spth.de>
2373
2374	* device/lib/time.c:
2375	  Make some variables const so save RAM on targets that do not have __code.
2376	* src/pdk/gen.c:
2377	  Fix a segfault in code generation for &.
2378	* sdas/aspdk/pdk.h,
2379	  sdas/aspdk/pdkadr.c,
2380	  sdas/aspdk/pdkmch.c:
2381	  Assembler fixes and syntax change, patch by Nicolas Lesser.
2382	* src/pdk/gen.c,
2383	  device/lib/pdk14/__gptrget.s:
2384	  Update for assembler syntax change.
2385	* src/SDCCsymt.c,
2386	  device/lib/Makefile.in,
2387	  Enable build of pdk14 library.
2388
23892019-01-11 Philipp Klaus Krause <pkk AT spth.de>
2390
2391	* device/lib/pdk14/Makefile.in:
2392	  Use sdaspdk to build pdk14 library.
2393	* src/pdk/main.c,
2394	  src/pdk/gen.c:
2395	  Fix generation of invalid asm in a few places.
2396	* sdas/aspdk/pdkmch.c,
2397	  sdas/aspdk/pdkpst.c:
2398	  Assembler fixes, patch by Nicolas Lesser.
2399	* support/regression/ports/pdk14/spec.mk:
2400	  Prepare for future pdk14 regression testing.
2401
24022019-01-11 Philipp Klaus Krause <pkk AT spth.de>
2403
2404	* sdas/aspdk,
2405	  Makefile.common.in,
2406	  Makefile.in,
2407	  configure,
2408	  configure.ac,
2409	  sdas/linksrc/Makefile.in,
2410	  sdas/linksrc/sdld.c,
2411	  sdas/linksrc/sdld.h,
2412	  src/pdk/main.c:
2413	  Assembler for pdk14, patch by Nicolas Lesser.
2414
24152019-01-11 Philipp Klaus Krause <pkk AT spth.de>
2416
2417	* src/pdk/main.c:
2418	  Work around lack of link-time arithmetic.
2419
24202019-01-10 Philipp Klaus Krause <pkk AT spth.de>
2421
2422	* src/pdk/gen.c,
2423	  device/lib/pdk14/__gptrget.s:
2424	  Use knowledge on byte order for push af.
2425
24262019-01-09 Philipp Klaus Krause <pkk AT spth.de>
2427
2428	* src/pdk/main.c:
2429	  Fix invalid use of .dw for variables in ROM.
2430	* src/pdk/gen.c:
2431	  Fix various issues in code generation.
2432
24332019-01-09 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2434
2435	* src/pdk/gen.c,
2436	  device/lib/pdk14/__gptrget.s:
2437	  Support variables in ROM.
2438
24392019-01-09 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2440
2441	* src/pdk/gen.c,
2442	  src/pdk/ralloc2.cc:
2443	  Minor fixes.
2444	* src/SDCCast.c:
2445	  Enable standard library call optimization for pdk14.
2446
24472019-01-09 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2448
2449	* src/pdk/gen.c,
2450	  src/pdk/ralloc2.cc:
2451	  Optimize conditional jump on bit test.
2452
24532019-01-09 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2454
2455	* src/pdk/gen.c:
2456	  Fixes for subtraction.
2457	* src/SDCCglue.c:
2458	  Fix output of __sfr locations.
2459
24602019-01-08 Philipp Klaus Krause <pkk AT spth.de>
2461
2462	* src/pdk/gen.c:
2463	  Generate better code for ^, |, &.
2464
24652019-01-08 Philipp Klaus Krause <pkk AT spth.de>
2466
2467	* src/pdk/gen.c:
2468	  Slightly improve __sfr16 handling, fix pseudoregister saving in interrupt routine.
2469	* src/pdk/main.c:
2470	  Fix zero-initialization of upper byte of pseudo-register p.
2471
24722019-01-08 Philipp Klaus Krause <pkk AT spth.de>
2473
2474	* support/regression/tests/*.c:
2475	  Enable some regression tests that need struct assignment support.
2476
24772019-01-08 Philipp Klaus Krause <pkk AT spth.de>
2478
2479	* src/pdk/gen.c,
2480	  device/lib/pdk14/Makefile.in:
2481	  Implement unary float minus, enable build of most of the float library.
2482
24832019-01-08 Philipp Klaus Krause <pkk AT spth.de>
2484
2485	* src/pdk/gen.c:
2486	  Fix handling of non-stack temporary operands in cost function.
2487	* device/lib/pdk14/Makefile.in:
2488	  Enable build of more library functions.
2489
24902019-01-08 Philipp Klaus Krause <pkk AT spth.de>
2491
2492	* src/stm8/peeph.def:
2493	  Fixes and improvements for stm8 peephole rules, patch by Visenri.
2494
24952019-01-07 Philipp Klaus Krause <pkk AT spth.de>
2496
2497	* src/z80/gen.c:
2498	  ez80_z80 fixes.
2499	* src/z80/gen.c:
2500	  Only use eZ80 lea for stack frame setup when doing so provides a code size advantage.
2501	* .version:
2502	  Bump version for stable ez80_z80 backend.
2503	* support/regression/Makefile.in:
2504	  Include ez80_z80 backend in test-z80 target.
2505
25062019-01-07 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2507
2508	* support/regression/ports/ez80-z80/spec.mk:
2509	  Use new eZ80 uCsim in ez80_z80 regression tests.
2510	* src/z80/gen.c:
2511	  ez80_z80 fixes.
2512
25132019-01-07 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2514
2515	* src/pdk/gen.c,
2516	  src/pdk/ralloc.c:
2517	  Support for return values wider than 16 bit.
2518	* src/SDCCmem.c:
2519	  Fix handling of 1-byte stack parameters.
2520
25212019-01-07 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2522
2523	* src/pdk/gen.c:
2524	  Fixes for reentrant functions.
2525
25262019-01-07 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2527
2528	* src/pdk/gen.c:
2529	  Fix handling of stack adjustment on early return for on-stack variables.
2530	  src/pdk/main.c:
2531	  Initialize upper byte of pseudo-register p.
2532
25332019-01-06 Philipp Klaus Krause <pkk AT spth.de>
2534
2535	* src/pdk/gen.c,
2536	  src/pdk/ralloc.c,
2537	  src/SDCCbtree.cc:
2538	  Improve support for reentrant functions.
2539	* support/regression/ports/pdk14,
2540	  support/regression/Makefile.in,
2541	  support/regression/fwk/include/testfwk.h:
2542	  Basic infrastructure for future pdk14 regression testing.
2543
25442019-01-05 Philipp Klaus Krause <pkk AT spth.de>
2545
2546	* src/pdk/main.c:
2547	  Initialization of global / static variables.
2548
25492019-01-05 Philipp Klaus Krause <pkk AT spth.de>
2550
2551	* device/lib/pdk14/Makefile.in:
2552	  Don't try to compile library functions that will not work anytime soon.
2553	* src/SDCCglue.c:
2554	  Emit sfr locations for pdk14.
2555	* device/include/stdlib.h:
2556	  Mark bsearch(), qsort() function pointers as __reentrant for pdk14.
2557	* src/pdk/main.c:
2558	  Properly announce lack of support for extended bit operations.
2559	* src/pdk/gen.c:
2560	  Fix some cases of pointer read / write.
2561	* src/SDCCicode.c:
2562	  Pass 8-bit arguments as 16 bit on stack on pdk14 to satisfy alignment requirements.
2563
25642019-01-05 Philipp Klaus Krause <pkk AT spth.de>
2565
2566	* src/SDCCmem.c:
2567	  Improve error handling on missing output storage class.
2568
25692019-01-05 Philipp Klaus Krause <pkk AT spth.de>
2570
2571	* src/pdk/gen.c:
2572	  Implement & for stack objects.
2573	* device/lib/pdk14/Makefile.in:
2574	  Don't try to compile library functions that will not work anytime soon.
2575
25762019-01-05 Philipp Klaus Krause <pkk AT spth.de>
2577
2578	* src/pdk/main.c,
2579	  src/pdk/gen.c,
2580	  src/pdk/ralloc2.cc:
2581	  Better unsigned char comparisons.
2582	* device/lib/pdk14,
2583	  configure.ac,
2584	  configure:
2585	  Infrastructure for pdk14 library.
2586
25872019-01-04 Philipp Klaus Krause <pkk AT spth.de>
2588
2589	* src/pdk/gen.h,
2590	  src/pdk/gen.c:
2591	  Rudimentary support for arguments on the stack.
2592
25932019-01-03 Philipp Klaus Krause <pkk AT spth.de>
2594
2595	* src/pdk/main.c,
2596	  src/pdk/gen.c,
2597	  src/SDCCsymt.c:
2598	  Implement basic I/O support (__sfr, __sfr16).
2599	* src/port.h,
2600	  src/SDCCsymt.c:
2601	  Prepare for future pdk13, pdk15 and pdk16 backends.
2602
26032019-01-03 Benedikt Freisen <b.freisen AT gmx.net>
2604
2605	* src/version.awk:
2606	  Fix bug #2818.
2607
26082019-01-03 Philipp Klaus Krause <pkk AT spth.de>
2609
2610	* src/pdk/gen.c,
2611	  src/pdk/ralloc2.cc:
2612	  Implement support for dummy read from volatile in direct space.
2613
26142019-01-02 Philipp Klaus Krause <pkk AT spth.de>
2615
2616	* src/SDCCsymt.c,
2617	  src/SDCCerr.h,
2618	  src/SDCCerr.c,
2619	  support/valdiag/tests/bug-2773.c:
2620	  Fix bug #2773.
2621	* src/ds390/main.c:
2622	  Change the name of a hackish predefined macro for standard-compliance.
2623
26242018-12-31 Philipp Klaus Krause <pkk AT spth.de>
2625
2626	* doc/sdccman.lyx:
2627	  Document default calling convention for z80, z180, r2k, r3ka, ez80_z80, tlcs90, stm8.
2628	* src/SDCCast.c:
2629	  Fix bug #2850.
2630	* src/SDCCsymt.c:
2631	  Fix bug #2797.
2632	* src/SDCCmain.c,
2633	  src/mcs51/main.c,
2634	  src/hc08/main.c,
2635	  src/stm8/main.c:
2636	  Fix bug #2809.
2637	* src/SDCClospre.hpp,
2638	  support/regression/tests/bug-2558.c:
2639	  Fix bug #2558.
2640	* src/SDCCast.c:
2641	  Fix bug #2535.
2642	* device/lib/printf_large.c,
2643	  support/regression/tests/bug-2732.c:
2644	  Fix bug #2732.
2645
26462018-12-30 Philipp Klaus Krause <pkk AT spth.de>
2647
2648	* support/regression/tests/bug-2854.c:
2649	  Fix read from uninitialized memory.
2650	* src/z80/peep.c:
2651	  Handle eZ80 lea, pea in peephole size calculation.
2652
26532018-12-24 Maarten Brock <sourceforge.brock AT dse.nl>
2654
2655	* support/regression/tests/bug-2854.c: disabled test, segmentation fault
2656	* configure, configure.ac: fixed help text
2657	* device/lib/clean.mk: also clean ez80
2658
26592018-12-20 Philipp Klaus Krause <pkk AT spth.de>
2660
2661	* src/z80/gen.c:
2662	  Improve use of eZ80, Rabbit, TLCS-90 16-bit load.
2663
26642018-12-19 Philipp Klaus Krause <pkk AT spth.de>
2665
2666	* src/z80/gen.c:
2667	  Implement RFE #594.
2668
26692018-12-19 Philipp Klaus Krause <pkk AT spth.de>
2670
2671	* src/z80/gen.c:
2672	  Fix a recently-introduced bug in handling of 32-bit return values for gbz80.
2673
26742018-12-18 Philipp Klaus Krause <pkk AT spth.de>
2675
2676	* sdas/asz80/z80mch.c,
2677	  sdas/asz80/z80pst.c,
2678	  sdas/asz80/tez80.asm:
2679	  Improve eZ80 assembler support, patch by Hynek Sladký.
2680
26812018-12-16 Philipp Klaus Krause <pkk AT spth.de>
2682
2683	* src/z80/gen.c:
2684	  Fix a bug in wide read via pointer.
2685
26862018-12-16 Philipp Klaus Krause <pkk AT spth.de>
2687
2688	* src/z80/gen.c:
2689	  Fix bug #2856.
2690
26912018-12-15 Maarten Brock <sourceforge.brock AT dse.nl>
2692
2693	* configure, configure.ac: changed warning into notice
2694	* sdas/asz80/z80mch.c: cosmetic
2695	* src/sdcc.vcxproj,
2696	* src/sdcc.vcxproj.filters: added missing SDCC.lex & SDCC.y
2697	* support/cpp/libcpp/files.c,
2698	* support/cpp/libcpp/identifiers.c,
2699	* support/cpp/libcpp/init.c,
2700	* support/cpp/libcpp/symtab.c: fixed warnings for unsigned size_t
2701	* support/regression/tests/bitopcse.c: only use idata for mcs51
2702	* support/regression/tests/gcc-torture-execute-20021120-1.c: disabled for
2703	  hc08 & s08, uses way too much spillocs in DSEG
2704	* support/regression/tests/longlong.c: split the test in 3 parts
2705	* support/sdbinutils/bfd/targets.c: added "ASXXXX"
2706	* support/sdbinutils/libiberty/simple-object-elf.c: fixed warning
2707
27082018-12-14 Philipp Klaus Krause <pkk AT spth.de>
2709
2710	* src/z80/gen.c:
2711	  Refactor handling of return values, steps towards RFE #594.
2712
27132018-12-13 Philipp Klaus Krause <pkk AT spth.de>
2714
2715	* src/SDCCicode.c,
2716	  support/regression/tests/bug-2710.c:
2717	  Fix bug #2710.
2718	* Makefile.in,
2719	  sim/ucsim/Makefile.in:
2720	  Remove dist target, fix bug #2679.
2721	* src/SDCCtree_dec.hpp:
2722	  Improve fix for #1874.
2723	* sdas/asz80/z80mch.c:
2724	  Turn a few eZ80-related warning into comments.
2725
27262018-12-12 Philipp Klaus Krause <pkk AT spth.de>
2727
2728	* sdas/asz80/z80mch.c:
2729	  Fix handling of tst for eZ80, patch by Hynek Sladký.
2730	* src/z80/gen.c,
2731	  support/regression/tests/bug-2854.c:
2732	  Fix an issue in 8-bit parameters to __z88dk_fastcall, bugs #2852 and #2854.
2733	* src/hc08/ralloc2.cc:
2734	  Fix bug #2215.
2735	* src/stm8/ralloc.c,
2736	  src/z80/ralloc.c,
2737	  support/regression/tests/bug-2501.c:
2738	  Fix bug #2501.
2739
27402018-12-11 Philipp Klaus Krause <pkk AT spth.de>
2741
2742	* Merged ez80_z80 branch to trunk.
2743
27442018-12-11 Philipp Klaus Krause <pkk AT spth.de>
2745
2746	* device/include/math.h,
2747	  device/include/sdcc-lib.h:
2748	  Fixes for ez80_z80 library.
2749	* support/regression/ports/ez80-z80/spec.mk,
2750	  support/regression/ports/ucz180/spec.mk:
2751	  Preparation for ez80_z80 regression testing.
2752
27532018-12-05 Philipp Klaus Krause <pkk AT spth.de>
2754
2755	* sdas/asz80/z80mch.c:
2756	  Improve eZ80 support in assembler, patch by Hynek Sladký.
2757	* configure,
2758	  configure.ac,
2759	  device/lib/Makefile.in,
2760	  device/lib/ez80_z80/Makefile.in,
2761	  src/z80/main.c,
2762	  device/lib/ez80_z80:
2763	  ez80_z80 library.
2764
27652018-12-05 Philipp Klaus Krause <pkk AT spth.de>
2766
2767	* src/pdk/ralloc2.cc,
2768	  src/pdk/gen.c:
2769	  Improve code for shifts.
2770
27712018-12-04 Philipp Klaus Krause <pkk AT spth.de>
2772
2773	* src/pdk/ralloc2.cc,
2774	  src/pdk/gen.c:
2775	  Improve use of pseudoregister p.
2776
27772018-12-04 Philipp Klaus Krause <pkk AT spth.de>
2778
2779	* src/SDCCtree_dec.hpp:
2780	  Fix bug #1847.
2781
27822018-12-04 Maarten Brock <sourceforge.brock AT dse.nl>
2783
2784	* SDCCerr.c: replaced include sdccconf.h by SDCCglobl.h, required for MSVC
2785
27862018-12-04 Philipp Klaus Krause <pkk AT spth.de>
2787
2788	* src/pdk/gen.c:
2789	  Basic support for function pointers.
2790
27912018-12-04 Philipp Klaus Krause <pkk AT spth.de>
2792
2793	* src/pdk/gen.c:
2794	  Improve code generation for jump on comparison.
2795
27962018-12-04 Philipp Klaus Krause <pkk AT spth.de>
2797
2798	* src/pdk/gen.c:
2799	  Fix an issue in code generation for pointer read.
2800
28012018-12-03 Philipp Klaus Krause <pkk AT spth.de>
2802
2803	* src/pdk/ralloc.c,
2804	  src/pdk/ralloc.h,
2805	  src/pdk/ralloc2.cc,
2806	  src/pdk/gen.c,
2807	  src/pdk/gen.h,
2808	  src/pdk/main.c:
2809	  Basic register allocation.
2810
28112018-12-03 Philipp Klaus Krause <pkk AT spth.de>
2812
2813	* src/pdk/ralloc.c,
2814	  src/pdk/gen.c:
2815	  Allow return of up to 2 bytes.
2816
28172018-12-03 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2818
2819	* src/pdk/main.c:
2820	  Report lack of hardware multiplication.
2821
28222018-12-03 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2823
2824	* src/pdk/gen.c,
2825	  src/pdk/main.c,
2826	  src/pdk/ralloc.c:
2827	  Implement basic support for pointers.
2828
28292018-12-03 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2830
2831	* src/pdk/gen.c:
2832	  Implement comparison.
2833
28342018-12-03 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2835
2836	* src/pdk/main.c,
2837	  src/pdk/gen.c:
2838	  Switch to little-endian to ease pointer-integer casts, fix addition.
2839
28402018-12-03 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2841
2842	* src/pdk/gen.c:
2843	  Implement shifts, complement, negation.
2844
28452018-12-02 Philipp Klaus Krause <pkk AT spth.de>
2846
2847	* src/SDCCpeeph.c:
2848	  Peephole function for z88dk, patch from zsdcc fork diff by Phillip Stevens.
2849	* src/SDCC.lex,
2850	  src/SDCC.y,
2851	  src/SDCCerr.c,
2852	  src/SDCCerr.h,
2853	  src/SDCCsymt.c,
2854	  src/SDCCsymt.h,
2855	  src/z80/gen.c,
2856	  src/z80/main.c:
2857	  More z88dk-specific calling conventions, patch from zsdcc fork diff by Phillip Stevens.
2858
28592018-12-02 Philipp Klaus Krause <pkk AT spth.de>
2860
2861	* configure,
2862	  configure.ac,
2863	  sdccconf_in.h,
2864	  src/SDCCmain.c,
2865	  src/port.h,
2866	  src/pdk,
2867	  src/pdk/Makefile.in,
2868	  src/pdk/main.c,
2869	  src/pdk/ralloc.c,
2870	  src/pdk/ralloc.h:
2871	  Basic infrastructure for pdk14 backend.
2872
28732018-12-01 Philipp Klaus Krause <pkk AT spth.de>
2874
2875	* src/z80/gen.c:
2876	  Use lea for ez80_z80.
2877	* sdas/asz80/z80.h,
2878	  sdas/asz80/z80adr.c,
2879	  sdas/asz80/z80mch.c,
2880	  sdas/asz80/z80pst.c:
2881	  eZ80 support in assembler, patch by Hynek Sladký.
2882	* src/SDCCglue.c:
2883	  Use assembler ez80 mode for ez80_z80 backend.
2884
28852018-12-01 Philipp Klaus Krause <pkk AT spth.de>
2886
2887	* src/z80/gen.c:
2888	  genAddrOf refactoring.
2889
28902018-11-30 Philipp Klaus Krause <pkk AT spth.de>
2891
2892	* configure,
2893	  configure.ac,
2894	  sdccconf_in.h,
2895	  src/SDCCmain.c,
2896	  src/port.h,
2897	  src/z80/main.c,
2898	  src/z80/z80.h,
2899	  src/z80/peep.c,
2900	  support/regression/ports/ez80-z80,
2901	  device/include/setjmp.h,
2902	  device/include/stdarg.h,
2903	  device/include/stdlib.h,
2904	  device/include/string.h,
2905	  support/regression/fwk/include/testfwk.h:
2906	  Basic ez80_z80 backend.
2907
29082018-11-30 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2909
2910	* src/stm8/gen.c:
2911	  Improve code generation for negation.
2912
29132018-11-30 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2914
2915	* src/stm8/gen.c:
2916	  Fix an issue in shift of large on-stack operands (part of bug #2844).
2917
29182018-11-29 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2919
2920	* src/stm8/gen.c:
2921	  Fix an issue in call to function returning struct / union.
2922
29232018-11-29 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2924
2925	* src/stm8/gen.c:
2926	  Fix an issue in code generation for subtraction (part of bug #2844).
2927
29282018-11-26 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2929
2930	* src/SDCCmem.c,
2931	  support/regression/tests/bug-2842.c:
2932	  Fix bug #2842.
2933
29342018-11-24 Philipp Klaus Krause <pkk AT spth.de>
2935
2936	* src/stm8/gen.c:
2937	  Improve handling of right subtraction operand in a.
2938
29392018-11-22 Philipp Klaus Krause <pkk AT spth.de>
2940
2941	* src/stm8/gen.c:
2942	  Fix an issue in right shift.
2943
29442018-11-20 Philipp Klaus Krause <pkk AT spth.de>
2945
2946	* src/stm8/gen.c:
2947	  Improvements for previous commit
2948	* src/SDCCsalloc.hpp:
2949	  New stack allocator: unaligned Chaitin.
2950
29512018-11-19 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2952
2953	* src/stm8/gen.c:
2954	  Slightly more verbose error reporting.
2955
29562018-11-18 Philipp Klaus Krause <pkk AT spth.de>
2957
2958	* configure.ac,
2959	  sdccconf_in.h,
2960	  configure,
2961	  src/SDCCerr.c,
2962	  src/SDCCerr.h,
2963	  src/stm8/gen.c:
2964	  Provide backtrace on some internal errors.
2965
29662018-11-16 Philipp Klaus Krause <pkk AT spth.de>
2967
2968	* src/stm8/gen.c:
2969	  Fix right shift of literal.
2970
29712018-11-15 Philipp Klaus Krause <pkk AT spth.de>
2972
2973	* support/regression/Makefile.in:
2974	  Include stm8-large in default target for regression tests.
2975	* src/stm8/gen.c:
2976	  Improve code generation for wide negation.
2977
29782018-11-14 Philipp Klaus Krause <pkk AT spth.de>
2979
2980	* src/SDCCsalloc.hpp,
2981	  .version:
2982	  A bit of fine-tuning in the aligned Chaitin stack allocator to avoid some inefficiencies from alignment.
2983
29842018-11-14 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
2985
2986	* src/z80/gen.c:
2987	  Fix issues in z80 code generation.
2988	* src/z80/mappings.i:
2989	  Consistently use space after comma in asm output.
2990
29912018-11-13 Philipp Klaus Krause <pkk AT spth.de>
2992
2993	* src/stm8/gen.c,
2994	  support/regression/tests/oldfmul.c:
2995	  Fix an issue in code generation for shifts found while experimenting with stack allocation.
2996	* src/SDCCmem.c,
2997	  src/SDCCsalloc.hpp,
2998	  src/stm8/ralloc.c,
2999	  src/stm8/ralloc2.cc,
3000	  src/z80/ralloc.c:
3001	  New stack allocator for stm8: aligned Chaitin.
3002	* device/lib/_fsmul.c:
3003	  Improve float multiplication routine a bit.
3004	* support/regression/tests/bug-2833.c:
3005	  Disable a new test for ds390 (where it fails).
3006	* src/stm8/gen.c:
3007	  More flexible handling of register x in read from pointer.
3008
30092018-11-12 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3010
3011	* support/regression/tests/bug-2834.c:
3012	  Test for bug #2834.
3013	* src/SDCCopt.c,
3014	  support/regression/tests/bug-2833.c:
3015	  Fix bug #2833 (patch by Noam Preil).
3016	* src/z80/gen.c:
3017	  Minor improvements in handling on-stack variables.
3018	* src/SDCCsalloc.hpp,
3019	  src/SDCCmem.c,
3020	  src/SDCCmem.h,
3021	  src/SDCCralloc.hpp,
3022	  src/z80/ralloc.c,
3023	  src/z80/ralloc.h,
3024	  src/z80/ralloc2.cc:
3025	  New default stack allocator for z80 and related: aligned Chaitin.
3026	* src/stm8/ralloc.c,
3027	  src/stm8/ralloc.h,
3028	  src/stm8/ralloc2.cc,
3029	  src/z80/ralloc.h,
3030	  src/z80/ralloc2.cc:
3031	  Prepare for new stack allocator for stm8.
3032	* src/stm8/gen.c:
3033	  Fix an issue in code generation for comparisons.
3034
30352018-11-11 Philipp Klaus Krause <pkk AT spth.de>
3036
3037	* src/z80/ralloc.h,
3038	  src/z80/ralloc.c,
3039	  src/z80/ralloc2.cc:
3040	  Refactoring to prepare for alternative stack allocation.
3041
30422018-11-08 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3043
3044	* support/regression/tests/bug-2833.c:
3045	  Test for bug #2833.
3046
30472018-11-07 Philipp Klaus Krause <pkk AT spth.de>
3048
3049	* src/stm8/gen.c:
3050	  Improve code generation for some multiplications.
3051	* sim/ucsim/stm8.src/stm8.cc,
3052	  sim/ucsim/stm8.src/inst.cc:
3053	  Improve accuracy of timing in stm8 simulator.
3054	* src/stm8/peeph.def:
3055	  Peephole rule to improve shifting via spilled pointers.
3056
30572018-11-06 Philipp Klaus Krause <pkk AT spth.de>
3058
3059	* src/SDCCopt.c:
3060	  Apply % to & optimization in a few more cases.
3061
30622018-11-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3063
3064	* sim/ucsim/cmd.src/cmd_uc.cc,
3065	  sim/ucsim/sim.src/hw.cc,
3066	  sim/ucsim/sim.src/serial_hw.cc,
3067	  sim/ucsim/sim.src/simifcl.h,
3068	  sdas/linksrc/lklibr.c,
3069	  src/SDCCerr.c,
3070	  src/SDCCerr.h:
3071	  Cherry-pick a few spelling fixes from Debian.
3072
30732018-10-29 Philipp Klaus Krause <pkk AT spth.de>
3074
3075	* src/stm8/gen.c:
3076	  Improve code for dummy read.
3077	* support/regression/tests/gcc-torture-execute-pr38212.c,
3078	  support/regression/tests/cse.c:
3079	  Enable tests that no longer fail.
3080
30812018-10-29 Philipp Klaus Krause <pkk AT spth.de>
3082
3083	* src/stm8/gen.h,
3084	  src/stm8/gen.c,
3085	  src/stm8/peep.c,
3086	  src/stm8/ralloc.c:
3087	  Support offsets from symbols in rematerialization (RFE #446).
3088
30892018-10-26 Philipp Klaus Krause <pkk AT spth.de>
3090
3091	* src/mcs51/peeph.def:
3092	  Fix a bug in an mcs51 peephole rule.
3093
30942018-10-25 Philipp Klaus Krause <pkk AT spth.de>
3095
3096	* src/mcs51/peeph.def:
3097	  Fix bug #2832.
3098	* src/z80/gen.c:
3099	  Fix some --reserve-regs-iy issues.
3100	* src/z80/mappings.i:
3101	  Reformat to better match generated code.
3102
31032018-10-24 Philipp Klaus Krause <pkk AT spth.de>
3104
3105	* src/stm8/peep.c:
3106	  Improve distance estimation for direct long addressing mode for jp and call.
3107
31082018-10-24 Philipp Klaus Krause <pkk AT spth.de>
3109
3110	* src/z80/peep.c,
3111	  src/stm8/peep.c:
3112	  Generalize the fix for #2830 to improve some peephole optimizations.
3113
31142018-10-23 Philipp Klaus Krause <pkk AT spth.de>
3115
3116	* src/z80/peep.c:
3117	  Fix bug #2830, patch by Tom Li.
3118
31192018-10-22 Philipp Klaus Krause <pkk AT spth.de>
3120
3121	* src/SDCClrange.c,
3122	  support/regression/tests/bug-2826.c:
3123	  Fix bug #2826 in preincrement optimization.
3124	* .version:
3125	  Bump version for completion of machine-independent preincrement opt.
3126	* src/z80/gen.c:
3127	  Improve code generation for 16-bit increment of global variables.
3128	* src/z80/peeph-z80.def,
3129	  src/z80/peeph-r2k.def:
3130	  Optimize reuse of hl.
3131
31322018-10-18 Philipp Klaus Krause <pkk AT spth.de>
3133
3134	* src/stm8/gen.c:
3135	  Improve 16-bit pointer write, completes RFE #521.
3136
31372018-10-18 Philipp Klaus Krause <pkk AT spth.de>
3138
3139	* src/stm8/gen.c:
3140	  Improve ==, !=.
3141
31422018-10-18 Philipp Klaus Krause <pkk AT spth.de>
3143
3144	* SDCClrange.c,
3145	  src/SDCCpeeph.c,
3146	  src/SDCCralloc.hpp,
3147	  src/SDCCsymt.c,
3148	  src/SDCCsymt.h,
3149	  src/stm8/gen.c,
3150	  src/stm8/peeph.def:
3151	  Improve volatile handling in peepholes, fix a bug and implement RFE #585.
3152	* src/stm8/gen.c:
3153	  Improve pointer read for stm8, completes RFE #545.
3154
31552018-10-17 Philipp Klaus Krause <pkk AT spth.de>
3156
3157	* support/regression/tests/bug-2822.c:
3158	  Make test work for hc08.
3159	* device/lib/Makefile.in,
3160	  src/SDCCmain.c:
3161	  Fix bug #2823.
3162
31632018-10-16 Philipp Klaus Krause <pkk AT spth.de>
3164
3165	* src/stm8/peeph.def:
3166	  Minor stm8 peephole improvement, RFE #584.
3167	* src/z80/gen.c:
3168	  Fix bug #2801, #2674.
3169
31702018-10-15 Philipp Klaus Krause <pkk AT spth.de>
3171
3172	* src/z80/ralloc2.cc,
3173	  support/regression/tests/bug-2822.c:
3174	  Fix bug #2822.
3175	* src/SDCClospre.cc,
3176	  support/regression/tests/bug-2820.c:
3177	  Fix bug #2820.
3178	* src/SDCCicode.c,
3179	  support/regression/tests/bug-2805.c:
3180	  Fix bug #2805.
3181
31822018-10-09 Philipp Klaus Krause <pkk AT spth.de>
3183
3184	* src/stm8/gen.c:
3185	  Use bit transfer instructions for 1-bit bit-field (part of RFE #446).
3186
31872018-10-08 Philipp Klaus Krause <pkk AT spth.de>
3188
3189	* src/z80/peeph-z80.def:
3190	  Optimizations for 8-bit loop counters (RFE #431).
3191	* src/stm8/gen.c:
3192	  Use bit set / reset instructions for 1-bit bit-fields (part of RFE #446).
3193
31942018-10-08 Philipp Klaus Krause <pkk AT spth.de>
3195
3196	* src/z80/gen.c:
3197	  Improve code generation for 8-bit integers (addition of small constants, paramter passing) (RFE #583).
3198	* rc/SDCCBBlock.c,
3199	  src/SDCCBBlock.h,
3200	  src/SDCCsymt.c,
3201	  src/SDCCsymt.h:
3202	  Improve const use.
3203	* src/SDCClrange.c,
3204	  src/SDCClrange.h,
3205	  src/SDCCopt.c,
3206	  src/stm8/gen.c,
3207	  src/z80/peeph-z80.def:
3208	  Optimize postincrement (RFE #581).
3209
32102018-10-02 Philipp Klaus Krause <pkk AT spth.de>
3211
3212	* src/stm8/gen.c:
3213	  Fix an issue that resulted in overestimation of remat costs.
3214	* src/stm8/peeph.def:
3215	  Optimize out dead loads from stack.
3216	* device/include/asm/*/features.h,
3217	  device/lib/Makefile.in,
3218	  device/lib/_memmove.c,
3219	  device/lib/clean.mk,
3220	  device/lib/__memcpy.c,
3221	  device/lib/memcpy.c,
3222	  device/lib/stm8-large/memcpy.s,
3223	  device/lib/*/Makefile.in:
3224	  Library memcpy() cleanup.
3225
32262018-10-02 Philipp Klaus Krause <pkk AT spth.de>
3227
3228	* src/stm8/gen.c:
3229	  Improve wide arithmetic right shift.
3230
32312018-10-01 Philipp Klaus Krause <pkk AT spth.de>
3232
3233	* src/stm8/ralloc.c,
3234	  src/stm8/gen.h,
3235	  src/stm8/gen.c:
3236	  Basic support for rematerialization of stack addresses.
3237
32382018-10-01 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3239
3240	* src/stm8/gen.c:
3241	  Improve wide addition.
3242
32432018-10-01 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3244
3245	* src/stm8/gen.c:
3246	  Improve 32-bit right shift by 6 to 7.
3247
32482018-10-01 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3249
3250	* src/SDCCopt.c:
3251	  Port an operand narrowing optimization to UNARYMINUS.
3252	* src/stm8/gen.c:
3253	  Improve handling of trailing 0 in wide comparison.
3254
32552018-09-29 Philipp Klaus Krause <pkk AT spth.de>
3256
3257	* support/regression/tests/structassign.c:
3258	  Use exactly representable values in union assignment test.
3259	* src/SDCClospre.cc:
3260	  Prepare for use of different container types.
3261	* src/SDCCtree_dec.hpp:
3262	  Cleanup.
3263
32642018-09-27 Philipp Klaus Krause <pkk AT spth.de>
3265
3266	* Merge next branch.
3267
32682018-09-27 Philipp Klaus Krause <pkk AT spth.de>
3269
3270	* src/SDCCtree_dec.hpp:
3271	  Cherry-pick a minor performance improvement from lospre-vs-mcpre branch.
3272
32732018-09-26 Philipp Klaus Krause <pkk AT spth.de>
3274
3275	* src/SDCCtree_dec.hpp,
3276	  src/SDCClospre.hpp,
3277	  src/SDCClospre.cc:
3278	  Remove hard dependencies on std::set to allow future transition to other containers.
3279
32802018-09-25 Philipp Klaus Krause <pkk AT spth.de>
3281
3282	* src/SDCC.y,
3283	  src/SDCCerr.c,
3284	  src/SDCCerr.h,
3285	  src/SDCCsymt.c,
3286	  src/SDCCsymt.h,
3287	  support/valdiag/tests/struct.c,
3288	  support/valdiag/tests/structflexiblearray.c:
3289	  Fix bugs #2774, 2775.
3290
32912018-09-23 Philipp Klaus Krause <pkk AT spth.de>
3292
3293	* src/SDCClospre.hpp,
3294	  src/SDCCralloc.hpp:
3295	  Speed and memory usage improvements for tree-decomposition based algorithms.
3296
32972018-09-20 Philipp Klaus Krause <pkk AT spth.de>
3298
3299	* src/z80/peeph-r2k.def,
3300	  src/z80/peeph-tlcs90.def,
3301	  src/z80/peeph-z80.def:
3302	  Fix bug #2814.
3303
33042018-09-19 Philipp Klaus Krause <pkk AT spth.de>
3305
3306	* support/scripts/repack_release.sh:
3307	  Update script for 3.8.0 release.
3308
33092018-09-18 Philipp Klaus Krause <pkk AT spth.de>
3310
3311	* doc/README.txt:
3312	  List TLCS-90 as supported target.
3313	* src/z80/peeph-z80.def,
3314	  src/z80/peeph-r2k.def:
3315	  Minor z80 peephole improvement.
3316
33172018-09-16 Philipp Klaus Krause <pkk AT spth.de>
3318
3319	* .version,
3320	  doc/INSTALL.txt,
3321	  sdcc.spec:
3322	  Bump version number preparing for 3.8.0 release.
3323
33242018-09-14 Philipp Klaus Krause <pkk AT spth.de>
3325
3326	* src/stm8/main.c,
3327	  support/regression/tests/smallc.c,
3328	  support/regression/tests/bug-2590.c,
3329	  support/regression/tests/z88dk.c:
3330	  Disable __smallc for stm8.
3331
33322018-09-13 Philipp Klaus Krause <pkk AT spth.de>
3333
3334	* src/SDCCicode.c,
3335	  src/SDCCmem.c,
3336	  src/z80/gen.c,
3337	  src/z80/ralloc.c:
3338	  Fix bug #2811.
3339
33402018-09-12 Philipp Klaus Krause <pkk AT spth.de>
3341
3342	* src/SDCCval.c,
3343	  support/regression/tests/iso-8859-1.c:
3344	  Fix bug #2812.
3345
33462018-09-11 Philipp Klaus Krause <pkk AT spth.de>
3347
3348	* src/stm8/gen.c:
3349	  Improve wide right shift.
3350
33512018-09-11 Philipp Klaus Krause <pkk AT spth.de>
3352
3353	* src/stm8/ralloc2.cc,
3354	  src/stm8/gen.c:
3355	  Improve jump on sign bit.
3356
33572018-09-11 Philipp Klaus Krause <pkk AT spth.de>
3358
3359	* support/regression/tests/structassign.c:
3360	  Test more struct sizes.
3361	* src/SDCCopt.c:
3362	  Narrow |.
3363	* src/stm8/peeph.def:
3364	  Minor stm8 peephole improvement.
3365	* src/stm8/gen.c:
3366	  Improve wide pointer reads and shifts.
3367	* src/stm8/peep.c:
3368	  Improve notUsed() accuracy.
3369
33702018-09-11 Philipp Klaus Krause <pkk AT spth.de>
3371
3372	* device/include/string.h,
3373	  device/lib/_memcpy.c,
3374	  device/lib/stm8/memcpy.s,
3375	  doc/sdccman.lyx,
3376	  src/SDCCast.c,
3377	  src/SDCCerr.c,
3378	  src/SDCCerr.h,
3379	  src/SDCCopt.c,
3380	  src/SDCCsymt.c,
3381	  src/SDCCsymt.h,
3382	  support/regression/tests/gcc-torture-execute-20011008-3.c,
3383	  support/regression/tests/gcc-torture-execute-20050826-2.c,
3384	  support/regression/tests/gcc-torture-execute-lto-tbaa-1.c,
3385	  support/regression/tests/gcc-torture-execute-pr39339.c,
3386	  support/regression/tests/gcc-torture-execute-pr70127.c,
3387	  support/regression/tests/gcc-torture-execute-struct-cpy-1.c,
3388	  support/regression/tests/structassign.c:
3389	  Support for struct / union assignment, patch by Benedikt Freisen (roybaer).
3390
33912018-09-10 Philipp Klaus Krause <pkk AT spth.de>
3392
3393	* src/stm8/peeph.def:
3394	  Minor stm8 peephole improvement.
3395	* src/stm8/gen.c,
3396	  support/regression/tests/gcc-torture-execute-991112-1.c:
3397	  Fix a bug in function pointer handling.
3398
33992018-09-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3400
3401	* support/cpp/Makefile.in: move current directory earlier in
3402	  the include file search path
3403
34042018-09-01 Philipp Klaus Krause <pkk AT spth.de>
3405
3406	* src/stm8/gen.c,
3407	  support/regression/tests/bug-2807.c:
3408	  Fix bug #2807.
3409
34102018-08-30 Philipp Klaus Krause <pkk AT spth.de>
3411
3412	* src/stm8/main.c,
3413	  .version:
3414	  Make default segment ordering suitable for large memory model.
3415	* support/regression/tests/gcc-torture-execute-func-ptr-1.c:
3416	  Enable test that now passes for stm8 large memory model.
3417
34182018-08-26 Philipp Klaus Krause <pkk AT spth.de>
3419
3420	* device/lib/pic14/*,
3421	  device/lib/pic16/*:
3422	  Regenerate files to fix bug #2806.
3423	* src/SDCClospre.cc:
3424	  Minor lospre code refactoring.
3425
34262018-08-25 Philipp Klaus Krause <pkk AT spth.de>
3427
3428	* src/SDCCicode.h,
3429	  src/SDCCicode.c,
3430	  support/regression/tests/bug-2804.c:
3431	  Fix bug #2804.
3432	* src/stm8/peeph.def:
3433	  Remove redundant ret.
3434	* src/SDCClospre.cc:
3435	  Trigger assertion failure before SIGSEV when dumping graph of non-existing function.
3436
34372018-08-24 Philipp Klaus Krause <pkk AT spth.de>
3438
3439	* support/regression/tests/gcc-torture-execute-strcpy-1.c:
3440	  Reduce risk of timeout due to long test.
3441
34422018-08-23 Philipp Klaus Krause <pkk AT spth.de>
3443
3444	* sim/ucsim/stm8.src/stm8.cc:
3445	  Fix bug #2803.
3446
34472018-08-22 Philipp Klaus Krause <pkk AT spth.de>
3448
3449	* support/regression/ports/hc08/spec.mk,
3450	  support/regression/ports/s08/spec.mk,
3451	  support/regression/tests/gcc-torture-execute-arith-rand.c,
3452	  support/regression/tests/gcc-torture-execute-strcmp-1.c,
3453	  support/regression/tests/gcc-torture-execute-strncmp-1.c:
3454	  Reduce risk of timeouts due to long tests.
3455	* support/regression/tests/rand.c:
3456	  Disable a test on the broken OpenBSD.
3457
34582018-08-20 Philipp Klaus Krause <pkk AT spth.de>
3459
3460	* sdcc/doc/sdccman.lyx:
3461	  Update documentation on library memory models.
3462
34632018-08-20 Philipp Klaus Krause <pkk AT spth.de>
3464
3465	* sdcc/sdccconf_in.h,
3466	  sdcc/doc/sdccman.lyx:
3467	  Remove infrastructure for STX support.
3468
34692018-08-14 Maarten Brock <sourceforge.brock AT dse.nl>
3470
3471	* support/regression/tests/gcc-torture-execute-20060110-2.c: enabled test
3472	* support/regression/tests/gcc-torture-execute-arith-rand.c: run only 100x
3473
34742018-08-13 Maarten Brock <sourceforge.brock AT dse.nl>
3475
3476	* src/mcs51/gen.c (genSend): fixed bugs #2778, #2736
3477	* support/regression/tests/gcc-torture-execute-divconst-3.c: enabled test
3478	* support/regression/fwk/include/testfwk.h: added __printu, fixed __printd
3479	* support/regression/tests/bug-1981238.c: enabled more tests
3480	* support/regression/tests/gcc-torture-execute-pr86231.c: fixed warnings
3481	* support/regression/tests/gcc-torture-execute-va-arg-14.c: suppress warning
3482
34832018-08-10 Philipp Klaus Krause <pkk AT spth.de>
3484
3485	* support/regression/tests/gcc-torture-execute-pr85529-2.c:
3486	  Disable a test for older GCC.
3487	* support/regression/tests/new_wide.c:
3488	  Disable a test for host.
3489
34902018-08-08 Philipp Klaus Krause <pkk AT spth.de>
3491
3492	* src/SDCCloop.c:
3493	  Fix bug #2794.
3494
34952018-08-06 Philipp Klaus Krause <pkk AT spth.de>
3496
3497	* support/regression/tests/gcc-torture-execute-pr85529-1.c:
3498	  Disable a test for older GCC.
3499
35002018-08-05 Philipp Klaus Krause <pkk AT spth.de>
3501
3502	* src/z80/gen.c:
3503	  Improve error message on unbalanced stack.
3504	* support/regression/tests/bug-2793.c:
3505	  Test for bug #2793.
3506
35072018-08-03 Philipp Klaus Krause <pkk AT spth.de>
3508
3509	* src/SDCCsymt.c:
3510	  Fix an issue introduced in the bugfix for #2665.
3511	* src/stm8/peep.c,
3512	  src/stm8/peeph.def:
3513	  Minor improvements in STM8 peephole optimization.
3514	* src/stm8/gen.c:
3515	  Minor improvement in STM8 subtraction codegen.
3516
35172018-08-02 Philipp Klaus Krause <pkk AT spth.de>
3518
3519	* support/regression/tests/gcc-torture-execute-va-arg-5.c:
3520	  Disable a test for older GCC.
3521	* support/regression/ports/uc*/spec.mk:
3522	  Harmonize simulation timeouts for z80-related.
3523	* src/SDCCsymt.c,
3524	  src/SDCCdwarf2.c,
3525	  src/z80/main.c,
3526	  src/ds390/main.c,
3527	  device/lib/_rrulonglong.c,
3528	  device/lib/_rlulonglong.c,
3529	  device/lib/_rrslonglong.c,
3530	  device/lib/_rlslonglong.c:
3531	  Fix bug #2665.
3532
35332018-08-01 Philipp Klaus Krause <pkk AT spth.de>
3534
3535	* src/stm8/peeph.def,
3536	  support/regression/tests/compare.c:
3537	  Improve range checks on 8- and 16-bit variables.
3538	* support/regression/tests/gcc-torture-execute-vrp-7.c:
3539	  Disable test which fails for z80-related for tlcs90, also.
3540
35412018-07-31 Philipp Klaus Krause <pkk AT spth.de>
3542
3543	* src/stm8/ralloc.c,
3544	  src/stm8/gen.c:
3545	  Improve shift of global variables by 1.
3546
35472018-07-30 Philipp Klaus Krause <pkk AT spth.de>
3548
3549	* src/SDCCval.c,
3550	  support/regression/tests/gcc-torture-execute-wchar_t-1.c,
3551	  Fix bug #2792.
3552
35532018-07-30 Philipp Klaus Krause <pkk AT spth.de>
3554
3555	* src/SDCCglue.c,
3556	  support/regression/tests/gcc-torture-execute-wchar_t-1.c,
3557	  support/regression/tests/gcc-torture-execute-widechar-2.c:
3558	  Fix bug #2791.
3559
35602018-07-30 Philipp Klaus Krause <pkk AT spth.de>
3561
3562	* support/regression/tests/gcc-torture-execute-*.c:
3563	  Add tests from GCC 8.2.
3564
35652018-07-29 Philipp Klaus Krause <pkk AT spth.de>
3566
3567	* src/SDCCerr.?:
3568	  Fix typos.
3569	  support/regression/tests/gcc-torture-execute-*.c:
3570	  Disable some warnings.
3571
35722018-07-26 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3573
3574	* src/pic14/glue.c:
3575	  Fix an issue introduced with support for C99 intermingling of declarations and statements.
3576
35772018-07-14 Philipp Klaus Krause <pkk AT spth.de>
3578
3579	* src/SDCClospre.cc,
3580	  src/SDCClospre.hpp:
3581	  Fix bug #2673.
3582
35832018-07-13 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3584
3585	* src/z80/peep.c,
3586	  support/regression/tests/bug-2771.c:
3587	  Fix bug #2771.
3588	* src/SDCClospre.cc:
3589	  Improve lospre debug output.
3590
35912018-07-12 Philipp Klaus Krause <pkk AT spth.de>
3592
3593	* src/z80/gen.c,
3594	  support/regression/tests/bug-2770.c:
3595	  Fix bug #2770.
3596	* device/include/mcs51/ax8052.h,
3597	  device/include/mcs51/ax8052f131.h,
3598	  device/include/mcs51/ax8052f142.h,
3599	  device/include/mcs51/ax8052f143.h,
3600	  device/include/mcs51/ax8052f151.h,
3601	  device/include/mcs51/compiler.h:
3602	  Headers for Axsem 8052, patch #166 by Thomas Sailer.
3603
36042018-07-05 Philipp Klaus Krause <pkk AT spth.de>
3605
3606	* src/SDCClospre.hpp:
3607	  Fix bug #2748.
3608	* src/SDCCcse.h,
3609	  src/SDCCdebug.c,
3610	  src/SDCCglue.c,
3611	  src/SDCCpeeph.c,
3612	  src/SDCCsymt.c,
3613	  src/SDCCsymt.h:
3614	  Improve code quality fixing a few gcc -pedantic warnings.
3615
36162018-07-03 Philipp Klaus Krause <pkk AT spth.de>
3617
3618	* src/z80/gen.c,
3619	  support/regression/tests/bug-2767.c:
3620	  Fix bug #2767.
3621
36222018-07-02 Philipp Klaus Krause <pkk AT spth.de>
3623
3624	* support/regression/tests/bug-2764.c:
3625	  Fix test for systems with int wider than 16 bits.
3626
36272018-06-28 Philipp Klaus Krause <pkk AT spth.de>
3628
3629	* support/regression/tests/bug-2764.c,
3630	  src/stm8/peep.c,
3631	  src/stm8/peeph.def:
3632	  Fix bug #2764.
3633
36342018-06-28 Ben Shi <powerstudio1st AT 163 DOT com>
3635
3636	* support/regression/tests/gcc-torture-execute-20040409-2.c:
3637	  Disabled more tests for arm64.
3638
36392018-06-27 Philipp Klaus Krause <pkk AT spth.de>
3640
3641	* src/mcs51/peep.c:
3642	  Fix bug #2108.
3643	* device/lib/z80/crt0.s,
3644	  device/lib/z180/crt0.s:
3645	  Implement ei for RFE #519.
3646	* src/SDCCbtree.cc,
3647	  src/SDCCnaddr.hpp,
3648	  configure.ac,
3649	  configure:
3650	  Remove use of STX, RFE #542.
3651
36522018-06-26 Ben Shi <powerstudio1st AT 163 DOT com>
3653
3654	* support/regression/tests/gcc-torture-execute-20040409-1.c:
3655	* support/regression/tests/gcc-torture-execute-20040409-2.c:
3656	* support/regression/tests/gcc-torture-execute-20040409-3.c:
3657	  Disabled for arm64.
3658
36592018-06-25 Philipp Klaus Krause <pkk AT spth.de>
3660
3661	* support/regression/tests/bug-2363.c:
3662	  Disable test for mcs51 small model.
3663
36642018-06-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3665
3666	* src/SDCCcse.c: remove leftover debugging (fix bug #2763)
3667
36682018-06-21 Philipp Klaus Krause <pkk AT spth.de>
3669
3670	* sdas/asxxsrc/asdbg.c:
3671	  Fix an assembler issue, alternative fix to patch #286.
3672	* support/regression/tests/bug-2750.c:
3673	  Regression test for bug #2750.
3674	* support/regression/tests/bug-2363.c:
3675	  Regression test for bug #2363.
3676
36772018-06-17 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3678
3679	* src/SDCC.y,
3680	  src/SDCCBBlock.c,
3681	  src/SDCCast.c,
3682	  src/SDCCast.h,
3683	  src/SDCCdwarf2.c,
3684	  src/SDCCerr.c,
3685	  src/SDCCerr.h,
3686	  src/SDCCglobl.h,
3687	  src/SDCCglue.c,
3688	  src/SDCCicode.c,
3689	  src/SDCCicode.h,
3690	  src/SDCCmem.c,
3691	  src/SDCCsymt.c,
3692	  src/SDCCsymt.h,
3693	  src/SDCCval.c,
3694	  src/cdbFile.c,
3695	  support/regression/tests/p99-conformance.c,
3696	  support/regression/tests/declafterstmt.c,
3697	  support/valdiag/tests/declafterstmt.c:
3698	  Support for C99 intermingling of declaration and statements, patch by Benedikt Freisen.
3699	* doc/sdccman.lyx:
3700	  Update documentation on standard support.
3701
37022018-06-15 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3703
3704	* src/SDCClospre.hpp,
3705	  support/regression/tests/bug-2761.c:
3706	  Fix bug #2761.
3707	* src/SDCCicode.c:
3708	  Optimize division from pointer subtraction.
3709	* src/stm8/gen.c:
3710	  Improve ^.
3711
37122018-06-13 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3713
3714	* src/SDCCglobl.h,
3715	  src/SDCCBBlock.c:
3716	  Infrastructure for custom iCode dump point.
3717	* src/SDCClospre.hpp:
3718	  Fix handling of use vector in lospre.
3719	* src/SDCClrange.h,
3720	  src/SDCClrange.c,
3721	  src/SDCCopt.c:
3722	  Fix secondary issue in bug #2756.
3723	* device/include/uchar.h,
3724	  device/lib/incl.mk,
3725	  device/lib/mbstoc16s.c,
3726	  device/lib/c16stombs.c,
3727	  support/regression/tests/new_wide.c
3728	  Functions for converting between UTF-8 and UTF-16 strings.
3729
37302018-06-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3731
3732	* src/SDCCcse.c: fix bugs #2709 and #1951
3733	* support/regression/tests/gcc-torture-execute-20001027-1.c,
3734	* support/regression/tests/bug-2708.c: enable tests
3735
37362018-06-13 Ben Shi <powerstudio1st AT 163 DOT com>
3737
3738	* support/regression/tests/bug-2756.c:
3739	  disabled for test-mcs51-large and test-mcs51-huge due to build failure.
3740
37412018-06-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3742
3743	* src/SDCCset.c: reduce memory use of unionSets()
3744
37452018-06-12 Ben Shi <powerstudio1st AT 163 DOT com>
3746
3747	* support/regression/tests/bug-2756.c:
3748	  disabled for test-host.
3749
37502018-06-12 Philipp Klaus Krause <pkk AT spth.de>
3751
3752	* src/SDCCralloc.hpp,
3753	  support/regression/tests/bug-2756.c:
3754	  Fix main issue in bug #2756.
3755
37562018-06-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3757
3758	* src/hc08/ralloc.c: fix bug #2737
3759
37602018-06-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3761
3762	* src/SDCCbitv.c: fix bug #2759
3763	* src/SDCCglue.c: fix bug #2749
3764	* support/regression/tests/bug-2749: enable test
3765
37662018-06-11 Ben Shi <powerstudio1st AT 163 DOT com>
3767
3768	* support/regression/tests/literalop.c:
3769	  Improved for aarch64.
3770
37712018-06-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3772
3773	* src/SDCCbitv.c,
3774	* src/SDCCbitv.h: simplify to only access bit vector as unsigned
3775	  int, add functions for in-place intersection and union operations
3776	* src/SDCCset.c,
3777	* src/SDCCset.h: new function destructItemIf calls a destructor
3778	  function before deleting a set item
3779	* src/SDCCBBlock.c,
3780	* src/SDCCBBlock.h,
3781	* src/SDCCopt.c: free some eBBlock data when switching to iCode chain
3782	* src/SDCCcflow.c: free code flow data when not needed
3783	* src/SDCCdflow.c,
3784	* src/SDCCcse.c,
3785	* src/SDCCcse.h: free data flow and CSE data when not needed
3786
37872018-06-08 Ben Shi <powerstudio1st AT 163 DOT com>
3788
3789	* support/regression/tests/bitwise.c:
3790	  Improved for aarch64.
3791
37922018-06-08 Philipp Klaus Krause <pkk AT spth.de>
3793
3794	* src/stm8/ralloc.c,
3795	  src/SDCCopt.c:
3796	  Narrow reads from pointers, RFE #559.
3797	* doc/sdccman.lyx:
3798	  Improve documentation for --stack-loc.
3799
38002018-06-06 Ben Shi <powerstudio1st AT 163 DOT com>
3801
3802	* sim/ucsim/config.guess:
3803	  updated to the newest version. (timestamp='2018-05-19')
3804
38052018-06-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3806
3807	* src/z80/peeph-z80.def: fixed peephole rule 153 (possibly fix for
3808	  bug #2754)
3809
38102018-06-04 Philipp Klaus Krause <pkk AT spth.de>
3811
3812	* sdas/asz80/z80.h,
3813	  sdas/asz80/z80adr.c,
3814	  sdas/asz80/z80mch.c,
3815	  sdas/asz80/z80pst.c:
3816	  Assembler support for ZX Spectrum Next opcodes: Patch by pauloscustodio.
3817
38182018-06-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3819
3820	* src/SDCCast.c (expandInlineFuncs): fix bug #2752
3821	* support/regression/tests/bug-2752.c: enable test
3822
38232018-06-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3824
3825	* support/scripts/sdcc.nsi: mingw-w64 needs libwinpthread-1.dll
3826	* support/scripts/sdcc.nsi: add stm8-large library to setup.exe package
3827
38282018-05-28 Philipp Klaus Krause <pkk AT spth.de>
3829
3830	* src/SDCC.y,
3831	  src/SDCCerr.c:
3832	  Improve behaviour on unknown register specifications.
3833
38342018-05-27 Philipp Klaus Krause <pkk AT spth.de>
3835
3836	* support/regression/tests/bug-2752.c:
3837	  Test for bug #2752
3838
38392018-05-26 Philipp Klaus Krause <pkk AT spth.de>
3840
3841	* src/SDCCpeeph.c:
3842	  Fix bug #2753.
3843
38442018-05-24 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3845
3846	* src/stm8/peeph.def:
3847	  Improve documentation for jump-on-false-style optimization.
3848
38492018-05-12 Philipp Klaus Krause <pkk AT spth.de>
3850
3851	* src/stm8/peeph.def:
3852	  Improve jump-on-false-style optimization.
3853
38542018-05-10 Philipp Klaus Krause <pkk AT spth.de>
3855
3856	* src/SDCC.lex,
3857	  support/regression/tests/assert.c,
3858	  support/valdiag/tests/static_assert.c:
3859	  Add pragma for C2X, fix pragma for C99.
3860	* src/stm8/peeph.def:
3861	  Various optimizations that help in stdcbench.
3862	* src/stm8/ralloc.c:
3863	  Improve code for pushing globals.
3864
38652018-05-09 Philipp Klaus Krause <pkk AT spth.de>
3866
3867	* src/SDCC.y,
3868	  src/SDCCerr.c,
3869	  src/SDCCerr.h,
3870	  src/SDCCglobl.h,
3871	  src/SDCCmain.c:
3872	  Support for C2X static_assert variant.
3873
38742018-05-09 Philipp Klaus Krause <pkk AT spth.de>
3875
3876	* src/stm8/gen.c,
3877	  src/SDCCval.c:
3878	  Fix use of undefined behaviour (left shift by negative amount).
3879	* support/regression/tests/bug-2749.c:
3880	  Test for bug #2749.
3881	* src/SDCCglue.c:
3882	  Code cleanup.
3883	* src/SDCCglobl.h,
3884	  src/SDCCmem.c,
3885	  src/SDCCutil.c,
3886	  src/pic14/genarith.c,
3887	  src/pic16/genarith.c,
3888	  src/stm8/peep.c:
3889	  Code cleanup by relying on ISO C99 support.
3890
38912018-05-08 Philipp Klaus Krause <pkk AT spth.de>
3892
3893	* support/regression/tests/bug-2746.c:
3894	  Test for bug #2746.
3895	* src/stm8/peep.c:
3896	  Fix reads from unallocated memory.
3897
38982018-04-25 Philipp Klaus Krause <pkk AT spth.de>
3899
3900	* device/include/stdbool.h:
3901	  Change the type of true and false to _Bool (see also N 2229).
3902	* device/include/assert.h,
3903	  device/lib/__assert.c,
3904	  device/lib/incl.mk:
3905	  Fix bug #2745.
3906
39072018-04-23 Philipp Klaus Krause <pkk AT spth.de>
3908
3909	* doc/sdccman.lyx:
3910	  Update documentation on long long support.
3911	* device/lib/wctomb.c,
3912	  support/regression/tests/wchar.c:
3913	  Fix wctomb() error handling wrt. invalid surrogate codepoints.
3914	* device/lib/wcrtomb.c,
3915	  support/regression/tests/wchar.c:
3916	  Fix wcrtomb() errno handling.
3917	* device/lib/mbrtowc.c,
3918	  device/lib/mbtowc.c:
3919	  Improve mbrtowc(), mbtowc() error handling.
3920	* device/lib/mbrtoc16.c:
3921	  Simplify mbrtoc16() by relying on mbrtowc() error handling.
3922	* device/lib/c16rtomb.c,
3923	  support/regression/tests/wchar.c:
3924	  Fix c16rtomb() error handling.
3925
39262018-04-21 Philipp Klaus Krause <pkk AT spth.de>
3927
3928	* device/include/stdint.h,
3929	  support/regression/tests/constantRange.c:
3930	  Fix intmax_t, uintmax_t limit macros.
3931
39322018-04-21 Philipp Klaus Krause <pkk AT spth.de>
3933
3934	* device/include/stdint.h,
3935	  support/regression/tests/wchar.c:
3936	  Fix wchar_t, wint_t limit macros.
3937
39382018-04-19 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
3939
3940	* support/regression/tests/wchar.c:
3941	  A bit of additional UTF-16 and UTF-32 support testing.
3942
39432018-04-17 Philipp Klaus Krause <pkk AT spth.de>
3944
3945	* src/stm8/peep.c:
3946	  Fix reads from unallocated memory.
3947	* src/stm8/gen.c:
3948	  Fix bug #2743.
3949
39502018-04-16 Philipp Klaus Krause <pkk AT spth.de>
3951
3952	* src/SDCCglue.c:
3953	  Fix read of unitialized value in initialization of zero-length bit-field.
3954
39552018-04-15 Philipp Klaus Krause <pkk AT spth.de>
3956
3957	* configure,
3958	  configure.ac:
3959	  Use C11 instead of ms-extensions to get support for anonymous struct.
3960
39612018-04-07 Maarten Brock <sourceforge.brock AT dse.nl>
3962
3963	* sdas/asxxsrc/asout.c (outrw): enable emit 24-bit relocation data for stm8
3964	* src/stm8/main.c (get_model): fixed warning
3965
39662018-04-06 Philipp Klaus Krause <pkk AT spth.de>
3967
3968	* src/stm8/gen.c,
3969	  support/regression/tests/bug-2124.c,
3970	  support/regression/tests/bug-2373.c,
3971	  support/regression/tests/bug1908493.c,
3972	  support/regression/tests/compare.c,
3973	  support/regression/tests/funptrs.c,
3974	  support/regression/tests/gcc-torture-execute-930702-1.c,
3975	  support/regression/tests/gcc-torture-execute-991112-1.c,
3976	  support/regression/tests/z88dk.c:
3977	  Workaround for 24-bit symbol assembler issue.
3978
39792018-04-02 Philipp Klaus Krause <pkk AT spth.de>
3980
3981	* support/regression/tests/gcc-torture-execute-20060110-2.c:
3982	  Disable failing test.
3983
39842018-04-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
3985
3986	* support/valdiag/tests/funcdec.c,
3987	* support/valdiag/tests/tentdecl.c: fix bug #2735
3988
39892018-03-31 Philipp Klaus Krause <pkk AT spth.de>
3990
3991	* src/SDCCopt.c:
3992	  Consider string literal reuse in dead code elimination, part of RFE #567.
3993	* src/SDCCast.c,
3994	  src/SDCCast.h,
3995	  src/SDCCopt.c:
3996	  Merge adjacent calls to puts(), RFE #564.
3997	* src/SDCCglue.c,
3998	  src/stm8/gen.c:
3999	  Enable support for 24-bit function pointers for stm8 large memory model.
4000	* support/valdiag/Makefile.in:
4001	  Omit host by default.
4002	* support/valdiag/tests/funcdec.c,
4003	  support/valdiag/tests/tentdecl.c:
4004	  Disable test affected by bug #2735.
4005	* src/stm8/main.c:
4006	  Separate default name for const segment from code segment.
4007
40082018-03-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4009
4010	* sdas/asxxsrc/asout.c
4011	* sdas/asxxsrc/sdas.c
4012	* sdas/asxxsrc/sdas.h: enable sdasstm8 to emit 24-bit relocation data
4013
40142018-03-30 Philipp Klaus Krause <pkk AT spth.de>
4015
4016	* support/valdiag/tests/overflow.c:
4017	  Disable tests for known bugs #2733, #2734.
4018	* device/lib/stm8-large/heap.s:
4019	  Fix heap initialization.
4020
40212018-03-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4022
4023	* support/regression/collate-results.py: fix bug #2731 and
4024	  handle malformed "Summary" and "Simulator" stats better
4025
40262018-03-29 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4027
4028	* src/SDCCast.c,
4029	  src/SDCCutil.c,
4030	  src/SDCCval.c,
4031	  src/SDCCval.h:
4032	  Make optimization of stdlib calls play nice with string reuse.
4033	* support/util/dbuf.c,
4034	  support/util/dbuf.h:
4035	  Improve const-correctness.
4036
40372018-03-28 Philipp Klaus Krause <pkk AT spth.de>
4038
4039	* src/stm8/gen.c,
4040	  support/regression/tests/bug-2124.c,
4041	  support/regression/tests/bug-2373.c,
4042	  support/regression/tests/bug-716242.c,
4043	  support/regression/tests/bug1908493.c,
4044	  support/regression/tests/compare.c,
4045	  support/regression/tests/funptrs.c,
4046	  support/regression/tests/gcc-torture-execute-930702-1.c,
4047	  support/regression/tests/gcc-torture-execute-991112-1.c,
4048	  support/regression/tests/gcc-torture-execute-func-ptr-1.c,
4049	  support/regression/tests/z88dk.c:
4050	  Give up on supporting function pointers for stm8 large memory model.
4051	* device/lib/Makefile.in:
4052	  Build library for stm8 large memory model by default.
4053
40542018-03-28 Philipp Klaus Krause <pkk AT spth.de>
4055
4056	* src/stm8/gen.c:
4057	  Fix long long return values for large memory model.
4058	* sim/ucsim/stm8.src/glob.cc:
4059	  Fix decoding of jpf.
4060	* device/lib/stm8-large/setjmp.s:
4061	  Fix longjmp() for large memory model.
4062
40632018-03-28 Philipp Klaus Krause <pkk AT spth.de>
4064
4065	* src/SDCC.y,
4066	  src/SDCCasm.c,
4067	  src/SDCCicode.c,
4068	  src/SDCCralloc.hpp,
4069	  src/stm8/gen.c,
4070	  src/stm8/ralloc.c,
4071	  src/stm8/ralloc2.cc,
4072	  src/stm8/peep.c:
4073	  Improve handling of global pointers.
4074
40752018-03-27 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4076
4077	* src/SDCCast.c,
4078	  doc/sdccman.lyx,
4079	  src/SDCCglobl.h,
4080	  src/SDCCmain.c:
4081	  Implement basic optimization of calls to standard library functions, RFE #564.
4082	* support/regression/tests/bug-716242.c,
4083	  support/regression/tests/genptrs.c:
4084	  Fix tests that assign void * to function pointers.
4085	* src/SDCCglue.c:
4086	  Use jpf to reach main() for stm8 large memory model.
4087	* src/stm8/gen.c:
4088	  Give up on assembler for stm8 large memory model to make regression tests pass.
4089
40902018-03-26 Philipp Klaus Krause <pkk AT spth.de>
4091
4092	* src/stm8/gen.c:
4093	  Minor optimization for 8-bit pointer reads.
4094
40952018-03-26 Philipp Klaus Krause <pkk AT spth.de>
4096
4097	* support/valdiag/tests/constantRange.c:
4098	  Make tests expect a few more warnings implemented in SDCC.
4099	* src/stm8/gen.c:
4100	  Fix | of a with itself.
4101	* support/valdiag/tests/bug-971834.c:
4102	  Do not expect unreasonable warning.
4103	* src/SDCCast.h,
4104	  src/SDCCast.c,
4105	  src/SDCCicode.c,
4106	  support/valdiag/tests/pointers.c:
4107	  Fix bug #2730.
4108
41092018-03-26 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4110
4111	* src/SDCCerr.h,
4112	  src/SDCCerr.c,
4113	  src/SDCCast.c,
4114	  support/valdiag/valdiag.py,
4115	  support/valdiag/tests/pointers.c:
4116	  Diagnostics for conversions between pointers to objects and pointers to functions.
4117	* src/stm8/gen.c,
4118	  src/stm8/peeph.def:
4119	  Some minor improvements.
4120
41212018-03-25 Philipp Klaus Krause <pkk AT spth.de>
4122
4123	* src/stm8/gen.c:
4124	  Improve calls via global function pointers.
4125	* src/pic16/gen.c,
4126	  src/pic16/ralloc.c,
4127	  src/pic16/ralloc.c:
4128	  Fix NEARPTRSIZE use.
4129	* src/hc08/main.c:
4130	  Fix leftover max type size.
4131
41322018-03-25 Philipp Klaus Krause <pkk AT spth.de>
4133
4134	* device/lib/stm8-large/Makefile.in,
4135	  device/lib/stm8-large/_fast_long_neg.s:
4136	  Remove unused support routine.
4137	* src/port.h,
4138	  src/stm8/main.c:
4139	  Fix library path for large memory model.
4140	* src/SDCCpeeph.c:
4141	  Fix labelIsUncondJump() for large memory model.
4142	* src/stm8/gen.c:
4143	  Simplify generation of calls, implement 24-bit return values.
4144	* device/lib/stm8-large/Makefile.in:
4145	  Fix build of char multiplicative operator routines.
4146	* support/regression/ports/stm8-large/support.c:
4147	  Fix regression test output.
4148
41492018-03-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4150
4151	* support/regression/collate-results.py,
4152	* support/regression/compact-results.py,
4153	* support/regression/get_ticks.py: Accept non-UTF-8 regression test
4154	  output without throwing an exception under Python 3
4155
41562018-03-24 Philipp Klaus Krause <pkk AT spth.de>
4157
4158	* src/stm8/gen.c:
4159	  Fixes for handling of immediate operands for large memory model.
4160	* device/include/setjmp.h,
4161	  device/lib/stm8-large/setjmp.s:
4162	  Fix setjmp() / longjmp() for large memory model.
4163
41642018-03-24 Philipp Klaus Krause <pkk AT spth.de>
4165
4166	* src/port.h,
4167	  src/*/main.c,
4168	  src/SDCCglobl.h,
4169	  src/SDCCglue.c,
4170	  src/SDCCsymt.c:
4171	  Handle function pointer sizes separately from object pointer sizes.
4172	* configure.ac,
4173	  device/lib/Makefile.in,
4174	  src/stm8/gen.c,
4175	  device/lib/stm8-large:
4176	  stm8-large library.
4177	* support/regression/Makefile.in,
4178	  support/regression/ports/stm8-large:
4179	  stm8-large regression test target.
4180
41812018-03-24 Philipp Klaus Krause <pkk AT spth.de>
4182
4183	* src/port.h,
4184	  src/SDCCglobl.h,
4185	  src/SDCCast.c,
4186	  src/SDCCdwarf2.c,
4187	  src/SDCCglue.c,
4188	  src/SDCCicode.c,
4189	  src/SDCCopt.c,
4190	  src/SDCCsymt.c,
4191	  src/ds390/gen.c,
4192	  src/ds390/main.c,
4193	  src/ds390/ralloc.c,
4194	  src/hc08/gen.c,
4195	  src/mcs51/gen.c,
4196	  src/mcs51/main.c,
4197	  src/mcs51/ralloc.c,
4198	  src/pic14/gen.c,
4199	  src/pic16/gen.c:
4200	  Rename pointer size macros for clarification.
4201	* src/stm8/main.c,
4202	  src/stm8/gen.c:
4203	  Simplify call overhead handling for large memory model.
4204
42052018-03-24 Philipp Klaus Krause <pkk AT spth.de>
4206
4207	* support/regression/tests/longlong.c:
4208	  Disable test for mcs51 medium model.
4209	* support/regression/tests/bool.c:
4210	  Test assignments between bool bitfields.
4211
42122018-03-23 Philipp Klaus Krause <pkk AT spth.de>
4213
4214	* src/mcs51/gen.c,
4215	  support/regression/tests/gcc-torture-execute-950612-1.c:
4216	  Fix bug #2669.
4217	* support/regression/tests/longlong.c:
4218	  Enable full long long regression testing for large and huge mcs51 memory model.
4219
42202018-03-23 Philipp Klaus Krause <pkk AT spth.de>
4221
4222	* src/mcs51/gen.c:
4223	  Fix a bug in code generation that was triggered by lospre.
4224	* support/regression/tests/gcc-torture-execute-20060110-2.c:
4225	  Enable test for mcs51.
4226	* support/regression/tests/gcc-torture-execute-920922-1.c:
4227	  Document that mcs51 exploits undefined behaviour.
4228
42292018-03-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4230
4231	* support/valdiag/valdiag.py: define some port specific
4232	  macros (__has_bit, __has_data, __has_xdata, __has_reentrant)
4233	  to simplify conditions
4234	* support/valdiag/tests/bug-971834.c,
4235	* support/valdiag/tests/enum.c,
4236	* support/valdiag/tests/funcdec.c,
4237	* support/valdiag/tests/primtypes.c,
4238	* support/valdiag/tests/switch.c,
4239	* support/valdiag/tests/tentdecl.c,
4240	* support/valdiag/tests/typedef.c: update for newer SDCC/GCC versions
4241
42422018-03-22 Philipp Klaus Krause <pkk AT spth.de>
4243
4244	* src/mcs51/gen.c,
4245	  src/mcs51/ralloc.c:
4246	  Improve _Bool handling.
4247
42482018-03-22 Philipp Klaus Krause <pkk AT spth.de>
4249
4250	* src/mcs51/ralloc.c:
4251	  Allocate some local _Bool to bit registers.
4252
42532018-03-22 Philipp Klaus Krause <pkk AT spth.de>
4254
4255	* src/mcs51/gen.c:
4256	  Fix handling of acc for multiplicative operators.
4257	* src/mcs51/ralloc.c:
4258	  Fall back to generic registers when running out of bit registers.
4259
42602018-03-22 Philipp Klaus Krause <pkk AT spth.de>
4261
4262	* src/mcs51/gen.c,
4263	  src/SDCCast.c
4264	  Improve code generation for _Bool.
4265
42662018-03-22 Philipp Klaus Krause <pkk AT spth.de>
4267
4268	* src/mcs51/ralloc.c:
4269	  Make better use of acc for 8-bit operands.
4270	* src/SDCCopt.c:
4271	  Optimize width of temporaries for bit tests.
4272
42732018-03-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4274
4275	* support/valdiag/Makefile.in: display any actual failure(s)
4276	  and not just the summary
4277
42782018-03-21 Philipp Klaus Krause <pkk AT spth.de>
4279
4280	* src/z80/ralloc.c:
4281	  Remove leftover debug message.
4282
42832018-03-21 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4284
4285	* src/mcs51/ralloc.c,
4286	  src/mcs51/gen.c:
4287	  Optimize bitwise operations on global variables.
4288
42892018-03-20 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4290
4291	* support/scripts/as2gbmap.py:
4292	  Migrate to Python 2/3.
4293	* src/z80/ralloc.c,
4294	  src/stm8/ralloc.c,
4295	  support/regression/tests/bug-2347.c:
4296	  Fix bug #2347.
4297	* device/README,
4298	  device/examples:
4299	  Remove outdated examples (bug #2728).
4300
43012018-03-19 Philipp Klaus Krause <pkk AT spth.de>
4302
4303	* configure.ac,
4304	  configure:
4305	  Migrate to Python 3.6 for default.
4306
43072018-03-19 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4308
4309	* src/z80/ralloc.c,
4310	  src/stm8/ralloc.c:
4311	  Do not mark global variables as rematerializeable.
4312
43132018-03-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4314
4315	* support/regression/generate-cases.py: apply patch #282 from
4316	  Diego Herranz
4317	* support/regression/generate-cases.py,
4318	* support/regression/HTMLgen.py: use latin-1 encoding for file I/O
4319	  to pass through UTF-8 and non-UTF-8 data without interpretation
4320	  when using Python 3
4321
43222018-03-18 Philipp Klaus Krause <pkk AT spth.de>
4323
4324	* support/sdbinutils:
4325	  Merge upstream GNU Binutils 2.30.
4326	* src/stm8/gen.c:
4327	  Improve cycle count accuracy for shifts.
4328
43292018-03-18 Philipp Klaus Krause <pkk AT spth.de>
4330
4331	* src/stm8/gen.c:
4332	  Improve handling of rematerialized operands and I/O.
4333
43342018-03-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4335
4336	* support/valdiag/valdiag.py: Fix a very old bug, more fixes
4337	  for Python 2/3 compatibility
4338
43392018-03-17 Philipp Klaus Krause <pkk AT spth.de>
4340
4341	* src/stm8/gen.c:
4342	  Implement RFE #566.
4343
43442018-03-17 Philipp Klaus Krause <pkk AT spth.de>
4345
4346	* support/valdiag/tests/restrict.c:
4347	  Test for bug #2714.
4348	* src/SDCCralloc.hpp:
4349	  Faster check for non-connected live-ranges.
4350	* src/stm8/ralloc.c,
4351	  src/stm8/gen.c,
4352	  src/stm8/peep.c:
4353	  Basic support for rematerialization of addresses for stm8.
4354
43552018-03-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4356
4357	* support/regression/collate-results.py,
4358	  support/valdiag/valdiag.py: replace use of deprecated
4359	  functions for better Python 3 compatibility
4360
43612018-03-16 Philipp Klaus Krause <pkk AT spth.de>
4362
4363	* support/regression/collate-results.py,
4364	  support/regression/compact-results.py,
4365	  support/valdiag/valdiag.py:
4366	  Convert Python 1 to Python 2/3.
4367	* support/regression/tests/qsort.c:
4368	  Disable test for mcs51-small due to lack of RAM.
4369	* sim/ucsim/cmd.src/cmdlex.cc:
4370	  Remove lex-generated file from repository.
4371
43722018-03-13 Philipp Klaus Krause <pkk AT spth.de>
4373
4374	* src/z80/gen.c,
4375	  support/regression/tests/bug-2716.c:
4376	  Fix bug #2716.
4377	* src/SDCCopt.c:
4378	  Disable fix for non-connected live-ranges for ds390.
4379	* device/include/stdlib.h,
4380	  device/lib/bsearch.c,
4381	  device/lib/incl.mk,
4382	  support/regression/tests/qsort.c:
4383	  Implement bsearch().
4384	* support/valdiag/valdiag.py,
4385	  support/valdiag/Makefile.in:
4386	  Include z180, r2k, gbz80, tlcs90, s08, stm8 in diagnostic validation.
4387	* support/regression/generate-cases.py,
4388	  support/regression/HTMLgen.py,
4389	  support/regression/get_ticks.py:
4390	  Convert Python 1 to Python 2/3.
4391
43922018-03-13 Philipp Klaus Krause <pkk AT spth.de>
4393
4394	* src/z80/gen.c:
4395	  Fix --reserve-regs-iy issue in function pointers to functions returning long long.
4396
43972018-03-12 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4398
4399	* src/SDCCralloc.hpp:
4400	  Fix --dump-graphs debug output for non-connected live-ranges.
4401	* src/SDCClrange.c,
4402	  src/SDCCopt.c:
4403	  Fix non-connected live-ranges, bugs #2525, #2644, #2266, #2319.
4404
44052018-03-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4406
4407	* support/regression/tests/bug-1981238.c,
4408	  support/regression/tests/gcc-torture-execute-20141107-1.c,
4409	  support/regression/tests/gcc-torture-execute-920711-1.c: Test for
4410	  __POWERPC__ instead of __PPC__
4411
44122018-03-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
4413
4414	* support/regression/tests/bug-1981238.c,
4415	  support/regression/tests/gcc-torture-execute-20141107-1.c,
4416	  support/regression/tests/gcc-torture-execute-920711-1.c: Disable
4417	  tests failing on PPC host
4418	* support/regression/tests/gcc-torture-execute-20121108-1.c,
4419	  support/regression/tests/gcc-torture-execute-pr79286.c: Don't
4420	  define putchar when compiling for host
4421
44222018-03-06 Maarten Brock <sourceforge.brock AT dse.nl>
4423
4424	* support/regression/tests/bug-1981238.c: disabled new tests that fail on
4425	  host
4426
44272018-03-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4428
4429	* src/SDCCopt.c,
4430	  support/regression/tests/bug-2712.c:
4431	  Fix bug #2712.
4432
44332018-03-04 Maarten Brock <sourceforge.brock AT dse.nl>
4434
4435	* src/stm8/gen.c (emitCall): fix callf with literal
4436	* support/regression/tests/bug-1981238.c: added tests,
4437	  changed pad.b to 5 bits so the total is <= 8
4438	* support/regression/tests/memory.c: enabled test for ds390, mcs51-large
4439	  and mcs51-huge
4440	* device/lib/strtoul.c: fix warnings
4441
44422018-03-04 Philipp Klaus Krause <pkk AT spth.de>
4443
4444	* src/SDCCerr.c,
4445	  src/SDCCerr.h,
4446	  src/SDCCsymt.c:
4447	  Fix bug #2714.
4448
44492018-03-04 Philipp Klaus Krause <pkk AT spth.de>
4450
4451	* sim/ucsim/stm8.src/stm8.cc:
4452	  Fix bug #2694.
4453	* configure.ac,
4454	  configure,
4455	  src/Makefile.in,
4456	  sim/ucsim/cmd.src/Makefile.in:
4457	  Fix bug #2724.
4458	* src/SDCC.y,
4459	  src/SDCCerr.h,
4460	  src/SDCCerr.c,
4461	  src/SDCCsymt.c:
4462	  Fix bug #2720.
4463
44642018-02-28 Philipp Klaus Krause <pkk AT spth.de>
4465
4466	* src/stm8/gen.c:
4467	  Implement calls through functions pointers via retpoline for stm8 large memory model (RFE #556).
4468
44692018-02-28 Philipp Klaus Krause <pkk AT spth.de>
4470
4471	* doc/sdccman.lyx:
4472	  Document stm8 memory models (RFE #556).
4473	* src/stm8/main.c,
4474	  src/stm8/gen.c:
4475	  Do not generate jump tables for stm8 large memory model (RFE #556).
4476
44772018-02-27 Philipp Klaus Krause <pkk AT spth.de>
4478
4479	* sim/ucsim/stm8.src/inst.cc:
4480	  Fix handling of 16-bit and 17-bit jumps in simulator (RFE #556).
4481	* src/stm8/peep.c:
4482	  Improve handling of 24-bit jumps in peephole optimizer (RFE #556).
4483	* src/stm8/main.c,
4484	  src/stm8/gen.c:
4485	  Code generation for large memory model for stm8 (RFE #556).
4486	* support/regression/tests/memory.c:
4487	  Enable test for host.
4488	* src/stm8/peeph.def:
4489	  New peephole rules for large memory model (RFE #556).
4490
44912018-02-26 Philipp Klaus Krause <pkk AT spth.de>
4492
4493	* .version,
4494	  src/stm8/peeph.def:
4495	  Implement RFE #557.
4496	* device/lib/stm8/strcmp.s,
4497	  device/lib/stm8/strcpy.s:
4498	  Faster string functions from patch #281 by Benedikt Freisen.
4499	* support/regression/tests/memory.c:
4500	  Test memory functions on larger arrays.
4501	* device/lib/stm8/memcpy.s:
4502	  Faster string function based on patch #281 by Benedikt Freisen.
4503
45042018-02-18 Philipp Klaus Krause <pkk AT spth.de>
4505
4506	* src/z80/gen.c,
4507	  support/regression/tests/bug-2715.c:
4508	  Fix bug #2715.
4509	* doc/sdccman.lyx:
4510	  Document treedec location.
4511
45122018-02-07 Philipp Klaus Krause <pkk AT spth.de>
4513
4514	* .version,
4515	  doc/INSTALL.txt,
4516	  sdcc.spec:
4517	  Version 3.7.0
4518
45192018-02-07 Philipp Klaus Krause <pkk AT spth.de>
4520
4521	* doc/sdccman.lyx:
4522	  Update for default build of lib for huge mcs51 memory model.
4523
45242018-02-06 Philipp Klaus Krause <pkk AT spth.de>
4525
4526	* doc/sdccman.lyx:
4527	  Fixed a typo.
4528
45292018-02-05 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4530
4531	* support/sdbinutils/bfd/doc/Makefile.am,
4532	  support/sdbinutils/bfd/doc/Makefile.in:
4533	  Fix bug #2711.
4534
45352018-01-31 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4536
4537	* device/lib/strtol.c,
4538	  device/lib/strtoul.c,
4539	  support/regression/tests/strto.c,
4540	  device/include/stdlib.h,
4541	  device/lib/incl.mk:
4542	  Implement strtoul(), strtol() RFE #555.
4543
45442018-01-26 Philipp Klaus Krause <pkk AT spth.de>
4545
4546	* src/SDCCpeeph.c:
4547	  Reduce memory usage in the peephole optimizer.
4548
45492018-01-26 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de>
4550
4551	* device/include/stdlib.h,
4552	  device/lib/incl.mk,
4553	  device/lib/qsort.c,
4554	  support/regression/tests/qsort.c:
4555	  Implement qsort(), RFE #554.
4556	* device/lib/stm8/heap.s:
4557	  Increase stm8 default heapsize to 1KB size of other backends.
4558	* src/SDCCpeeph.c,
4559	  src/SDCCgen.c,
4560	  src/stm8/peep.c:
4561	  Code cleanup.
4562
45632018-01-24 Philipp Klaus Krause <pkk AT spth.de>
4564
4565	* src/stm8/peep.c,
4566	  support/regression/tests/bug-2708.c:
4567	  Fix bug #2708.
4568
45692018-01-18 Philipp Klaus Krause <pkk AT spth.de>
4570
4571	* src/SDCC.lex,
4572	  src/SDCCglobl.h,
4573	  src/SDCCmain.c:
4574	  Remove leftovers from deprecated nojtbound pragma and option.
4575	* doc/sdccman.lyx:
4576	  Update list of incompatible changes.
4577	* src/hc08/gen.c,
4578	  src/SDCCast.c,
4579	  device/lib/_rlulonglong.c,
4580	  device/lib/_rrslonglong.c,
4581	  device/lib/_rrulonglong.c,
4582	  support/regression/tests/*.c:
4583	  Fixed many long long issues, including bugs #2658 and #2118.
4584
45852018-01-07 Philipp Klaus Krause <pkk AT spth.de>
4586
4587	* src/SDCCglue.c,
4588	  support/regression/tests/bug-2643.c:
4589	  Fix bug #2643.
4590
45912018-01-05 Philipp Klaus Krause <pkk AT spth.de>
4592
4593	* src/ds390/gen.c,
4594	  src/ds390/ralloc.c,
4595	  support/regression/ports/ds390/spec.mk,
4596	  support/regression/tests/*.c:
4597	  Fixes in ds390 long long support.
4598
45992018-01-04 Philipp Klaus Krause <pkk AT spth.de>
4600
4601	* src/ds390/ralloc.c,
4602	  support/regression/tests/*.c:
4603	  Fix conflict in assignment of long long return values.
4604
46052018-01-04 Philipp Klaus Krause <krauseph AT informatik.uni-freiburg.de.de>
4606
4607	* device/include/stdint.h,
4608	  src/SDCCsymt.c,
4609	  src/ds390/gen.c,
4610	  src/ds390/gen.h,
4611	  src/ds390/ralloc.c,
4612	  support/regression/tests/*.c:
4613	  Initial long long support for ds390.
4614
46152018-01-03 Maarten Brock <sourceforge.brock AT dse.nl>
4616
4617	* support/scripts/sdcc.nsi: added tlcs90 library
4618
46192017-12-30 Maarten Brock <sourceforge.brock AT dse.nl>
4620
4621	* support/scripts/sdcc.nsi: added sdastlcs90.exe
4622
46232017-12-29 Maarten Brock <sourceforge.brock AT dse.nl>
4624
4625	* support/regression/tests/wchar.c: disabled test for gcc 5.4 and older
4626	* support/scripts/sdcc.nsi: added huge library
4627
46282017-12-29 Philipp Klaus Krause <pkk AT spth.de>
4629
4630	* sim/ucsim/cmd.src/clean.mk:
4631	  Cleanup bison-generated files.
4632
46332017-12-28 Philipp Klaus Krause <pkk AT spth.de>
4634
4635	* sim/ucsim/cmd.src/Makefile.in,
4636	  sim/ucsim/cmd.src/cmdpars.cc,
4637	  sim/ucsim/cmd.src/cmdpars.hh,
4638	  device/lib/pic14/*,
4639	  device/lib/pic16/*:
4640	  Fixes for out-of-tree builds.
4641
46422017-11-18 Maarten Brock <sourceforge.brock AT dse.nl>
4643
4644	* support/regression/ports/mcs51-huge/spec.mk,
4645	* support/regression/Makefile.in: huge lib is now built by default
4646	* support/regression/tests/gcc-torture-execute-20140212-1.c,
4647	* support/regression/tests/gcc-torture-execute-20140212-2.c,
4648	* support/regression/tests/gcc-torture-execute-pr60062.c,
4649	* support/regression/tests/gcc-torture-execute-pr63209.c,
4650	* support/regression/tests/gcc-torture-execute-pr64979.c,
4651	* support/regression/tests/gcc-torture-execute-pr67714.c,
4652	* support/regression/tests/gcc-torture-execute-pr68250.c,
4653	* support/regression/tests/gcc-torture-execute-pr68321.c,
4654	* support/regression/tests/gcc-torture-execute-pr68390.c,
4655	* support/regression/tests/gcc-torture-execute-pr78675.c,
4656	* support/regression/tests/gcc-torture-execute-pr80153.c,
4657	* support/regression/tests/bug-2567.c: fix or suppress warnings
4658	* support/regression/tests/gcc-torture-execute-pr66940.c: added test that
4659	  long != long long
4660	* support/regression/tests/inline.c: added test for bug 2591
4661
46622017-11-14 Philipp Klaus Krause <pkk AT spth.de>
4663
4664	* src/SDCCtree_dec.hpp:
4665	  Choose Thorup vs. PP+FI+TM per CFG depending on width of decompositions.
4666
46672017-11-14 Ben Shi <powerstudio1st AT 163 DOT com>
4668
4669	* src/mcs51/gen.c,
4670	* src/mcs51/rtrack.c:
4671	  Fix illegal form of MOV.
4672	* support/regression/tests/bug-2221.c:
4673	  Partially enabled.
4674
46752017-11-13 Philipp Klaus Krause <pkk AT spth.de>
4676
4677	* Merged nothorup branch to trunk.
4678
46792017-11-13 Philipp Klaus Krause <pkk AT spth.de>
4680
4681	* src/SDCCtree_dec.hpp:
4682	  Document choice of algorithm for tree-decomposition.
4683
46842017-11-13 Philipp Klaus Krause <pkk AT spth.de>
4685
4686	* configure.ac,
4687	  src/SDCCtree_dec.hpp,
4688	  sdccconf_in.h,
4689	  configure:
4690	  Automatically use gala for treedec.
4691
46922017-11-12 Philipp Klaus Krause <pkk AT spth.de>
4693
4694	* sdccconf_in.h:
4695	  Regenerate to get correct definitions from configuration.
4696
46972017-11-08 Philipp Klaus Krause <pkk AT spth.de>
4698
4699	* configure,
4700	  configure.ac,
4701	  src/SDCClospre.cc,
4702	  src/SDCClospre.hpp,
4703	  src/SDCCnaddr.cc,
4704	  src/SDCCnaddr.hpp,
4705	  src/SDCCralloc.hpp,
4706	  src/SDCCtree_dec.hpp,
4707	  src/hc08/ralloc2.cc,
4708	  src/stm8/ralloc2.cc,
4709	  src/z80/ralloc2.cc:
4710	  Detect and use treedec when available, fall back to Thorup otherwise.
4711
47122017-11-08 Philipp Klaus Krause <pkk AT spth.de>
4713
4714	* src/SDCClospre.cc,
4715	  src/SDCClospre.hpp,
4716	  src/SDCCnaddr.cc,
4717	  src/SDCCnaddr.hpp,
4718	  src/SDCCralloc.hpp,
4719	  src/SDCCtree_dec.hpp,
4720	  src/hc08/ralloc2.cc,
4721	  src/stm8/ralloc2.cc,
4722	  src/z80/ralloc2.cc:
4723	  tdlib to treedec rename.
4724
47252017-11-07 Philipp Klaus Krause <pkk AT spth.de>
4726
4727	* src/SDCCglobl.h,
4728	  src/SDCCglue.c,
4729	  src/SDCCmain.c,
4730	  src/z80/main.c:
4731	  Implement --data-seg, part of RFE #544.
4732
47332017-11-07 Philipp Klaus Krause <pkk AT spth.de>
4734
4735	* src/z80/gen.c,
4736	  src/z80/peeph-gbz80.def,
4737	  support/regression/tests/longlong.c,
4738	  support/regression/tests/gcc-torture-execute-20001108-1.c,
4739	  support/regression/tests/gcc-torture-execute-20011126-1,
4740	  support/regression/tests/gcc-torture-execute-20041011-1.c,
4741	  support/regression/tests/gcc-torture-execute-20080529-1.c,
4742	  support/regression/tests/gcc-torture-execute-20120817-1.
4743	  support/regression/tests/gcc-torture-execute-920829-1.c,
4744	  support/regression/tests/gcc-torture-execute-950511-1.c,
4745	  support/regression/tests/gcc-torture-execute-961213-1.c,
4746	  support/regression/tests/gcc-torture-execute-pr65170:
4747	  Fix bugs #2329, #2656, #2653.
4748	* support/makebin/makebin.c:
4749	  Apply patch #278 by Brandon Blake.
4750	* support/regression/tests/bugs-1596270-1736867.c:
4751	  Disable a test for ds390.
4752
47532017-11-06 Philipp Klaus Krause <pkk AT spth.de>
4754
4755	* src/SDCCval.c,
4756	  src/SDCCval.c,
4757	  src/SDCC.lex,
4758	  support/regression/tests/bug-2221.c,
4759	  support/regression/tests/bug-2687.c,
4760	  support/regression/tests/generic.c:
4761	  Fix bugs #2221, #2687.
4762	* configure.ac,
4763	  configure:
4764	  Fix bug #2689.
4765
47662017-11-05 Philipp Klaus Krause <pkk AT spth.de>
4767
4768	* src/SDCCralloc.hpp,
4769	  src/z80/gen.c,
4770	  support/regression/tests/bug-2681.c:
4771	  Fix bug #2681.
4772	* support/regression/tests/bug-2645.c:
4773	  Silence an mcs51 warning.
4774	* support/regression/tests/bug-2567.c,
4775	  support/regression/tests/gcc-torture-execute-pr60062.c,
4776	  support/regression/tests/gcc-torture-execute-pr63209.c,
4777	  support/regression/tests/gcc-torture-execute-pr80153.c:
4778	  Silence some warning about unused function arguments.
4779
47802017-11-03 Philipp Klaus Krause <pkk AT spth.de>
4781
4782	* src/SDCCtree_dec.hpp:
4783	  Fix bug #2684.
4784
47852017-11-03 Philipp Klaus Krause <pkk AT spth.de>
4786
4787	* src/SDCCtree_dec.hpp:
4788	  Cleanup algorithm selection.
4789
47902017-11-03 Philipp Klaus Krause <pkk AT spth.de>
4791
4792	* support/regression/tests/bug-2684.c:
4793	  Disable new test for mcs51-small, which doesn't have enough RAM.
4794
47952017-11-03 Philipp Klaus Krause <pkk AT spth.de>
4796
4797	* src/SDCClospre.hpp,
4798	  src/SDCCnaddr.hpp,
4799	  src/SDCCralloc.hpp,
4800	  src/SDCCtree_dec.hpp:
4801	  More changes for current tdlib, patch by Felix Salfelder.
4802
48032017-11-02 Philipp Klaus Krause <pkk AT spth.de>
4804
4805	* support/regression/tests/bug-2684.c:
4806	  Test for bug #2684.
4807
48082017-11-02 Philipp Klaus Krause <pkk AT spth.de>
4809
4810	* src/SDCCtree_dec.hpp:
4811	  Use find_root() from tdlib when available.
4812
48132017-11-01 Philipp Klaus Krause <pkk AT spth.de>
4814
4815	* src/z80/ralloc2.cc:
4816	  Fix a bug in Z80 sfr handling.
4817	* support/scripts/Makefile.in:
4818	  Fix an access rights issue in make install, patch by Felix Salfelder.
4819
48202017-10-31 Philipp Klaus Krause <pkk AT spth.de>
4821
4822	* src/SDCCtree_dec.hpp,
4823	  src/SDCCralloc.hpp,
4824	  src/stm8/ralloc2.cc,
4825	  src/hc08/ralloc2.cc,
4826	  src/z80/ralloc2.cc:
4827	  Allow use of tdlib Thorup in place of SDCC Thorup in register allocator.
4828	* src/SDCClospre.cc,
4829	  src/SDCClospre.hpp,
4830	  src/SDCCnaddr.cc,
4831	  src/SDCCnaddr.hpp:
4832	  Allow use of tdlib Thorup in place of SDCC Thorup in lospre and bank selection instruction placement.
4833	* src/SDCClospre.cc,
4834	  src/SDCCnaddr.cc,
4835	  src/hc08/ralloc2.cc,
4836	  src/z80/ralloc2.cc:
4837	  Enable use of tdlib Thorup in place of SDCC Thorup.
4838	* src/SDCCtree_dec.hp:
4839	  Use PP+FI+TM instead of Thorup.
4840
48412017-10-30 Philipp Klaus Krause <pkk AT spth.de>
4842
4843	* src/z80/gen.c:
4844	  Fix --reserve-regs-iy issues, part of bug #2674.
4845	* device/lib/incl.mk:
4846	  Build library for mcs51 huge model, to reduce differences with Debian version.
4847
48482017-10-29 Philipp Klaus Krause <pkk AT spth.de>
4849
4850	* support/regression/tests/bug-2580.c:
4851	  Fix an issue for host systems where char is signed.
4852	* support/regression/ports/ucz80-resiy,
4853	  support/regression/Makefile.in:
4854	  Add target for z80 test with --reserve-regs-iy.
4855	* doc/Makefile.in:
4856	  Try to resurrect full documentation build.
4857
48582017-10-28 Philipp Klaus Krause <pkk AT spth.de>
4859
4860	* device/lib/pic16/configure,
4861	  device/non-free/lib/pic16/configure,
4862	  device/non-free/lib/pic16/supported-devices.ac:
4863	  Reduce pic device support warning timeout.
4864	* support/regression/tests/gcc-torture-execute-920612-1.c:
4865	  Disable a host test that fails for GCC 7.2.
4866	* src/z80/gen.c,
4867	  support/regression/tests/bug-2580.c:
4868	  Fix bug #2580.
4869
48702017-10-27 Philipp Klaus Krause <pkk AT spth.de>
4871
4872	* configure,
4873	  configure.ac,
4874	  sim/ucsim/cmd.src/cmdutil.cc,
4875	  sim/ucsim/configure,
4876	  sim/ucsim/configure.ac,
4877	  sim/ucsim/utils.cc,
4878	  src/SDCCutil.c,
4879	  src/SDCCutil.h:
4880	  Do not work around missing C99 support.
4881	* support/regression/Makefile.in:
4882	  Reduce make overhead in regression testing from quadratic to linear in the number of tests.
4883	* sim/ucsim/app.cc:
4884	  Speed up simulator command handling for faster regression testing.
4885
48862017-10-26 Philipp Klaus Krause <pkk AT spth.de>
4887
4888	* src/z80/ralloc2.cc,
4889	  src/z80/gen.c,
4890	  support/regression/tests/bug-2370.c:
4891	  Fix various --reserve-regs-iy issues, including bug #2370 and most of bug #2674.
4892
48932017-10-25 Philipp Klaus Krause <pkk AT spth.de>
4894
4895	* src/z80/gen:
4896	  Fix a --reserve-regs-iy bug in 32/64-bit comparisons.
4897	* src/stm8/peeph.def,
4898	  src/stm8/gen.c:
4899	  Minor improvements for stm8.
4900
49012017-10-25 Philipp Klaus Krause <pkk AT spth.de>
4902
4903	* src/z80/gen.c,
4904	  src/z80/peep.c:
4905	  __z88dk_fastcall function pointer support for --reserve-regs-iy.
4906
49072017-10-24 Philipp Klaus Krause <pkk AT spth.de>
4908
4909	* doc/sdccman.lyx:
4910	  Fix broken references.
4911	* src/z80/gen.c:
4912	  Fix various --reserve-regs-iy issues, including bugs #2400, #2278, #2380.
4913
49142017-10-23 Philipp Klaus Krause <pkk AT spth.de>
4915
4916	* src/SDCCdwarf2.c:
4917	  Debug info for partially spilt variables.
4918	* doc/sdccman.lyx,
4919	  doc/Makefile.in:
4920	  Fix SDCC version in manual title for out-of-tree build.
4921	* src/SDCCast.c,
4922	  support/regression/tests/bug-2632.c:
4923	  Fix bug #2632.
4924
49252017-10-22 Philipp Klaus Krause <pkk AT spth.de>
4926
4927	* src/SDCCdwarf2.c:
4928	  Infrastructure for debug info for partially spilt variables.
4929	* src/SDCCmain.c:
4930	  Document command line options in help output.
4931
49322017-10-20 Philipp Klaus Krause <pkk AT spth.de>
4933
4934	* src/z80/ralloc2.cc,
4935	  src/z80/gen.c:
4936	  Improve handling of a in cast.
4937	* src/z80/gen.c:
4938	  Improve &.
4939	* src/z80/gen.c:
4940	  Improve |.
4941
49422017-10-19 Philipp Klaus Krause <pkk AT spth.de>
4943
4944	* src/z80/peeph-z80.def:
4945	  Optimize ifx on 16-bit pointer read.
4946	* src/z80/peeph-z80.def:
4947	  Improve peephole rules for caching 0 in a.
4948
49492017-10-18 Philipp Klaus Krause <pkk AT spth.de>
4950
4951	* src/z80/gen.c,
4952	  src/z80/ralloc2.cc:
4953	  Improve subtraction of global variables.
4954	* src/z80/gen.c:
4955	  Simplify stack adjustment.
4956	* src/z80/gen.c:
4957	  Improve 32-bit increment.
4958	* src/z80/ralloc2.cc:
4959	  Improve handling of a in negation.
4960	* src/z80/gen.c:
4961	  Improve cast to signed long and signed long long.
4962	* src/z80/gen.c:
4963	  Improve addition of immediates.
4964
49652017-10-18 Maarten Brock <sourceforge.brock AT dse.nl>
4966
4967	* SDCC.props: boost 1.64
4968	* sdas/linksrc/lkmem.c: fixed warning
4969	* src/mcs51/peep.c,
4970	* src/SDCCast.c,
4971	* src/SDCCcse.c,
4972	* src/SDCCmem.c,
4973	* src/z80/ralloc2.cc: cosmetic changes
4974
49752017-10-18 Philipp Klaus Krause <pkk AT spth.de>
4976
4977	* src/z80/ralloc2.cc,
4978	  src/z80/gen.c:
4979	  Improve handling of a in pointer read and ifx.
4980
49812017-10-17 Maarten Brock <sourceforge.brock AT dse.nl>
4982
4983	* src/z80/main.c (_parseOptions): fix bug #2634
4984
49852017-10-17 Philipp Klaus Krause <pkk AT spth.de>
4986
4987	* src/SDCCdwarf2.h,
4988	  src/SDCCdwarf2.c:
4989	  CFI handling in DWARFv2 output, patch by Åke Rehnman.
4990
49912017-10-16 Philipp Klaus Krause <pkk AT spth.de>
4992
4993	* src/stm8/main.c:
4994	  Debug info infrastructure for stm8 registers.
4995	* device/lib/_fsgt.c,
4996	  device/lib/incl.mk,
4997	  src/SDCCsymt.h,
4998	  src/SDCCsymt.c
4999	  src/SDCCopt.c:
5000	  Remove __fsgt support function, RFE #526.
5001	* src/z80/gen.c:
5002	  Improve handling of variables on stack in return.
5003	* src/SDCCsymt.c:
5004	  Fix bug #2666.
5005
50062017-10-16 Ben Shi <powerstudio1st AT 163 DOT com>
5007
5008	* src/mcs51/peeph.def:
5009	  Fix a potential bug in label reference count calculation.
5010
50112017-10-15 Philipp Klaus Krause <pkk AT spth.de>
5012
5013	* src/SDCCdebug.h,
5014	  src/SDCCdwarf2.c,
5015	  src/cdbFile.c,
5016	  src/stm8/gen.c,
5017	  src/stm8/ralloc.c,
5018	  src/stm8/ralloc.h:
5019	  STM8 frame address debug info, based on patch by Åke Rehnman.
5020	* src/stm8/main.c:
5021	  Implement RFE #538: Option for stack pointer startup value for stm8.
5022	* device/lib/*/mulchar.s:
5023	  Minor char multiplication improvement.
5024	* sdas/linksrc/lkelf.c:
5025	  RFE #2670 ELF e_entry, patch by Åke Rehnman.
5026	* src/SDCCtree_dec.hpp,
5027	  src/SDCCralloc.hpp,
5028	  src/SDCCnaddr.hpp,
5029	  src/SDCClospre.cc:
5030	  More verbose --dump-graphs output.
5031	* device/lib/z180/mul.s:
5032	  Better multiplication support routine for z180.
5033
50342017-10-11 Philipp Klaus Krause <pkk AT spth.de>
5035
5036	* support/regression/tests/gcc-torture-execute-920922-1.c,
5037	  support/regression/tests/gcc-torture-execute-950612-1.c:
5038	  Disable tests that fail due to bug #2669.
5039
50402017-10-11 Philipp Klaus Krause <pkk AT spth.de>
5041
5042	* src/z80/peeph.def:
5043	  Renumber peephole rules.
5044
50452017-10-11 Philipp Klaus Krause <pkk AT spth.de>
5046
5047	* src/z80/peeph.def:
5048	  Remove obsolete peephole rules.
5049
50502017-10-11 Philipp Klaus Krause <pkk AT spth.de>
5051
5052	* src/stm8/peeph.def:
5053	  Renumber peephole rules.
5054
50552017-10-11 Philipp Klaus Krause <pkk AT spth.de>
5056
5057	* src/stm8/peeph.def:
5058	  Remove obsolete peephole rules.
5059
50602017-10-11 Philipp Klaus Krause <pkk AT spth.de>
5061
5062	* src/hc08/peeph.def:
5063	  Renumber peephole rules.
5064
50652017-10-11 Philipp Klaus Krause <pkk AT spth.de>
5066
5067	* src/hc08/peeph.def:
5068	  Remove obsolete peephole rules.
5069
50702017-10-11 Ben Shi <powerstudio1st AT 163 DOT com>
5071
5072	* src/mcs51/peeph.def:
5073	  Fix potential bugs in a serial of rules (241a-241h) by adding check of labelRefCount().
5074
50752017-10-11 Ben Shi <powerstudio1st AT 163 DOT com>
5076
5077	* src/mcs51/peeph.def:
5078	  Add two optimization rules for long long comparison.
5079
50802017-10-10 Philipp Klaus Krause <pkk AT spth.de>
5081
5082	* support/regression/tests/gcc-torture-execute-20001108-1.c,
5083	  support/regression/tests/gcc-torture-execute-20020201-1.c,
5084	  support/regression/tests/gcc-torture-execute-20020226-1.c,
5085	  support/regression/tests/gcc-torture-execute-20060110-1.c,
5086	  support/regression/tests/gcc-torture-execute-20060110-2.c,
5087	  support/regression/tests/gcc-torture-execute-20060127-1.c,
5088	  support/regression/tests/gcc-torture-execute-20071030-1.c,
5089	  support/regression/tests/gcc-torture-execute-20080529-1.c,
5090	  support/regression/tests/gcc-torture-execute-20101013-1.c,
5091	  support/regression/tests/gcc-torture-execute-20120817-1.c,
5092	  support/regression/tests/gcc-torture-execute-920604-1.c,
5093	  support/regression/tests/gcc-torture-execute-920829-1.c,
5094	  support/regression/tests/gcc-torture-execute-920922-1.c,
5095	  support/regression/tests/gcc-torture-execute-930702-1.c,
5096	  support/regression/tests/gcc-torture-execute-950511-1.c,
5097	  support/regression/tests/gcc-torture-execute-950612-1.c,
5098	  support/regression/tests/gcc-torture-execute-950915-1.c,
5099	  support/regression/tests/gcc-torture-execute-961213-1.c,
5100	  support/regression/tests/gcc-torture-execute-990513-1.c,
5101	  support/regression/tests/gcc-torture-execute-pr19606.c,
5102	  support/regression/tests/gcc-torture-execute-pr47538.c,
5103	  support/regression/tests/gcc-torture-execute-pr65170.c,
5104	  support/regression/tests/gcc-torture-execute-pr78791.c,
5105	  support/regression/tests/gcc-torture-execute-pr81556.c:
5106	  Enable mcs51 tests that pass for me now.
5107	* device/lib/hc08/Makefile.in,
5108	  device/lib/hc08/_divuint.c,
5109	  device/lib/hc08/_divulong.c,
5110	  device/lib/hc08/_mullong.c,
5111	  device/lib/hc08/Makefile.in,
5112	  device/lib/hc08/_divuint.c,
5113	  device/lib/hc08/_divulong.c,
5114	  device/lib/hc08/_mullong.c:
5115	  Replace some backend-specific functions in hc08 and s08 libraries by generic ones.
5116
51172017-10-10 Philipp Klaus Krause <pkk AT spth.de>
5118
5119	* src/SDCCralloc.hpp:
5120	  Fix bug #2667.
5121	* support/regression/tests/gcc-torture-execute-pr68532.c:
5122	  Disable test for medium model.
5123
51242017-10-10 Ben Shi <powerstudio1st AT 163 DOT com>
5125
5126	* src/mcs51/gen.c:
5127	  Fix a bug in genRet() to avoid generate "mov Rx,Ry".
5128	* src/mcs51/peeph.def:
5129	  Better format.
5130	* support/regression/ports/mcs51-common/spec.mk:
5131	  Add support for liblonglong.
5132	* support/regression/tests/gcc-torture-execute-pr78378.c:
5133	  Enabled for mcs-51.
5134
51352017-10-09 Philipp Klaus Krause <pkk AT spth.de>
5136
5137	* device/lib/_divuchar.c,
5138	  device/lib/_moduchar.c,
5139	  device/lib/_muluchar.c,
5140	  src/SDCCsymt.c:
5141	  Generic support routine infrastructure.
5142
51432017-10-08 Philipp Klaus Krause <pkk AT spth.de>
5144
5145	* support/regression/tests/bug-2663.c:
5146	  Disable new function pointer test for ds390.
5147	* src/SDCCsymt.c,
5148	  src/SDCCerr.h,
5149	  src/SDCCerr.c:
5150	  Improve error reporting for conflicting function declarations.
5151	* src/SDCCast.c,
5152	  support/regression,tests/bug-2556.c:
5153	  Fix bug #2556.
5154
51552017-10-07 Philipp Klaus Krause <pkk AT spth.de>
5156
5157	* src/SDCCerr.c,
5158	  src/SDCCglue.c:
5159	  Fix bug #2641.
5160
51612017-10-05 Philipp Klaus Krause <pkk AT spth.de>
5162
5163	* src/SDCCval.c,
5164	  support/regression/tests/generic.c:
5165	  Fix string literal signedness to match char.
5166	* src/SDCCsymt.c,
5167	  support/regression/tests/bug-2663.c:
5168	  Partial fix for bug #2663.
5169
51702017-10-03 Philipp Klaus Krause <pkk AT spth.de>
5171
5172	* src/SDCCralloc.hpp:
5173	  Make source compilable with MSVC++ 2015.
5174
51752017-10-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5176
5177	* src/hc08/gen.c: fix bug #2662 (omit debug info on dry run)
5178
51792017-10-02 Philipp Klaus Krause <pkk AT spth.de>
5180
5181	* support/regression/tests/cvu_play_music.c,
5182	  support/regression/tests/io.c:
5183	  Improve coverage of z80 peephole rules.
5184	* src/SDCCicode.c:
5185	  Improve debug info for ENDFUNCTION iCode, patch by Åke Rehnman.
5186	* src/z80/peeph-tlcs90.def:
5187	  Remove obsolete tlcs90 peephole rules.
5188	* src/z80/peeph-gbz80.def:
5189	  Remove obsolete gbz80 peephole rules.
5190
51912017-10-01 Philipp Klaus Krause <pkk AT spth.de>
5192
5193	* support/regression/tests/gcc-torture-execute-pr80501.c,
5194	  support/regression/tests/gcc-torture-execute-pr81555.c:
5195	  Disable tests for older host compilers.
5196	* src/z80/peep.c,
5197	  support/regression/tests/bug-2569.c:
5198	  Fix bug #2569.
5199	* src/SDCCralloc.hpp:
5200	  Change filenames for graphs from register allocation for --dump-graphs.
5201	* support/regression/tests/gcc-torture-execute-20141125-1.c:
5202	  Disable new test since it fails on 32-bit hosts, bug #2661.
5203
52042017-09-30 Philipp Klaus Krause <pkk AT spth.de>
5205
5206	* src/z80/gen.c:
5207	  Fix issues in built-in memset() and handling of literals.
5208	* src/z80/gen.c:
5209	  Improve long long parameter passing.
5210
52112017-09-29 Philipp Klaus Krause <pkk AT spth.de>
5212
5213	* src/z80/gen.c,
5214	  support/regression/tests/addsub.c:
5215	  Optimize addition.
5216
52172017-09-28 Philipp Klaus Krause <pkk AT spth.de>
5218
5219	* src/SDCC.y,
5220	  src/SDCCerr.c,
5221	  src/SDCCerr.h,
5222	  support/regression/tests/p99-conformance.c,
5223	  doc/sdccman.lyx:
5224	  Implement RFE #537: static in array parameters.
5225
52262017-09-27 Philipp Klaus Krause <pkk AT spth.de>
5227
5228	* support/regression/tests/gcc-torture-execute-pr7*.c
5229	  support/regression/tests/gcc-torture-execute-pr8*.c:
5230	  Port more tests from the GCC testsuite.
5231	* support/regression/tests/gcc-torture-execute-930529-1.c:
5232	  Disable test that hangs on GCC 7.2.0 for host.
5233	* support/regression/tests/gcc-torture-execute-pr51581-?.c:
5234	  Fix for test-host.
5235
52362017-09-26 Philipp Klaus Krause <pkk AT spth.de>
5237
5238	* src/SDCCerr.c:
5239	  Improve error message for storage class specifiers in parameters.
5240	* src/SDCC.y:
5241	  Separate type qualifiers from type specifiers to prepare for RFE #2538.
5242	* support/regression/tests/gcc-torture-execute-20120111-1.c,
5243	  support/regression/tests/gcc-torture-execute-20120817-1.c,
5244	  support/regression/tests/gcc-torture-execute-20140212-1.c,
5245	  support/regression/tests/gcc-torture-execute-20141125-1.c,
5246	  support/regression/tests/gcc-torture-execute-20170111-1.c,
5247	  support/regression/tests/gcc-torture-execute-pr65170.c,
5248	  support/regression/tests/gcc-torture-execute-pr65215-1.c,
5249	  support/regression/tests/gcc-torture-execute-pr65215-2.c,
5250	  support/regression/tests/gcc-torture-execute-pr66940.c,
5251	  support/regression/tests/gcc-torture-execute-pr69320-4.c:
5252	  Disable new long long tests for ds390.
5253	* src/SDCC.y,
5254	  src/SDCCerr.c,
5255	  src/SDCCerr.h,
5256	  src/SDCCsymt.h,
5257	  src/SDCCsymt.c,
5258	  support/regression/tests/p99-conformance.c:
5259	  Partially fix bug #2538: const and volatile in array parameters.
5260	* support/regression/tests/gcc-torture-execute-pr51581-1.c:
5261	  Fix for test-host.
5262	* src/SDCC.y,
5263	  support/regression/tests/p99-conformance.c:
5264	  Fix bug #2538: qualifiers in array parameters (ISO C99).
5265	* doc/sdccman.lyx:
5266	  Document missing support for static in array parameters.
5267
52682017-09-25 Philipp Klaus Krause <pkk AT spth.de>
5269
5270	* support/regression/tests/gcc-torture-execute-20111227-1.c,
5271	  support/regression/tests/gcc-torture-execute-2012*.c,
5272	  support/regression/tests/gcc-torture-execute-2013*.c,
5273	  support/regression/tests/gcc-torture-execute-2014*.c,
5274	  support/regression/tests/gcc-torture-execute-2015*.c,
5275	  support/regression/tests/gcc-torture-execute-2017*.c:
5276	  Port more tests from the GCC testsuite.
5277	* src/stm8/gen.c,
5278	  support/regression/tests/gcc-torture-execute-20141022-1.c:
5279	  Fix bug #2652.
5280	* support/regression/tests/gcc-torture-execute-pr51581-1.c,
5281	  support/regression/tests/gcc-torture-execute-pr51581-2.c:
5282	  support/regression/tests/gcc-torture-execute-pr6*.c:
5283	  Port more tests from the GCC testsuite.
5284
52852017-09-25 Philipp Klaus Krause <pkk AT spth.de>
5286
5287	* src/SDCCval.c,
5288	  support/regression/tests/bug-2645.c:
5289	  Fix bug #2645, patch by Kamil Zbróg.
5290	* src/z80/gen.c,
5291	  support/regression/tests/bug-441448.c,
5292	  support/regression/tests/bug2729218.c:
5293	  Fix bug #2649.
5294
52952017-09-25 Philipp Klaus Krause <pkk AT spth.de>
5296
5297	* src/SDCCdwarf2.c:
5298	  Fix long long support in DWARF output (bug #2613)
5299	* src/z80/gen.c:
5300	  Fix interaction of __z88dk_fastcall with frame pointer setup when optimizing for code size (bug #2581).
5301	* device/lib/calloc.c,
5302	  support/regression/tests/malloc.c:
5303	  Fix bug #2650.
5304
53052017-09-21 Philipp Klaus Krause <pkk AT spth.de>
5306
5307	* src/SDCCicode.c:
5308	  Optimize stm8 left shifts a bit better.
5309
53102017-09-20 Philipp Klaus Krause <pkk AT spth.de>
5311
5312	* support/regression/tests/preserves_regs.c:
5313	  Test specifications for preserved registers.
5314
53152017-09-13 Philipp Klaus Krause <pkk AT spth.de>
5316
5317	* src/z80/main.c:
5318	  Fix handling of specifications for preserved registers.
5319
53202017-09-12 Ben Shi <powerstudio1st AT 163 DOT com>
5321
5322	* support/regression/tests/bug-441448.c:
5323	* support/regression/tests/bug2729218.c:
5324	  Disabled for gbz80.
5325
53262017-09-08 Ben Shi <powerstudio1st AT 163 DOT com>
5327
5328	* src/stm8/peeph.def:
5329	  Optimize bit-xor with BCPL.
5330	* support/regression/tests/bug-2642.c:
5331	  Improve test case.
5332
53332017-08-20 Ben Shi <powerstudio1st AT 163 DOT com>
5334
5335	* src/SDCCpeeph.c:
5336	  Improve notVolatile() for stm8.
5337	* src/stm8/peeph.def:
5338	  Add more rules for optimization with BSET/BRES.
5339	* support/regression/tests/bug-2642.c:
5340	  Add a new test case.
5341
53422017-08-17 Philipp Klaus Krause <pkk AT spth.de>
5343
5344	* src/SDCCglue.c:
5345	  More verbose error message on initialization from incompatible pointer type.
5346
53472017-08-14 Philipp Klaus Krause <pkk AT spth.de>
5348
5349	* src/z80/ralloc2.cc:
5350	  Fix bug #2640.
5351
53522017-08-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5353
5354	* src/SDCCcse.c (cseBBlock),
5355	* src/SDCCptropt.c (ptrPostIncDecOpt, pattern1, pattern2),
5356	* src/SDCCptropt.h: fix bug #2459
5357
53582017-08-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5359
5360	* src/SDCCast.c: fix bug #2624
5361
53622017-08-10 Philipp Klaus Krause <pkk AT spth.de>
5363
5364	* device/include/stdio.h,
5365	  device/lib/ds390/putchar.c:
5366	  Make getchar() prototype standard-compliant.
5367	* src/stm8/gen.c:
5368	  Improve I/O and bit toggling.
5369
53702017-08-08 Philipp Klaus Krause <pkk AT spth.de>
5371
5372	* src/stm8/gen.c:
5373	  Fix ASMOP_A / ASMOP_ZERO initialization.
5374
53752017-08-07 Philipp Klaus Krause <pkk AT spth.de>
5376
5377	* src/z80/ralloc2.cc,
5378	  src/z80/gen.c:
5379	  Improve use of register A.
5380
53812017-08-07 Philipp Klaus Krause <pkk AT spth.de>
5382
5383	* src/z80/gen.c,
5384	  src/z80/gen.h:
5385	  Refactor and optimize subtraction.
5386	* sim/ucsim/z80.src/inst_ed.cc,
5387	  sim/ucsim/z80.src/inst_ed_r2k.cc:
5388	  Fix negation.
5389
53902017-08-06 Philipp Klaus Krause <pkk AT spth.de>
5391
5392	* src/z80/gen.c:
5393	  Improve left shift.
5394
53952017-08-01 Philipp Klaus Krause <pkk AT spth.de>
5396
5397	* src/z80/gen.h,
5398	  src/z80/gen.c,
5399	  src/z80/ralloc.h,
5400	  src/z80/ralloc2.cc:
5401	  Handle register A more like other registers.
5402	* src/z80/peeph-z80.def:
5403	  Instructions in jump target for cheaper short jumps.
5404
54052017-08-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5406
5407	* support/regression/tests/gcc-torture-execute-20010224-1.c: re-enable
5408
54092017-07-31 Philipp Klaus Krause <pkk AT spth.de>
5410
5411	* src/z80/gen.c:
5412	  Fix a gbz80 codegen issue.
5413
54142017-07-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5415
5416	* src/SDCCmem.c (initMem),
5417	* src/hc08/gen.c (aopForSym): fix bug #2385
5418	* support/regression/tests/bug-2385.c: re-enable for all ports
5419
54202017-07-30 Philipp Klaus Krause <pkk AT spth.de>
5421
5422	* src/z80/gen.c:
5423	  Improve 16-bit left-shift by 7,
5424	  improve transfers between hl and de (in codegen at a cost in peephole opt).
5425
54262017-07-29 Ben Shi <powerstudio1st AT 163 DOT com>
5427
5428	* configure
5429	* configure.ac:
5430	  Remove requirement of C++14.
5431
54322017-07-28 Ben Shi <powerstudio1st AT 163 DOT com>
5433
5434	* aclocal.m4:
5435	  Added new file.
5436	* configure
5437	* configure.ac:
5438	  Check if C++14 or C++11 is supported.
5439
54402017-07-27 Philipp Klaus Krause <pkk AT spth.de>
5441
5442	* support/regression/tests/bug-2567.c:
5443	  Test for bug #2567.
5444
54452017-07-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5446
5447	* src/SDCCast.c,
5448	* src/SDCCicode.c
5449	* src/SDCCralloc.hpp: fix bug #2567, include block num in iCode debug
5450
54512017-07-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5452
5453	* src/z80/gen.c: fix bug #2486 (frame pointer offset wrong)
5454	* src/z80/peeph-z80.def,
5455	* src/z80/peeph-r2k.def,
5456	* src/z80/peeph-tlcs90.def: fix unsafe rules exposed by fixing #2486
5457	* sdas/asrab/rabmch.c: fix encoding of ld (n+sp),hl instruction
5458
54592017-07-23 Philipp Klaus Krause <pkk AT spth.de>
5460
5461	* src/SDCCralloc.hpp:
5462	  Speed up register allocator.
5463	* src/stm8/gen.c:
5464	  Spped up code generation a little bit.
5465
54662017-07-21 Philipp Klaus Krause <pkk AT spth.de>
5467
5468	* src/SDCCralloc.hpp:
5469	  Speed up register allocator a little bit.
5470
54712017-07-20 Philipp Klaus Krause <pkk AT spth.de>
5472
5473	* src/stm8/gen.c:
5474	  Fix an issue similar to bug #2633.
5475	* src/SDCCralloc.hpp,
5476	  src/stm8/ralloc2.cc:
5477	  Speed up register allocator a bit.
5478
54792017-07-19 Philipp Klaus Krause <pkk AT spth.de>
5480
5481	* src/stm8/gen.c:
5482	  Fix bug #2633.
5483
54842017-07-18 Philipp Klaus Krause <pkk AT spth.de>
5485
5486	* src/SDCCopt.c,
5487	  support/regression/tests/loop.c:
5488	  Improve narrowing of loop counters.
5489
54902017-07-16 Philipp Klaus Krause <pkk AT spth.de>
5491
5492	* src/stm8/gen.c:
5493	  Improve writing of constants to bit-fields.
5494
54952017-07-16 Philipp Klaus Krause <pkk AT spth.de>
5496
5497	* src/stm8/ralloc.c,
5498	  src/stm8/gen.c:
5499	  Better code for operations on 8-bit global variables.
5500
55012017-07-16 Philipp Klaus Krause <pkk AT spth.de>
5502
5503	* src/stm8/gen.c:
5504	  Improve code generation for wide read through pointer.
5505
55062017-07-16 Philipp Klaus Krause <pkk AT spth.de>
5507
5508	* src/SDCCopt.c:
5509	  Implement narrowing of loop counters, RFE #530.
5510	* src/stm8/gen.c,
5511	  support/regression/tests/bug-2630.c:
5512	  Fix bug #2630.
5513
55142017-07-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5515
5516	* src/SDCCast.c (isInitiallyTrue),
5517	* src/SDCCerr.c (setWarningDisabledState),
5518	* src/SDCCerr.h: fix bugs #2552 & #2614
5519	* src/SDCCast.c (decorateType): fix bug #2550
5520
55212017-07-15 Philipp Klaus Krause <pkk AT spth.de>
5522
5523	* src/SDCCopt.c:
5524	  Improve narrowing of multiplications.
5525
55262017-07-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5527
5528	* src/mcs51/gen.c (genRet): fix some problems with returning long long
5529	* src/SDCCicode.c (geniCodeAdd): fix bug #2625
5530	* support/regression/tests/bug-2625.c: test for bug #2625
5531
55322017-07-14 Philipp Klaus Krause <pkk AT spth.de>
5533
5534	* src/stm8/gen.c:
5535	  Optimze reads from literal pointer.
5536	* src/SDCCopt.c:
5537	  Optimize right shift followed by cast.
5538
55392017-07-13 Philipp Klaus Krause <pkk AT spth.de>
5540
5541	* src/z80/ralloc2.cc,
5542	  support/regression/tests/bug-2628.c:
5543	  Fix bug #2628.
5544
55452017-07-06 Philipp Klaus Krause <pkk AT spth.de>
5546
5547	* src/stm8/peeph.def,
5548	  src/stm8/peep.c:
5549	  Improve accuracy and fix bugs in peephole optimizer.
5550
55512017-07-05 Philipp Klaus Krause <pkk AT spth.de>
5552
5553	* src/SDCCopt.c,
5554	  src/SDCCsymt.c:
5555	  Minor code cleanup, gets rid of a few LLVM warnings.
5556
55572017-07-03 Philipp Klaus Krause <pkk AT spth.de>
5558
5559	* sdas/asstm8/stm8pst.c:
5560	  Support for break debug instruction, patch by Reto Schneider.
5561
55622017-06-30 Ben Shi <powerstudio1st AT 163 DOT com>
5563
5564	* src/SDCCast.c:
5565	  add cast to left and right subtree only if they both can be casted.
5566	* support/regression/tests/bug-2611.c:
5567	  add a new test case.
5568
55692017-06-29 Philipp Klaus Krause <pkk AT spth.de>
5570
5571	* src/SDCCgen.c,
5572	  support/regression/tests/bug-2627.c:
5573	  Fix bug #2627.
5574	* src/stm8/gen.c:
5575	  Enable use of execution count in stm8 register allocation cost calculations.
5576
55772017-06-28 Philipp Klaus Krause <pkk AT spth.de>
5578
5579	* src/SDCCicode.h,
5580	  src/SDCCopt.c:
5581	  Execution frequency handling infrastructure.
5582
55832017-06-26 Philipp Klaus Krause <pkk AT spth.de>
5584
5585	* src/SDCCralloc.hpp,
5586	  .version,
5587	  src/*/ralloc2.cc:
5588	  Speed up register allocator.
5589
55902017-06-25 Philipp Klaus Krause <pkk AT spth.de>
5591
5592	* src/SDCCralloc.hpp,
5593	  src/SDCCbitv.h,
5594	  src/SDCCbitv.c,
5595	  src/*/ralloc2.cc:
5596	  Speed up register allocator a bit.
5597
55982017-06-24 Philipp Klaus Krause <pkk AT spth.de>
5599
5600	* src/stm8/gen.c:
5601	  More efficient >= 32-bit increment for (partially) spilt local variables.
5602
56032017-06-23 Philipp Klaus Krause <pkk AT spth.de>
5604
5605	* src/stm8/gen.c:
5606	  Improve 16-bit register-to-register transfer,
5607	  consider cycle cost for register allocation.
5608	* src/stm8/peeph.def:
5609	  Improve 16-bit addition with on-stack operand.
5610
56112017-06-17 Philipp Klaus Krause <pkk AT spth.de>
5612
5613	* src/stm8/gen.c,
5614	  src/stm8/peeph.def:
5615	  More efficient comparisons.
5616
56172017-06-14 Philipp Klaus Krause <pkk AT spth.de>
5618
5619	* support/regression/tests/bug-2621.c:
5620	  Disable test for ds390, which doesn't have long long.
5621
56222017-06-13 Philipp Klaus Krause <pkk AT spth.de>
5623
5624	* src/z80/stm8.c:
5625	  More efficient equality comparisons.
5626	* support/regression/tests/bug-2621.c:
5627	  Test for bug #2612.
5628
56292017-06-12 Philipp Klaus Krause <pkk AT spth.de>
5630
5631	* src/z80/stm8.c:
5632	  More efficient equality comparisons, fix bug #2612.
5633
56342017-05-31 Philipp Klaus Krause <pkk AT spth.de>
5635
5636	* device/non-free/lib/pic14/Makefile.in,
5637	  device/non-free/lib/pic14/Makefile.subdir,
5638	  src/Makefile.in,
5639	  src/port.mk:
5640	  Sort directory listings towards are reproducible build, patch by Bernhard M. Wiedemann.
5641
56422017-05-30 Philipp Klaus Krause <pkk AT spth.de>
5643
5644	* src/SDCC.lex,
5645	  src/SDCCmain.c,
5646	  src/SDCCicode.c,
5647	  doc/sdccman.lyx:
5648	  Deprecate --nojtbound and the corresponding pragma.
5649
56502017-05-15 Philipp Klaus Krause <pkk AT spth.de>
5651
5652	* src/z80/gen.c:
5653	  Fix bug #2617.
5654
56552017-05-15 Philipp Klaus Krause <pkk AT spth.de>
5656
5657	* src/z80/gen.c:
5658	  Fix a z80 codegen bug #2615 in and (triggered by recent register allocation changes when using --reserve-regs-iy).
5659
56602017-05-15 Philipp Klaus Krause <pkk AT spth.de>
5661
5662	* src/z80/gen.c:
5663	  Fix a gbz80 codegen bug in comparisons (triggered by recent register allocation changes).
5664
56652017-05-13 Maarten Brock <sourceforge.brock AT dse.nl>
5666
5667	* support/regression/tests/test-p99-conformance.c: renamed p99-conformance.c
5668	  decreased flex10 to flex2,
5669	  removed SKIP_FLEXIBLE, SKIP_LONG_LONG for mcs51
5670
56712017-05-10 Philipp Klaus Krause <pkk AT spth.de>
5672
5673	* src/SDCCdwarf2.c:
5674	  Fix encoding DWARF info for _Bool, explicitly specify for char.
5675
56762017-05-09 Philipp Klaus Krause <pkk AT spth.de>
5677
5678	* src/z80/main.c,
5679	  src/z80/gen.c:
5680	  Better code for switch statements.
5681
56822017-05-08 Maarten Brock <sourceforge.brock AT dse.nl>
5683
5684	* support/regression/tests/inline.c: oops, wrong place to skip bug_2591
5685
56862017-05-08 Philipp Klaus Krause <pkk AT spth.de>
5687
5688	* src/z80/peeph-z80.def,
5689	  src/z80/ralloc.c,
5690	  src/z80/ralloc2.cc:
5691	  Improve handling of 8-bit parameters.
5692
56932017-05-07 Maarten Brock <sourceforge.brock AT dse.nl>
5694
5695	* support/regression/fwk/lib/extern1.c: renamed bug2591 to bug_2591
5696	* support/regression/tests/inline.c: skip bug_2591 for old buggy GCC
5697
56982017-05-06 Philipp Klaus Krause <pkk AT spth.de>
5699
5700	* src/SDCCopt.c:
5701	  Optimize computations on shift counts.
5702	* src/stm8/gen.c:
5703	  Fix bug in register handling in shifts.
5704	* src/z80/gen.c:
5705	  Optimize computations on shift counts, fix bug in register handling of
5706	  wide shifts.
5707
57082017-05-06 Maarten Brock <sourceforge.brock AT dse.nl>
5709
5710	* doc/sdccman.lyx: fixed typo
5711	* sim/ucsim/gui.src/Makefile.in: use $(AR)
5712	* src/mcs51/gen.c: cosmetic
5713	* src/SDCC.lex,
5714	* src/stm8/main.c,
5715	* src/z80/main.c: make __smallc a target specific keyword
5716	* src/SDCCicode.c (geniCodeAdd): take generic pointers into account
5717	* src/z80/ralloc2.cc (assign_operands_for_cost): fix warning, remove TABs
5718	* support/regression/fwk/lib/extern1.c,
5719	* support/regression/tests/inline.c: added bug2591 test
5720	* support/regression/tests/bug-2601.c: test with several pointer sizes
5721	* support/regression/tests/bug-2590.c,
5722	* support/regression/tests/smallc.c,
5723	* support/regression/tests/z88dk.c: test __smallc only on stm8 & z80-like
5724
57252017-05-05 Philipp Klaus Krause <pkk AT spth.de>
5726
5727	* support/regression/tests/bug-2188.c,
5728	  support/regression/tests/gcc-torture-execute-930526-1.c:
5729	  Add extern declaration to make test compile where functions aren't inlined.
5730
57312017-05-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5732
5733	* src/stm8/gen.c (genMove_o): fixed bug #2607
5734
57352017-05-04 Philipp Klaus Krause <pkk AT spth.de>
5736
5737	* src/SDCCpeeph.c:
5738	  Be more forgiving about omitted whitespace after comma in peephole matching
5739	  (whitespace handling had become stricter in the fix to #2600).
5740	* src/z80/peep.c:
5741	  Slightly more accurate analysis of register reads, also wrt. whitespaces.
5742	* src/z80/gen.c:
5743	  Unify emitted asm syntax wrt. space after comma.
5744
57452017-05-02 Philipp Klaus Krause <pkk AT spth.de>
5746
5747	* doc/sdccman.lyx:
5748	  Minor fix in list of supported data types.
5749
57502017-05-01 Philipp Klaus Krause <pkk AT spth.de>
5751
5752	* doc/sdccman.lyx:
5753	  Document separation of _Bool/bool and __bit for mcs51 and ds390,
5754	  fix typos,
5755	  automatic version number.
5756
57572017-04-29 Philipp Klaus Krause <pkk AT spth.de>
5758
5759	* src/SDCCmain.c,
5760	  doc/sdccman.lyx,
5761	  .version:
5762	  Resurrect SDCC macro zombie for old SiLabs IDE support.
5763	* sdcc.spec:
5764	  Update list of targets in description.
5765
57662017-04-28 Philipp Klaus Krause <pkk AT spth.de>
5767
5768	* src/SDCCast.c,
5769	  src/SDCCicode.c,
5770	  support/regression/tests/bug-2601.c,
5771	  support/regression/tests/bug3537338.c,
5772	  support/regression/tests/gcc-torture-execute-20021120-1.c:
5773	  Fix bug #2602.
5774	* src/SDCCsymt.h,
5775	  src/SDCCsymt.c:
5776	  Minor improvements for const-correctness.
5777	* src/SDCCpeeph.c:
5778	  Fix bug #2600.
5779
57802017-04-28 Philipp Klaus Krause <pkk AT spth.de>
5781
5782	* support/regression/tests/bug-2590.c:
5783	  Enable for all z80-related backends.
5784	* support/regression/tests/bug-2601.c:
5785	  Disable for ds390.
5786
57872017-04-27 Philipp Klaus Krause <pkk AT spth.de>
5788
5789	* doc/sdccman.lyx:
5790	  Update manual for --std-sdcc99 vs. --std-c11 change.
5791	* device/lib/tlcs90/crt0.s:
5792	  Fix bug #2583.
5793
57942017-04-27 Maarten Brock <sourceforge.brock AT dse.nl>
5795
5796	* src/SDCCsymt.c (newEnumType): fixed bug 2545
5797	* support/regression/tests/enum.c: added test
5798	* support/regression/tests/bug-2590.c: disabled for non-z80
5799
58002017-04-26 Maarten Brock <sourceforge.brock AT dse.nl>
5801
5802	* src/ds390/gen.c (assignBit): disabled to fix a warning
5803	* src/SDCCicode.c (geniCodeLeftShift): fixed bug, replaced TABs
5804	* src/SDCCralloc.hpp (create_cfg): fixed warning, replaced TABs
5805	* src/SDCCsymt.c (computeType): fixed bug #2585
5806	* src/stm8/ralloc2.cc (assign_operands_for_cost): fixed warning, replaced TABs
5807	* src/z80/gen.c (genLeftShift, genRightShift): fixed warning
5808	* src/z80/peep.c (z80SurelyWrites): fixed warning
5809	* support/regression/tests/gcc-torture-execute-20020201-1.c
5810	* support/regression/tests/bug-2585.c: new, added
5811
58122017-04-24 Philipp Klaus Krause <pkk AT spth.de>
5813
5814	* src/SDCCast.c,
5815	  support/regression/tests/bug-2601.c:
5816	  Fix bug #2601.
5817
58182017-04-13 Philipp Klaus Krause <pkk AT spth.de>
5819
5820	* src/z80/peep.c:
5821	  Minor improvement in Z180 support from z88dk patch.
5822
58232017-04-12 Philipp Klaus Krause <pkk AT spth.de>
5824
5825	* support/regression/tests/smallc.c:
5826	  Disable Small-C test for mcs51.
5827
58282017-04-11 Philipp Klaus Krause <pkk AT spth.de>
5829
5830	* src/SDCCast.c,
5831	  support/regression/tests/bug-2596.c:
5832	  Fix bug #2598 by not inlining calls to functions with variable arguments.
5833
58342017-04-10 Philipp Klaus Krause <pkk AT spth.de>
5835
5836	* src/SDCCmem.c:
5837	  Fix bug #2591.
5838	* support/regression/tests/smallc.c:
5839	  Do not try to test __smallc for host.
5840	* src/SDCCsymt.c:
5841	  Always specify signedness for char in debug dumps.
5842	* support/regression/tests/bug-2539.c:
5843	  Test for bug #2539.
5844	* src/z80/peeph-z80.def,
5845	  src/z80/peeph-tlcs90.def,
5846	  src/z80/peeph-r2k.def:
5847	  Fix bug #2597.
5848	* src/SDCCglue.c:
5849	  Fix bug #2574 (patch by Sebastian).
5850	* src/mcs51/gen.c,
5851	  support/regression/tests/gcc-torture-execute-921202-2.c:
5852	  Fix bug #2542.
5853
58542017-04-06 Philipp Klaus Krause <pkk AT spth.de>
5855
5856	* src/SDCCmem.c,
5857	  support/regression/tests/z88dk.c,
5858	  support/regression/tests/smallc.c,
5859	  doc/sdccman.lyx:
5860	  Support for __smallc callees.
5861
58622017-04-06 Philipp Klaus Krause <pkk AT spth.de>
5863
5864	* src/SDCCast.c:
5865	  Fix bug #2570.
5866	* src/SDCCmem.h,
5867	  src/SDCCmem.c,
5868	  src/z80/gen.c:
5869	  Fix bug #2595.
5870
58712017-04-03 Philipp Klaus Krause <pkk AT spth.de>
5872
5873	* doc/sdccman.lyx:
5874	  Update documentation on _Bool / bool support.
5875
58762017-03-17 Philipp Klaus Krause <pkk AT spth.de>
5877
5878	* support/regression/tests/bug3027957.c:
5879	  Disable fixed-address test for host.
5880
58812017-03-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5882
5883	* src/SDCCicode.c (geniCodeAdd): Fix bug #2568 fix
5884
58852017-03-15 Philipp Klaus Krause <pkk AT spth.de>
5886
5887	* src/SDCCast.h,
5888	  src/SDCCast.c,
5889	  src/SDCCcse.c:
5890	  Fix bug #2593.
5891	* support/regression/tests/absolute.c,
5892	  support/regression/tests/bug-2304.c,
5893	  support/regression/tests/bug2686159.c,
5894	  support/regression/tests/bug3027957.c:
5895	  Fix bug #2584.
5896	* src/SDCCicode.c,
5897	  support/regression/tests/bug-2568.c:
5898	  Fix bug #2568.
5899
59002017-03-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5901
5902	* src/SDCCast.c (checkZero): fix bug #2586
5903
59042017-03-14 Philipp Klaus Krause <pkk AT spth.de>
5905
5906	* src/z80/gen.c,
5907	  support/regression/tests/bug-2582.c:
5908	  Fix bug #2582.
5909
59102017-03-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5911
5912	* src/SDCC.y: fixed bug #2587
5913	* support/regression/tests/for.c: change to catch bug #2587
5914	* support/regression/tests/bug-2590.c: disable test on host
5915
59162017-03-13 Philipp Klaus Krause <pkk AT spth.de>
5917
5918	* src/z80/gen.c,
5919	  support/regression/tests/bug-2376.c:
5920	  Fix bug #2376.
5921
59222017-03-08 Philipp Klaus Krause <pkk AT spth.de>
5923
5924	* src/SDCCopt.c,
5925	  support/regression/tests/bug-2590.c:
5926	  Fix bug #2590.
5927
59282017-02-10 Philipp Klaus Krause <pkk AT spth.de>
5929
5930	* src/z80/gen.c:
5931	  Omit some unnecessary register saving on wide shifts.
5932
59332017-02-09 Philipp Klaus Krause <pkk AT spth.de>
5934
5935	* src/z80/gen.c:
5936	  Optimize wide right shifts, part of RFE #524.
5937	* device/lib/rand.c,
5938	  support/regression/tests/rand.c:
5939	  Fix default seed.
5940
59412017-02-08 Philipp Klaus Krause <pkk AT spth.de>
5942
5943	* device/lib/rand.c:
5944	  Replace LCG by xorshift for rand().
5945	* src/z80/gen.c:
5946	  Optimize wide left shifts, part of RFE #524.
5947
59482017-02-04 Philipp Klaus Krause <pkk AT spth.de>
5949
5950	* device/include/pic14/math.h,
5951	  device/include/pic16/math.h,
5952	  device/lib/pic14/libm/Makefile.am,
5953	  device/lib/pic14/libm/Makefile.in,
5954	  device/lib/pic16/libm/Makefile.am,
5955	  device/lib/pic16/libm/Makefile.in,
5956	  src/pic14/gen.c,
5957	  src/pic14/glue.c,
5958	  support/regression/compact-results.py,
5959	  support/regression/ports/pic14/support.c,
5960	  support/regression/tests/absolute.c,
5961	  support/regression/tests/bug1723128.c,
5962	  support/regression/tests/bug2686159.c,
5963	  support/regression/tests/gcc-torture-execute-20021120-1.c,
5964	  support/regression/tests/gcc-torture-execute-pr19606.c:
5965	  Various pic14-related fixes: Patches 00, 01, 02, 04, 05, 07, 09, 11, 14, 15 by Martin Habets via sdcc-devel.
5966
59672017-01-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5968
5969	* src/SDCCast.c (expandInlineFuncs,fixupInline): Fix bug #2559
5970	* support/regression/tests/bug-2559.c: Re-enable test
5971
59722017-01-12 Philipp Klaus Krause <pkk AT spth.de>
5973
5974	* src/stm8/gen.c:
5975	  Improve efficiency of wide left-shifts.
5976
59772017-01-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
5978
5979	* src/SDCCicode.c (geniCodeDerefPtr): Fix bug #2575
5980
59812016-12-29 Philipp Klaus Krause <pkk AT spth.de>
5982
5983	* support/regression/tests/wchar.c:
5984	  Test some more wide character functionality.
5985
59862016-12-28 Maarten Brock <sourceforge.brock AT dse.nl>
5987
5988	* src/SDCCglobl.h,
5989	* src/SDCCmain.c: applied patch #276, adds -MD option, Thanks Anders Dellien
5990
59912016-12-19 Philipp Klaus Krause <pkk AT spth.de>
5992
5993	* device/lib/mbrlen.c,
5994	  support/regression/tests/wchar.c:
5995	  Fix bug #2566.
5996
59972016-12-18 Philipp Klaus Krause <pkk AT spth.de>
5998
5999	* src/stm8/main.c:
6000	  Save space by omitting an unused part of the interrupt table.
6001
60022016-12-17 Philipp Klaus Krause <pkk AT spth.de>
6003
6004	* src/stm8/gen.c,
6005	  src/stm8/peeph.def:
6006	  Minor code improvements, mostly for bit-fields.
6007
60082016-12-12 Philipp Klaus Krause <pkk AT spth.de>
6009
6010	* doc/sdccman.lyx:
6011	  Document STM8 trap handler syntax.
6012
60132016-12-12 Ben Shi <powerstudio1st AT 163 DOT com>
6014
6015	* src/SDCCast.c
6016	* src/SDCCerr.c
6017	  Fix incorrect error messages.
6018
60192016-11-27 Philipp Klaus Krause <pkk AT spth.de>
6020
6021	* device/include/wchar.h,
6022	  device/lib/btowc.c,
6023	  device/lib/incl.mk,
6024	  device/lib/mbrlen.c,
6025	  device/lib/mbstowcs.c,
6026	  device/lib/wcscmp.c,
6027	  device/lib/wcstombs.c,
6028	  device/lib/wctob.c,
6029	  device/lib/wcslen.c,
6030	  support/regression/tests/string.c,
6031	  support/regression/tests/wchar.c:
6032	  Improvements and fixes in wide character library support.
6033
60342016-11-26 Philipp Klaus Krause <pkk AT spth.de>
6035
6036	* device/include/stdlib.h,
6037	  device/lib/incl.mk,
6038	  device/lib/mbstowcs.c,
6039	  device/lib/wcstombs.c,
6040	 .version:
6041	  Multibyte/wide string conversion functions.
6042	* src/stm8/gen.c:
6043	  Optimize comparisons with (partial) 1 and -1.
6044
60452016-11-17 Philipp Klaus Krause <pkk AT spth.de>
6046
6047	* src/SDCClospre.cc,
6048	  src/SDCClospre.hpp:
6049	  More fine-grained handling of volatile to allow more optimizations in lospre.
6050
60512016-11-17 Philipp Klaus Krause <pkk AT spth.de>
6052
6053	* src/stm8/ralloc.c,
6054	  src/z80/ralloc.c:
6055	  Fix some comments on spilling.
6056	* support/regression/tests/bug-2559.c
6057
60582016-11-07 Philipp Klaus Krause <pkk AT spth.de>
6059
6060	* configure.ac,
6061	  configure,
6062	  src/SDCCasm.c,
6063	  src/SDCCasm.h,
6064	  src/SDCCglue.c,
6065	  src/SDCCmain.c,
6066	  src/port.h,
6067	  src/xa51,
6068	  support/regression/ports/xa51,
6069	  support/regression/Makefile.in:
6070	  Kill incomplete, unmaintained xa51 backend.
6071
60722016-11-07 Ben Shi <powerstudio1st AT 163 DOT com>
6073
6074	* src/SDCCicode.c
6075	  Fix a bug in zeror-divider check.
6076
60772016-11-02 Philipp Klaus Krause <pkk AT spth.de>
6078
6079	* device/include/stdbool.h,
6080	  src/ds390/gen.c,
6081	  support/regression/tests/bitopcse.c,
6082	  support/regression/tests/bool.c,
6083	  support/regression/tests/bug2942247.c,
6084	  support/regression/tests/bug3404101.c,
6085	  support/regression/tests/bug3565757.c:
6086	  bool for ds390.
6087
60882016-11-03 Philipp Klaus Krause <pkk AT spth.de>
6089
6090	* src/SDCCicode.c,
6091	  src/SDCCloop.c,
6092	  src/SDCCopt.c,
6093	  src/port.h,
6094	  src/*/main.c:
6095	  Replace all muldiv uses by hasNativeMulFor().
6096
60972016-10-23 Philipp Klaus Krause <pkk AT spth.de>
6098
6099	* src/stm8/gen.c,
6100	  support/regression/tests/bug-2554.c:
6101	  Fix a stack corruption issue in stm8 ! code generation, bug #2554.
6102
61032016-10-23 Ben Shi <powerstudio1st AT 163 DOT com>
6104
6105	* sdas/linksrc/lkbank.c
6106	* sdas/linksrc/lksym.c
6107          Fix a buffer overflow error in revision #9786.
6108
61092016-10-22 Philipp Klaus Krause <pkk AT spth.de>
6110
6111	* support/regression/tests/*.c,
6112	  support/regression/ports/*/spec.mk:
6113	  Cleanup handling of __reentrant in the regression tests, RFE #517.
6114
61152016-10-22 Ben Shi <powerstudio1st AT 163 DOT com>
6116
6117        * sdas/linksrc/lksym.c
6118          Fix a buffer overflow error in previous commit.
6119
61202016-10-21 Philipp Klaus Krause <pkk AT spth.de>
6121
6122	* src/SDCCBBlock.c,
6123	  src/SDCClabel.c:
6124	  Fix a bug in BBlock label handling, allows reenabling jump-to-jump optimization for jump tables.
6125
61262016-10-17 Ben Shi <powerstudio1st AT 163 DOT com>
6127
6128	* sdas/linksrc/lkbank.c
6129	  Fix bug #2549.
6130
61312016-10-11 Philipp Klaus Krause <pkk AT spth.de>
6132
6133	* src/SDCClabel.c:
6134	  Temporarily disable jump-to-jump optimization for jump tables RFE #514, since it causes a hc08/z80 regression.
6135
61362016-10-02 Philipp Klaus Krause <pkk AT spth.de>
6137
6138	* src/SDCCcse.c:
6139	  Optimize out negation by inverting jump condition, part of RFE #516.
6140
61412016-10-02 Philipp Klaus Krause <pkk AT spth.de>
6142
6143	* src/SDCClabel.c,
6144	  src/SDCCset.h,
6145	  src/SDCCset.c:
6146	  Implement jump-to-jump optimization for jump tables RFE #514.
6147	* src/SDCCcse.c:
6148	  Optimize bitwise and of _Bool and comparison results, RFE #513.
6149
61502016-09-25 Maarten Brock <sourceforge.brock AT dse.nl>
6151
6152	* src/mcs51/gen.c (shiftLLong): support sizes 1,2,4,8,
6153	  refactored genlshOne, genlshTwo, genlshFour into genlshFixed,
6154	  (genLeftShiftLiteral): support long long
6155
61562016-09-24 Philipp Klaus Krause <pkk AT spth.de>
6157
6158	* src/SDCCast.c,
6159	  support/regression/tests/bug-2548.c,
6160	  support/regression/tests/bug-2551.c:
6161	  Fix bugs #2548, #2551 by disabling a broken AST optimization.
6162
61632016-09-19 Ben Shi <powerstudio1st AT 163 DOT com>
6164
6165	* src/stm8/gen.c
6166	  Fix a bug in bitwise-and operation (genAnd()).
6167
61682016-09-17 Maarten Brock <sourceforge.brock AT dse.nl>
6169
6170	* config.vcxproj,
6171	* src/sdcc.vcxproj,
6172	* src/sdcc.vcxproj.filters: moved SDCC.lex and SDCC.y to config project
6173	* src/mcs51/gen.c (gencjneshort): proper support for long long
6174	* src/mcs51/peeph.def: restart 3.b
6175	* src/SDCCsymt.c (initCSupport): MSVC doesn't support casting compound lit
6176	* src/SDCCval.c (csdOfVal): we still use MSVC 2010, no mid-code declarations
6177	* support/regression/tests/bug-2205.c: removed unused disabled warning
6178	* support/regression/tests/gcc-torture-execute-20020506-1.c: intermediate
6179	  functions should not be named test*
6180	* support/regression/tests/gcc-torture-execute-961122-1.c: fixed no-return
6181	  warning
6182
61832016-09-17 Ben Shi <powerstudio1st AT 163 DOT com>
6184
6185	* device/lib/isinf.c
6186	* device/lib/isnan.c
6187	  Improve comapabililty and efficiency.
6188
61892016-09-15 Ben Shi <powerstudio1st AT 163 DOT com>
6190
6191	* device/lib/isinf.c
6192	* device/lib/isnan.c
6193	  Improve compatibility.
6194
61952016-09-14 Maarten Brock <sourceforge.brock AT dse.nl>
6196
6197	* src/mcs51/gen.c (isLiteralBit): fixed for long long,
6198	  (genReceive):	fixed stack smashing bug
6199	* support/regression/tests/test-p99-conformance.c: decreased restrict_buffer
6200
62012016-09-12 Philipp Klaus Krause <pkk AT spth.de>
6202
6203	* device/include/stdbool.h,
6204	  src/mcs51/gen.c:
6205	  Standard-compliant _Bool for mcs51.
6206
62072016-09-08 Philipp Klaus Krause <pkk AT spth.de>
6208
6209	* device/include/stdint.h:
6210	  Enable C99 typedefs for 64-bit types.
6211
62122016-09-07 Ben Shi <powerstudio1st AT 163 DOT com>
6213
6214	* src/mcs51/gen.c
6215	  Improve longlong compatibility of mcs-51 on 32-bit hosts.
6216
62172016-09-03 Philipp Klaus Krause <pkk AT spth.de>
6218
6219	* src/mcs51/gen.c:
6220	  Fixes for mcs51 long long on 32-bit hosts.
6221
62222016-08-30 Philipp Klaus Krause <pkk AT spth.de>
6223
6224	* src/mcs51/gen.c:
6225	  Fixes for mcs51 long long on 32-bit hosts.
6226
62272016-08-28 Philipp Klaus Krause <pkk AT spth.de>
6228
6229	* support/regression/tests/gcc-torture-execute-20020506-1.c:
6230	  Disable test for ds390 that accidentially got enabled when enabled for mcs51.
6231
62322016-08-26 Philipp Klaus Krause <pkk AT spth.de>
6233
6234	* src/mcs51/peep.c,
6235	  support/regression/tests/bug-2477.c,
6236	  support/regression/tests/gcc-torture-execute-20001031-1.c,
6237	  support/regression/tests/gcc-torture-execute-20020506-1.c,
6238	  support/regression/tests/gcc-torture-execute-20060127-1.c,
6239	  support/regression/tests/gcc-torture-execute-941015-1.c,
6240	  support/regression/tests/gcc-torture-execute-950512-1.c,
6241	  support/regression/tests/gcc-torture-execute-950612-1.c,
6242	  support/regression/tests/gcc-torture-execute-960402-1.c,
6243	  support/regression/tests/gcc-torture-execute-960801-1.c,
6244	  support/regression/tests/gcc-torture-execute-20000717-2.c,
6245	  support/regression/tests/gcc-torture-execute-20020402-3.c,
6246	  support/regression/tests/gcc-torture-execute-20050111-1.c,
6247	  support/regression/tests/gcc-torture-execute-950704-1.c:
6248	  Fix mcs51 peephole handling of long long parameters.
6249	* support/regression/tests/test-p99-conformance.c:
6250	  Disable test for older GCC, where it fails.
6251
62522016-08-25 Philipp Klaus Krause <pkk AT spth.de>
6253
6254	* src/mcs51/gen.c,
6255	  support/regression/tests/gcc-torture-execute-20020508-?.c:
6256	  Fix long long right shift for mcs51.
6257
62582016-08-25 Philipp Klaus Krause <pkk AT spth.de>
6259
6260	* device/lib/_strchr.c:
6261	  Explicitly cast away const to silence a warning.
6262	* support/regression/tests/gcc-torture-execute-20020508-?.c:
6263	  Disable some failing long long tests for mcs51.
6264	* src/mcs51/gen.c:
6265	  Fix pushing of long long received parameters for mcs51.
6266
62672016-08-24 Ben Shi <powerstudio1st AT 163 DOT com>
6268
6269	* device/include/math.h
6270	* device/lib/Makefile.in
6271	* device/lib/incl.mk
6272	* device/lib/isinf.c
6273	* device/lib/isnan.c
6274	* device/lib/make51lib.bat
6275	  Support of new library functions isnan() and isinf().
6276	* src/SDCCval.c
6277	* device/lib/_fsdiv.c
6278	  Make float division more compitable with inf and nan results.
6279	* src/SDCCast.c
6280	* src/SDCCerr.c
6281	  Change zero-div from error to warning level.
6282	* support/regression/tests/bug-2516.c
6283	  Add a new test case for inf and nan.
6284
62852016-08-23 Philipp Klaus Krause <pkk AT spth.de>
6286
6287	* src/mcs51/gen.h,
6288	  src/mcs51/peep.c,
6289	  support/regression/tests/gcc-torture-execute-20000314-2.c,
6290	  support/regression/tests/gcc-torture-execute-pr42269-2.c,
6291	  support/regression/tests/gcc-torture-execute-20060110-2.c,
6292	  support/regression/tests/gcc-torture-execute-20001031-1.c,
6293	  support/regression/tests/gcc-torture-execute-20011126-1.c,
6294	  support/regression/tests/gcc-torture-execute-20020201-1.c,
6295	  support/regression/tests/gcc-torture-execute-20020219-1.c,
6296	  support/regression/tests/gcc-torture-execute-20020402-3.c,
6297	  support/regression/tests/gcc-torture-execute-20020506-1.c,
6298	  support/regression/tests/gcc-torture-execute-20020508-1.c,
6299	  support/regression/tests/gcc-torture-execute-20020508-2.c,
6300	  support/regression/tests/gcc-torture-execute-20020508-3.c,
6301	  support/regression/tests/gcc-torture-execute-20030307-1.c,
6302	  support/regression/tests/gcc-torture-execute-20050104-1.c,
6303	  support/regression/tests/gcc-torture-execute-20050111-1.c,
6304	  support/regression/tests/gcc-torture-execute-941015-1.c,
6305	  support/regression/tests/gcc-torture-execute-950503-1.c:
6306	  long long fix for deadMove() on ret.
6307
63082016-08-22 Philipp Klaus Krause <pkk AT spth.de>
6309
6310	* src/SDCCsymt.c,
6311	  src/mcs51/gen.c,
6312	  support/regression/tests/gcc-torture-execute-961122-1.c,
6313	  support/regression/tests/gcc-torture-execute-961206-1.c,
6314	  support/regression/tests/gcc-torture-execute-991016-1.c,
6315	  support/regression/tests/gcc-torture-execute-991216-1.c,
6316	  support/regression/tests/gcc-torture-execute-991216-2.c,
6317	  support/regression/tests/gcc-torture-execute-pr20187-1.c,
6318	  support/regression/tests/gcc-torture-execute-pr40057.c,
6319	  support/regression/tests/gcc-torture-execute-pr42269-2.c,
6320	  support/regression/tests/gcc-torture-execute-pr42544.c,
6321	  support/regression/tests/test-p99-conformance.c:
6322	  support/regression/tests/gcc-torture-execute-20000121-1.c,
6323	  support/regression/tests/gcc-torture-execute-20000314-2.c,
6324	  support/regression/tests/gcc-torture-execute-20000412-2.c,
6325	  support/regression/tests/gcc-torture-execute-20000523-1.c,
6326	  support/regression/tests/gcc-torture-execute-20000717-2.c,
6327	  support/regression/tests/gcc-torture-execute-20001112-1.c,
6328	  support/regression/tests/gcc-torture-execute-20001221-1.c,
6329	  support/regression/tests/gcc-torture-execute-20060110-2.c,
6330	  support/regression/tests/gcc-torture-execute-20060127-1.c,
6331	  support/regression/tests/gcc-torture-execute-20071213-1.c,
6332	  support/regression/tests/gcc-torture-execute-920829-1.c,
6333	  support/regression/tests/gcc-torture-execute-921029-1.c,
6334	  support/regression/tests/gcc-torture-execute-921202-2.c,
6335	  support/regression/tests/gcc-torture-execute-930111-1.c:
6336	  More long long support for mcs51.
6337
63382016-08-21 Philipp Klaus Krause <pkk AT spth.de>
6339
6340	* src/mcs51/gen.c,
6341	  src/mcs51/gen.h,
6342	  src/mcs51/ralloc.c,
6343	  The basics of long long support for mcs51.
6344
63452016-08-20 Philipp Klaus Krause <pkk AT spth.de>
6346
6347	* doc/sdccman.lyx:
6348	  Fix double underscores in manual.
6349
63502016-08-19 Philipp Klaus Krause <pkk AT spth.de>
6351
6352	* support/regression/tests/test-p99-conformance.c:
6353	  Enable a test for newer GCC, comment on other GCC issues.
6354
63552016-08-18 Philipp Klaus Krause <pkk AT spth.de>
6356
6357	* src/SDCC.y,
6358	  src/SDCCerr.h,
6359	  src/SDCCerr.c,
6360	  doc/sdccman.lyx,
6361	  support/regression/tests/for.c,
6362	  test-p99-conformance.c:
6363	  RFE #165: C99 compliance: for (int i=0; ...
6364
63652016-08-17 Philipp Klaus Krause <pkk AT spth.de>
6366
6367	* support/regression/tests/test-p99-conformance.c:
6368	  Disable a subtest for host, since it fails on older GCC, disable a subtest for backends that don't have long long.
6369
63702016-08-14 Philipp Klaus Krause <pkk AT spth.de>
6371
6372	* support/regression/tests/test-p99-conformance.c,
6373	  support/regression/fwk/lib/extern1.c:
6374	  Enable inlining test for host.
6375
63762016-08-14 Philipp Klaus Krause <pkk AT spth.de>
6377
6378	* support/regression/tests/test-p99-conformance.c:
6379	  Document SDCC bug correspondance to P99 conformance tests.
6380
63812016-08-13 Philipp Klaus Krause <pkk AT spth.de>
6382
6383	* support/regression/tests/test-p99-conformance.c:
6384	  Some P99 conformance tests.
6385
63862016-08-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6387
6388	* sim/ucsim/sim.src/mem.cc: rewrote some of the memory cell classes
6389	  to work properly on big endian architectures
6390
63912016-08-10 Ben Shi <powerstudio1st AT 163 DOT com>
6392
6393	* sim/ucsim/charscl.h
6394	  Fix the failure of building ucsim on MacOS.
6395	* support/regression/tests/gcc-torture-execute-string-opt-18.c
6396	* support/regression/tests/string.c
6397	  Disable several tests on MacOS.
6398
63992016-08-10 Philipp Klaus Krause <pkk AT spth.de>
6400
6401	* device/include/string.h,
6402	  device/lib/tlcs90/Makefile.in,
6403	  device/lib/tlcs90/memmove.s:
6404	  pop af correctness for tlcs90.
6405
64062016-08-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6407
6408	* support/regression/get_ticks.py: parse the byte count more robustly
6409	  (buffering on stderr vs stdout sometimes jumbling text)
6410
64112016-08-05 Erik Petrich <epetrich AT ivorytower.normna.ok.us>
6412
6413	* src/SDCCcse.c (ifxOptimize): fixed bug #2484
6414	* src/z80/gen.c (ld_cost): fixed bug #2399
6415
64162016-08-04 Erik Petrich <epetrich AT ivorytower.normna.ok.us>
6417
6418	* src/SDCCast.c (decorateTree, optimizeCompare): fixed bug #2503
6419	  and an unreported bug similar to bug #2529
6420	* support/regression/tests/bug-2503: added test
6421	* src/SDCClospre.hpp (forward_lospre_assignment): fixed bug #2510
6422
64232016-08-03 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6424
6425	* src/SDCCcflow.c (eBBSuccessors),
6426	* src/SDCCloop.c (addPostLoopBlock): fixed bug #2453
6427	* support/regression/tests/bug-2453: added test
6428
64292016-08-03 Philipp Klaus Krause <pkk AT spth.de>
6430
6431	* device/lib/tlcs90/setjmp.s,
6432	  device/lib/tlcs90/memmove.s:
6433	  Avoid messing up interrupt flags via pop af.
6434
64352016-08-02 Philipp Klaus Krause <pkk AT spth.de>
6436
6437	* device/lib/_strstr.c:
6438	  Fix a warning.
6439	* src/SDCCmain.c:
6440	  Fix usage info, patch #274.
6441	* src/SDCCtree_dec.hpp:
6442	  Fix isolation of redundant nodes in the tree-decomposition.
6443
64442016-08-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6445
6446	* src/SDCCcse.c (cseBBlock): Recompute data flow if any outgoing
6447	  expressions have been changed (fixed bug #2495)
6448	* src/hc08/gen.c (genCopy),
6449	* src/hc08/ralloc.c (packPointerOp): fixed bug #2357
6450	* support/regression/tests/bug-2357.c: re-enabled test for hc08/s08
6451
64522016-08-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6453
6454	* src/stm8/gen.c (regFree): Y is not free when using extended stack
6455
64562016-07-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6457
6458	* src/hc08/gen.c (genMinus): mark A as modified for reverse subtraction
6459	* src/z80/gen.c (genPointerGet,genUnpackBits): preserve pointer
6460	  register pair if not dead
6461
64622016-07-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6463
6464	* sim/ucsim/fwio.cc: try defining WINVER instead of _WIN32_WINNT
6465	* sim/ucsim/cmd.src/Makefile.in,
6466	* sim/ucsim/gui.src/Makefile.in,
6467	* sim/ucsim/sim.src/Makefile.in,
6468	* sim/ucsim/main_in.mk: omit -D option to ar, not supported by all ar
6469
64702016-07-29 Maarten Brock <sourceforge.brock AT dse.nl>
6471
6472	* SDCC.props: added ExecutablePath
6473	* src/ds390/gen.c,
6474	* src/SDCCutil.c,
6475	* src/SDCCval.c,
6476	* src/stm8/gen.c,
6477	* src/stm8/main.c,
6478	* src/z80/peep.c: fixed warnings
6479
64802016-07-29 Philipp Klaus Krause <pkk AT spth.de>
6481
6482	* src/SDCCicode.c:
6483	  Enable an optimization that was blocked on bug #2450.
6484	* src/SDCCtree_dec.hpp,
6485	  src/SDCCralloc.hpp:
6486	  Fix bug #2467 (fix previously was blocked on bug #2450).
6487	* src/z80/peeph-tlcs90.def:
6488	  Remove leftover z80 peepholes that break on tlcs90.
6489
64902016-07-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6491
6492	* src/SDCCast.c (processBlockVars): fix bug #2450
6493	* support/regression/tests/inline.c: add test for bug #2450
6494	* src/hc08/gen.c (aopForSym): remove work-around
6495
64962016-07-29 Philipp Klaus Krause <pkk AT spth.de>
6497
6498	* support/regression/tests/bug-2529.c
6499	  Regression test for bug #2517.
6500
65012016-07-29 Ben Shi <powerstudio1st AT 163 DOT com>
6502
6503	* sim/ucsim/cmd.src/cmd_exec.cc
6504	* sim/ucsim/cmd.src/cmd_get.cc
6505	* sim/ucsim/cmd.src/command.cc
6506	* sim/ucsim/fuio.cc
6507	* sim/ucsim/s51.src/interrupt.cc
6508	* sim/ucsim/s51.src/uc51.cc
6509	* sim/ucsim/sim.src/mem.cc
6510	* sim/ucsim/stm8.src/itc.cc
6511	* sim/ucsim/utils.h
6512	  Fix build failures on cygwin.
6513	* src/SDCCicode.c
6514	* src/SDCCicode.h
6515	  Fix bug #2517.
6516
65172016-07-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6518
6519	* sim/ucsim/fwio.cc: added _WIN32_WINNT def for GetConsoleWindow()
6520	* sim/ucsim/fio.cc: handle case S_IRGRP and S_IROTH not defined
6521	* sim/ucsim/doc/Makefile.in: copy *.svg files instead of *.gif
6522
65232016-07-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6524
6525	* src/SDCCast.c (decorateType): fixed bug #2529
6526
65272016-07-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6528
6529	* device/lib/expf.c: ensure exponent not random before normalization
6530
65312016-07-27 Philipp Klaus Krause <pkk AT spth.de>
6532
6533	* support/regression/tests/bug-2385.c:
6534	  Disable a test for tlcs90, so all tests compile for tlcs90.
6535
65362016-07-26 Daniel Drotos <drdani AT mazsola.iit.uni-miskolc.hu>
6537
6538	* sim/ucsim/.version, sim/ucsim/Makefile.in, sim/ucsim/NEWS,
6539	  sim/ucsim/README, sim/ucsim/TODO, sim/ucsim/app.cc,
6540	  sim/ucsim/appcl.h, sim/ucsim/avr.src/Makefile.in,
6541	  sim/ucsim/avr.src/avr.cc, sim/ucsim/avr.src/avrcl.h,
6542	  sim/ucsim/avr.src/savr.cc, sim/ucsim/c.sh, sim/ucsim/chars.cc,
6543	  sim/ucsim/charscl.h, sim/ucsim/cmd.src/Makefile.in,
6544	  sim/ucsim/cmd.src/bp.cc, sim/ucsim/cmd.src/bpcl.h,
6545	  sim/ucsim/cmd.src/cmd_bp.cc, sim/ucsim/cmd.src/cmd_bpcl.h,
6546	  sim/ucsim/cmd.src/cmd_conf.cc, sim/ucsim/cmd.src/cmd_confcl.h,
6547	  sim/ucsim/cmd.src/cmd_exec.cc, sim/ucsim/cmd.src/cmd_execcl.h,
6548	  sim/ucsim/cmd.src/cmd_get.cc, sim/ucsim/cmd.src/cmd_getcl.h,
6549	  sim/ucsim/cmd.src/cmd_gui.cc, sim/ucsim/cmd.src/cmd_guicl.h,
6550	  sim/ucsim/cmd.src/cmd_info.cc, sim/ucsim/cmd.src/cmd_infocl.h,
6551	  sim/ucsim/cmd.src/cmd_mem.cc, sim/ucsim/cmd.src/cmd_memcl.h,
6552	  sim/ucsim/cmd.src/cmd_set.cc, sim/ucsim/cmd.src/cmd_setcl.h,
6553	  sim/ucsim/cmd.src/cmd_show.cc, sim/ucsim/cmd.src/cmd_showcl.h,
6554	  sim/ucsim/cmd.src/cmd_stat.cc, sim/ucsim/cmd.src/cmd_statcl.h,
6555	  sim/ucsim/cmd.src/cmd_timer.cc, sim/ucsim/cmd.src/cmd_timercl.h,
6556	  sim/ucsim/cmd.src/cmd_uc.cc, sim/ucsim/cmd.src/cmd_uccl.h,
6557	  sim/ucsim/cmd.src/cmdconf.cc, sim/ucsim/cmd.src/cmdconfcl.h,
6558	  sim/ucsim/cmd.src/cmdgui.cc, sim/ucsim/cmd.src/cmdguicl.h,
6559	  sim/ucsim/cmd.src/cmdlex.l, sim/ucsim/cmd.src/cmdmem.cc,
6560	  sim/ucsim/cmd.src/cmdmemcl.h, sim/ucsim/cmd.src/cmdpars.y,
6561	  sim/ucsim/cmd.src/cmdset.cc, sim/ucsim/cmd.src/cmdsetcl.h,
6562	  sim/ucsim/cmd.src/cmdstat.cc, sim/ucsim/cmd.src/cmdstatcl.h,
6563	  sim/ucsim/cmd.src/cmduc.cc, sim/ucsim/cmd.src/cmduccl.h,
6564	  sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/cmdutil.h,
6565	  sim/ucsim/cmd.src/command.cc, sim/ucsim/cmd.src/commandcl.h,
6566	  sim/ucsim/cmd.src/get.cc, sim/ucsim/cmd.src/getcl.h,
6567	  sim/ucsim/cmd.src/info.cc, sim/ucsim/cmd.src/infocl.h,
6568	  sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/newcmdcl.h,
6569	  sim/ucsim/cmd.src/newcmdposix.cc,
6570	  sim/ucsim/cmd.src/newcmdposixcl.h, sim/ucsim/cmd.src/set.cc,
6571	  sim/ucsim/cmd.src/setcl.h, sim/ucsim/cmd.src/show.cc,
6572	  sim/ucsim/cmd.src/showcl.h, sim/ucsim/cmd.src/timer.cc,
6573	  sim/ucsim/cmd.src/timercl.h, sim/ucsim/conf, sim/ucsim/configure,
6574	  sim/ucsim/configure.ac, sim/ucsim/ddconfig_in.h,
6575	  sim/ucsim/doc/Makefile.in, sim/ucsim/doc/analyzer.html,
6576	  sim/ucsim/doc/burst.gif, sim/ucsim/doc/chip.gif,
6577	  sim/ucsim/doc/chip.svg, sim/ucsim/doc/cmd.html,
6578	  sim/ucsim/doc/cmd.txt, sim/ucsim/doc/cmd_bp.html,
6579	  sim/ucsim/doc/cmd_dump.html, sim/ucsim/doc/cmd_exec.html,
6580	  sim/ucsim/doc/cmd_general.html, sim/ucsim/doc/cmd_memory.html,
6581	  sim/ucsim/doc/cmd_removed.html, sim/ucsim/doc/cmd_set.html,
6582	  sim/ucsim/doc/commref.html, sim/ucsim/doc/conf.mk,
6583	  sim/ucsim/doc/cpu-mem.gif, sim/ucsim/doc/cpu-mem.jpg,
6584	  sim/ucsim/doc/cpu-mem.svg, sim/ucsim/doc/cpu.gif,
6585	  sim/ucsim/doc/cpu.html, sim/ucsim/doc/cpu_types.html,
6586	  sim/ucsim/doc/decoded.gif, sim/ucsim/doc/decoded.jpg,
6587	  sim/ucsim/doc/decoded.svg, sim/ucsim/doc/index.html,
6588	  sim/ucsim/doc/interrupt.gif, sim/ucsim/doc/interrupt.html,
6589	  sim/ucsim/doc/invoke.html, sim/ucsim/doc/memory.html,
6590	  sim/ucsim/doc/mulcons.html, sim/ucsim/doc/new.gif,
6591	  sim/ucsim/doc/news.html, sim/ucsim/doc/obsolete.html,
6592	  sim/ucsim/doc/serial.html, sim/ucsim/doc/serial1.gif,
6593	  sim/ucsim/doc/serial1.svg, sim/ucsim/doc/serial2.gif,
6594	  sim/ucsim/doc/serial2.svg, sim/ucsim/doc/share-chip.gif,
6595	  sim/ucsim/doc/share-chip.svg, sim/ucsim/doc/simif.html,
6596	  sim/ucsim/doc/syntax.html, sim/ucsim/doc/term_cpuopt.gif,
6597	  sim/ucsim/doc/term_cpuopt.html, sim/ucsim/doc/timers.gif,
6598	  sim/ucsim/doc/timers.html, sim/ucsim/doc/uCsim.txt,
6599	  sim/ucsim/doc/wins.gif, sim/ucsim/doc/wins.html,
6600	  sim/ucsim/error.cc, sim/ucsim/errorcl.h, sim/ucsim/eventcl.h,
6601	  sim/ucsim/example, sim/ucsim/example/Makefile,
6602	  sim/ucsim/example/config.cmd, sim/ucsim/example/run.cmd,
6603	  sim/ucsim/example/simif.c, sim/ucsim/example/simif.sh,
6604	  sim/ucsim/example/simif_fin.txt, sim/ucsim/fio.cc,
6605	  sim/ucsim/fiocl.h, sim/ucsim/ftest.cc, sim/ucsim/fuio.cc,
6606	  sim/ucsim/fuiocl.h, sim/ucsim/fwio.cc, sim/ucsim/fwiocl.h,
6607	  sim/ucsim/globals.cc, sim/ucsim/gstring.cc, sim/ucsim/gstring.h,
6608	  sim/ucsim/gstring_LICENSE, sim/ucsim/gstring_REAME,
6609	  sim/ucsim/gstring_append.cc, sim/ucsim/gstring_basic.cc,
6610	  sim/ucsim/gstring_copyright.html, sim/ucsim/gstring_explode.cc,
6611	  sim/ucsim/gui.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in,
6612	  sim/ucsim/hc08.src/hc08.cc, sim/ucsim/hc08.src/hc08cl.h,
6613	  sim/ucsim/hc08.src/hc08mac.h, sim/ucsim/hc08.src/regshc08.h,
6614	  sim/ucsim/hc08.src/shc08.cc, sim/ucsim/hc08.src/simhc08.cc,
6615	  sim/ucsim/main_in.mk, sim/ucsim/option.cc, sim/ucsim/optioncl.h,
6616	  sim/ucsim/p.sh, sim/ucsim/packages_in.mk, sim/ucsim/pobj.cc,
6617	  sim/ucsim/pobjcl.h, sim/ucsim/pobjt.h, sim/ucsim/put(c),
6618	  sim/ucsim/s51.src/Makefile.in, sim/ucsim/s51.src/arith.cc,
6619	  sim/ucsim/s51.src/bit.cc, sim/ucsim/s51.src/inc.cc,
6620	  sim/ucsim/s51.src/interrupt.cc, sim/ucsim/s51.src/interruptcl.h,
6621	  sim/ucsim/s51.src/jmp.cc, sim/ucsim/s51.src/logic.cc,
6622	  sim/ucsim/s51.src/mov.cc, sim/ucsim/s51.src/pca.cc,
6623	  sim/ucsim/s51.src/pcacl.h, sim/ucsim/s51.src/port.cc,
6624	  sim/ucsim/s51.src/portcl.h, sim/ucsim/s51.src/s51.cc,
6625	  sim/ucsim/s51.src/serial.cc, sim/ucsim/s51.src/serialcl.h,
6626	  sim/ucsim/s51.src/sim51.cc, sim/ucsim/s51.src/timer0.cc,
6627	  sim/ucsim/s51.src/timer0cl.h, sim/ucsim/s51.src/timer1.cc,
6628	  sim/ucsim/s51.src/timer2.cc, sim/ucsim/s51.src/timer2cl.h,
6629	  sim/ucsim/s51.src/types51.h, sim/ucsim/s51.src/uc251.cc,
6630	  sim/ucsim/s51.src/uc390.cc, sim/ucsim/s51.src/uc390cl.h,
6631	  sim/ucsim/s51.src/uc390hw.cc, sim/ucsim/s51.src/uc51.cc,
6632	  sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/uc51r.cc,
6633	  sim/ucsim/s51.src/uc52.cc, sim/ucsim/s51.src/uc89c51r.cc,
6634	  sim/ucsim/s51.src/uc89c51rcl.h, sim/ucsim/s51.src/wdt.cc,
6635	  sim/ucsim/sim.src/Makefile.in, sim/ucsim/sim.src/arg.cc,
6636	  sim/ucsim/sim.src/argcl.h, sim/ucsim/sim.src/brk.cc,
6637	  sim/ucsim/sim.src/brkcl.h, sim/ucsim/sim.src/hw.cc,
6638	  sim/ucsim/sim.src/hwcl.h, sim/ucsim/sim.src/itsrc.cc,
6639	  sim/ucsim/sim.src/itsrccl.h, sim/ucsim/sim.src/mem.cc,
6640	  sim/ucsim/sim.src/memcl.h, sim/ucsim/sim.src/obsolete.cc,
6641	  sim/ucsim/sim.src/obsolete.h, sim/ucsim/sim.src/sim.cc,
6642	  sim/ucsim/sim.src/simcl.h, sim/ucsim/sim.src/simif.cc,
6643	  sim/ucsim/sim.src/simifcl.h, sim/ucsim/sim.src/stack.cc,
6644	  sim/ucsim/sim.src/stackcl.h, sim/ucsim/sim.src/test_mem_speed.cc,
6645	  sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
6646	  sim/ucsim/sim.src/var.cc, sim/ucsim/sim.src/varcl.h,
6647	  sim/ucsim/st7.src/Makefile.in, sim/ucsim/st7.src/glob.cc,
6648	  sim/ucsim/st7.src/regsst7.h, sim/ucsim/st7.src/sst7.cc,
6649	  sim/ucsim/st7.src/st7.cc, sim/ucsim/st7.src/st7cl.h,
6650	  sim/ucsim/stm8.src/Makefile.in, sim/ucsim/stm8.src/glob.cc,
6651	  sim/ucsim/stm8.src/glob.h, sim/ucsim/stm8.src/inst.cc,
6652	  sim/ucsim/stm8.src/instcl.h, sim/ucsim/stm8.src/itc.cc,
6653	  sim/ucsim/stm8.src/itccl.h, sim/ucsim/stm8.src/regsstm8.h,
6654	  sim/ucsim/stm8.src/rst.cc, sim/ucsim/stm8.src/rstcl.h,
6655	  sim/ucsim/stm8.src/serial.cc, sim/ucsim/stm8.src/serialcl.h,
6656	  sim/ucsim/stm8.src/simstm8.cc, sim/ucsim/stm8.src/simstm8cl.h,
6657	  sim/ucsim/stm8.src/sstm8.cc, sim/ucsim/stm8.src/stm8.cc,
6658	  sim/ucsim/stm8.src/stm8cl.h, sim/ucsim/stm8.src/stm8mac.h,
6659	  sim/ucsim/stm8.src/test, sim/ucsim/stm8.src/test/Makefile,
6660	  sim/ucsim/stm8.src/test/conf.cmd, sim/ucsim/stm8.src/test/s0.c,
6661	  sim/ucsim/stm8.src/test/s1.c, sim/ucsim/stm8.src/test/s1.mk,
6662	  sim/ucsim/stm8.src/test/s2.c, sim/ucsim/stm8.src/test/s2.mk,
6663	  sim/ucsim/stm8.src/test/s3.c, sim/ucsim/stm8.src/test/s3.mk,
6664	  sim/ucsim/stm8.src/test/sdcc.mk, sim/ucsim/stm8.src/test/stm8.h,
6665	  sim/ucsim/stm8.src/test/t1.c, sim/ucsim/stm8.src/test/t1.mk,
6666	  sim/ucsim/stm8.src/test/t2.c, sim/ucsim/stm8.src/test/t2.mk,
6667	  sim/ucsim/stm8.src/test/t3.c, sim/ucsim/stm8.src/test/t3.mk,
6668	  sim/ucsim/stm8.src/test/t4.c, sim/ucsim/stm8.src/test/t4.mk,
6669	  sim/ucsim/stm8.src/timer.cc, sim/ucsim/stm8.src/timercl.h,
6670	  sim/ucsim/stypes.h, sim/ucsim/tlcs.src, sim/ucsim/tlcs.src/(c).1,
6671	  sim/ucsim/tlcs.src/Makefile.in, sim/ucsim/tlcs.src/clean.mk,
6672	  sim/ucsim/tlcs.src/conf.mk, sim/ucsim/tlcs.src/glob.cc,
6673	  sim/ucsim/tlcs.src/glob.h, sim/ucsim/tlcs.src/inst_arith.cc,
6674	  sim/ucsim/tlcs.src/inst_bit.cc, sim/ucsim/tlcs.src/inst_block.cc,
6675	  sim/ucsim/tlcs.src/inst_cpu_others.cc,
6676	  sim/ucsim/tlcs.src/inst_jump.cc, sim/ucsim/tlcs.src/inst_move.cc,
6677	  sim/ucsim/tlcs.src/inst_rot_sh.cc,
6678	  sim/ucsim/tlcs.src/mulibyte_instructions.txt,
6679	  sim/ucsim/tlcs.src/regression.txt, sim/ucsim/tlcs.src/simtlcs.cc,
6680	  sim/ucsim/tlcs.src/simtlcscl.h, sim/ucsim/tlcs.src/stlcs.cc,
6681	  sim/ucsim/tlcs.src/test, sim/ucsim/tlcs.src/test/Makefile,
6682	  sim/ucsim/tlcs.src/test/b2385.c,
6683	  sim/ucsim/tlcs.src/test/b2385.mk, sim/ucsim/tlcs.src/test/c,
6684	  sim/ucsim/tlcs.src/test/conf.cmd,
6685	  sim/ucsim/tlcs.src/test/dummy.h, sim/ucsim/tlcs.src/test/run.cmd,
6686	  sim/ucsim/tlcs.src/test/run.sh, sim/ucsim/tlcs.src/test/sdcc.mk,
6687	  sim/ucsim/tlcs.src/test/t0.c, sim/ucsim/tlcs.src/test/t0.mk,
6688	  sim/ucsim/tlcs.src/test/t1.c, sim/ucsim/tlcs.src/test/t1.mk,
6689	  sim/ucsim/tlcs.src/test/t2.c, sim/ucsim/tlcs.src/test/t2.mk,
6690	  sim/ucsim/tlcs.src/test/t3.c, sim/ucsim/tlcs.src/test/t3.mk,
6691	  sim/ucsim/tlcs.src/tlcs.cc, sim/ucsim/tlcs.src/tlcscl.h,
6692	  sim/ucsim/ucsim.cc, sim/ucsim/utils.cc, sim/ucsim/utils.h,
6693	  sim/ucsim/xa.src/Makefile.in, sim/ucsim/xa.src/glob.cc,
6694	  sim/ucsim/xa.src/glob.h, sim/ucsim/xa.src/regsxa.h,
6695	  sim/ucsim/xa.src/sxa.cc, sim/ucsim/xa.src/xa.cc,
6696	  sim/ucsim/xa.src/xacl.h, sim/ucsim/z80.src/Makefile.in,
6697	  sim/ucsim/z80.src/inst_r2k.cc, sim/ucsim/z80.src/lr35902.cc,
6698	  sim/ucsim/z80.src/lr35902cl.h, sim/ucsim/z80.src/r2k.cc,
6699	  sim/ucsim/z80.src/r2kcl.h, sim/ucsim/z80.src/regsz80.h,
6700	  sim/ucsim/z80.src/sz80.cc, sim/ucsim/z80.src/test,
6701	  sim/ucsim/z80.src/test/Makefile, sim/ucsim/z80.src/test/c,
6702	  sim/ucsim/z80.src/test/conf.cmd, sim/ucsim/z80.src/test/dummy.h,
6703	  sim/ucsim/z80.src/test/run.cmd, sim/ucsim/z80.src/test/run.sh,
6704	  sim/ucsim/z80.src/test/sdcc.mk, sim/ucsim/z80.src/test/t0.c,
6705	  sim/ucsim/z80.src/test/t0.mk, sim/ucsim/z80.src/test/t1.c,
6706	  sim/ucsim/z80.src/test/t1.mk, sim/ucsim/z80.src/test/t2.c,
6707	  sim/ucsim/z80.src/test/t2.mk, sim/ucsim/z80.src/z80.cc,
6708	  sim/ucsim/z80.src/z80cl.h, sim/ucsim/z80.src/z80mac.h: ucsim
6709	  version 0.6-pre4
6710
67112016-07-25 Daniel Drotos <drdani AT mazsola.iit.uni-miskolc.hu>
6712
6713	* device/lib/tlcs90/crt0.s,
6714	  device/lib/tlcs90/crt0_org.s: dirty
6715	  hacked crt0 so compiled simple programs will run at least
6716
67172016-07-25 Daniel Drotos <drdani AT mazsola.iit.uni-miskolc.hu>
6718
6719	* support/regression/Makefile.in,
6720	  support/regression/fwk/include/testfwk.h,
6721	  support/regression/ports/tlcs90,
6722	  support/regression/ports/tlcs90/spec.mk,
6723	  support/regression/ports/tlcs90/support.c,
6724	  support/regression/ports/tlcs90/uCsim.cmd,
6725	  support/regression/tests/bug-2305.c,
6726	  support/regression/tests/bug3379723.c: regression test prepared
6727	  for tlcs90
6728
67292016-07-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6730
6731	* src/SDCCmem.c (printAllocInfoSeg),
6732	* src/port.h,
6733	* src/avr/main.c,
6734	* src/ds390/main.c,
6735	* src/hc08/main.c,
6736	* src/mcs51/main.c,
6737	* src/pic14/main.c,
6738	* src/pic16/main.c,
6739	* src/stm8/main.c,
6740	* src/xa51/main.c,
6741	* src/z80/main.c: Display correct stack offsets when stack grows down
6742
67432016-07-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6744
6745	* src/SDCCopt.c (optimizeOpWidth): don't narrow types cast to bit/sbit either
6746
67472016-07-23 Philipp Klaus Krause <pkk AT spth.de>
6748
6749	* src/SDCCval.h,
6750	  src/SDCCval.c,
6751	  src/stm8/main.c,
6752	  src/stm8/gen.c:
6753	  Generate code for 16 bit multiplication by literal based on CSD representation.
6754
67552016-07-23 Philipp Klaus Krause <pkk AT spth.de>
6756
6757	* src/SDCCsymt.h,
6758	  src/SDCCsymt.c,
6759	  src/SDCCopt.c,
6760	  device/lib/stm8/__mulsint2slong.s:
6761	  support/regression/tests/muldiv.c:
6762	  Support routine for unsigned 16x16->32 multiplication.
6763
67642016-07-23 Philipp Klaus Krause <pkk AT spth.de>
6765
6766	* device/lib/stm8/memcpy.s:
6767	  Fix issue in loop counter in stm8 memcpy().
6768	* src/port.h,
6769	  src/SDCCsymt.c,
6770	  src/*/main.c:
6771	  Introduce backend option for 16x16->32 multiplication.
6772	* support/regression/tests/muldiv.c:
6773	  Prepare test for unsigned 16x16->32 multiplication.
6774
67752016-07-23 Maarten Brock <sourceforge.brock AT dse.nl>
6776
6777	* device/lib/_strchr.c,
6778	* device/lib/_strrchr.c,
6779	* device/lib/_strstr.c: reverted commit 9631, these files should not
6780	  generate warning 196
6781	* sdas/asstm8/stm8mch.c: fixed incw cycle count
6782
67832016-07-22 Philipp Klaus Krause <pkk AT spth.de>
6784
6785	* device/lib/stm8/memcpy.s,
6786	  support/regression/tests/memory.c:
6787	  Fix an issue in stm8 unrolled memcpy().
6788	* device/lib/stm8/__mulsint2slong.s:
6789	  Optimize multiplication routine for small operands.
6790	* src/SDCCopt.c:
6791	  Optimize multiplication with anded operands.
6792
67932016-07-21 Philipp Klaus Krause <pkk AT spth.de>
6794
6795	* device/lib/stm8/Makefile.in,
6796	  device/lib/stm8/__mulsint2slong.s,
6797	  src/SDCCcse.c,
6798	  src/SDCCopt.c,
6799	  src/SDCCsymt.c,
6800	  src/SDCCsymt.h,
6801	  support/regression/tests/muldiv.c,
6802	  Support for separate 16x16->32 multiplication routine, RFE #507.
6803
68042016-07-21 Philipp Klaus Krause <pkk AT spth.de>
6805
6806	* src/SDCCopt.c:
6807	  Narrow arithmetic operations when results are cast to narrower type: RFE #506.
6808
68092016-07-21 Ben Shi <powerstudio1st AT 163 DOT com>
6810
6811	* sdas/astlcs90/t90mch.c
6812	  Fix a potential defect.
6813
68142016-07-20 Philipp Klaus Krause <pkk AT spth.de>
6815
6816	* device/lib/stm8/Makefile.in,
6817	  device/lib/stm8/strcpy.s:
6818	  Partially unrolled, slightly faster strcpy() for stm8.
6819	* src/stm8/gen.c,
6820	  src/SDCCsymt.c:
6821	  More efficient handling of boolean values.
6822	* device/lib/r2k/Makefile.in:
6823	  Fix bug #2526.
6824	* src/stm8/main.c:
6825	  Remove unused vars.
6826
68272016-07-18 Philipp Klaus Krause <pkk AT spth.de>
6828
6829	* src/stm8/gen.c:
6830	  Slight improvement in code generation.
6831
68322016-07-17 Philipp Klaus Krause <pkk AT spth.de>
6833
6834	* src/stm8/main.c,
6835	  src/stm8/gen.c:
6836	  Special case for int multiplication by 7 and 100.
6837
68382016-07-16 Philipp Klaus Krause <pkk AT spth.de>
6839
6840	* device/lib/stm8/memcpy.s:
6841	  Improve stm8 memcpy().
6842	* support/regression/tests/memory.c:
6843	  Better memcpy() test coverage.
6844
68452016-07-15 Philipp Klaus Krause <pkk AT spth.de>
6846
6847	* device/lib/stm8/memcpy.s:
6848	  Improve stm8 memcpy().
6849
68502016-07-14 Philipp Klaus Krause <pkk AT spth.de>
6851
6852	* device/lib/stm8/memcpy.s:
6853	  Partially unroll stm8 memcpy() for speed.
6854	* device/lib/stm8/strcmp.s:
6855	  Partially unroll stm8 strcmp() for speed.
6856
68572016-07-11 Philipp Klaus Krause <pkk AT spth.de>
6858
6859	* src/z80/main.c,
6860	  src/z80/gen.c:
6861	  Fix bug #2522.
6862	* device/lib/stm8/memcpy.s,
6863	  device/lib/stm8/strcmp.s,
6864	  device/lib/*/Makefile.in,
6865	  device/lib/Makefile.in,
6866	  device/lib/incl.mk:
6867	  Provide handwritten memcpy(), strcmp() to improve stm8 Dhrystone scores.
6868	* sdas/astlcs90/t90mch.c:
6869	  Fix TLCS-90 assembler relocation issue for ld, reopened bug #2520.
6870	* src/stm8/peeph.def:
6871	  Some peepholes to remove redundant stm8 loads, to improve stm8 DMIPS by another 0.42%
6872
68732016-07-10 Philipp Klaus Krause <pkk AT spth.de>
6874
6875	* sdas/astlcs90/t90mch.c:
6876	  Fix TLCS-90 assembler relocation issue for adc, bug #2520.
6877
68782016-07-06 Ben Shi <powerstudio1st AT 163 DOT com>
6879
6880	* support/regression/tests/gcc-torture-execute-920612-1.c
6881	  Disabled in test-host with gcc-6.
6882
68832016-06-30 Ben Shi <powerstudio1st AT 163 DOT com>
6884
6885	* src/SDCCicode.c
6886	  Check pointer qualifier in geniCodeReturn().
6887	* device/lib/_strstr.c
6888	* device/lib/_strchr.c
6889	* device/lib/_strrchr.c
6890	* support/regression/tests/gcc-torture-execute-920429-1.c
6891	  Suppress warning 196.
6892
68932016-06-26 Ben Shi <powerstudio1st AT 163 DOT com>
6894
6895	* src/ds390/gen.c
6896	  Fix a bug in genCmp().
6897	* support/regression/tests/dhrystone.c
6898	  Enabled for ds390.
6899
69002016-06-21 Philipp Klaus Krause <pkk AT spth.de>
6901
6902	* src/SDCCicode.c:
6903	  Fix bug #1841.
6904	* device/include/stdbool.h:
6905	  Minor cleanup.
6906
69072016-06-19 Philipp Klaus Krause <pkk AT spth.de>
6908
6909	* doc/sdccman.lyx,
6910	  src/SDCCglobl.h,
6911	  src/SDCCmain.c,
6912	  src/SDCCsymt.c:
6913	  Remove obsolete SDCC macro, --short-is-8-bits option.
6914
69152016-06-18 Ben Shi <powerstudio1st AT 163 DOT com>
6916
6917	* src/mcs51/gen.c
6918	  Fix a bug in jump table of switch/case when --acall-ajmp is specified.
6919	* src/mcs51/peeph.def
6920	  Remove empty lines.
6921
69222016-06-18 Ben Shi <powerstudio1st AT 163 DOT com>
6923
6924	* support/regression/ports/mcs51-huge/spec.mk
6925	* support/regression/ports/mcs51-xstack-auto/spec.mk
6926	  Make "make" more compatible.
6927
69282016-06-17 Philipp Klaus Krause <pkk AT spth.de>
6929
6930	* support/regression/ports/ucr2k/support.asm:
6931	  Fix regression test putchar() for r2k.
6932
69332016-06-16 Philipp Klaus Krause <pkk AT spth.de>
6934
6935	* device/include/stdio.h,
6936	  device/lib/ds390/putchar.c,
6937	  device/lib/puts.c,
6938	  support/regression/tests/bug1115321.c,
6939	  support/regression/tests/dhrystone.c:
6940	  Make putchar() prototype standard-compliant, fix bug #2505.
6941
69422016-06-16 Philipp Klaus Krause <pkk AT spth.de>
6943
6944	* device/lib/*/Makefile.in,
6945	  device/lib/*/putchar.s,
6946	  support/regression/ports/*/support.asm,
6947	  support/regression/tests/dhrystone.c:
6948	  Remove z80 putchar() from library.
6949
69502016-06-15 Philipp Klaus Krause <pkk AT spth.de>
6951
6952	* support/regression/tests/dhrystone.c:
6953	  Introduce a regression test based on the Dhrystone benchmark.
6954
69552016-06-13 Ben Shi <powerstudio1st AT 163 DOT com>
6956
6957	* src/stm8/gen.c
6958	  Fix a bug in emitCall().
6959
69602016-06-12 Maarten Brock <sourceforge.brock AT dse.nl>
6961
6962	* Small Device C Compiler 3.6.0 released
6963	* .version, doc/sdccman.lyx: changed sdcc version to 3.6.1
6964
69652016-06-04 Maarten Brock <sourceforge.brock AT dse.nl>
6966
6967	* .version,
6968	* doc/INSTALL.txt,
6969	* doc/sdccman.lyx:  version 3.6.0
6970
69712016-06-03 Philipp Klaus Krause <pkk AT spth.de>
6972
6973	* src/hc08/gen.c:
6974	  Work around an allocation issue.
6975
69762016-05-29 Maarten Brock <sourceforge.brock AT dse.nl>
6977
6978	* .version,
6979	* doc/INSTALL.txt,
6980	* doc/sdccman.lyx: version 3.6.0 rc1, use coloured links
6981	* sdcc.spec: version 3.6.0
6982	* doc/Makefile.in: silence makeindex
6983	* sim/ucsim/cmd.src/cmdset.cc,
6984	* sim/ucsim/hc08.src/hc08cl.h,
6985	* sim/ucsim/sim.src/hw.cc,
6986	* sim/ucsim/sim.src/hwcl.h,
6987	* sim/ucsim/st7.src/st7cl.h,
6988	* sim/ucsim/stm8.src/stm8cl.h,
6989	* sim/ucsim/z80.src/z80cl.h: cosmetics
6990	* sim/ucsim/st7.src/st7.cc (cl_st7::disass): fixed get_disasm_info call
6991
69922016-05-25 Philipp Klaus Krause <pkk AT spth.de>
6993
6994	* src/stm8/gen.c:
6995	  Implement genAddrOf for both X and Y in use (to make all regression tests compile for low --max-allocs-per-node).
6996
69972016-05-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
6998
6999	* src/hc08/ralloc.c: fixed bug #2489
7000	* support/regression/tests/wchar.c: re-enable hc08/s08 tests
7001
70022016-05-17 Philipp Klaus Krause <pkk AT spth.de>
7003
7004	* src/stm8/peep.c:
7005	  Basic flag handling in notUsed(), more accurate notUsed().
7006	* src/stm8/peeph.def:
7007	  Enable dead load optimization (with fixed flag handling).
7008
70092016-05-17 Philipp Klaus Krause <pkk AT spth.de>
7010
7011	* src/SDCCpeeph.c:
7012	  Improve labelIsReturnOnly() accuracy.
7013	* src/stm8/peeph.def:
7014	  Disable dead load optimization, introduce jump-to-return optimization.
7015
70162016-05-16 Philipp Klaus Krause <pkk AT spth.de>
7017
7018	* src/stm8/peeph.def:
7019	  Use more jumps on false for stm8 peepholes.
7020	* src/stm8/gen.c:
7021	  More efficient comparisons.
7022
70232016-05-15 Philipp Klaus Krause <pkk AT spth.de>
7024
7025	* Makefile.in:
7026	  Fix distclean failures.
7027
70282016-05-14 Maarten Brock <sourceforge.brock AT dse.nl>
7029
7030	* support/sdbinutils/binutils/arlex.c,
7031	* support/sdbinutils/binutils/arparse.c,
7032	* support/sdbinutils/binutils/arparse.h,
7033	* support/sdbinutils/binutils/defparse.c,
7034	* support/sdbinutils/binutils/defparse.h,
7035	* support/sdbinutils/binutils/mcparse.c,
7036	* support/sdbinutils/binutils/mcparse.h,
7037	* support/sdbinutils/binutils/rcparse.c,
7038	* support/sdbinutils/binutils/rcparse.h,
7039	* support/sdbinutils/binutils/sysinfo.c,
7040	* support/sdbinutils/binutils/sysinfo.h,
7041	* support/sdbinutils/binutils/syslex.c: added, as in upstream git
7042
70432016-05-13 Philipp Klaus Krause <pkk AT spth.de>
7044
7045	* sdas/linksrc/lkelf.c:
7046	  Enable ELF symbol table output, (from patch #255 by Peter Dons Tychsen).
7047
70482016-05-12 Philipp Klaus Krause <pkk AT spth.de>
7049
7050	* src/stm8/gen.c:
7051	  Minor code cleanup, also gets rid of a GCC warning.
7052
70532016-05-10 Ben Shi <powerstudio1st AT 163 DOT com>
7054
7055	* configure
7056	* configure.ac
7057	* src/SDCCmain.c
7058	  Call setrlimit() in a more compatible way.
7059
70602016-05-07 Maarten Brock <sourceforge.brock AT dse.nl>
7061
7062	* device/lib/hc08/_setjmp.c,
7063	* device/lib/s08/_setjmp.c: svn eol-style native
7064	* support/regression/tests/gcc-torture-execute-pr28982a.c,
7065	* support/regression/tests/bug-2197.c: enabled for mcs51
7066	* src/mcs51/gen.c (genFunction, genEndFunction): implemented RFE 81 to
7067	  disable interrupts before stacking
7068	* sim/ucsim/s51.src/uc390.cc: use IDMx/MCON instead of SA/ACON
7069	* sim/ucsim/s51.src/uc390hw.cc: do not lock out all IDM settings
7070	* src/ds390/main.c (_ds390_genIVT): MCON requires Timed Access
7071
70722016-05-06 Ben Shi <powerstudio1st AT 163 DOT com>
7073
7074	* support/regression/compact-results.py
7075	  Roll back to previous version.
7076
70772016-05-05 Maarten Brock <sourceforge.brock AT dse.nl>
7078
7079	* device/include/setjmp.h: ds390 needs 5 bytes
7080	* device/lib/_setjmp.c: added ds390 version
7081	* device/lib/ds390/setjmp.c: updated, but still a dummy
7082	* device/lib/hc08/_setjmp.c,
7083	* device/lib/s08/_setjmp.c: fixed stack pointer bug
7084	* sim/ucsim/cmd.src/Makefile.in,
7085	* sim/ucsim/gui.src/Makefile.in,
7086	* sim/ucsim/main_in.mk,
7087	* sim/ucsim/sim.src/Makefile.in: drop -u to prevent warning on ar 2.26
7088	* sim/ucsim/s51.src/uc390cl.h: added ixram
7089	* sim/ucsim/s51.src/uc390.cc: check full ixram range,
7090	* sim/ucsim/s51.src/uc51.cc,
7091	* sim/ucsim/s51.src/uc89c51r.cc: show @R0, @R1 and 8 stack bytes
7092	* sim/ucsim/sim.src/mem.cc (cl_memory::dump): allow decrementing range
7093	* sim/ucsim/stm8.src/inst.cc (cl_stm8::flag_cvh): fixed warnings
7094	* src/SDCC.y: critical is not a part of the calling convention
7095	* support/regression/tests/bug663539.c: fix to fool the python script
7096	* support/regression/tests/gcc-torture-execute-20010409-1.c: use longjmp()
7097	  instead of return() to mimic exit()
7098	* support/regression/tests/setjmp.c: enabled for all regular targets
7099
71002016-05-05 Ben Shi <powerstudio1st AT 163 DOT com>
7101
7102	* support/regression/compact-results.py
7103	  Fix spots in previous commit.
7104
71052016-05-04 Ben Shi <powerstudio1st AT 163 DOT com>
7106
7107	* support/regression/collate-results.py
7108	* support/regression/compact-results.py
7109	  Detect and report aborted test cases.
7110
71112016-05-03 Ben Shi <powerstudio1st AT 163 DOT com>
7112
7113	* support/regression/collate-results.py
7114	* support/regression/compact-results.py
7115	* support/regression/Makefile.in
7116	  Detect and report 'segment fault' in test-host.
7117	* support/regression/tests/gcc-torture-execute-20010409-1.c
7118	  Disable for gcc-5 in test-host.
7119
71202016-05-01 Ben Shi <powerstudio1st AT 163 DOT com>
7121
7122	* Enlarge stack size to 4MB in run time.
7123
71242016-04-30 Philipp Klaus Krause <pkk AT spth.de>
7125
7126	* src/SDCCasm.c:
7127	  Hex number case consistency, RFE #142.
7128
71292016-04-29 Philipp Klaus Krause <pkk AT spth.de>
7130
7131	* src/z80/gen.c,
7132	  doc/sdccman.lyx,
7133	  .version:
7134	  Reorganize interrupt handling for z80-related backends, fix bugs #2339, #2131.
7135
71362016-04-29 Ben Shi <powerstudio1st AT 163 DOT com>
7137
7138	* src/SDCC.y
7139	* src/SDCCerr.c
7140	* src/SDCCerr.h
7141	  Make the warning in previous commit more generic.
7142
71432016-04-28 Ben Shi <powerstudio1st AT 163 DOT com>
7144
7145	* src/SDCC.y
7146	* src/SDCCerr.c
7147	* src/SDCCerr.h
7148	  Add warning for inlined _z88dk_* functions.
7149
71502016-04-28 Ben Shi <powerstudio1st AT 163 DOT com>
7151
7152	* src/SDCC.y
7153	* src/SDCCerr.c
7154	  Allow typedef function types.
7155	* support/regression/tests/bug-2497.c
7156	  Add a new test case.
7157
71582016-04-27 Maarten Brock <sourceforge.brock AT dse.nl>
7159
7160	* src/ds390/gen.c (genFarPointerSet): no inline variable definitions
7161	* src/ds390/main.c (_ds390_genAssemblerPreamble, _ds390_genIVT): add MCON,
7162	  (_ds390_genXINIT): added _ds390_genXRAMCLEAR
7163
71642016-04-25 Ben Shi <powerstudio1st AT 163 DOT com>
7165
7166	* src/SDCC.y
7167	* src/SDCCsymt.c
7168	* src/SDCCsymt.h
7169	  Check local defined structs more strictly.
7170
71712016-04-24 Ben Shi <powerstudio1st AT 163 DOT com>
7172
7173	* src/SDCCast.c
7174	  Change the signess of the literal operand in bitwise operation.
7175	* support/regression/tests/bug-1929.c
7176	  Add a new test case.
7177	* support/regression/tests/gcc-torture-execute-20020506-1.c
7178	  Modify test case.
7179
71802016-04-21 Molnar Karoly <molnarkaroly AT users.sf.net>
7181
7182	* support/sdbinutils/bfd/doc/Makefile.am,
7183	  support/sdbinutils/bfd/doc/Makefile.in,
7184	  support/sdbinutils/binutils/Makefile.am,
7185	  support/sdbinutils/binutils/Makefile.in:
7186	  Revert changes of wrong bugfix.
7187
71882016-04-20 Ben Shi <powerstudio1st AT 163 DOT com>
7189
7190	* src/z80/peeph-r2k.def
7191	* src/z80/peeph-tlcs90.def
7192	* src/z80/peeph-z80.def
7193	  Fix potential bugs.
7194
71952016-04-19 Molnar Karoly <molnarkaroly AT users.sf.net>
7196
7197	* support/sdbinutils/bfd/doc/Makefile.am,
7198	  support/sdbinutils/bfd/doc/Makefile.in,
7199	  support/sdbinutils/binutils/Makefile.am,
7200	  support/sdbinutils/binutils/Makefile.in:
7201	  Fix a distclean bug. Now the "make distclean" command deletes
7202	  these unnecessary files:
7203	    support/sdbinutils/bfd/doc/bfd.info*
7204	    support/sdbinutils/binutils/arlex.c
7205	    support/sdbinutils/binutils/arparse.c
7206	    support/sdbinutils/binutils/arparse.h
7207	    support/sdbinutils/binutils/defparse.c
7208	    support/sdbinutils/binutils/defparse.h
7209	    support/sdbinutils/binutils/mcparse.c
7210	    support/sdbinutils/binutils/mcparse.h
7211	    support/sdbinutils/binutils/rcparse.c
7212	    support/sdbinutils/binutils/rcparse.h
7213	    support/sdbinutils/binutils/sysinfo.c
7214	    support/sdbinutils/binutils/sysinfo.h
7215	    support/sdbinutils/binutils/syslex.c
7216
72172016-04-18 Maarten Brock <sourceforge.brock AT dse.nl>
7218
7219	* device/include/setjmp.h: use C89 compatible comments
7220	* device/lib/ds390/setjmp.c: preliminary setjmp/longjmp implementation
7221	* device/lib/gbz80/Makefile.in,
7222	* device/lib/gbz80/setjmp.s,
7223	* device/lib/hc08/Makefile.in
7224	* device/lib/hc08/_setjmp.c
7225	* device/lib/s08/Makefile.in
7226	* device/lib/s08/_setjmp.c: implemented setjmp/longjmp for gbz80, hc08, s08
7227	* support/regression/tests/setjmp.c: enabled for all but ds390
7228	* device/lib/hc08/_divuint.c,
7229	* device/lib/s08/_divuint.c: removed mcs51 asm
7230	* device/lib/pic16/libc/stdlib/atof.c,
7231	* device/lib/pic16/libc/stdlib/x_ftoa.c: fixed since char is now unsigned
7232	* src/SDCCval.c (reorderIlist): properly fixed bug #2423
7233	* src/z80/peeph-gbz80.def: added rule 2
7234	* support/regression/tests/bug-2423.c: remove disabled pragma
7235	* support/regression/tests/float_single.c: enabled EXPF as it seems to pass
7236
72372016-04-18 Philipp Klaus Krause <pkk AT spth.de>
7238
7239	* src/z80/gen.c:
7240	  Fix handling of register pair hl in block copy pointer assignment.
7241
72422016-04-18 Philipp Klaus Krause <pkk AT spth.de>
7243
7244	* src/z80/peeph-z80.def:
7245	  Optimize jumps on boolean bitfields.
7246	* src/z80/gen.c:
7247	  Improve unpacking of signed bitfields.
7248
72492016-04-18 Molnar Karoly <molnarkaroly AT users.sf.net>
7250
7251	* device/lib/pic14/bootstrap.sh,
7252	  device/lib/pic16/bootstrap.sh,
7253	  device/non-free/lib/pic16/bootstrap.sh:
7254	  Deleted the execute rights, to prevent accidental execution.
7255
72562016-04-17 Molnar Karoly <molnarkaroly AT users.sf.net>
7257
7258	* device/lib/pic14/configure,
7259	  device/lib/pic14/configure.ac,
7260	  device/lib/pic14/Makefile.am,
7261	  device/lib/pic14/Makefile.in,
7262	  device/lib/pic16/Makefile.am,
7263	  device/lib/pic16/Makefile.in,
7264	  device/non-free/lib/pic14/Makefile.in,
7265	  device/non-free/lib/pic16/Makefile.am,
7266	  device/non-free/lib/pic16/Makefile.in:
7267	  Renamed the "device/lib/pic14/.checksupport" directory to
7268	  "device/lib/pic14/.checkdevices".
7269	  Fix a distclean bug. Now the "make distclean" command deletes
7270	  these unnecessary directories and files:
7271	    device/lib/pic14/.checkdevices/*
7272	    device/lib/pic14/a.*
7273	    device/lib/pic16/.checkdevices/*
7274	    device/lib/pic16/a.*
7275	    device/lib/pic16/pics.supported
7276	    device/non-free/lib/pic14/.checkdevices/*
7277	    device/non-free/lib/pic14/a.*
7278	    device/non-free/lib/pic14/pics.supported
7279	    device/non-free/lib/pic16/.checkdevices/*
7280	    device/non-free/lib/pic16/a.*
7281	    device/non-free/lib/pic16/pics.supported
7282
72832016-04-17 Philipp Klaus Krause <pkk AT spth.de>
7284
7285	* support/regression/tests/wchar.c:
7286	  Enable test for mcs51.
7287	* doc/sdccman.lyx:
7288	  Update manual, clearly mark 8051-specifics as such in Chapter 3.
7289
72902016-04-17 Ben Shi <powerstudio1st AT 163 DOT com>
7291
7292	* src/SDCCglue.c
7293	  Fix a pointer printing bug, when a 4-byte generic pointer is printed on ds390.
7294
72952016-04-16 Maarten Brock <sourceforge.brock AT dse.nl>
7296
7297	* device/include/mcs51/compiler.h: added INTERRUPT, INTERRUPT_USING, NOP
7298	  macros, copied from SiLabs' compiler_defs.h
7299	* device/include/mcs51/EFM8BB1.h: new, added, from RFE 271, thanks
7300	  Kharitonov Dmitry
7301
73022016-04-14 Philipp Klaus Krause <pkk AT spth.de>
7303
7304	* src/z80/gen.c,
7305	  support/regression/tests/gcc-torture-execute-20000717-2.c,
7306	  support/regression/tests/gcc-torture-execute-20050104-1.c,
7307	  support/regression/tests/gcc-torture-execute-921202-2.c,
7308	  support/regression/tests/gcc-torture-execute-950612-1.c,
7309	  support/regression/tests/gcc-torture-execute-961122-1.c,
7310	  support/regression/tests/gcc-torture-execute-20060110-2.c,
7311	  support/regression/tests/gcc-torture-execute-950704-1.c,
7312	  support/regression/tests/longlong.c:
7313	  Fixes to gbz80 carry flag handling, particularly relevant to long long.
7314
73152016-04-14 Ben Shi <powerstudio1st AT 163 DOT com>
7316
7317	* src/SDCCerr.c
7318	* src/SDCCerr.h
7319	* src/SDCCsymt.c
7320	  Check tagged anonymous struct/union.
7321
73222016-04-13 Philipp Klaus Krause <pkk AT spth.de>
7323
7324	* src/stm8/gen.c,
7325	  support/regression/tests/bug-2492.c:
7326	  Fix bug #2492.
7327
73282016-04-13 Molnar Karoly <molnarkaroly AT users.sf.net>
7329
7330	* device/include/pic14/pic14devices.txt,
7331	  device/non-free/include/pic14/*.h,
7332	  device/non-free/include/pic16/*.h,
7333	  device/non-free/lib/pic14/libdev/*.c,
7334	  device/non-free/lib/pic16/libdev/*.c:
7335	  Refreshed the device files.
7336
73372016-04-12 Philipp Klaus Krause <pkk AT spth.de>
7338
7339	* device/include/uchar.h,
7340	  device/include/wchar.h,
7341	  device/lib/c16rtomb.c,
7342	  device/lib/mbrtoc16.c,
7343	  device/lib/mbsinit.c,
7344	  device/lib/incl.mk,
7345	  support/regression/tests/wchar.c:
7346	  Implement c16rtomb(), mbrtoc16(), mbsinit().
7347	* device/lib/*/mul.s
7348	  Integer multiplication improvement by Kio (RFE #422).
7349
73502016-04-12 Molnar Karoly <molnarkaroly AT users.sf.net>
7351
7352	* device/lib/pic14/configure.ac,
7353	  device/lib/pic14/Makefile.in,
7354	  device/lib/pic14/libm/Makefile.in,
7355	  device/lib/pic14/libsdcc/enhanced/Makefile.in,
7356	  device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in,
7357	  device/lib/pic14/libsdcc/regular/Makefile.in:
7358	  Fixed bug: #2482 Link error with pic16f1827
7359
73602016-04-11 Philipp Klaus Krause <pkk AT spth.de>
7361
7362	* src/z80/gen.c:
7363	  Enable iy register content tracking optimization.
7364	* device/include/stdlib.h,
7365	  device/lib/mbtowc.c,
7366	  device/lib/incl.mk,
7367	  support/regression/tests/wchar.c:
7368	  Implement mbtowc().
7369	* device/include/wchar.h,
7370	  device/lib/mbrlen.c:
7371	  Implement mbrlen().
7372
73732016-04-10 Molnar Karoly <molnarkaroly AT users.sf.net>
7374
7375	* src/pic14/gen.c,
7376	  src/pic16/gen.c:
7377	  Fixed typo from "psuedo" to "pseudo".
7378
7379	* src/pic14/gen.c:
7380	  Fixed bug in genCall() function: The PAGESEL instructions must
7381	  be given unconditionally. (In this context: "Each function has
7382	  its own code section.")
7383
7384	* src/pic14/pcode.c,
7385	  src/pic16/pcode.c,
7386	  src/pic14/ralloc.c,
7387	  src/pic16/ralloc.c:
7388	  Fix potential buffer overflow.
7389
7390	* src/pic14/glue.c:
7391	  Minor code formatting.
7392
73932016-04-09 Ben Shi <powerstudio1st AT 163 DOT com>
7394
7395	* support/regression/tests/gcc-torture-execute-20020506-1.c
7396	* support/regression/tests/gcc-torture-execute-20041011-1.c
7397	* support/regression/tests/gcc-torture-execute-20050111-1.c
7398	* support/regression/tests/gcc-torture-execute-20060127-1.c
7399	* support/regression/tests/gcc-torture-execute-920604-1.c
7400	* support/regression/tests/gcc-torture-execute-921029-1.c
7401	* support/regression/tests/gcc-torture-execute-941015-1.c
7402	  Enabled.
7403
74042016-04-07 Philipp Klaus Krause <pkk AT spth.de>
7405
7406	* device/include/errno.h,
7407	  device/include/uchar.h,
7408	  device/include/wchar.h,
7409	  device/lib/mbrtoc32.c,
7410	  device/lib/c32rtomb.c,
7411	  device/lib/mbrtowc.c,
7412	  device/lib/wcrtomb.c,
7413	  device/lib/incl.mk,
7414	  support/regression/tests/wchar.c:
7415	  Implement mbrtoc32, c32rtomb(), mbrtowc(), wcrtomb().
7416
74172016-04-07 Philipp Klaus Krause <pkk AT spth.de>
7418
7419	* src/SDCC.lex,
7420	  src/SDCCerr.h,
7421	  src/SDCCerr.c:
7422	  Fix bug #2488 by implementing hexadecimal floating constants.
7423	* device/include/stdlib.h,
7424	  device/lib/mblen.c,
7425	  device/lib/wctomb.c,
7426	  device/lib/incl.mk,
7427	  support/regression/tests/string.c:
7428	  Implement mblen(), wctomb().
7429
74302016-04-06 Philipp Klaus Krause <pkk AT spth.de>
7431
7432	* support/regression/tests/string.c:
7433	  Check more of wide strings, do not depend on implementation-defined
7434	  behaviour in char escape.
7435
74362016-04-06 Ben Shi <powerstudio1st AT 163 DOT com>
7437
7438	* support/regression/tests/gcc-torture-execute-950512-1.c
7439	* support/regression/tests/gcc-torture-execute-961122-1.c
7440	* support/regression/tests/gcc-torture-execute-960402-1.c
7441	  Enabled.
7442
74432016-04-05 Ben Shi <powerstudio1st AT 163 DOT com>
7444
7445	* support/regression/tests/string.c
7446	  Improve test case.
7447	* src/SDCCast.c
7448	* src/SDCCicode.c
7449	* src/z80/gen.c
7450	  Improve longlong compatibility.
7451
74522016-04-03 Molnar Karoly <molnarkaroly AT users.sf.net>
7453
7454	* device/lib/pic14/bootstrap.sh,
7455	  device/lib/pic14/Makefile.in,
7456	  device/lib/pic14/libm/Makefile.in,
7457	  device/lib/pic14/libsdcc/enhanced/Makefile.am,
7458	  device/lib/pic14/libsdcc/enhanced/Makefile.in,
7459	  device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.am,
7460	  device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in,
7461	  device/lib/pic14/libsdcc/regular/Makefile.am,
7462	  device/lib/pic14/libsdcc/regular/Makefile.in:
7463	  Workaround the Linux Mint bug: #2482 Link error with pic16f1827
7464
7465	* device/lib/pic16/*,
7466	  device/non-free/lib/pic16/*:
7467	  Downgraded the autoconf version from 1.15 to 1.11.6.
7468
74692016-04-01 Philipp Klaus Krause <pkk AT spth.de>
7470
7471	* src/SDCCglue.c,
7472	  src/SDCCval.c:
7473	  Support wide string literals in initialization of global arrays.
7474	* src/SDCCast.c,
7475	  Support wide string literals in initialization of local arrays.
7476	* doc/sdccman.lyx:
7477	  Update documentation on standard compliance.
7478
74792016-04-01 Ben Shi <powerstudio1st AT 163 DOT com>
7480
7481	* support/regression/tests/gcc-torture-execute-950512-1.c
7482	  Enabled.
7483	* src/z80/gen.c
7484	  Improve longlong comptability on different hosts.
7485
74862016-03-31 Philipp Klaus Krause <pkk AT spth.de>
7487
7488	* doc/sdccman.lyx:
7489	  Remove user-visible feature macros for signed / unsigned char.
7490	* device/include/limits.h:
7491	  Fix multibyte sequence limit.
7492	* support/regression/tests/bitvars.c,
7493	  support/regression/tests/funsigned-char.c:
7494	  Detect char signedness portably.
7495	* src/SDCCsymt.h,
7496	  src/SDCCval.c,
7497	  src/SDCCglue.c,
7498	  doc/sdccman.lyx,
7499	  support/regression/tests/string.c:
7500	  Support wide string literals outside of array initialization.
7501
75022016-03-31 Ben Shi <powerstudio1st AT 163 DOT com>
7503
7504	* support/regression/tests/gcc-torture-execute-pr19606.c
7505	  Disabled in test-host.
7506
75072016-03-29 Ben Shi <powerstudio1st AT 163 DOT com>
7508
7509	* support/regression/tests/gcc-torture-execute-20060127-1.c
7510	* support/regression/tests/gcc-torture-execute-921029-1.c
7511	* support/regression/tests/gcc-torture-execute-941015-1.c
7512	* support/regression/tests/gcc-torture-execute-pr19606.c
7513	  Disabled.
7514
75152016-03-29 Ben Shi <powerstudio1st AT 163 DOT com>
7516
7517	* support/regression/tests/bug3475656.c
7518	* support/regression/tests/gcc-torture-execute-20000314-2.c
7519	* support/regression/tests/gcc-torture-execute-20000523-1.c
7520	* support/regression/tests/gcc-torture-execute-20001108-1.c
7521	* support/regression/tests/gcc-torture-execute-20020201-1.c
7522	* support/regression/tests/gcc-torture-execute-20020226-1.c
7523	* support/regression/tests/gcc-torture-execute-20020508-1.c
7524	* support/regression/tests/gcc-torture-execute-20020508-2.c
7525	* support/regression/tests/gcc-torture-execute-20020508-3.c
7526	* support/regression/tests/gcc-torture-execute-20060110-1.c
7527	* support/regression/tests/gcc-torture-execute-20060110-2.c
7528	* support/regression/tests/gcc-torture-execute-20060127-1.c
7529	* support/regression/tests/gcc-torture-execute-20101013-1.c
7530	* support/regression/tests/gcc-torture-execute-920710-1.c
7531	* support/regression/tests/gcc-torture-execute-920829-1.c
7532	* support/regression/tests/gcc-torture-execute-921029-1.c
7533	* support/regression/tests/gcc-torture-execute-941015-1.c
7534	* support/regression/tests/gcc-torture-execute-950704-1.c
7535	* support/regression/tests/gcc-torture-execute-960801-1.c
7536	* support/regression/tests/gcc-torture-execute-961213-1.c
7537	* support/regression/tests/gcc-torture-execute-pr19606.c
7538	* support/regression/tests/gcc-torture-execute-pr27285.c
7539	  Enable more longlong test cases.
7540
75412016-03-28 Philipp Klaus Krause <pkk AT spth.de>
7542
7543	* src/SDCCglue.c:
7544	  Disable assertions to mask ds390 issue on non-OpenBSD for now.
7545
75462016-03-28 Ben Shi <powerstudio1st AT 163 DOT com>
7547
7548	* src/SDCCicode.c
7549	  Fix a long long issue on 32-bit machines.
7550	* support/regression/tests/gcc-torture-execute-950511-1.c
7551	* support/regression/tests/bug-2477.c
7552	  Enabled.
7553
75542016-03-27 Philipp Klaus Krause <pkk AT spth.de>
7555
7556	* support/regression/tests/inline.c:
7557	  Disable failing test for OpenBSD host.
7558	* src/SDCCglue.c:
7559	  Add assertions to help track down pointer size bugs.
7560
75612016-03-27 Ben Shi <powerstudio1st AT 163 DOT com>
7562
7563	* sdas/asstm8/stm8pst.c
7564	  Apply part of patch #255 by Peter Dons Tychsen.
7565
75662016-03-24 Ben Shi <powerstudio1st AT 163 DOT com>
7567
7568	* src/z80/gen.c
7569	  Improve long long compatibility among different host machines.
7570
75712016-03-22 Ben Shi <powerstudio1st AT 163 DOT com>
7572
7573	* src/SDCCast.c
7574	* src/SDCCglue.c
7575	* src/SDCCval.c
7576	* src/SDCCval.h
7577	* src/pic16/glue.c
7578	* src/z80/gen.c
7579	  Improve long long compatibility among different host machines.
7580
75812016-03-19 Ben Shi <powerstudio1st AT 163 DOT com>
7582
7583	* src/z80/gen.c
7584	  Improve compatibility of SDCC between 32-bit and 64-bit machines.
7585
75862016-03-15 Molnar Karoly <molnarkaroly AT users.sf.net>
7587
7588	* src/pic14/pcode.c:
7589	  Fixed bug: "#2481 wrong asm code for pic16f1827 (or even others?)"
7590
75912016-03-12 Maarten Brock <sourceforge.brock AT dse.nl>
7592
7593	* src/SDCCpeeph.c (labelIsUncondJump): also search backwards
7594	* src/mcs51/peeph.def: added rules 257.a-i for jump-to-jump optimization,
7595	  added	rules 259.c-f to remove dead jumps, implements RFE 491
7596	* src/SDCCerr.c,
7597	* src/SDCCerr.h: changed W_UNKNOWN_FEXT to E_UNKNOWN_FEXT
7598	* src/SDCCmain.c (processFile): also accept .h sources, implement RFE 460
7599
76002016-03-12 Ben Shi <powerstudio1st AT 163 DOT com>
7601
7602	* src/z80/gen.c
7603	  Rollback to previous version.
7604	* support/regression/tests/bug-2477.c
7605	  Disable this test case.
7606
76072016-03-11 Ben Shi <powerstudio1st AT 163 DOT com>
7608
7609	* src/z80/gen.c
7610	  Fix a bug in genRet(): long long return value is cut to long.
7611	* support/regression/tests/bug-2477.c
7612	  Add a new test case.
7613
76142016-03-10 Ben Shi <powerstudio1st AT 163 DOT com>
7615
7616	* src/stm8/gen.c
7617	  Fix a bug in genAnd(): conflict register assignment.
7618	* support/regression/tests/bug-2480.c
7619	  Add a new test case.
7620
76212016-03-06 Maarten Brock <sourceforge.brock AT dse.nl>
7622
7623	* src/SDCC.y: MSVC does not accept declarations in for loop
7624
76252016-03-05 Maarten Brock <sourceforge.brock AT dse.nl>
7626
7627	* device/non-free/lib/pic16/missing: copied from device/lib/pic16/missing
7628	* src/SDCCgen.c (genInline): also check for colon in single literal char
7629	* support/cpp/libcpp/macro.c (create_iso_definition): fixed warning
7630	* support/regression/compact-results.py: use 'T' for clock ticks
7631
76322016-03-05 Ben Shi <powerstudio1st AT 163 DOT com>
7633
7634	* src/SDCCgen.c
7635	  Fix a bug: colon should not be treated as a label suffix in a literal
7636	  string in inline-asm.
7637
76382016-03-05 Ben Shi <powerstudio1st AT 163 DOT com>
7639
7640	* src/SDCCerr.c
7641	* src/SDCCval.c
7642	  Remove warning #212 W_LONGLONG_LITERAL.
7643
76442016-03-04 Ben Shi <powerstudio1st AT 163 DOT com>
7645
7646	* src/SDCCicode.c
7647	  Fix long long issues.
7648	* support/regression/tests/longlong.c
7649	  Add more tests.
7650
76512016-02-27 Ben Shi <powerstudio1st AT 163 DOT com>
7652
7653	* support/scripts/sdcc.nsi
7654	  Install large-stack-auto related files into windows distribution.
7655
76562016-02-26 Ben Shi <powerstudio1st AT 163 DOT com>
7657
7658	* src/SDCCicode.c
7659	* src/SDCCicode.h
7660	* src/SDCCval.c
7661	* src/SDCCval.h
7662	  Fix potential precision loss of long long operands.
7663
76642016-02-21 Ben Shi <powerstudio1st AT 163 DOT com>
7665
7666	* src/SDCCast.c
7667	* src/SDCCast.h
7668	  Make sure the parameter list is not reversed before calling parmProcess().
7669	* support/regression/tests/bug-2473.c
7670	  Add a new test case.
7671
76722016-02-20 Ben Shi <powerstudio1st AT 163 DOT com>
7673
7674	* src/SDCCast.c
7675	  Fix bug #2471.
7676
76772016-02-19 Ben Shi <powerstudio1st AT 163 DOT com>
7678
7679	* src/SDCCerr.c
7680	  Make the error message of error E_CONST_EXPECTED more understandable.
7681
76822016-02-18 Ben Shi <powerstudio1st AT 163 DOT com>
7683
7684	* src/SDCCglue.c
7685	  Add check of non-constant in a global variable's initial value.
7686
76872016-02-13 Molnar Karoly <molnarkaroly AT users.sf.net>
7688
7689	* src/pic14/gen.c,
7690	* src/pic14/glue.c,
7691	* src/pic14/pcode.c,
7692	* src/pic14/pcode.h:
7693	Fixed bug: "#2470 wrong asm code for PIC14 interrupt - interrupt not working"
7694
76952016-02-09 Maarten Brock <sourceforge.brock AT dse.nl>
7696
7697	* device/lib/Makefile.in: added and enabled large-mcs51-stack-auto
7698	* support/regression/ports/mcs51-large-stack-auto,
7699	* support/regression/ports/mcs51-large-stack-auto/spec.mk,
7700	* support/regression/Makefile.in: added test-mcs51-large-stack-auto
7701	* support/regression/tests/bug2094505.c: disabled for mcs51-large-stack-auto
7702
77032016-02-08 Maarten Brock <sourceforge.brock AT dse.nl>
7704
7705	* debugger/mcs51/simi.c,
7706	* debugger/mcs51/simi.h: applied patch 268, Thanks Peter Dons Tychsen
7707	* device/include/stdlib.h: suppress unused variable warning
7708	* src/SDCCsymt.c (checkSClass): globals and statics in code don't need an
7709	  initializer but may be implicitly cleared
7710	* support/regression/tests/gcc-torture-execute-20000412-1.c: added disabled
7711	  testcase for this
7712	* support/regression/tests/bug-2041.c: also check with xdata starting at 1
7713	* support/regression/tests/bug-2089.c: fix warnings
7714	* support/regression/tests/bug-2423.c: suppress warning 147, show weird 203
7715
77162016-02-07 Ben Shi <powerstudio1st AT 163 DOT com>
7717
7718	* src/ds390/gen.c
7719	  Fix a bug in genFarPointerSet() when the result and the right operand are
7720	  both in DPTR.
7721	* support/regression/tests/bug-2041.c
7722	  Add a new test case.
7723
77242016-02-06 Philipp Klaus Krause <pkk AT spth.de>
7725
7726	* src/SDCClospre.hpp,
7727	  src/SDCCnaddr.hpp,
7728	  src/SDCCralloc.hpp:
7729	  Workaround boost bug #11880 to make SDCC compile with boost 1.60.
7730
77312016-02-05 Ben Shi <powerstudio1st AT 163 DOT com>
7732
7733	* src/SDCCast.c
7734	  Fix a bug in comparison operation.
7735	* support/regression/tests/memory.c
7736	  Enable more tests.
7737
77382016-02-04 Ben Shi <powerstudio1st AT 163 DOT com>
7739
7740	* src/SDCCicode.c
7741	  Allow array members of structs can be accessed in pointer form.
7742	* support/regression/tests/bug-2468.c
7743	  Add a test case.
7744
77452016-02-03 Philipp Klaus Krause <pkk AT spth.de>
7746
7747	* src/SDCClospre.hpp:
7748	  Fix compare operator, patch #267 by Peter Dons Tychsen.
7749	* device/lib/pic16/libsdcc/char/divschar.c,
7750	  device/lib/pic16/libsdcc/char/modschar.c:
7751	  Fix signedness of pic16 char support routines.
7752
77532016-02-01 Ben Shi <powerstudio1st AT 163 DOT com>
7754
7755	* src/SDCCast.c
7756	  Try to find a common type for the left and right in '?:' .
7757	* support/regression/tests/bug-2461.c
7758	  Add a new test case.
7759
77602016-02-01 Philipp Klaus Krause <pkk AT spth.de>
7761
7762	* src/SDCCglobl.h,
7763	  src/SDCCmain.c,
7764	  src/SDCCsymt.c,
7765	  src/SDCCval.c,
7766	  doc/sdccman.lyx:
7767	  Make char unsigned by default.
7768
77692016-02-01 Philipp Klaus Krause <pkk AT spth.de>
7770
7771	* device/include/stdlib.h:
7772	  Fix declaration of aligned_alloc() for C11.
7773
77742016-02-01 Ben Shi <powerstudio1st AT 163 DOT com>
7775
7776	* src/SDCC.y
7777	  Fix a bug: type mismatch between function definition and declaration.
7778	* support/regression/tests/bug-2419.c
7779	  Add a new test case.
7780
77812016-01-31 Molnar Karoly <molnarkaroly AT users.sf.net>
7782
7783	* src/pic14/device.c,
7784	  src/pic14/gen.c,
7785	  src/pic14/glue.c,
7786	  src/pic14/pcode.c,
7787	  src/pic14/pcodepeep.c,
7788	  src/pic14/ralloc.c,
7789	  src/pic16/device.c,
7790	  src/pic16/device.h,
7791	  src/pic16/gen.c,
7792	  src/pic16/genarith.c,
7793	  src/pic16/genutils.c,
7794	  src/pic16/glue.c,
7795	  src/pic16/glue.h,
7796	  src/pic16/graph.c,
7797	  src/pic16/main.c,
7798	  src/pic16/pcode.c,
7799	  src/pic16/pcode.h,
7800	  src/pic16/pcodepeep.c,
7801	  src/pic16/ralloc.c,
7802	  src/pic16/ralloc.h:
7803	  Use "Safe_alloc(...)" instead of "Safe_calloc(1, ...)".
7804	  Use SNPRINTF(X, sizeof(X), ...) instead of sprintf(X, ...).
7805	  Some code simplification, e.g.:
7806	    sprintf (s, "%s", aop->aopu.aop_dir);
7807	    rs = Safe_calloc (1, strlen (s) + 1);
7808	    strcpy (rs, s);
7809	    return rs;
7810	      .
7811	      .
7812	      .
7813	    return Safe_strdup(aop->aopu.aop_dir);
7814
78152016-01-28 Philipp Klaus Krause <pkk AT spth.de>
7816
7817	* support/regression/Makefile.in:
7818	  Change handling of test filenames for regression tests, patch #266 by
7819	  Peter Dons Tychsen.
7820	* src/SDCCast.c,
7821	  support/regression/tests/bug-2458.c:
7822	  Changed result type propagation for logic operations, variant of proposed
7823	  fix by Peter Dons Tychsen for bug #2458.
7824
78252016-01-26 Philipp Klaus Krause <pkk AT spth.de>
7826
7827	* src/SDCCsymt.c:
7828	  Fix handling of __z88dk_fastcall in specifier merging.
7829
78302016-01-26 Maarten Brock <sourceforge.brock AT dse.nl>
7831
7832	* src/SDCCval.c (strVal): free utf_8 and suppress warning
7833
78342016-01-25 Molnar Karoly <molnarkaroly AT users.sf.net>
7835
7836	* src/pic14/pcode.c,
7837	  src/pic14/ralloc.c:
7838	  More use the logical constants.
7839
78402016-01-25 Philipp Klaus Krause <pkk AT spth.de>
7841
7842	* src/stm8/main.c:
7843	  Improve DWARF support for stm8 ELF, picked from patch #255 by Peter Dons
7844	  Tychsen.
7845	* src/SDCCsymt.c:
7846	  Fix handling of preserved regs in specifier merging.
7847
78482016-01-24 Molnar Karoly <molnarkaroly AT users.sf.net>
7849
7850	* src/pic16/pcode.c,
7851	  src/pic16/pcodepeep.c:
7852	  More use the logical constants.
7853
78542016-01-24 Molnar Karoly <molnarkaroly AT users.sf.net>
7855
7856	* src/pic14/gen.c,
7857	  src/pic14/glue.c,
7858	  src/pic14/pcode.c,
7859	  src/pic14/pcoderegs.c,
7860	  src/pic14/ralloc.c:
7861	  More use the logical constants.
7862
78632016-01-24 Molnar Karoly <molnarkaroly AT users.sf.net>
7864
7865	* src/pic14/gen.c,
7866	  src/pic14/pcode.c,
7867	  src/pic14/pcode.h:
7868	  Add support the ASRF, LSLF and LSRF instructions
7869	  (enhanced intructions of pic14): feature-requests #484
7870
7871	* src/pic14/gen.c,
7872	  src/pic14/gen.h:
7873	  On more place I exchanged the "char *" to "const char *".
7874
78752016-01-24 Ben Shi <powerstudio1st AT 163 DOT com>
7876
7877	* src/SDCC.y
7878	* src/SDCCast.c
7879	* src/SDCCast.h
7880	* src/SDCCutil.c
7881	* src/SDCCutil.h
7882	  Format inline asm coding style.
7883
78842016-01-23 Ben Shi <powerstudio1st AT 163 DOT com>
7885
7886	* configure
7887	* configure.ac
7888	* debugger/mcs51/configure
7889	* debugger/mcs51/configure.ac
7890	* support/cpp/configure
7891	* support/cpp/configure.ac
7892	* support/packihx/configure
7893	* support/packihx/configure.ac
7894	  Try to use C99 first.
7895	* src/SDCC.lex
7896	  Remove a duplicate function definition.
7897	* src/SDCC.y
7898	  Change to C99 style.
7899
79002016-01-22 Philipp Klaus Krause <pkk AT spth.de>
7901
7902	* src/SDCCsymt.c,
7903	  src/SDCCglue.h,
7904	  src/SDCCglue.c:
7905	  Do not display meaningless __reentrent to users.
7906
79072016-01-22 Philipp Klaus Krause <pkk AT spth.de>
7908
7909	* src/z80/gen.c,
7910	  src/z80/peep.c:
7911	  Make estimate for preserved regs on function pointers less conservative.
7912	* src/SDCCsymt.c:
7913	  Consider preserved regs for type of function pointer.
7914
79152016-01-22 Philipp Klaus Krause <pkk AT spth.de>
7916
7917	* src/z80/peep.c:
7918	  More accurate handling of conditional jumps, handle ex (sp), ix and
7919	  ex (sp), iy.
7920
79212016-01-21 Philipp Klaus Krause <pkk AT spth.de>
7922
7923	* src/SDCC.y:
7924	  Seems we have to worry about more than MSVC wrt. C99, patch #265 by Peter
7925	  Dons Tychsen.
7926
79272016-01-21 Philipp Klaus Krause <pkk AT spth.de>
7928
7929	* src/SDCC.lex,
7930	  src/SDCC.y,
7931	  src/SDCCerr.c,
7932	  src/SDCCerr.h,
7933	  src/SDCCsymt.h,
7934	  src/*/main.c,
7935	  src/z80/gen.c:
7936	  Implement declaration of preserved registers, RFE #483.
7937	* src/z80/peep.c
7938	  Handle preserved register information in peephole optimization.
7939	* device/include/stdlib.h,
7940	  device/include/string.h:
7941	  Preserved register information on standard functions.
7942	* doc/sdccman.lyx:
7943	  Document syntax for specifying preserved registers.
7944
79452016-01-20 Philipp Klaus Krause <pkk AT spth.de>
7946
7947	* src/z80/peep.c:
7948	  More exact handling of ex, support for decimal shifts.
7949
79502016-01-18 Philipp Klaus Krause <pkk AT spth.de>
7951
7952	* src/SDCCdebug.c:
7953	  Debug info for block-copy-initialized global variables, patch #262 by
7954	  Peter Dons Tychsen.
7955	* src/SDCCdwarf2.c:
7956	  Fix handling of declared, but unused global vairables in debug output,
7957	  patch #263 by Peter Dons Tychsen.
7958	* src/z80/peep.c:
7959	  More accurate handling of functions returning long long for peephole
7960	  optimizer.
7961	* src/SDCCmain.c:
7962	  Fix stream for help output, patch #264 by Peter Dons Tychsen.
7963
79642016-01-18 Ben Shi <powerstudio1st AT 163 DOT com>
7965
7966	* src/SDCCicode.c
7967	  Apply a modified version of patch #261 by Peter Dons Tychsen.
7968	* support/regression/bug-2455.c
7969	  Improve test case.
7970
79712016-01-18 Philipp Klaus Krause <pkk AT spth.de>
7972
7973	* src/SDCCicode.c:
7974	  Fix pointer dereference issue, patch #261 by Peter Dons Tychsen.
7975
79762016-01-17 Molnar Karoly <molnarkaroly AT users.sf.net>
7977
7978	* device/non-free/include/pic14/*.h,
7979	  device/non-free/include/pic16/*.h,
7980	  device/non-free/lib/pic14/libdev/*.c,
7981	  device/non-free/lib/pic16/libdev/*.c:
7982	  Updated the device files.
7983
79842016-01-17 Molnar Karoly <molnarkaroly AT users.sf.net>
7985
7986	* src/pic14/pcode.c,
7987	  src/pic14/pcode.h,
7988	  src/pic16/ralloc.c,
7989	  src/pic16/ralloc.h,
7990	  src/pic16/pcodepeep.c,
7991	  src/pic16/ralloc.c,
7992	  src/pic16/ralloc.h:
7993	  On more place I exchanged the "char *" to "const char *".
7994
7995	* src/regression/Makefile:
7996	  Added the option to CFLAGS: --no-warn-non-free
7997
79982016-01-16 Molnar Karoly <molnarkaroly AT users.sf.net>
7999
8000	* src/pic14/gen.c,
8001	  src/pic14/pcode.c:
8002	  Each function has its own code section.
8003
8004	* src/pic16/pcode.c:
8005	  Fix a gcc warning.
8006
80072016-01-15 Ben Shi <powerstudio1st AT 163 DOT com>
8008
8009	* src/SDCCicode.c
8010	  Fix bug #2455.
8011	* support/regression/bug-2455.c
8012	  Add a new test case.
8013
80142016-01-14 Molnar Karoly <molnarkaroly AT users.sf.net>
8015
8016	* device/lib/pic14/configure,
8017	  device/lib/pic14/configure.ac,
8018	  device/lib/pic16/configure.ac:
8019	  Do away with the automake warning:
8020	  "option 'subdir-objects' is disabled"
8021
8022	* device/lib/pic16/Makefile.in,
8023	  device/lib/pic16/aclocal.m4,
8024	  device/lib/pic16/configure,
8025	  device/lib/pic16/depcomp,
8026	  device/lib/pic16/install-sh,
8027	  device/lib/pic16/missing,
8028	  device/lib/pic16/debug/Makefile.in,
8029	  device/lib/pic16/libc/Makefile.in,
8030	  device/lib/pic16/libio/Makefile.am,
8031	  device/lib/pic16/libio/Makefile.in,
8032	  device/lib/pic16/libio/adc.ignore,
8033	  device/lib/pic16/libio/i2c.ignore,
8034	  device/lib/pic16/libio/usart.ignore,
8035	  device/lib/pic16/libm/Makefile.in,
8036	  device/lib/pic16/libsdcc/Makefile.in,
8037	  device/lib/pic16/startup/Makefile.in,
8038	  device/non-free/include/pic16/pic18fam.h:
8039	  Improve of update to gputils-1.4.2-1.
8040
80412016-01-12 Philipp Klaus Krause <pkk AT spth.de>
8042
8043	* src/z80/peep.c:
8044	  More accurate handling of Z80/Z180 I/O in peepholes.
8045
80462016-01-11 Ben Shi <powerstudio1st AT 163 DOT com>
8047
8048	* src/ds390/ralloc.c
8049	* src/mcs51/ralloc.c
8050	  Improve positionRegs().
8051	* src/mcs51/gen.c
8052	  Roll back to previous version.
8053	* support/regression/tests/bug-2263.c
8054	* support/regression/tests/bug-2403.c
8055	  Add new test cases.
8056
80572016-01-10 Philipp Klaus Krause <pkk AT spth.de>
8058
8059	* src/z80/peep.c:
8060	  More accurate handling of Z80/Z180 I/O in peepholes.
8061
80622016-01-10 Ben Shi <powerstudio1st AT 163 DOT com>
8063
8064	* src/mcs51/gen.c
8065	  Fix a bug in genOr() when all operands are in registers.
8066	* support/regression/tests/bug-2448.c
8067	  Add a new test case.
8068
80692016-01-09 Molnar Karoly <molnarkaroly AT users.sf.net>
8070
8071	* support/scripts/cinc2h.pl,
8072	  support/optimize_pic16devices.pl,
8073	  support/z80-disasm.pl:
8074	  Some minor repairs.
8075
8076	* device/include/pic14/pic14devices.txt,
8077	  device/include/pic14/pic16regs.h,
8078	  device/include/pic16/pic16devices.txt,
8079	  device/include/pic16/pic18fregs.h,
8080	  device/lib/pic16/configure,
8081	  device/lib/pic16/libio/Makefile.am,
8082	  device/lib/pic16/libio/Makefile.in,
8083	  device/lib/pic16/libio/adc.ignore,
8084	  device/lib/pic16/libio/i2c.ignore,
8085	  device/lib/pic16/libio/usart.ignore,
8086	  device/non-free/include/pic14/*.h,
8087	  device/non-free/include/pic16/*.h,
8088	  device/non-free/lib/pic14/libdev/devices.txt,
8089	  device/non-free/lib/pic14/libdev/*.c,
8090	  device/non-free/lib/pic16/Makefile.in,
8091	  device/non-free/lib/pic16/aclocal.m4,
8092	  device/non-free/lib/pic16/configure,
8093	  device/non-free/lib/pic16/processors.ac,
8094	  device/non-free/lib/pic16/libdev/Makefile.am,
8095	  device/non-free/lib/pic16/libdev/Makefile.in,
8096	  device/non-free/lib/pic16/libdev/*.c,
8097	  doc/sdccman.lyx:
8098	  Updated to gputils-1.4.2-1.
8099
81002016-01-06 Philipp Klaus Krause <pkk AT spth.de>
8101
8102	* src/SDCCicode.c:
8103	  Optimize comparisons of cheap variables to expensive constants more.
8104	* src/SDCCast.c:
8105	  Use cheaper types for implicitly introduced constants.
8106
81072016-01-05 Philipp Klaus Krause <pkk AT spth.de>
8108
8109	* src/SDCCast.c:
8110	  Do not try to output debug info in case of fatal errors - patch #260 by
8111	  Peter Dons Tychsen
8112	* src/z80/gen.c,
8113	  support/regression/tests/bug-2452.c:
8114	  Fix gbz80 right shift bug #2452.
8115
81162016-01-05 Ben Shi <powerstudio1st AT 163 DOT com>
8117
8118	* src/SDCCicode.c
8119	  Fix bug: members of pointer arrays are always treated as r-values.
8120	* support/regression/tests/gcc-torture-execute-930526-1.c
8121	  Improve test case.
8122	* support/sdbinutils/binutils/arlex.c
8123	  Removed.
8124
81252016-01-04 Philipp Klaus Krause <pkk AT spth.de>
8126
8127	* src/z80/peep.c:
8128	  Fix handling of nop in z80MightRead, patch #259 by alvin.
8129	* src/SDCCicode.c:
8130	  Optimize comparisons of cheap variables to expensive constants.
8131
81322016-01-03 Philipp Klaus Krause <pkk AT spth.de>
8133
8134	* sdas/linksrc/lkarea.c:
8135	  Fix handling of NOLOAD for STM8 in linker, patch by Peter Dons Tychsen.
8136	* src/SDCCralloc.hpp:
8137	  Fix compare operator for register assignments.
8138
81392016-01-02 Ben Shi <powerstudio1st AT 163 DOT com>
8140
8141	* support/sdbinutils/binutils/arparse.c
8142	* support/sdbinutils/binutils/arparse.h
8143	  Delete intermediate files.
8144
81452016-01-02 Maarten Brock <sourceforge.brock AT dse.nl>
8146
8147	* all.vcxproj,
8148	* config.vcxproj,
8149	* sdas/as6808/as_hc08.vcxproj,
8150	* sdas/as8051/asx8051.vcxproj,
8151	* sdas/as8xcxxx/sdas390.vcxproj,
8152	* sdas/asgb/asgb.vcxproj,
8153	* sdas/linksrc/aslink.vcxproj,
8154	* src/avr/avr.vcxproj,
8155	* src/ds390/ds390.vcxproj,
8156	* src/hc08/hc08.vcxproj,
8157	* src/mcs51/mcs51.vcxproj,
8158	* src/pic14/pic14.vcxproj,
8159	* src/pic16/pic16.vcxproj,
8160	* src/sdcc.vcxproj,
8161	* src/xa51/xa51.vcxproj,
8162	* src/z80/z80.vcxproj,
8163	* src/z80/z80a.vcxproj,
8164	* support/cpp/sdcpp.vcxproj,
8165	* support/librarian/librarian.vcxproj,
8166	* support/makebin/makebin.vcxproj,
8167	* support/packihx/packihx.vcxproj: applied patch 252 by Peter Dons Tychsen
8168	  to remove UpgradeFromVC60.props
8169
81702015-12-30 Philipp Klaus Krause <pkk AT spth.de>
8171
8172	* src/SDCCdwarf2.c:
8173	  Fix memory bug in DWARF output, patch by Peter Dons Tychsen.
8174	* sdas/asxxsrc/asdbg.c:
8175	  Fix 0 pointer access when specifying -y or -j without -o.
8176
81772015-12-30 Ben Shi <powerstudio1st AT 163 DOT com>
8178
8179	* src/SDCCsymt.c
8180	  Make comparePtrType() less strict.
8181	* support/regression/tests/bug-2271.c
8182	  Improve test case.
8183
81842015-12-28 Ben Shi <powerstudio1st AT 163 DOT com>
8185
8186	* doc/sdccman.lyx
8187	  Suggest msys2 along with msys while building wih MSVC.
8188	* sdas/asxxsrc/assym.c
8189	  Apply patch #253.
8190
81912015-12-26 Ben Shi <powerstudio1st AT 163 DOT com>
8192
8193	* src/stm8/gen.c
8194	  Add absent call to dwWriteFunction() while --debug is specified.
8195
81962015-12-24 Ben Shi <powerstudio1st AT 163 DOT com>
8197
8198	* src/SDCC.y
8199	  Fix a bug in the front end. (pointer array parameters)
8200	* support/regression/tests/bug-2271.c
8201	  Add a test case.
8202
82032015-12-21 Philipp Klaus Krause <pkk AT spth.de>
8204
8205	* src/stm8/main.c:
8206	  Option for ELF output in STM8 backend.
8207
82082015-12-20 Philipp Klaus Krause <pkk AT spth.de>
8209
8210	* sdas/linksrc/lkelf.c,
8211	  sdas/linksrc/lkmain.c:
8212	  STM8 ELF linker support from patch #251.
8213
82142015-12-18 Philipp Klaus Krause <pkk AT spth.de>
8215
8216	* src/SDCCmain.c:
8217	  Always use preprocessor in standard mode.
8218	* device/include/stdlib.h:
8219	  Fix declaration order for inlined aligned_alloc().
8220
82212015-12-17 Ben Shi <powerstudio1st AT 163 DOT com>
8222
8223	* Makefile.in
8224	  Fix the conflict in parallel build caused by component dependency.
8225
82262015-12-16 Ben Shi <powerstudio1st AT 163 DOT com>
8227
8228	* sim/ucsim/cmd.src/cmdset.cc
8229	  Apply a modified version of patch #250.
8230
82312015-12-14 Ben Shi <powerstudio1st AT 163 DOT com>
8232
8233	* src/SDCCast.c:
8234	  Avoid redundant call to processParms().
8235	* support/regression/tests/bug-2436.c
8236	  Add a new test case.
8237
82382015-12-10 Philipp Klaus Krause <pkk AT spth.de>
8239
8240	* device/include/wchar.h:
8241	  A basic wchar.h with for types that are useful even with no wide character
8242	  functions around.
8243
82442015-12-05 Ben Shi <powerstudio1st AT 163 DOT com>
8245
8246	* src/SDCC.y
8247	* src/SDCCerr.c
8248	* src/SDCCerr.h
8249	  Fix a bug of type definition of a function by typedef.
8250
82512015-12-02 Ben Shi <powerstudio1st AT 163 DOT com>
8252
8253	* src/SDCCerr.c
8254	* src/SDCCerr.h
8255	  Fix defects in previous commit.
8256
82572015-12-01 Ben Shi <powerstudio1st AT 163 DOT com>
8258
8259	* src/SDCC.y
8260	* src/SDCCerr.c
8261	* src/SDCCerr.h
8262	  Remove warning #220 (W_ANONYMOUS_MEMBER).
8263
82642015-11-28 Philipp Klaus Krause <pkk AT spth.de>
8265
8266	* src/SDCCpeeph.c:
8267	  Fix operandsNotRelated() bug #2435.
8268	* device/include/stddef.h,
8269	  device/include/stdlib.h,
8270	  src/SDCC.lex,
8271	  src/SDCCmain.c,
8272	  src/SDCCval.c,
8273	  src/SDCCval.h,
8274	  support/regression/tests/charconst.c,
8275	  support/regression/tests/string.c:
8276	  Make wchar_t UTF-32.
8277	* support/cpp/Makefile.in:
8278	  Fix call to make.
8279
82802015-11-26 Ben Shi <powerstudio1st AT 163 DOT com>
8281
8282	* support/regression/tests/gcc-torture-execute-20050111-1.c
8283	* support/regression/tests/gcc-torture-execute-950511-1.c
8284	  Disable test cases.
8285
82862015-11-24 Ben Shi <powerstudio1st AT 163 DOT com>
8287
8288	* src/SDCCicode.c
8289	* src/SDCCval.c
8290	* src/SDCCval.h
8291	  Improve long long multiplication.
8292	* support/regression/tests/gcc-torture-execute-20050111-1.c
8293	* support/regression/tests/gcc-torture-execute-950511-1.c
8294	* support/regression/tests/longlong.c
8295	  Improve test cases.
8296
82972015-11-14 Philipp Klaus Krause <pkk AT spth.de>
8298
8299	* doc/Makefile.in,
8300	  doc/sdccman.lyx:
8301	  Fix bookmarks and hyperlinks in manual, bug #2405.
8302	* src/SDCCglue.c:
8303	  Drop build time in asm output to ease reproducible builds.
8304	* device/lib/*/Makefile.in,
8305	  device/lib/Makefile.in:
8306	  Drop build time in sdar calls to make non-pic lib builds reproducible.
8307
83082015-11-13 Ben Shi <powerstudio1st AT 163 DOT com>
8309
8310	* support/cpp/libcpp/include/symtab.h:
8311	  Fix build failure on MacOS x86-64.
8312	* support/regression/tests/inline.c:
8313	  Fix failure in test-host in NetBSD.
8314	* support/regression/tests/literalop.c:
8315	  Disable some tests on MacOS x86-64.
8316
83172015-11-12 Maarten Brock <sourceforge.brock AT dse.nl>
8318
8319	* device/include/mcs51/at89c51id2.h: moved
8320
83212015-11-12 Philipp Klaus Krause <pkk AT spth.de>
8322
8323	* doc/sdccman.lyx:
8324	  Update standard compliance documentation.
8325
83262015-11-09 Maarten Brock <sourceforge.brock AT dse.nl>
8327
8328	* device/include/mcs51/at89c51ed2.h: applied patch 247
8329	* device/include/at89c51id2.h: new, added, thanks Victor Munoz
8330	* src/SDCC.lex: it seems really hard not to declare vars amidst the code
8331	* src/SDCCast.c (expandInlineFuncs): fix bug 2295: also expand for clauses
8332	* support/regression/tests/ctype.c: warn about undefined __STDC_VERSION__
8333	* support/regression/tests/inline.c (bug_2295): new test case
8334
83352015-11-09 Philipp Klaus Krause <pkk AT spth.de>
8336
8337	* src/SDCC.lex,
8338	  src/SDCCval.c:
8339	  UTF-32 and UTF-16 encodig in strVal().
8340
83412015-11-08 Maarten Brock <sourceforge.brock AT dse.nl>
8342
8343	* src/mcs51/gen.c: added IS_AOP_IMMEDIATE,
8344	  (gencjneshort): applied modified part of patch 129, thanks Hubert Sack
8345
83462015-11-08 Philipp Klaus Krause <pkk AT spth.de>
8347
8348	* support/regression/tests/string.c
8349	  Separate C11 behaviour from implementation-defined behaviour.
8350
83512015-11-07 Ben Shi <powerstudio1st AT 163 DOT com>
8352
8353	* src/SDCCglue.c:
8354	  Eliminate unused static symbols. (__str_%d generated in stringToSymbol()).
8355	* support/regression/tests/bug-2089.c:
8356	  Improve test case.
8357	* support/regression/ports/mcs51-xstack-auto/spec.mk:
8358	  Use default sdcc11.
8359	* support/regression/tests/string.c:
8360	  Disabled for test-host.
8361
83622015-11-07 Philipp Klaus Krause <pkk AT spth.de>
8363
8364	* support/util/dbuf_string.h,
8365	  support/util/dbuf_string.c,
8366	  src/SDCCval.c,
8367	  src/SDCC.lex:
8368	  Handling of UTF-16 and UTF-16 string literals in the frontend up to
8369	  strVal().
8370
83712015-11-06 Philipp Klaus Krause <pkk AT spth.de>
8372
8373	* support/util/dbuf.h,
8374	  support/util/dbuf.c,
8375	  support/util/dbuf_string.h,
8376	  support/util/dbuf_string.c:
8377	  Allow prepending to dynamic buffers.
8378	* src/SDCC.lex,
8379	  src/SDCCerr.h,
8380	  src/SDCCerr.c:
8381	  Support C11 u8 prefix for UTF-8-encoded unicode string literals.
8382	* src/SDCCutil.c,
8383	  support/regression/tests/string.c:
8384	  Fix handling of universal escape sequences in UTF-8-encoded string literals.
8385	* support/regression/tests/iso-8859-1.c:
8386	  Test support for source encodings other than unicode.
8387
83882015-11-06 Maarten Brock <sourceforge.brock AT dse.nl>
8389
8390	* src/SDCC.y: only emit W_FLEXARRAY_INSTRUCT for c89
8391	* src/SDCCpeeph.c (labelJTInRange): removed env SDCC_SJMP_JUMPTABLE check,
8392	  closes patch #29,
8393	  (readRules): clean up
8394
83952015-11-05 Philipp Klaus Krause <pkk AT spth.de>
8396
8397	* src/SDCCsymt.c:
8398	  Print calling convention for functions.
8399	* src/z80/peep.c:
8400	  More accurate handling of register arguments in peepholes.
8401
84022015-11-05 Maarten Brock <sourceforge.brock AT dse.nl>
8403
8404	* src/mcs51/ralloc.c (packRegsForOneuse): fixed bug 2373
8405	* support/regression/tests/bug-2373.c: new, added
8406
84072015-11-05 Maarten Brock <sourceforge.brock AT dse.nl>
8408
8409	* sdcc.sln,
8410	* src/yacc.vcxproj: deleted yacc project
8411	* src/sdcc.vcxproj,
8412	* src/sdcc.vcxproj.filters: moved SDCC.y here for better dependencies
8413	* SDCC.props: new, added Visual C property sheet for generic settings like
8414	  boost path (default: c:\local\boost_1_59_0\)
8415	* src/hc08/hc08.vcxproj,
8416	* src/sdcc.vcxproj,
8417	* src/stm8/stm8.vcxproj,
8418	* src/z80/z80.vcxproj: use SDCC.props
8419	* sdas/linksrc/lkaomf51.c: output capitals depending on the zflag
8420	* src/common.h
8421	* src/stm8/ralloc2.cc (extra_ic_generated),
8422	* src/z80/ralloc2.cc (default_operand_cost, assign_cost, Ainst_ok,
8423	  rough_cost_estimate),
8424	* src/SDCCglue.c (printIvalChar),
8425	* src/SDCCopt.c (convertToFcall): fixed warnings
8426	* src/SDCCutil.c (isblank): added for MSVC 2010
8427	* support/cpp/ansidecl.h: deleted
8428	* support/cpp/sdcpp.vcxproj,
8429	* support/cpp/sdcpp.vcxproj.filters: use files in support/sdbinutils/
8430	* support/sdbinutils/libiberty/getpwd.c: fixed for MSVC
8431
84322015-10-30 Ben Shi <powerstudio1st AT 163 DOT com>
8433
8434	* sdas/linksrc/lkmem.c:
8435	  Fix defects in previous commit.
8436
84372015-10-30 Ben Shi <powerstudio1st AT 163 DOT com>
8438
8439	* sdas/linksrc/lkarea.c:
8440	* sdas/linksrc/lkmem.c:
8441	  Improve the error message in .mem when no enough space for the stack.
8442	  Suggest the largest spare space (address and size) in the internal RAM.
8443
84442015-10-28 Ben Shi <powerstudio1st AT 163 DOT com>
8445
8446	* sdas/linksrc/lkmem.c:
8447	  Fix incorrect check of "--xram-size".
8448
84492015-10-27 Ben Shi <powerstudio1st AT 163 DOT com>
8450
8451	* src/SDCCglue.c:
8452	  Bug fix: char s[10] = "ab", bytes beyond "ab" sometimes aren't set to 0.
8453
84542015-10-26 Philipp Klaus Krause <pkk AT spth.de>
8455
8456	* Merge cpp-merge-upstream branch to get improved standard support.
8457
84582015-10-26 Philipp Klaus Krause <pkk AT spth.de>
8459
8460	* .version:
8461	  Bump version due to improved standard support.
8462
84632015-10-24 Philipp Klaus Krause <pkk AT spth.de>
8464
8465	* src/stm8/ralloc.c,
8466	  src/port.h:
8467	  Spelling fixes.
8468
84692015-10-23 Philipp Klaus Krause <pkk AT spth.de>
8470
8471	* support/cpp/Makefile.in:
8472	  Fix build-dependency of sdcpp on libiberty.
8473	* support/cpp/sdcpp.opt,
8474	  support/cpp/sdcpp-opts.c,
8475	  support/cpp/libcpp/init.c:
8476	  Support C11 in preprocessor.
8477	* src/SDCCmain.c:
8478	  Fix standard support, add support for c95 and sdcc11 dialects.
8479
84802015-10-22 Ben Shi <powerstudio1st AT 163 DOT com>
8481
8482	* SDCC.y:
8483	  Add checks for NULL pointers.
8484
84852015-10-19 Ben Shi <powerstudio1st AT 163 DOT com>
8486
8487	* src/SDCCast.c:
8488	* src/SDCCglue.c:
8489	* src/SDCCglue.h:
8490	  Eliminate redundant string literals to be generated.
8491	* support/regression/tests/bug-2089.c:
8492	  Add a new test case.
8493
84942015-10-18 Philipp Klaus Krause <pkk AT spth.de>
8495
8496	* support/cpp/libcpp/*:
8497	  Reformat to reduce diff to upstream cpp.
8498
84992015-10-17 Philipp Klaus Krause <pkk AT spth.de>
8500
8501	* support/cpp/libcpp/*:
8502	  Reformat to reduce diff to upstream cpp.
8503
85042015-10-11 Philipp Klaus Krause <pkk AT spth.de>
8505
8506	* src/SDCCerr.h,
8507	  src/SDCCerr.c,
8508	  src/SDCC.lex:
8509	  Support C95 wide string literals.
8510
85112015-10-09 Philipp Klaus Krause <pkk AT spth.de>
8512
8513	* support/cpp/libcpp/include/*:
8514	  Reformat to reduce diff to upstream version.
8515
85162015-10-10 Ben Shi <powerstudio1st AT 163 DOT com>
8517
8518	* support/util/dbuf_string.c:
8519	  Add check for null pointer.
8520
85212015-10-09 Ben Shi <powerstudio1st AT 163 DOT com>
8522
8523	* src/z80/gen.c:
8524	  Wrap strtoul() to support $-prefix hex numbers.
8525
85262015-10-09 Philipp Klaus Krause <pkk AT spth.de>
8527
8528	* New memory management by merging malloc branch into trunk.
8529
85302015-10-09 Ben Shi <powerstudio1st AT 163 DOT com>
8531
8532	* sdas/linksrc/lkaomf51.c:
8533	  Add bound check while accessing a buffer in the heap.
8534
85352015-10-08 Philipp Klaus Krause <pkk AT spth.de>
8536
8537	* support/cpp/libcpp/files.c:
8538	  Drop cpp support for Borland C.
8539
85402015-10-07 Philipp Klaus Krause <pkk AT spth.de>
8541
8542	* support/regression/tests/charconst.c,
8543	  support/regression/tests/escape.c:
8544	  Disable some tests for host, so we don't need a C11 host.
8545
85462015-10-07 Ben Shi <powerstudio1st AT 163 DOT com>
8547
8548	* src/SDCCval.c:
8549	  Add bound check in reorderIlist().
8550	* support/regression/bug-2423.c:
8551	  Add a new test case.
8552
85532015-10-06 Philipp Klaus Krause <pkk AT spth.de>
8554
8555	* src/SDCCerr.h,
8556	  src/SDCCerr.c,
8557	  src/SDCCutil.h,
8558	  src/SDCCutil.c,
8559	  src/SDCCval.c,
8560	  support/regression/tests/charconst.c,
8561	  support/regression/tests/escape.c:
8562	  Implement escape sequences for wide character constants, fix universal
8563	  escape sequences.
8564
85652015-10-06 Philipp Klaus Krause <pkk AT spth.de>
8566
8567	* device/include/uchar.h,
8568	  src/SDCCval.h,
8569	  src/SDCCval.c,
8570	  src/SDCC.lex,
8571	  src/SDCCutil.c,
8572	  src/SDCCmain.c,
8573	  src/SDCCglobl.h,
8574	  src/SDCCerr.h,
8575	  src/SDCCerr.c,
8576	  support/regression/tests/charconst.c:
8577	  Wide character constants.
8578
85792015-10-05 Philipp Klaus Krause <pkk AT spth.de>
8580
8581	* device/lib/malloc.c:
8582	  Improve comments on heap data structures.
8583
85842015-10-04 Philipp Klaus Krause <pkk AT spth.de>
8585
8586	* device/include/stdlib.h,
8587	  device/lib/aligned_alloc.c:
8588	  Implement aligned_alloc().
8589
85902015-10-02 Philipp Klaus Krause <pkk AT spth.de>
8591
8592	* device/lib/realloc.c:
8593	  Fix a bug in realloc() freeing.
8594
85952015-10-02 Philipp Klaus Krause <pkk AT spth.de>
8596
8597	* device/lib/free.c,
8598	  device/lib/realloc.c,
8599	  device/lib/malloc.c,
8600	  device/lib/realloc.c,
8601	  support/regression/tests/malloc.c:
8602	  Simplify memory management, document search of free list.
8603	* support/regression/fwk/lib/testfwk.c:
8604	  Support printing unsigned in test logs
8605
86062015-10-02 Ben Shi <powerstudio1st AT 163 DOT com>
8607
8608	* src/SDCCval.c:
8609	  Loose the condition of warning 116.
8610
86112015-09-29 Ben Shi <powerstudio1st AT 163 DOT com>
8612
8613	* src/stm8/main.c:
8614	  Support "pragma codeseg" and "pragma constseg" in the stm8 port.
8615
86162015-09-28 Ben Shi <powerstudio1st AT 163 DOT com>
8617
8618	* src/stm8/main.c:
8619	  Support "--codeseg" and "--constseg" on the stm8 port.
8620
86212015-09-22 Maarten Brock <sourceforge.brock AT dse.nl>
8622
8623	* device/lib/_calloc.c,
8624	* device/lib/_free.c,
8625	* device/lib/_heap.c,
8626	* device/lib/_malloc.c,
8627	* device/lib/_realloc.c: renamed all _sdcc_* to __sdcc_*,
8628	  removed register keywords,
8629	  changed _sdcc_heap_size to __sdcc_last_memheader,
8630	  removed init_dynamic_memory() and other optimizations
8631	* support/regression/tests/malloc.c: added test for size overflow
8632
86332015-09-21 Ben Shi <powerstudio1st AT 163 DOT com>
8634
8635	* support/regression/tests/gcc-torture-execute-pr28982a.c:
8636	  Enabled for the r2k and r3ka ports.
8637
86382015-09-20 Philipp Klaus Krause <pkk AT spth.de>
8639
8640	* device/lib/calloc.c,
8641	  device/lib/malloc.c,
8642	  device/lib/realloc.c,
8643	  device/lib/free.c:
8644	  Use typedefs for memory block header type, use more pointers to __xdata.
8645	* device/include/stdlib.h,
8646	  device/include/malloc.h:
8647	  Move memory management to stdlib.h, fix stdlib.h inclusion.
8648
86492015-09-20 Philipp Klaus Krause <pkk AT spth.de>
8650
8651	* device/include/asm/*/features.h,
8652	  device/include/malloc.h,
8653	  device/lib/calloc.c,
8654	  device/lib/malloc.c,
8655	  device/lib/realloc.c,
8656	  device/lib/free.c,
8657	  support/regression/tests/malloc.c:
8658	  First version of new, more efficient memory management.
8659
86602015-09-20 Ben Shi <powerstudio1st AT 163 DOT com>
8661
8662	* src/z80/gen.c:
8663	  Fix bugs in genOr() and genXor() while operands are longlong.
8664	* support/regression/tests/longlong.c:
8665	  Enable more tests.
8666
86672015-09-16 Ben Shi <powerstudio1st AT 163 DOT com>
8668
8669	* src/SDCC.y:
8670	* src/SDCCast.c:
8671	* src/SDCCerr.c:
8672	* src/SDCCicode.c:
8673	  Disable nested critical block / function call, support return in inline
8674	  critical functions.
8675	* support/regression/tests/critical.c:
8676	  Improve test case.
8677	* support/regression/tests/malloc.c:
8678	  fix a small spot.
8679
86802015-09-15 Philipp Klaus Krause <pkk AT spth.de>
8681
8682	* support/regression/tests/malloc.c:
8683	  More testing of memory management.
8684
86852015-09-14 Philipp Klaus Krause <pkk AT spth.de>
8686
8687	* support/regression/tests/malloc.c:
8688	  More testing of memory management.
8689
86902015-09-13 Philipp Klaus Krause <pkk AT spth.de>
8691
8692	* device/lib/pic16/*
8693	  Fix delarations to make pic16 lib compile again.
8694
86952015-09-12 Philipp Klaus Krause <pkk AT spth.de>
8696
8697	* src/pic14/genarith.c:
8698	  Fix bug #2417 by applying patch by Juho Salminen.
8699
87002015-09-10 Philipp Klaus Krause <pkk AT spth.de>
8701
8702	* support/regression/tests/bug-2385.c:
8703	  Regression test for bug #2385.
8704
87052015-09-10 Ben Shi <powerstudio1st AT 163 DOT com>
8706
8707	* support/regression/tests/critical.c:
8708	  Improve test case.
8709	* src/SDCC.y:
8710	  Fix a bug: inline critical functions are inlined as non-critical.
8711
87122015-09-09 Philipp Klaus Krause <pkk AT spth.de>
8713
8714	* support/regression/tests/generic.c:
8715	  More testcases for _Generic.
8716	* src/z80/gen.c,
8717	  support/regression/tests/critical.c:
8718	  Fix bug #2416.
8719
87202015-09-04 Philipp Klaus Krause <pkk AT spth.de>
8721
8722	* src/stm8/peep.c:
8723	  Fix handling of bcpl in notUsed().
8724
87252015-09-03 Philipp Klaus Krause <pkk AT spth.de>
8726
8727	* src/pic14/peeph.def:
8728	  Fix bug #2415.
8729	* src/stm8/peeph.def:
8730	  Implement some rules for bit complement.
8731	* src/SDCCval.c,
8732	  support/regression/tests/generic.c:
8733	  Fix bug #2411.
8734	* src/pic16/main.c:
8735	  Use zero-initializing crt0 by default.
8736
87372015-08-27 Ben Shi <powerstudio1st AT 163 DOT com>
8738
8739	* sim/ucsim/packages_in.mk:
8740	  Fix a bug: simulator sz80 is not built if only z80 port is enabled.
8741
87422015-08-22 Ben Shi <powerstudio1st AT 163 DOT com>
8743
8744	* src/stm8/peep.c:
8745	  Fix a bug in peephole rule condition notUsed().
8746
87472015-08-22 Ben Shi <powerstudio1st AT 163 DOT com>
8748
8749	* support/regression/tests/bug-2188.c:
8750	* src/SDCCast.c:
8751	  Apply patch #248 by Pavel Pisa <pisa@cmp.felk.cvut.cz>.
8752
87532015-08-19 Ben Shi <powerstudio1st AT 163 DOT com>
8754
8755	* configure.ac:
8756	* configure:
8757	  Correct build failure on sparc64-netbsd.
8758
87592015-08-19 Ben Shi <powerstudio1st AT 163 DOT com>
8760
8761	* support/regression/tests/condopptr.c:
8762	  Add more test.
8763	* src/SDCC.y:
8764	  Improve conditional expression.
8765	* configure.ac:
8766	* configure:
8767	  Correct spots in previous commit.
8768
87692015-08-17 Ben Shi <powerstudio1st AT 163 DOT com>
8770
8771	* configure.ac:
8772	* configure:
8773	  Extend stack size on cygwin64.
8774
87752015-08-15 Ben Shi <powerstudio1st AT 163 DOT com>
8776
8777        * src/SDCCast.c:
8778          Fix a bug in storage class check.
8779        * support/regression/tests/gcc-torture-execute-20020402-3.c:
8780          Enable test case.
8781
87822015-08-15 Philipp Klaus Krause <pkk AT spth.de>
8783
8784	* src/SDCCast.c,
8785	  support/regression/tests/array.c:
8786	  Implement RFE #454 for index[array] access.
8787	* src/SDCC.y,
8788	  src/SDCCerr.h,
8789	  src/SDCCerr.c:
8790	  Emit warning for non-standard label without statement.
8791	* support/regression/tests/generic.c:
8792	  Disable test for host, since older host compilers are still in use.
8793
87942015-08-12 Philipp Klaus Krause <pkk AT spth.de>
8795
8796	* src/SDCC.lex,
8797	  src/SDCC.y,
8798	  src/SDCCast.c,
8799	  src/SDCCerr.h,
8800	  src/SDCCerr.c,
8801	  support/regression/tests/generic.c,
8802	  doc/sdccman.lyx:
8803	  Implement C11 generic selections.
8804
88052015-08-11 Philipp Klaus Krause <pkk AT spth.de>
8806
8807	* src/SDCCsymt.c,
8808	  src/SDCCerr.h,
8809	  src/SDCCerr.c,
8810	  support/regression/tests/gcc-torture-execute-920721-3.c,
8811	  support/regression/tests/gcc-torture-execute-pr34176.c,
8812	  support/regression/tests/implicit_int.c:
8813	  Diagnostic for implicit int.
8814
88152015-08-10 Philipp Klaus Krause <pkk AT spth.de>
8816
8817	* src/z80/peeph-z80.def:
8818	  Fix bug #2408.
8819	* src/z80/peeph-r2k.def,
8820	* src/z80/peeph-tlcs90.def:
8821	  Synced with z80 peepholes.
8822
88232015-08-09 Philipp Klaus Krause <pkk AT spth.de>
8824
8825	* src/z80/peeph-z80.def:
8826	  Fix bug #2407 using fix suggested by alvin.
8827
88282015-08-02 Philipp Klaus Krause <pkk AT spth.de>
8829
8830	* src/stm8/gen.c:
8831	  Cheaper stm8 division workaround (RFE #449).
8832	* doc/sdccman.lyx:
8833	  Update standard compliance documentation to reflect recently implemented
8834	  feature.
8835
88362015-08-01 Philipp Klaus Krause <pkk AT spth.de>
8837
8838	* src/SDCCsymt.h,
8839	  src/SDCCsymt.c,
8840	  src/SDCCralloc.hpp,
8841	  src/stm8/gen.c:
8842	  Static code analysis to omit stm8 division workaround when safe to do so
8843	  (RFE #448).
8844
88452015-07-31 Ben Shi <powerstudio1st AT 163 DOT com>
8846
8847	* support/regression/tests/gcc-torture-execute-stdarg-5.c:
8848	  Improve test case.
8849
88502015-07-26 Philipp Klaus Krause <pkk AT spth.de>
8851
8852	* src/stm8/gen.c:
8853	  Workaround for for stm8 division hardware bug.
8854
88552015-07-13 Ben Shi <powerstudio1st AT 163 DOT com>
8856
8857	* support/cpp/configure.ac:
8858	* support/cpp/configure:
8859	* support/cpp/Makefile.in:
8860	* Makefile.common.in:
8861	  Fix small spots.
8862
88632015-07-13 Ben Shi <powerstudio1st AT 163 DOT com>
8864
8865	* sdas/linksrc/lklex.c:
8866	  Support unicode character in sdld's command line.
8867	* sdas/linksrc/lkbank.c:
8868	  Remove unsupported ".s28" and ".s37" file extensions.
8869
88702015-07-12 Ben Shi <powerstudio1st AT 163 DOT com>
8871
8872	* configure.in:
8873	* debugger/mcs51/configure:
8874	* debugger/mcs51/configure.in:
8875	* device/lib/pic14/Makefile.in:
8876	* device/lib/pic14/aclocal.m4:
8877	* device/lib/pic14/config.h.in:
8878	* device/lib/pic14/configure.in:
8879	* device/lib/pic14/libm/Makefile.in:
8880	* device/lib/pic14/libsdcc/enhanced/Makefile.in:
8881	* device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in:
8882	* device/lib/pic14/libsdcc/regular/Makefile.in:
8883	* device/non-free/lib/pic14/configure:
8884	* device/non-free/lib/pic14/configure.in:
8885	* sim/ucsim/configure.in:
8886	* support/cpp/configure:
8887	* support/cpp/configure.in:
8888	* support/packihx/configure:
8889	* support/packihx/configure.in:
8890	  Move all configure.in to configure.ac and update with autoconf 2.69.
8891
88922015-07-10 Philipp Klaus Krause <pkk AT spth.de>
8893
8894	* src/stm8/peeph.def:
8895	  Fix comments.
8896	* device/lib/stm8/_mulint.s:
8897	  Faster, smaller integer multiplication.
8898
88992015-07-08 Ben Shi <powerstudio1st AT 163 DOT com>
8900
8901	* support/sdbinutils/bfd/asxxxx.c:
8902	  Fix a bug in check .rel format while there are comments.
8903
89042015-07-06 Ben Shi <powerstudio1st AT 163 DOT com>
8905
8906	* configure:
8907	* configure.in:
8908	* device/include/Makefile.in:
8909	* support/sdbinutils/Makefile.in:
8910	* support/sdbinutils/binutils/Makefile.in:
8911	  Make "make install" and "make uninstall" more clear.
8912
89132015-07-05 Philipp Klaus Krause <pkk AT spth.de>
8914
8915	* support/sdbinutils/binutils/*
8916	  Fix bug #2394 and do not ship files generated by yacc.
8917
89182015-07-03 Philipp Klaus Krause <pkk AT spth.de>
8919
8920	* src/SDCCpeeph.c:
8921	  Patch from z88dk to allow comments in between rule and condition.
8922
89232015-07-01 Philipp Klaus Krause <pkk AT spth.de>
8924
8925	* Merge upstream binutils 2.25 by merging binutils branch into trunk.
8926
89272015-07-01 Ben Shi <powerstudio1st AT 163 DOT com>
8928
8929	* src/mcs51/peep.c:
8930	  Add NULL pointer check.
8931
89322015-06-30 Philipp Klaus Krause <pkk AT spth.de>
8933
8934	* src/SDCCmain.c:
8935	  Adjust buffer sizes RFE #441.
8936
89372015-06-29 Philipp Klaus Krause <pkk AT spth.de>
8938
8939	* src/SDCCmain.c,
8940	  doc/sdccman.lyx,
8941	  support/regression/tests/version.c:
8942	  Implement patchlevel macro RFE #441.
8943
89442015-06-28 Philipp Klaus Krause <pkk AT spth.de>
8945
8946	* support/sdbinutils/*
8947	  Merge upstream binutils 2.25.
8948
89492015-06-28 Philipp Klaus Krause <pkk AT spth.de>
8950
8951	* support/sdbinutils/*
8952	  Import more parts of upstream binutils 2.23.2.
8953
89542015-06-27 Philipp Klaus Krause <pkk AT spth.de>
8955
8956	* support/sdbinutils/*
8957	  Import more parts of upstream binutils 2.23.2.
8958
89592015-06-26 Ben Shi <powerstudio1st AT 163 DOT com>
8960
8961	* device/include/float.h:
8962	  Hide sdcc library private macros.
8963	* support/sdbinutils/include/objalloc.h:
8964	* support/sdbinutils/libiberty/objalloc.c:
8965	  Apply patches from GNU.
8966
89672015-06-25 Ben Shi <powerstudio1st AT 163 DOT com>
8968
8969	* configure:
8970	* configure.in:
8971	* device/non-free/include/Makefile.in:
8972	  Fix the bug "make uninstall" left empty directory.
8973	* src/SDCCBBlock.c:
8974	  Apply patch #158 to fix bug #1693.
8975	* support/regression/tests/version.c:
8976	  Fix the failure in "make test-host".
8977
89782015-06-24 Philipp Klaus Krause <pkk AT spth.de>
8979
8980	* src/SDCCmain.c,
8981	  doc/sdccman.lyx,
8982	  support/regression/tests/version.c:
8983	  Implement version macros RFE #441.
8984
89852015-06-24 Ben Shi <powerstudio1st AT 163 DOT com>
8986
8987	* support/regression/collate-results.py:
8988	  Fix the bug that an abnormal stop in reg-rest can not be detected.
8989
89902015-06-24 Philipp Klaus Krause <pkk AT spth.de>
8991
8992	* src/z80/ralloc.c:
8993	  Fix bug #2389.
8994	* src/SDCCglue.c,
8995	  src/SDCCmain.c,
8996	  src/SDCCutil.c,
8997	  src/SDCCutil.h:
8998	  Remove build date from version string to make reproducible builds easier.
8999
90002015-06-24 Maarten Brock <sourceforge.brock AT dse.nl>
9001
9002	* Small Device C Compiler 3.5.0 released
9003	* .version, doc/sdccman.lyx: changed sdcc version to 3.5.1
9004
90052015-06-20 Maarten Brock <sourceforge.brock AT dse.nl>
9006
9007	* support/scripts/gen_known_bugs.pl: fixed by Raphael Neider for changed
9008	  SourceForge pages
9009
90102015-06-18 Maarten Brock <sourceforge.brock AT dse.nl>
9011
9012	* .version,
9013	* doc/INSTALL.txt,
9014	* doc/sdccman.lyx: version 3.5.0
9015
90162015-06-18 Maarten Brock <sourceforge.brock AT dse.nl>
9017
9018	* src/SDCCmain.c (preProcess): reverted removal of SDCC macro
9019	* src/stm8/gen.c (genLeftShiftLiteral): hushed a compiler warning
9020	* support/regression/tests/gcc-torture-execute-960218-1.c,
9021	* support/regression/tests/gcc-torture-execute-20030913-1.c: renamed test()
9022	  to prevent double testing, renamed glob to prevent name conflict
9023	* support/scripts/sdcc.nsi: removed dedication to Borut Razem
9024
90252015-06-09 Maarten Brock <sourceforge.brock AT dse.nl>
9026
9027	* support/scripts/repack_release.sh: changed mac osx snapshot source,
9028	  forced uploading to directories
9029
90302015-06-07 Philipp Klaus Krause <pkk AT spth.de>
9031
9032	* doc/sdccman.lyx:
9033	  Add section on the use of --allow-unsafe-reads on Z80-based systems.
9034
90352015-06-06 Maarten Brock <sourceforge.brock AT dse.nl>
9036
9037	* .version,
9038	* doc/INSTALL.txt,
9039	* doc/sdccman.lyx: version 3.5.0 rc1
9040	* sdcc.spec: version 3.5.0
9041	* device/lib/pic14/libsdcc/idata.c: cosmetics
9042	* support/regression/tests/bug-2274.c: prevented double testing by rename
9043	* support/regression/tests/gcc-torture-execute-stdarg-5.c: no ASSERT(0)
9044
90452015-06-05 Philipp Klaus Krause <pkk AT spth.de>
9046
9047	* doc/sdccman.lyx,
9048	  src/SDCCglobl.h,
9049	  src/SDCClospre.cc,
9050	  src/SDCCmain.c:
9051	  Use more generic name for option for unsafe reads.
9052
90532015-05-23 Ben Shi <powerstudio1st AT 163 DOT com>
9054
9055	* src/SDCCast.c:
9056	* src/SDCCglue.c:
9057	  Support initialization of char array in form 'char arr[] = {"abc"};'.
9058	* support/regression/tests/bug-2059.c:
9059	  Add a new test case.
9060
90612015-05-21 Ben Shi <powerstudio1st AT 163 DOT com>
9062
9063	* src/SDCCsymt.c:
9064	  Remove useless code.
9065	* support/regression/tests/bug-2384.c:
9066	  Add a new test case.
9067
90682015-05-19 Ben Shi <powerstudio1st AT 163 DOT com>
9069
9070	* support/regression/tests/bug-1918.c:
9071	  Add a new test case.
9072
90732015-05-17 Maarten Brock <sourceforge.brock AT dse.nl>
9074
9075	* doc/clean.mk: remove *.eps
9076	* doc/Makefile.in: use dvipdfm instead of pdflatex to enable svg graphics
9077	* configure.in,
9078	* configure: require latex and dvipdfm for building doc
9079
90802015-05-17 Ben Shi <powerstudio1st AT 163 DOT com>
9081
9082	* sdas/linksrc/lklex.c:
9083	  Check illegal object files.
9084
90852015-05-15 Ben Shi <powerstudio1st AT 163 DOT com>
9086
9087	* src/SDCC.y:
9088	  Fix a potential bug in simplification of nested '*' and '&' in AST.
9089
90902015-05-14 Ben Shi <powerstudio1st AT 163 DOT com>
9091
9092	* src/SDCC.y:
9093	  simplify nested '&' and '*' in AST.
9094	* support/regression/tests/bug-2381.c:
9095	  Add a new test case.
9096
90972015-05-13 Ben Shi <powerstudio1st AT 163 DOT com>
9098
9099	* src/SDCCerr.c:
9100	* src/SDCCerr.h:
9101	* src/SDCCsymt.c:
9102	* src/SDCCsymt.h:
9103	  Add a new warning for duplicate specifiler in c89.
9104
91052015-05-08 Ben Shi <powerstudio1st AT 163 DOT com>
9106
9107	* src/SDCC.y: Turn off warning 219 for declaration (with extern) while keep
9108	  for definition (without extern).
9109	* support/regression/tests/bug-2102.c:
9110	  Improve test case.
9111
91122015-05-06 Ben Shi <powerstudio1st AT 163 DOT com>
9113
9114	* src/SDCC.y: Do not warn if a variable of a struct with a flexible array is
9115	  declared with extern.
9116	* src/SDCCerr.c:
9117	  Change text message of warning 219.
9118	* support/regression/tests/bug-2102.c:
9119	  Supress warning 219 and improve test case.
9120	* support/regression/tests/bug-2274.c:
9121	  Supress warning 84.
9122
91232015-05-04 Ben Shi <powerstudio1st AT 163 DOT com>
9124
9125	* support/regression/tests/bug-2102.c:
9126	  Add a new test case.
9127	* src/SDCCerr.c:
9128	* src/SDCC.y:
9129	  Rise warning 219 for creating an instance of a struct with a flexible array.
9130	* src/SDCCsymt.c:
9131	  Remove useless code.
9132
91332015-05-04 Ben Shi <powerstudio1st AT 163 DOT com>
9134
9135	* src/SDCC.y:
9136	  Fix a bug in macro __func__ substitution.
9137
91382015-05-03 Maarten Brock <sourceforge.brock AT dse.nl>
9139
9140	* device/lib/_calloc.c: removed unused struct declarations
9141	* device/lib/pic16/libc/stdio/vfprintf.c: fixed warnings
9142	* src/SDCC.y: disabled W_ANONYMOUS_MEMBER
9143	* src/SDCCsymt.c (compStructSize): disabled W_FLEXARRAY_INSTRUCT
9144	* src/z80/main.c: fixed gbz80_port peephole pointers, and
9145	* src/ds390/main.c,
9146	* src/mcs51/main.c,
9147	* src/stm8/main.c: added peephole null-pointers, unified layout
9148	* src/stm8/ralloc.c (stm8_assignRegisters): fixed warning
9149	* support/regression/tests/bug-2320.c: fixed warning
9150
91512015-05-01 Ben Shi <powerstudio1st AT 163 DOT com>
9152
9153	* sdas/linksrc/lkar.c:
9154	* sdas/linksrc/lklib.c:
9155	* sdas/linksrc/lksdcclib.c:
9156	* src/SDCCmain.c:
9157	  Remove useless code for Cygwin.
9158	* support/sdbinutils/bfd/config.bfd:
9159	* sim/ucsim/cmd.src/cmdutil.cc:
9160	  Support Cygwin64.
9161
91622015-04-29 Ben Shi <powerstudio1st AT 163 DOT com>
9163
9164	* support/regression/tests/gcc-torture-execute-20001011-1.c:
9165	  Enabled.
9166	* support/cpp/libcpp/macro.c:
9167	* support/cpp/libcpp/include/cpplib.h:
9168	* support/cpp/libcpp/init.c:
9169	* src/SDCC.y:
9170	  Support macro __func__.
9171
91722015-04-22 Philipp Klaus Krause <pkk AT spth.de>
9173
9174	* src/z80/peeph-z80.def:
9175	  Better peephole interaction for early ret statements in functions.
9176
91772015-04-22 Ben Shi <powerstudio1st AT 163 DOT com>
9178
9179	* Makefile.common.in:
9180	* configure:
9181	* configure.in:
9182	* support/regression/Makefile.in:
9183	* support/regression/ports/ds390/spec.mk:
9184	* support/regression/ports/hc08/spec.mk:
9185	* support/regression/ports/mcs51-common/spec.mk:
9186	* support/regression/ports/pic14/spec.mk:
9187	* support/regression/ports/pic16/spec.mk:
9188	* support/regression/ports/s08/spec.mk:
9189	* support/regression/ports/stm8/spec.mk:
9190	* support/regression/ports/ucgbz80/spec.mk:
9191	* support/regression/ports/ucr2k/spec.mk:
9192	* support/regression/ports/ucr3ka/spec.mk:
9193	* support/regression/ports/ucz180/spec.mk:
9194	* support/regression/ports/ucz80/spec.mk:
9195	* support/valdiag/Makefile.in:
9196	  Auto detect python in $PATH.
9197	* support/regression/tests/z88dk.c:
9198	  Fix build error in reversion #9218.
9199
92002015-04-22 Philipp Klaus Krause <pkk AT spth.de>
9201
9202	* src/z80/peep.c,
9203	  support/regression/tests/bug-2376.c:
9204	  Fix peephole optimizer bug #2376.
9205
92062015-04-21 Philipp Klaus Krause <pkk AT spth.de>
9207
9208	* src/SDCCpeeph.c,
9209	  src/port.h,
9210	  src/z80/main.c,
9211	  src/z80/gen.c,
9212	  src/z80/peep.h,
9213	  src/z80/peep.c,
9214	  src/z80/peeph-z80.def:
9215	  Fix peephole optimizer bug #2374, more efficient calls to _Noreturn
9216	  functions.
9217
92182015-04-20 Philipp Klaus Krause <pkk AT spth.de>
9219
9220	* src/z80/gen.c,
9221	  src/z80/peep.c,
9222	  support/regression/tests/z88dk.c:
9223	  Fix peephole optimizer bug #2371.
9224
92252015-04-19 Philipp Klaus Krause <pkk AT spth.de>
9226
9227	* src/SDCCglobl.h:
9228	  Silence warning.
9229	* src/z80/gen.c,
9230	  device/lib/*/__sdcc_call_hl.s,
9231	  device/lib/*/__sdcc_call_iy.s,
9232	  src/SDCCsymt.c:
9233	  Better handling of calls through function pointers.
9234
92352015-04-18 Ben Shi <powerstudio1st AT 163 DOT com>
9236
9237	* sim/ucsim/configure.in:
9238	* sim/ucsim/configure:
9239	* sim/ucsim/packages_in.mk:
9240	  Do not build disabled ports.
9241
92422015-04-17 Ben Shi <powerstudio1st AT 163 DOT com>
9243
9244	* sdas/linksrc/Makefile.in:
9245	  Fix the issue that "make install" of sdld* failed on Windows.
9246
92472015-04-16 Ben Shi <powerstudio1st AT 163 DOT com>
9248
9249	* device/include/Makefile.in:
9250	  Fix the problem that the header files of ds400 are not installed.
9251	* sdas/linksrc/Makefile.in:
9252	  Do not install unnecessary sdld* for disabled ports.
9253
92542015-04-15 Ben Shi <powerstudio1st AT 163 DOT com>
9255
9256	* Makefile.common.in:
9257	* Makefile.in:
9258	  Partially fix bug #2369.
9259	* configure:
9260	* configure.in:
9261	* device/lib/Makefile.in:
9262	* src/ds400/Makefile.in:
9263	* src/ds400/main.c:
9264	* src/ds400/main.h:
9265	  Delete the empty stuff src/ds400/ .
9266	* support/regression/tests/z88dk.c:
9267	  Fix compiling errors.
9268
92692015-04-14 Philipp Klaus Krause <pkk AT spth.de>
9270
9271	* src/SDCC.lex,
9272	  src/SDCC.y,
9273	  src/SDCCsymt.h,
9274	  src/z80/main.c,
9275	  src/z80/gen.c,
9276	  support/regression/tests/z88dk.c:
9277	  Support for __z88dk_callee calling convention on the caller side.
9278
92792015-04-11 Ben Shi <powerstudio1st AT 163 DOT com>
9280
9281	* support/scripts/sdcc.nsi:
9282	  Remove savr which is disabled by default.
9283
92842015-04-10 Philipp Klaus Krause <pkk AT spth.de>
9285
9286	* support/regression/tests/z88dk.c:
9287	  Fix bug number in comment.
9288
92892015-04-10 Ben Shi <powerstudio1st AT 163 DOT com>
9290
9291	* debugger/mcs51/configure:
9292	* debugger/mcs51/Makefile.in:
9293	* debugger/mcs51/configure.in:
9294	* sim/ucsim/st7.src/Makefile.in:
9295	* sim/ucsim/z80.src/Makefile.in:
9296	* sim/ucsim/stm8.src/Makefile.in:
9297	* sim/ucsim/xa.src/Makefile.in:
9298	* sim/ucsim/s51.src/Makefile.in:
9299	* sim/ucsim/avr.src/Makefile.in:
9300	* sim/ucsim/hc08.src/Makefile.in:
9301	* sim/ucsim/configure:
9302	* sim/ucsim/Makefile.in:
9303	* sim/ucsim/configure.in:
9304	  Support --program-prefix and --program-suffix.
9305
93062015-04-09 Philipp Klaus Krause <pkk AT spth.de>
9307
9308	* device/include/ctype.h,
9309	  device/lib/isblank.c:
9310	  Faster isblank().
9311	* device/include/stdlib.h,
9312	  device/lib/atoi.c,
9313	  device/lib/atol.c,
9314	  device/lib/atoll.c,
9315	  device/lib/incl.mk,
9316	  device/lib/make51lib.bat,
9317	  support/regression/tests/ato.c:
9318	  Faster and shorter atoi(), atol(), implemented atoll().
9319	* src/SDCC.lex,
9320	  src/SDCC.y,
9321	  src/SDCCsymt.h,
9322	  src/port.h,
9323	  src/SDCCerr.h,
9324	  src/SDCCerr.c,
9325	  src/*/main.c,
9326	  src/z80/gen.c,
9327	  src/z80/ralloc2.cc,
9328	  support/regression/tests/z88dk.c:
9329	  Support for __z88dk_fastcall calling convention.
9330	* src/stm8/peeph.def:
9331	  Use relative jump on false instruction for optimizing jumps over 1-byte
9332	  opcodes.
9333
93342015-04-06 Ben Shi <powerstudio1st AT 163 DOT com>
9335
9336	* support/regression/bug-2368.c:
9337	  Try to fix the failure in "make test-host" on sparc64-solaris.
9338
93392015-04-03 Ben Shi <powerstudio1st AT 163 DOT com>
9340
9341	* src/SDCCerr.c:
9342	* src/SDCCerr.h:
9343	* src/SDCCast.c:
9344	  Add a warning for inline __naked functions.
9345
93462015-04-02 Ben Shi <powerstudio1st AT 163 DOT com>
9347
9348	* src/SDCCutils.h:
9349	* src/SDCCutils.c:
9350	* src/SDCCmain.c:
9351	  Support --program-prefix and --program-suffix while calling assembler and
9352	  linker.
9353	* src/z80/gen.c:
9354	* src/z80/mapping.i:
9355	* src/SDCCasm.c:
9356	  Add new "globalfunctionlabel".
9357	* sdas/linksrc/Makefile.in:
9358	  Fix a spot in 'make install'.
9359
93602015-04-01 Philipp Klaus Krause <pkk AT spth.de>
9361
9362	* src/SDCCnaddr.hpp,
9363	  src/SDCCnaddr.cc:
9364	  Dump tree decomposition used for address space switching on --dump-graphs.
9365
93662015-04-01 Ben Shi <powerstudio1st AT 163 DOT com>
9367
9368	* sdas/as6808/Makefile.in:
9369	* sdas/as8051/Makefile.in:
9370	* sdas/as8xcxxx/Makefile.in:
9371	* sdas/asgb/Makefile.in:
9372	* sdas/asrab/Makefile.in:
9373	* sdas/asstm8/Makefile.in:
9374	* sdas/astlcs90/Makefile.in:
9375	* sdas/asz80/Makefile.in:
9376	* sdas/linksrc/Makefile.in:
9377	* src/Makefile.in:
9378	* support/cpp/Makefile.in:
9379	* support/librarian/Makefile.in:
9380	* support/makebin/Makefile.in:
9381	* support/packihx/Makefile.in:
9382	  Fix a bug of --program-suffix on Win32 / Win64.
9383
93842015-03-31 Philipp Klaus Krause <pkk AT spth.de>
9385
9386	* src/stm8/gen.c,
9387	  support/regression/tests/bug-2368.c:
9388	  Fixed bug #2368.
9389
93902015-03-27 Ben Shi <powerstudio1st AT 163 DOT com>
9391
9392	* sdas/as6808/Makefile.in:
9393	* sdas/as8051/Makefile.in:
9394	* sdas/as8xcxxx/Makefile.in:
9395	* sdas/asgb/Makefile.in:
9396	* sdas/asrab/Makefile.in:
9397	* sdas/asstm8/Makefile.in:
9398	* sdas/astlcs90/Makefile.in:
9399	* sdas/asz80/Makefile.in:
9400	* sdas/linksrc/Makefile.in:
9401	* src/Makefile.in:
9402	* support/cpp/Makefile.in:
9403	* support/librarian/Makefile.in:
9404	* support/makebin/Makefile.in:
9405	* support/packihx/Makefile.in:
9406	* support/scripts/Makefile.in:
9407	  Support --program-prefix and --program-suffix.
9408
94092015-03-26 Ben Shi <powerstudio1st AT 163 DOT com>
9410
9411	* support/sdbinutils/libiberty/Makefile.in:
9412	  Disable make install.
9413	* support/sdbinutils/binutils/Makefile.in:
9414	* support/sdbinutils/Makefile.in:
9415	  Support make uninstall.
9416	* device/non-free/lib/Makefile.in:
9417	  Apply patch #245 by David Grayson.
9418
94192015-03-24 Philipp Klaus Krause <pkk AT spth.de>
9420
9421	* src/z80/peeph-z80.def:
9422	  Peepholes for optimizing jump on decrement.
9423
94242015-03-20 Ben Shi <powerstudio1st AT 163 DOT com>
9425
9426	* src/SDCCglue.c:
9427	  Improve error messages.
9428
94292015-03-19 Ben Shi <powerstudio1st AT 163 DOT com>
9430
9431	* src/SDCCglue.c:
9432	  Fix a bug in a global char array initialized by a string.
9433	* src/SDCCast.c:
9434	  Fix a bug in a local static global array initialization.
9435	* support/regression/tests/bug-1953.c:
9436	  Improve test case.
9437	* doc/sdccman.lyx:
9438	  Suggest msys while build SDCC with VS2010.
9439
94402015-03-16 Philipp Klaus Krause <pkk AT spth.de>
9441
9442	* src/z80/gen.c:
9443	  Fix bug #2288.
9444
94452015-03-13 Maarten Brock <sourceforge.brock AT dse.nl>
9446
9447	* device/lib/z80/crt0.s: cosmetics
9448	* sdas/asstm8/sdasstm8.vcxproj,
9449	* sdas/asstm8/sdasstm8.vcxproj.filters: new, added
9450	* sdcc.sln: added sdasstm8
9451
94522015-03-12 Ben Shi <powerstudio1st AT 163 DOT com>
9453
9454	* src/SDCCerr.c:
9455	* src/SDCCerr.h:
9456	* src/SDCC.y:
9457	  Add a new warning: anonymous member in struct/union.
9458
94592015-03-11 Ben Shi <powerstudio1st AT 163 DOT com>
9460
9461	* src/SDCCval.c:
9462	* src/SDCCglue.c:
9463	  Add a new special case in pointer initialization.
9464	* support/regression/tests/gcc-torture-execute-const-addr-expr-1.c:
9465	  Enabled.
9466	* support/regression/test-1898.c:
9467	  Add a new test case.
9468
94692015-03-06 Ben Shi <powerstudio1st AT 163 DOT com>
9470
9471	* src/SDCCsymt.c:
9472	* src/SDCCerr.h:
9473	* src/SDCCerr.c:
9474	  Add a warning for a flexible array in a struct.
9475
94762015-02-25 Philipp Klaus Krause <pkk AT spth.de>
9477
9478	* src/stm8/gen.c:
9479	  Speed up stm8 port by skipping output early in dry runs and making some
9480	  aop tests more efficient,
9481	  fix code generation bug in shifts.
9482
94832015-02-25 Ben Shi <powerstudio1st AT 163 DOT com>
9484
9485        * support/regression/tests/bug-2031.c:
9486          Add a new test case.
9487        * src/SDCCglue.c:
9488        * src/SDCCval.c:
9489        * src/SDCCval.h:
9490        * pic16/glue.c:
9491          Enable a global char/int/long variable initialized by an address
9492		  (const pointer).
9493
94942015-02-24 Philipp Klaus Krause <pkk AT spth.de>
9495
9496	* src/stm8/gen.c:
9497	  Fix bug in stm8 comparison code generation.
9498
94992015-02-23 Ben Shi <powerstudio1st AT 163 DOT com>
9500
9501	* support/regression/tests/bug-2357.c:
9502	  Improve this test case.
9503
95042015-02-22 Philipp Klaus Krause <pkk AT spth.de>
9505
9506	* src/z80/gen.c,
9507	  src/z80/main.c:
9508	  Improve z88dk compability (patch provided by z88dk).
9509
95102015-02-20 Ben Shi <powerstudio1st AT 163 DOT com>
9511
9512	* support/regression/tests/bug-2357.c:
9513	  A new test case.
9514	* support/regression/tests/gcc-torture-execute-20000412-1.c:
9515	  Enabled.
9516	* src/SDCCerr.c:
9517	  Change E_CODE_NO_INIT from an error to a warning.
9518	* src/SDCCast.c:
9519	  Fix a bug in selecting type of an array index.
9520
95212015-02-17 Ben Shi <powerstudio1st AT 163 DOT com>
9522
9523	* support/regression/tests/bug-1953.c:
9524	  Disable failed tests.
9525
95262015-02-16 Ben Shi <powerstudio1st AT 163 DOT com>
9527
9528	* src/SDCCast.c:
9529	  Fix a bug in char array initialization with string.
9530	* support/regression/tests/bug-1953.c:
9531	  Add a new test case.
9532	* support/regression/tests/gcc-torture-execute-20000801-4.c:
9533	  Enabled.
9534
95352015-02-13 Ben Shi <powerstudio1st AT 163 DOT com>
9536
9537	* src/SDCCglue.c:
9538	  Make pointers (of a struct) initialization more generaic.
9539	* support/regression/tests/bug-2123.c:
9540	  Add more tests.
9541
95422015-02-11 Ben Shi <powerstudio1st AT 163 DOT com>
9543
9544	* src/SDCCglue.c:
9545	  Improve pointer initialization.
9546	* support/regression/tests/bug-2123.c:
9547	  Add a new test case for bug #2123.
9548
95492015-02-08 Ben Shi <powerstudio1st AT 163 DOT com>
9550
9551	* src/SDCCval.c:
9552	  Allow type cast in function pointer initialization.
9553	* support/regression/tests/bug-2124.c:
9554	  Add a new test case for bug #2124.
9555
95562015-02-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
9557
9558	* src/SDCCtree_dec.hpp:
9559	  Fix bug in weight calculation that affected tree-decompositions with
9560	  imbalanced nested branches.
9561	* src/z80/peeph-gbz80.def:
9562	  Fix handling of (hl-), (hl+) in peepholes.
9563
95642015-02-05 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
9565
9566	* src/z80/mappings.i:
9567	  Fix gbz80 function entry helper.
9568	* src/SDCCralloc.hpp:
9569	  Use weight mechanism for deciding which subtree to process first - should
9570	  reduce memory consumption and improve the heuristic in the register
9571	  allocator.
9572
95732015-02-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
9574
9575	* doc/Makefile.in: copy *.svg graphic files when using VPATH too
9576
95772015-02-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
9578
9579	* device/lib/*/crtcall.s,
9580	  device/lib/*/crtenters,
9581	  device/lib/*/Makefile.in,
9582	  src/z80/gen.c,
9583	  src/z80/mappings.i,
9584	  src/z80/peep.c:
9585	  Fix name of helper function for function pointers, introduce Alan Cox'
9586	  proposal for helper function for function header.
9587
95882015-02-02 Ben Shi <powerstudio1st AT 163 DOT com>
9589
9590	* src/SDCCast.c:
9591	  Add check for infinite recursive call of copyAst().
9592
95932015-01-30 Philipp Klaus Krause <pkk AT spth.de>
9594
9595	* doc/sdccman.lyx:
9596	  Fix references to obsolete keywords.
9597
95982015-01-29 Philipp Klaus Krause <pkk AT spth.de>
9599
9600	* doc/sdccman.lyx:
9601	  Reorganize documentation of language extensions, in particular named
9602	  address spaces, separate mcs51isms, remove references to obsolete keywords.
9603
96042015-01-28 Philipp Klaus Krause <pkk AT spth.de>
9605
9606	* doc/sdccman.lyx:
9607	  Update documentation on C dialect selection.
9608
96092015-01-27 Ben Shi <powerstudio1st AT 163 DOT com>
9610
9611	* src/SDCCsymt.c:
9612	  Fix bug #2349.
9613	* support/regression/test/bug-2349.c:
9614	  Add a new test for bug #2349.
9615
96162015-01-27 Philipp Klaus Krause <pkk AT spth.de>
9617
9618	* src/SDCC.lex,
9619	  src/SDCC.y,
9620	  src/SDCCmem.c,
9621	  src/SDCCsymt.h,
9622	  src/stm8/main.c:
9623	  Apply patch by Pascal for trap handlers.
9624
96252015-01-24 Ben Shi <powerstudio1st AT 163 DOT com>
9626
9627	* src/stm8/gen.c:
9628	  Fix a bug in genPointerGet(): negative offset is not handled correctly.
9629	* support/regression/test/bug-2239.c:
9630	  More tests are added and enabled for stm8.
9631
96322015-01-24 Ben Shi <powerstudio1st AT 163 DOT com>
9633
9634	* src/SDCCast.c:
9635	  Fix bug #2239.
9636	* support/regression/test/bug-2239.c:
9637	  Add a new test for bug #2239.
9638
96392015-01-20 Philipp Klaus Krause <pkk AT spth.de>
9640
9641	* src/SDCCmain.c,
9642	  .version:
9643	  Make sdcc dialect of C99 the default.
9644
96452015-01-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
9646
9647	* src/z80/ralloc.c,
9648	  src/mcs51/ralloc.c:
9649	  Fix register packing inline asm interaction bugs #2346, #2268.
9650
96512015-01-09 Philipp Klaus Krause <pkk AT spth.de>
9652
9653	* doc/sdccman.lyx:
9654	  Classification macros are not required in freestanding implementations.
9655
96562015-01-08 Ben Shi <powerstudio1st AT 163 DOT com>
9657
9658	* src/SDCC.y:
9659	  Fix a bug which might be a NULL pointer access.
9660	* device/lib/time.c:
9661	  Eliminate a warning. (overflow in implicit constant conversion)
9662
96632015-01-06 Ben Shi <powerstudio1st AT 163 DOT com>
9664
9665	* src/SDCCast.c:
9666	  Fix bug #2167 & #1967. (auto struct variables initialization)
9667	* support/regression/tests/gcc-torture-execute-960326-1.c:
9668	  Add more test cases.
9669	* support/regression/tests/gcc-torture-execute-20050613-1.c:
9670	* support/regression/tests/gcc-torture-execute-20030408-1.c:
9671	  Enable test.
9672
96732015-01-01 Ben Shi <powerstudio1st AT 163 DOT com>
9674
9675	* src/SDCCval.c:
9676	  Make SDCC_VERY_PEDANTIC default, if --less-pedantic is not specified.
9677
96782014-12-30 Maarten Brock <sourceforge.brock AT dse.nl>
9679
9680	* doc/sdccman.lyx: fixed typo, webdoc #69, thanks Petr Petyovsky
9681	* sdas/linksrc/aslink.h: added include "sdccconf.h" or "sdcc_vc.h"
9682	* sdas/linksrc/lkar.c: removed include "sdccconf.h"
9683
96842014-12-29 Maarten Brock <sourceforge.brock AT dse.nl>
9685
9686	* device/include/pic16/limits.h,
9687	* device/lib/_divsint.c,
9688	* device/lib/_divslong.c,
9689	* device/lib/_divuint.c,
9690	* device/lib/_divulong.c,
9691	* device/lib/_memset.c,
9692	* device/lib/_modsint.c,
9693	* device/lib/_modslong.c,
9694	* device/lib/_moduint.c,
9695	* device/lib/_modulong.c,
9696	* device/lib/_mulint.c,
9697	* device/lib/_mullong.c,
9698	* device/lib/hc08/_divuint.c,
9699	* device/lib/hc08/_divulong.c,
9700	* device/lib/pic16/libm/asincosf.c,
9701	* device/lib/pic16/libm/atanf.c,
9702	* device/lib/pic16/libm/logf.c,
9703	* device/lib/s08/_divuint.c,
9704	* device/lib/s08/_divulong.c: replaced deprecated predefined macros
9705	* device/lib/pic16/libio/i2c/i2copen.c: idem to fix bug 2336
9706	* src/SDCCast.c (ast_print),
9707	* src/SDCCicode.c (dbuf_printOperand): fixed warnings
9708	* support/regression/tests/bug-2313.c: fixed warning
9709
97102014-12-29 Philipp Klaus Krause <pkk AT spth.de>
9711
9712	* support/regression/tests/bug-2320.c:
9713	  Fix test for host.
9714
97152014-12-28 Philipp Klaus Krause <pkk AT spth.de>
9716
9717	* device/include/stdio.h:
9718	  Fix bug #2338.
9719
97202014-12-27 Philipp Klaus Krause <pkk AT spth.de>
9721
9722	* src/z80/ralloc2.cc,
9723	  support/regression/tests/bug-2320.c:
9724	  Fixed bug #2320.
9725
97262014-12-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
9727
9728	* src/pic14/gen.c (aopOp): fix typo in previous commit
9729
97302014-12-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
9731
9732	* src/stm8/gen.c (aopOp),
9733	* src/z80/gen.c (aopOp),
9734	* src/hc08/gen.c (aopOp),
9735	* src/mcs51/gen.c (aopOp),
9736	* src/ds390/gen.c (aopOp),
9737	* src/pic16/gen.c (pic16_aopOp),
9738	* src/pic14/gen.c (aopOp): only use spill location if isspilt set
9739
97402014-12-22 Philipp Klaus Krause <pkk AT spth.de>
9741
9742	* doc/sdccman.lyx:
9743	  Cleanup manual.
9744
97452014-12-22 Ben Shi <powerstudio1st AT 163 DOT com>
9746
9747	* support/regression/tests/longlong.c:
9748	  Modify test cases for large signed / unsigned long long.
9749
97502014-12-21 Philipp Klaus Krause <pkk AT spth.de>
9751
9752	* src/SDCCmain.c,
9753	  src/pic14/main.c,
9754	  src/pic16/main.c,
9755	  doc/sdccman.lyx,
9756	  .version:
9757	  Remove obsolete feature macros.
9758
97592014-12-21 Ben Shi <powerstudio1st AT 163 DOT com>
9760
9761	* src/SDCCast.c:
9762	  Make AST dump more clear.
9763	* src/SDCCval.c:
9764	* src/SDCCval.h:
9765	* src/SDCCicode.c:
9766	* src/SDCCcse.c:
9767	* src/SDCCast.c:
9768	* src/SDCCglue.c:
9769	* src/pic16/SDCCglue.c:
9770	  make valFromLiteral() more accurate by a new unsigned long long parameter.
9771	* support/regression/tests/longlong.c:
9772	  Add new test cases for large unsigned long long.
9773
97742014-12-19 Ben Shi <powerstudio1st AT 163 DOT com>
9775
9776	* support/regression/tests/longlong.c:
9777	  Enable more test cases.
9778	* src/SDCCast.c:
9779	* src/SDCCicode.c:
9780	  Fix a bug: higher 4 bytes of a longlong literal are missing while dumping.
9781	* src/SDCCval.c:
9782	  Fix a bug: higher 4 bytes of a longlong value are discarded while casting
9783	  from a double value.
9784
97852014-12-16 Philipp Klaus Krause <pkk AT spth.de>
9786
9787	* configure.in,
9788	  doc/Makefile.in:
9789	  Remove dependency on pdfopt.
9790	* support/regression/tests/bug-2313.c:
9791	  Regression test for bug #2313.
9792
97932014-12-13 Philipp Klaus Krause <pkk AT spth.de>
9794
9795	* device/lib/pic16/libc/string/strncpy.c,
9796	  support/regression/tests/bug-2231.c:
9797	  Fix strncpy() in pic16. Patch by Diego Herranz.
9798
97992014-12-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
9800
9801	* src/SDCCcse.c (ifxOptimize): fixed bugs #2313/2330
9802
98032014-12-04 Philipp Klaus Krause <pkk AT spth.de>
9804
9805	* support/regression/tests/gcc-torture-execute-20080529-1.c,
9806	  support/regression/tests/longlong.c:
9807	  Disable tests that fail due to broken gbz80 long long multiplication
9808	  (bug #2329).
9809	* support/regression/tests/bug-2231.c,
9810	  support/regression/tests/float_single.c,
9811	  support/regression/tests/gcc-torture-execute-stdarg-4.c,
9812	  support/regression/tests/gcc-torture-execute-stdarg-5.c,
9813	  support/regression/tests/vaargs.c:
9814	  Disable failing tests for pic16.
9815
98162014-12-03 Ben Shi <powerstudio1st AT 163 DOT com>
9817
9818	* support/regression/tests/gcc-torture-execute-950511-1.c:
9819	  Disabled. Since it fails on FreeBSD.
9820
98212014-12-02 Ben Shi <powerstudio1st AT 163 DOT com>
9822
9823	* support/regression/tests/gcc-torture-execute-20050826-1.c:
9824	* support/regression/tests/gcc-torture-execute-950511-1.c:
9825	  Enabled for stm8.
9826
98272014-12-02 Philipp Klaus Krause <pkk AT spth.de>
9828
9829	* device/lib/_mullonglong.c,
9830	  support/regression/tests/longlong.c:
9831	  Make long long multiplication independent of endianness.
9832
98332014-12-02 Ben Shi <powerstudio1st AT 163 DOT com>
9834
9835	* sim/ucsim/stm8.src/stm8.cc:
9836	  Make stack larger, since some test cases cost large stack space.
9837
98382014-12-02 Philipp Klaus Krause <pkk AT spth.de>
9839
9840	* src/stm8/ralloc.c,
9841	  src/z80/ralloc.c:
9842	  Do not try to use spill locations that are not on the stack in ports that
9843	  can't handle it.
9844	* support/regression/tests/longlong.c:
9845	  Enable some long long tests that pass for stm8 now.
9846
98472014-12-01 Philipp Klaus Krause <pkk AT spth.de>
9848
9849	* src/SDCCsymt.c:
9850	  Initialize usl.spillLoc to help track down spill location issues.
9851	* src/stm8/ralloc.c:
9852	  Minor cleanup.
9853
98542014-11-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
9855
9856	* configure.in,
9857	* configure,
9858	* sdccconf_h.in,
9859	* sdas/linksrc/lkar.c: Use configure to detect system strndup()
9860	  (alternate fix for bugs #2310 and #2303)
9861	* sdas/linksrc/Makefile.in: Removed -std=c99; it caused problems with
9862	  mingw32 build
9863
98642014-11-29 Maarten Brock <sourceforge.brock AT dse.nl>
9865
9866	* device/include/ctype.h: compare as unsigned chars, added static asserts on
9867	  EOF
9868	* device/lib/isdigit.c,
9869	* device/lib/islower.c,
9870	* device/lib/isupper.c: include stdio.h to enable the static assert in ctype.h
9871	* support/regression/tests/gcc-torture-execute-20050613-1.c: split up ASSERTs
9872
98732014-11-23 Molnar Karoly <molnarkaroly AT users.sf.net>
9874
9875	* device/include/pic14/pic14devices.txt:
9876	  Bugfix, thanks to Franz.
9877
98782014-11-23 Ben Shi <powerstudio1st AT 163.com>
9879
9880	* support/regression/tests/bug-2304.c:
9881	  Improve this test case.
9882	* sdas/linksrc/lkmain.c:
9883	  Add bound check.
9884
98852014-11-22 Ben Shi <powerstudio1st AT 163.com>
9886
9887	* src/stm8/peep.c:
9888	  Fix potential bugs.
9889
98902014-11-22 Ben Shi <powerstudio1st AT 163.com>
9891
9892	* src/SDCCpeeph.c:
9893	  Add function notSimilar().
9894	* src/stm8/peep.c:
9895	  Make notUsed() more aggressive.
9896	* src/stm8/peeph.def:
9897	  Add more rules.
9898
98992014-11-21 Philipp Klaus Krause <philipp@informatik.uni-frankfurt.de>
9900
9901	* src/stm8/main.c:
9902	  Comment expaining why we can't use the byte at 0 in C.
9903
99042014-11-21 Ben Shi <powerstudio1st AT 163.com>
9905
9906	* device/lib/stm8/heap.s:
9907	* device/lib/stm8/Makefile.in:
9908	  Add support for heap operation.
9909	* support/regression/tests/gcc-torture-execute-920810-1.c:
9910	* support/regression/tests/malloc:
9911	  enable test cases which use malloc().
9912
99132014-11-19 Ben Shi <powerstudio1st AT 163.com>
9914
9915	* sdas/linksrc/aslink.h:
9916	  Change PATH_MAX to a proper value on x86_64, for bug #2316.
9917
99182014-11-18 Philipp Klaus Krause <pkk AT spth.de>
9919
9920	* device/include/iso646.h,
9921	  support/regression/tests/iso646.c:
9922	  Fixed bug #2314.
9923
99242014-11-15 Philipp Klaus Krause <pkk AT spth.de>
9925
9926	* support/regression/tests/gcc-torture-execute-pr40057.c:
9927	  Disable test for host, since it fails on NetBSD.
9928
99292014-11-14 Philipp Klaus Krause <pkk AT spth.de>
9930
9931	* support/sdbinutils/bfd/configure,
9932	  support/sdbinutils/bfd/warning.m4,
9933	  support/sdbinutils/binutils/configure:
9934	  Fixed bug #2280 by disabling -Werror.
9935	* sdas/linksrc/Makefile.in:
9936	  Fixed bugs #2310 and #2303.
9937	* support/regression/tests/gcc-torture-execute-20031012-1.c:
9938	  Disable test that fails on MacOS.
9939
99402014-11-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
9941
9942	* support/regression/tests/gcc-torture-execute-pr42544.c:
9943	  Disable test for host, since it fails on Solaris.
9944
99452014-11-11 Philipp Klaus Krause <pkk AT spth.de>
9946
9947	* support/regression/tests/longlong.c:
9948	  Disable test that fails on 32-bit hosts.
9949
99502014-11-10 Philipp Klaus Krause <pkk AT spth.de>
9951
9952	* src/z80/ralloc.c,
9953	  src/z80/gen.c,
9954	  src/stm8/ralloc.c,
9955	  src/stm8/gen.c,
9956	  support/regression/tests/longlong.c:
9957	  Implement unused long long return values.
9958
99592014-11-09 Philipp Klaus Krause <pkk AT spth.de>
9960
9961	* src/z80/ralloc2.cc:
9962	  Fix a long long register allcoation issue.
9963	* support/regression/tests/gcc-torture-execute-950511-1.c:
9964	  Disable test that fails on 32-bit hosts.
9965
99662014-11-08 Philipp Klaus Krause <pkk AT spth.de>
9967
9968	* support/regression/tests/longlong.c,
9969	  support/regression/tests/gcc-torture-execute-950512-1.c:
9970	  Disabled test, since it fails on 32-bit hosts.
9971
99722014-11-07 Philipp Klaus Krause  <pkk AT spth.de>
9973
9974	* device/lib/_modslonglong.c,
9975	  device/lib/_modulonglong.c,
9976	  device/lib/Makefile.in,
9977	  device/lib/*/Makefile.in,
9978	  doc/sdccman.lyx:
9979	  Implement % for long long and unsigned long long.
9980	* doc/Makefile.in:
9981	  More sensible error behaviour when building documentation.
9982	* src/SDCCval.c,
9983	  src/SDCCerr.c:
9984	  Only warn about long long constants for large values.
9985	* device/lib/_mullonglong.c:
9986	  Fix long long multiplication.
9987	* support/regression/tests/*.c:
9988	  Enable some long long regression test that pass now.
9989
99902014-11-06 Philipp Klaus Krause  <pkk AT spth.de>
9991
9992	* src/z80/gen.c:
9993	  More efficient assignment of literals to 16-bit globals and statics.
9994
99952014-11-06 Philipp Klaus Krause  <pkk AT spth.de>
9996
9997	* src/z80/gen.c,
9998	  support/regression/tests/bug-2306.c:
9999	  Fixed bug #2306.
10000
100012014-11-06 Philipp Klaus Krause  <pkk AT spth.de>
10002
10003	* src/z80/gen.c,
10004	  support/regression/tests/bug-2304.c:
10005	  Fixed bug #2304.
10006	* src/z80/ralloc.c,
10007	  support/regression/tests/bug-2305.c:
10008	  Fixed bug #2305.
10009
100102014-10-29 Philipp Klaus Krause  <pkk AT spth.de>
10011
10012	* support/regression/tests/bug-2254.c:
10013	  Regression test for bug #2254.
10014
100152014-10-22 Philipp Klaus Krause <pkk AT spth.de>
10016
10017	* src/stm8/gen.c:
10018	  Spelling fix inspired by Debian patch 02_fix_spelling.
10019
100202014-10-22 Ben Shi <powerstudio1st AT 163.com>
10021
10022	* device/lib/stm8/Makefile.in:
10023	* device/stm8/_modslong.s:
10024	* device/stm8/_divslong.s:
10025	  Optimized mod & div of signed long.
10026
100272014-10-17 Ben Shi <powerstudio1st AT 163.com>
10028
10029	* device/lib/stm8/Makefile.in:
10030	* device/stm8/_modulong.s:
10031	* device/stm8/_divulong.s:
10032	  Optimized according to their c origination.
10033
100342014-10-14 Philipp Klaus Krause <pkk AT spth.de>
10035
10036	* src/z80/gen.c:
10037	  Improve error messages for unimplemented unused return value.
10038
100392014-10-14 Ben Shi <powerstudio1st AT 163.com>
10040
10041	* device/stm8/_modsint.s:
10042	* device/stm8/_mullong.s:
10043	  Optimized with more efficient instructions.
10044	* device/stm8/_mulint.s:
10045	  Reformat to more readable.
10046
100472014-10-13 Philipp Klaus Krause <pkk AT spth.de>
10048
10049	* device/stm8/_divsint.s:
10050	  Optimized signed division.
10051
100522014-10-11 Ben Shi <powerstudio1st AT 163.com>
10053
10054	* src/stm8/gen.c:
10055	  Delete temporary code stm_sub_func().
10056	* device/stm8/_modsint_stm8.s:
10057	* device/stm8/_mulint_stm8.s:
10058	* device/stm8/_divsint_stm8.s:
10059	* device/stm8/_mullong_stm8.s:
10060	  Deleted.
10061	* device/stm8/_modsint.s:
10062	* device/stm8/_mulint.s:
10063	* device/stm8/_divsint.s:
10064	* device/stm8/_mullong.s:
10065	  Added.
10066	* device/stm8/Makefile.in:
10067	  Use the above new added .s files.
10068
100692014-10-09 Ben Shi <powerstudio1st AT 163.com>
10070
10071	* src/stm8/gen.c:
10072	  Add stm_sub_func() for future more stm8 optimized functions.
10073	* src/stm8/peeph.def:
10074	  Remove redundant rules.
10075
100762014-10-03 Molnar Karoly <molnarkaroly AT users.sf.net>
10077
10078	* support/scripts/cinc2h.pl: Updated to the gputils-1.4.0 .
10079
100802014-09-29 Ben Shi <powerstudio1st AT 163.com>
10081
10082	* device/lib/stm8/_mullong_stm8.s:
10083	* device/lib/stm8/Makefile.in:
10084	  stm8 optimized version of _mullong.
10085	* src/stm8/peeph.def:
10086	  add new rules to utilize the above optimized functions.
10087
100882014-09-25 Philipp Klaus Krause <pkk AT spth.de>
10089
10090	* src/z80/peeph-gbz80.def:
10091	  Removed or simplification peepholes.
10092
100932014-09-24 Philipp Klaus Krause <pkk AT spth.de>
10094
10095	* src/SDCCopt.c:
10096	  Remove negation by inverting jump condition.
10097	* src/SDCCcse.c:
10098	  Remove cast at conditional jump.
10099	* device/include/ctype.h:
10100	  Simplify classification functions.
10101
101022014-09-24 Maarten Brock <sourceforge.brock AT dse.nl>
10103
10104	* src/SDCCsymt.c (mergeSpec): added check for both static and extern
10105	  (checkFunction): merge static or extern and check
10106	* device/include/ctype.h: replaced macros with direct inline versions
10107	* device/lib/isdigit.c,
10108	* device/lib/islower.c,
10109	* device/lib/isupper.c: replaced definitions with extern declaration to give
10110	  inline versions external linkage
10111
101122014-09-22 Ben Shi <powerstudio1st AT 163.com>
10113
10114	* device/lib/stm8/_modsint_stm8.s:
10115	* device/lib/stm8/Makefile.in:
10116	  stm8 optimized version of _modsint.
10117	* src/stm8/peeph.def:
10118	  add new rules to utilize the above optimized functions.
10119
101202014-09-19 Ben Shi <powerstudio1st AT 163.com>
10121
10122	* device/lib/stm8/_divsint_stm8.s:
10123	* device/lib/stm8/_mulint_stm8.s:
10124	* device/lib/stm8/Makefile.in:
10125	  stm8 optimized version of div / mul.
10126	* src/stm8/peeph.def:
10127	  add new rules to utilize the above optimized functions.
10128
101292014-09-19 Philipp Klaus Krause <pkk AT spth.de>
10130
10131	* src/z80/gen.c:
10132	  Fixed double read from __sfr function parameter.
10133
101342014-09-17 Molnar Karoly <molnarkaroly AT users.sf.net>
10135
10136	* support/scripts/pic14-header-parser.pl:
10137	  Creates two new groups: "regular", "enhanced"
10138
10139	* support/scripts/pic16fam-h-gen.pl:
10140	  Divides into more groups the 14-bit processors:
10141		"adc", "ccp", "pwm", "i2c", "spi", "usart"
10142
101432014-09-17 Molnar Karoly <molnarkaroly AT users.sf.net>
10144
10145	* support/scripts/pic14-header-parser.pl,
10146	  support/scripts/pic16-header-parser.pl:
10147	  updated
10148
101492014-09-15 Molnar Karoly <molnarkaroly AT users.sf.net>
10150
10151	* device/non-free/include/pic14/*.inc,
10152	  device/non-free/lib/pic14/libdev/*.c:
10153	  updated
10154
101552014-09-13 Ben Shi <powerstudio1st AT 163.com>
10156
10157	* src/stm8/main.c:
10158	  Make libstm8.lib is implicitly linked rather than explicitly designated.
10159
101602014-09-04 Molnar Karoly <molnarkaroly AT users.sf.net>
10161
10162	* support/scripts/mcs51-disasm.pl,
10163	  support/scripts/optimize_pic16devices.pl:
10164	  Updated unto the Perl 5.16 version.
10165
101662014-09-04 Molnar Karoly <molnarkaroly AT users.sf.net>
10167
10168	* support/scripts/cinc2h.pl:
10169	  Updated unto the Perl 5.16 version.
10170
101712014-09-03 Ben Shi <powerstudio1st AT 163.com>
10172
10173	* sdas/asstm8/stm8mch.c:
10174	  Fix the wrong code of the bit index in BTJF / BTJF.
10175
101762014-09-01 Molnar Karoly <molnarkaroly AT users.sf.net>
10177
10178	* device/include/pic14/pic14devices.txt: Minor bugfix.
10179
101802014-08-30 Ben Shi <powerstudio1st AT 163.com>
10181
10182	* support/regression/tests/gcc-torture-execute-pr28982a.c:
10183	* support/regression/tests/bug3475630.c:
10184	  Enabled on the stm8 port.
10185
101862014-08-29 Ben Shi <powerstudio1st AT 163.com>
10187
10188	* support/regression/tests/gcc-torture-execute-pr47337.c:
10189	  Enable this test case on the stm8 port.
10190
101912014-08-20 Ben Shi <powerstudio1st AT 163.com>
10192
10193	* device/lib/stm8/setjmp.s:
10194	  Substitute _CODE to CODE to conform with stm8's code generator.
10195	* sdas/linksrc/lkmain.c:
10196	  Revert to reversion 9059.
10197
101982014-08-18 Ben Shi <powerstudio1st AT 163.com>
10199
10200	* support/regression/tests/setjmp.c:
10201	  Enabled for the stm8 port.
10202	* sdas/linksrc/lkmain.c:
10203	  Avoid generating invalid instructions on MacOS.
10204
102052014-08-17 Ben Shi <powerstudio1st AT 163.com>
10206
10207	* support/regression/setjmp.c:
10208	  Disabled for the stm8 port.
10209
102102014-08-16 Ben Shi <powerstudio1st AT 163.com>
10211
10212	* all.vcxproj:
10213	* support/scripts/sdcc.nsi:
10214	  Create a new sdldstm8 on Windows.
10215	* sdas/linksrc/Makefile.in:
10216	* Makefile.in:
10217	  Create a spereated sdldstm8 on Unix like.
10218	* src/stm8/main.c:
10219	* sdas/linksrc/sdld.c:
10220	* sdas/linksrc/sdld.h:
10221	  Let the stm8 port use sdldstm8 instead of sdld.
10222
102232014-08-12 Ben Shi <powerstudio1st AT 163.com>
10224
10225	* sdcc/support/regression/tests/bug-2205.c:
10226	* sdcc/support/regression/tests/bug-971834.c:
10227	* sdcc/support/regression/tests/key.c:
10228	  Make Small changes to fit LLVM/CLANG for host test.
10229
102302014-08-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
10231
10232	* src/hc08/gen.c (pushSide, genPcall): fixed bug with pointer
10233	  function call overwriting register parameter with function
10234	  address. Optimized constant function pointer case.
10235
102362014-08-06 Ben Shi <powerstudio1st AT 163.com>
10237
10238	* sdas/linksrc/lkaomf51.c:
10239	  Add array bound check to avoid crash.
10240
102412014-07-30 Ben Shi <powerstudio1st AT 163.com>
10242
10243	* sim/ucsim/st7.src/inst.cc:
10244	  Eliminate warnings.
10245	* support/regression/tests/gcc-torture-execute-930628-1.c:
10246	  Enable this case for the stm8 port.
10247
102482014-07-29 Ben Shi <powerstudio1st AT 163.com>
10249
10250	* support/regression/tests/gcc-torture-execute-20030714-1.c:
10251	  Enable this case for the stm8 port.
10252	* src/stm8/gen.c:
10253	  Fix bug #2285: an error in genCast().
10254
102552014-07-22 Molnar Karoly <molnarkaroly AT users.sf.net>
10256
10257	* support/scripts/optimize_pic16devices.pl,
10258	  device/include/pic16/pic16devices.txt:
10259	  Stronger optimization.
10260
102612014-07-21 Ben Shi <powerstudio1st AT 163.com>
10262
10263	* support/regression/tests/gcc-torture-execute-stdarg-4.c:
10264	* support/regression/tests/gcc-torture-execute-stdarg-5.c:
10265	  Split the original gcc-torture-execute-stdarg-4.c to inline / non-inline.
10266
102672014-07-20 Ben Shi <powerstudio1st AT 163.com>
10268
10269	* support/regression/tests/gcc-torture-execute-stdarg-4.c:
10270	* support/regression/tests/gcc-torture-execute-loop-2c.c:
10271	* support/regression/tests/gcc-torture-execute-unroll-1.c:
10272	  Add "static" to fit the C99 standard.
10273
102742014-07-19 Ben Shi <powerstudio1st AT 163.com>
10275
10276	* support/regression/tests/gcc-torture-execute-20001121-1.c:
10277	  Add "static" to fit the C99 standard.
10278
102792014-07-15 Ben Shi <powerstudio1st AT 163.com>
10280
10281	* src/stm8/peep.c
10282	  Make calculation of instructions' length more accurate.
10283
102842014-07-14 Molnar Karoly <molnarkaroly AT users.sf.net>
10285
10286	* device/non-free/include/pic14/pic16f1yyy.h:
10287	  Added the missing DEBUG config option to the enhanced midrange MCUs.
10288
102892014-07-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10290
10291	* support/regression/tests/bug2084206.c:
10292	  Enable test, since #2198 is fixed.
10293	* support/regression/tests/gcc-torture-execute-20030714-1.c:
10294	  Reference bug #2285.
10295
102962014-07-12 Molnar Karoly <molnarkaroly AT users.sf.net>
10297
10298	* support/scripts/cinc2h.pl: Bugfix and update.
10299
10300	* device/non-free/include/pic14/pic16c433.h: bugfix
10301
103022014-07-12 Molnar Karoly <molnarkaroly AT users.sf.net>
10303
10304	* device/include/pic14/pic14devices.txt,
10305	  device/include/pic14/pic16regs.h,
10306	  device/non-free/include/pic14/pic12lf1554.h,
10307	  device/non-free/include/pic14/pic12lf1559.h,
10308	  device/non-free/lib/pic14/libdev/devices.txt,
10309	  device/non-free/lib/pic14/libdev/pic12lf1554.c,
10310	  device/non-free/lib/pic14/libdev/pic12lf1559.c,
10311	  doc/sdccman.lyx:
10312	  New devices.
10313
103142014-07-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10315
10316	* src/stm8/gen.c:
10317	  Remove workarounds for bug #2198.
10318
103192014-07-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
10320
10321	* sdas/linksrc/lkrloc3.c (adb_hi, adb_lo, relr3),
10322	  sdas/asxxsrc/asout.c (outrxb): back port some of ASxxxx 5.06 to
10323	  fix bug 2198
10324
103252014-07-08 Molnar Karoly <molnarkaroly AT users.sf.net>
10326
10327	* device/non-free/include/pic14/pic1xxx.h,
10328	  device/non-free/lib/pic14/libdev/pic1xxx.c,
10329	  device/non-free/include/pic16/pic18fxxx.h,
10330	  device/non-free/lib/pic16/libdev/pic18fxxx.c:
10331	  updated
10332
10333	* device/non-free/include/pic14/pic12f1571.h,
10334	  device/non-free/include/pic14/pic12f1572.h,
10335	  device/non-free/include/pic14/pic12f1612.h:
10336	  Added the missing _DEBUG_ON and _DEBUG_OFF config options.
10337	  (These Microchip bugs in original mpasmx includes.)
10338
103392014-07-07 Ben Shi <powerstudio1st AT 163.com>
10340
10341	* sim/ucsim/stm8.src/inst.cc:
10342	  Unify all flag affection code to flag_cvh().
10343
103442014-07-06 Ben Shi <powerstudio1st AT 163.com>
10345
10346	* sim/ucsim/stm8.src/inst.cc:
10347	  Merge inst_sub() to inst_sbc().
10348
103492014-07-03 Ben Shi <powerstudio1st AT 163.com>
10350
10351	* sim/ucsim/stm8.src/inst.cc:
10352	  Fix potential bugs in inst_dec(), inst_inc() & inst_ldxy(): flags
10353	  affection.
10354	  Make inst_addw(), inst_clr() & inst_ldxydst() more understandable.
10355	* sim/ucsim/stm8.src/stm8.cc:
10356	  Fix potential bugs in CALLR & CALLF: the stack saved PC value is not
10357	  accurate.
10358
103592014-06-30 Ben Shi <powerstudio1st AT 163.com>
10360
10361	* sim/ucsim/stm8.src/inst.cc:
10362	  Fix potential bugs in inst_adc() & inst_add() - flags affection.
10363	  Fix potential bugs in inst_sll() & inst_rlc() - reg.X & reg.Y might exceed
10364	  0xffff.
10365	* sim/ucsim/stm8.src/stm8.cc:
10366	  Improve code quality.
10367
103682014-06-25 Ben Shi <powerstudio1st AT 163.com>
10369
10370	* sim/ucsim/stm8.src/inst.cc:
10371	  Fix potential bugs of flags affection in inst_sbc() and inst_cpw().
10372	* sim/ucsim/stm8.src/stm8.cc:
10373	  Fix potential bugs of flags affection in RLWA, and improve code quality of
10374	  TRAP.
10375
103762014-06-21 Ben Shi <powerstudio1st AT 163.com>
10377
10378	* sim/ucsim/stm8.src/inst.cc:
10379	  Fix potential bugs of flags affection in inst_addw(), inst_sub() and
10380	  inst_cp().
10381	* sim/ucsim/stm8.src/stm8.cc:
10382	  Fix potential bugs of flags affection in simulation of RRWA.
10383
103842014-06-20 Ben Shi <powerstudio1st AT 163.com>
10385
10386	* sim/ucsim/stm8.src/inst.cc:
10387	  Fix potential bugs of flags affection in inst_addw().
10388
103892014-06-17 Ben Shi <powerstudio1st AT 163.com>
10390
10391	* sim/ucsim/stm8.src/inst.cc:
10392	  Make the comment more understandable, fix potential bugs in inst_jr().
10393	  (JRSGT / JRSLE / JRSGE / JRSLT)
10394
103952014-06-10 Ben Shi <powerstudio1st AT 163.com>
10396
10397	* sim/ucsim/stm8.src/inst.cc:
10398	  Add indirect addressing handling in CLR, CPW & LD.
10399	  Fix potential bugs in get_dest().
10400
104012014-06-03 Philipp Klaus Krause <pkk AT spth.de>
10402
10403	* sim/ucsim/stm8.src/inst.cc,
10404	  support/regression/tests/gcc-torture-execute-20021120-1.c:
10405	  Fix bug #2180 by applying patch #244 by Ben Shi.
10406
104072014-06-02 Philipp Klaus Krause <pkk AT spth.de>
10408
10409	* device/lib/Makefile.in:
10410	  Fix non-standard end-of-line matching (makes device libraries compile on
10411	  OpenBSD).
10412
104132014-05-28 Philipp Klaus Krause <pkk AT spth.de>
10414
10415	* src/stm8/gen.c:
10416	  Fix a bug in code generation for right shift by applying patch #243 by Ben
10417	  Shi.
10418
104192014-05-25 Philipp Klaus Krause <pkk AT spth.de>
10420
10421	* src/stm8/ralloc2.cc:
10422	  Fix complement bug #2275.
10423
104242014-05-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10425
10426	* sim/ucsim/stm8.src/stm8.cc:
10427	  Fix flag handling, patch by Ben Shi.
10428	* src/stm8/gen.c:
10429	  Enable some shift optimizations that need the flag handling fix.
10430
104312014-05-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10432
10433	* src/stm8/ralloc2.cc:
10434	  Fix detection of free regs for stm8.
10435	* src/stm8/gen.c:
10436	  Enable optimizations for bitwise and.
10437
104382014-05-08 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10439
10440	* src/SDCCcse.c:
10441	  More aggressive optimization of casts to bool following logic operations.
10442
104432014-05-04 Maarten Brock <sourceforge.brock AT dse.nl>
10444
10445	* src/mcs51/gen.c (saveRegisters, unsaveRegisters): fixed bug 1928,
10446	  (genXpush): small optimization
10447	* src/mcs51/peep.c (termScanAtFunc): fixed return value,
10448	  (scan4op: ret): fixed callee_saves
10449	* src/stm8/gen.c: MSVC is not C99 compliant
10450	* support/regression/tests/callee_saves.c: new, added
10451
104522014-04-30 Philipp Klaus Krause <pkk AT spth.de>
10453
10454	* src/stm8/gen.c:
10455	  More efficient float negation.
10456
104572014-04-30 Philipp Klaus Krause <pkk AT spth.de>
10458
10459	* src/stm8/ralloc2.cc,
10460	  src/stm8/gen.c:
10461	  More flexible register allocation of operands, fixed bug in intra-register
10462	  assignment.
10463
104642014-04-27 Philipp Klaus Krause <pkk AT spth.de>
10465
10466	* src/stm8/gen.c:
10467	  Improve loading of literals to long globals.
10468
104692014-04-23 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10470
10471	* src/stm8/gen.c:
10472	  Fix overoptimistic stack coalescing estimate, clamp shifts.
10473
104742014-04-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10475
10476	* src/stm8/gen.c:
10477	  Improve arithmetic right shift.
10478
104792014-04-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10480
10481	* src/stm8/gen.c:
10482	  Various small fixes and improvements.
10483	* src/stm8/ralloc.c
10484	  Prepare for register packing for assignment.
10485
104862014-04-21 Molnar Karoly <molnarkaroly AT users.sf.net>
10487
10488	* support/scripts/z80-disasm.pl: Disassembler for the z80 family.
10489
104902014-04-21 Philipp Klaus Krause <pkk AT spth.de>
10491
10492	* src/stm8/gen.c:
10493	  Improve left shift by literal, preparations for patch #234.
10494	* device/lib/_mulint.c:
10495	  Speed up integer multiplication by using casts.
10496
104972014-04-21 Philipp Klaus Krause <pkk AT spth.de>
10498
10499	* src/stm8/gen.c:
10500	  More efficient clearing of high bytes of x and y, more efficient right
10501	  shift.
10502	* src/SDCCpeeph.c:
10503	  Better immdInRange, patch by Ben Shi.
10504	* src/stm8/peeph.def:
10505	  Peepholes to optimize stack adjustment.
10506
105072014-04-21 Molnar Karoly <molnarkaroly AT users.sf.net>
10508
10509	* support/scripts/pic16fam-h-gen.pl: updated
10510
105112014-04-20 Philipp Klaus Krause <pkk AT spth.de>
10512
10513	* src/stm8/gen.c,
10514	  src/stm8/ralloc2.cc:
10515	  Improve bitwise and, improve choice of shift location.
10516
105172014-04-20 Molnar Karoly <molnarkaroly AT users.sf.net>
10518
10519	* device/non-free/include/pic14/pic16fam.h:
10520	  Updated and moved here: device/include/pic14/pic16fam.h
10521
105222014-04-20 Philipp Klaus Krause <pkk AT spth.de>
10523
10524	* src/SDCCpeeph.c,
10525	  src/stm8/peeph.def:
10526	  Applied a variant of patch #237 by Ben Shi, implementing RFE #400.
10527	* src/stm8/gen.c:
10528	  Use mov for POINTER_SET where it makes sense.
10529
105302014-04-16 Molnar Karoly <molnarkaroly AT users.sf.net>
10531
10532	* support/scripts/cinc2h.pl,
10533	  support/scripts/mcs51-disasm.pl,
10534	  support/scripts/optimize_pic16devices.pl,
10535	  support/scripts/pic14-header-parser.pl,
10536	  support/scripts/pic16-header-parser.pl:
10537	  Updated the copyright date.
10538
105392014-04-16 Molnar Karoly <molnarkaroly AT users.sf.net>
10540
10541	* device/include/pic14/pic14devices.txt,
10542	  device/include/pic14/pic16regs.h,
10543	  device/non-free/include/pic14/pic12f1571.h,
10544	  device/non-free/include/pic14/pic12f1572.h,
10545	  device/non-free/include/pic14/pic12f1612.h,
10546	  device/non-free/include/pic14/pic16f1613.h,
10547	  device/non-free/include/pic14/pic16f1703.h,
10548	  device/non-free/include/pic14/pic16f1705.h,
10549	  device/non-free/include/pic14/pic16f1707.h,
10550	  device/non-free/include/pic14/pic16f1709.h,
10551	  device/non-free/include/pic14/pic16f1713.h,
10552	  device/non-free/include/pic14/pic16f1716.h,
10553	  device/non-free/include/pic14/pic16f1717.h,
10554	  device/non-free/include/pic14/pic16f1718.h,
10555	  device/non-free/include/pic14/pic16f1719.h,
10556	  device/non-free/lib/pic14/libdev/devices.txt,
10557	  device/non-free/lib/pic14/libdev/pic12f1571.c,
10558	  device/non-free/lib/pic14/libdev/pic12f1572.c,
10559	  device/non-free/lib/pic14/libdev/pic12f1612.c,
10560	  device/non-free/lib/pic14/libdev/pic16f1613.c,
10561	  device/non-free/lib/pic14/libdev/pic16f1703.c,
10562	  device/non-free/lib/pic14/libdev/pic16f1705.c,
10563	  device/non-free/lib/pic14/libdev/pic16f1707.c,
10564	  device/non-free/lib/pic14/libdev/pic16f1709.c,
10565	  device/non-free/lib/pic14/libdev/pic16f1713.c,
10566	  device/non-free/lib/pic14/libdev/pic16f1716.c,
10567	  device/non-free/lib/pic14/libdev/pic16f1717.c,
10568	  device/non-free/lib/pic14/libdev/pic16f1718.c,
10569	  device/non-free/lib/pic14/libdev/pic16f1719.c,
10570	  doc/sdccman.lyx:
10571	  New devices.
10572
105732014-04-13 Philipp Klaus Krause <pkk AT spth.de>
10574
10575	* src/stm8/gen.c:
10576	  Fix for 32-bit host systems (bug #2267).
10577
105782014-04-12 Philipp Klaus Krause <pkk AT spth.de>
10579
10580	* device/lib/*/Makefile.in,
10581	  device/lib/*/*.s,
10582	  src/z80/main.c:
10583	  Do not mangle support function names. Implements RFE #405.
10584	* src/stm8/gen.c:
10585	  More efficient comparisons, a modified version of patch #232 by Ben Shi.
10586	* sdas/asstm8/stm8mch.c:
10587	  Fix bit handling instructions, patch #239 by Pascal S.
10588
105892014-04-11 Maarten Brock <sourceforge.brock AT dse.nl>
10590
10591	* Small Device C Compiler 3.4.0 released
10592	* .version, doc/sdccman.lyx: changed sdcc version to 3.4.1
10593
105942014-04-02 Maarten Brock <sourceforge.brock AT dse.nl>
10595
10596	* device/lib/pic16/debug/Makefile.in: regenerated
10597
105982014-04-02 Maarten Brock <sourceforge.brock AT dse.nl>
10599
10600	* Makefile.common.in,
10601	* Makefile.in: manual edit
10602
106032014-04-02 Maarten Brock <sourceforge.brock AT dse.nl>
10604
10605	* configure
10606	* debugger/mcs51/aclocal.m4
10607	* debugger/mcs51/configure
10608	* device/lib/pic14/aclocal.m4
10609	* device/lib/pic14/configure
10610	* device/lib/pic14/depcomp
10611	* device/lib/pic14/libm/Makefile.in
10612	* device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in
10613	* device/lib/pic14/libsdcc/enhanced/Makefile.in
10614	* device/lib/pic14/libsdcc/regular/Makefile.in
10615	* device/lib/pic14/Makefile.in
10616	* device/lib/pic16/aclocal.m4
10617	* device/lib/pic16/configure
10618	* device/lib/pic16/depcomp
10619	* device/lib/pic16/install-sh
10620	* device/lib/pic16/libc/Makefile.in
10621	* device/lib/pic16/libio/Makefile.in
10622	* device/lib/pic16/libm/Makefile.in
10623	* device/lib/pic16/libsdcc/Makefile.in
10624	* device/lib/pic16/Makefile.in
10625	* device/lib/pic16/missing
10626	* device/lib/pic16/startup/Makefile.in
10627	* device/non-free/lib/pic14/configure
10628	* device/non-free/lib/pic16/aclocal.m4
10629	* device/non-free/lib/pic16/configure
10630	* device/non-free/lib/pic16/depcomp
10631	* device/non-free/lib/pic16/install-sh
10632	* device/non-free/lib/pic16/libdev/Makefile.in
10633	* device/non-free/lib/pic16/Makefile.in
10634	* device/non-free/lib/pic16/missing
10635	* sdccconf_in.h
10636	* sim/ucsim/aclocal.m4
10637	* sim/ucsim/configure
10638	* sim/ucsim/ltmain.sh
10639	* support/cpp/configure
10640	* support/packihx/configure: regenerated
10641
106422014-04-02 Maarten Brock <sourceforge.brock AT dse.nl>
10643
10644	* configure.in,
10645	* Makefile.in: manual edit to support option --disable-non-free
10646
106472014-04-01 Maarten Brock <sourceforge.brock AT dse.nl>
10648
10649	* doc/INSTALL.txt,
10650	* support/scripts/sdcc.nsi: added dedication to Borut Razem
10651	* doc/README.txt: added STM8 target support
10652
106532014-03-31 Philipp Klaus Krause <pkk AT spth.de>
10654
10655	* Merged sdcc-stm8 branch into trunk.
10656
106572014-03-29 Philipp Klaus Krause <pkk AT spth.de>
10658
10659	* src/stm8/peeph.def:
10660	  Patch #233 by Pascal S, and further peepholes for improving io access.
10661
106622014-03-29 Philipp Klaus Krause <pkk AT spth.de>
10663
10664	* src/stm8/gen.c,
10665	  support/regression/tests/patch-235.c:
10666	  Fix a bug in long and long long right shift on stm8.
10667
106682014-03-28 Philipp Klaus Krause <pkk AT spth.de>
10669
10670	* src/stm8/gen.c:
10671	  Improve ifx code generation.
10672
106732014-03-28 Philipp Klaus Krause <pkk AT spth.de>
10674
10675	* src/stm8/gen.c: Comment for range error check in aopIsLitVal(),
10676	  improve range checks in snprintf() calls,
10677	  prepare for refactored version of patch #232.
10678
106792014-03-22 Maarten Brock <sourceforge.brock AT dse.nl>
10680
10681	* .version,
10682	* doc/INSTALL.txt,
10683	* doc/sdccman.lyx: version 3.4.0
10684
106852014-03-21 Philipp Klaus Krause <pkk AT spth.de>
10686
10687	* src/stm8/gen.c: Applied patch #227 by Ben Shi to fix jumping on float in y
10688	  and to speed up jumping on byte in yl.
10689	* device/lib/z80/setjmp.s:
10690	  Slightly more efficient longjmp().
10691	* device/lib/stm8/setjmp.s,
10692	  support/regression/tests/setjmp.c:
10693	  Implement setjmp() / longjmp() for stm8.
10694	* src/z80/ralloc2.cc: Allow use of hl in 16-bit additions with global
10695	  variables as long as de or bc is free.
10696
106972014-03-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10698
10699	* doc/sdccman.lyx:
10700	  Fix example in documentation on named address spaces in ROM.
10701
107022014-03-09 Molnar Karoly <molnarkaroly AT users.sf.net>
10703
10704	* device/non-free/include/pic14/pic*.h,
10705	  device/non-free/include/pic16/pic18f*.h,
10706	  device/non-free/lib/pic14/libdev/pic*.c,
10707	  device/non-free/lib/pic16/libdev/pic18f*.c:
10708	  Regenerate the DEVICE.[ch] files with the cinc2h.pl program.
10709
107102014-03-03 Maarten Brock <sourceforge.brock AT dse.nl>
10711
10712	* src/SDCCpeeph.c (notVolatileVariable): fixed strchr params
10713
107142014-03-01 Maarten Brock <sourceforge.brock AT dse.nl>
10715
10716	* src/stm8/gen.c: retry to revert previous two changes
10717
107182014-02-28 Maarten Brock <sourceforge.brock AT dse.nl>
10719
10720	* src/stm8/gen.c: reverted previous two changes (not committed)
10721	* .version,
10722	* doc/INSTALL.txt,
10723	* doc/sdccman.lyx: version 3.4.0 rc1
10724	* sdcc.spec: version 3.4.0
10725
107262014-02-27 Philipp Klaus Krause <pkk AT spth.de>
10727
10728	* src/stm8/gen.c:
10729	  Simplify and improve ifx code generation.
10730
107312014-02-27 Philipp Klaus Krause <pkk AT spth.de>
10732
10733	* src/stm8/gen.c: Applied patch #227 by Ben Shi to fix jumping on float in y
10734	  and to speed up jumping on byte in yl.
10735
107362014-02-23 Philipp Klaus Krause <pkk AT spth.de>
10737
10738	* src/stm8/gen.c: Applied patch #223 by Ben Shi to improve code size for
10739	  signed bit-fields on stm8.
10740	* src/stm8/main.c:
10741	  Applied patch #225 by Pascal S to enable naked functions for stm8.
10742
107432014-02-21 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10744
10745	* src/stm8/peeph.def: Applied patch #222 by Ben Shi (new peephole to make
10746	  shifts slightly more efficient).
10747	* src/stm8/gen.c:
10748	  Applied patch #221 by Ben Shi (fix some bugs in shifts).
10749
107502014-02-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
10751
10752	* src/SDCCicode.c (geniCodeDivision): Fixed bug 2254
10753
107542014-02-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10755
10756	* src/stm8/gen.c:
10757	  Fix condition for shifting stack operands in a.
10758
107592014-02-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10760
10761	* src/stm8/gen.c:
10762	  Handle signed and unsigned 8-bit operands the same in destructive ifx and.
10763
107642014-02-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
10765
10766	* support/regression/tests/bug-2253.c: reduce array size for
10767	  ports that do not support large local variables
10768
107692014-02-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10770
10771	* src/stm8/gen.c,
10772	  support/regression/tests/bug-2253.c:
10773	  Fix and improve division and multiplication, includes fix for #2253.
10774
107752014-02-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10776
10777	* src/stm8/gen.c,
10778	  support/regression/tests/bug-2252.c:
10779	  Fix bug #2252.
10780	* src/SDCCpeeph.c:
10781	  Fix notVolatile() for stm8.
10782	* src/stm8/peeph.def:
10783	  Add some peephole rules to eliminate unnecessary loads.
10784
107852014-02-09 Philipp Klaus Krause <pkk AT spth.de>
10786
10787	* src/stm8/gen.c
10788	  Slightly more efficient complement.
10789
107902014-02-08 Philipp Klaus Krause <pkk AT spth.de>
10791
10792	* src/stm8/gen.c: Fix jump on condition that is stored in register y in
10793	  reverse order (bug #2251).
10794
107952014-02-02 Philipp Klaus Krause <pkk AT spth.de>
10796
10797	* sdas/asstm8/stm8mch.c,
10798	  src/stm8/gen.c:
10799	  Apply patch #215 by Ben Shi to fix bug #2227.
10800	* src/port.h,
10801	  sdas/asxxsrc/asmain.c:
10802	  Fix >= comparisons.
10803
108042014-01-12 Philipp Klaus Krause <pkk AT spth.de>
10805
10806	* sdas/asstm8/stm8pst.c,
10807	  src/stm8/main.c:
10808	  Enable .optsdcc for stm8.
10809
108102014-01-03 Maarten Brock <sourceforge.brock AT dse.nl>
10811
10812	* src/SDCCast.c (ast_print): fixed GOTO, warn for undecorated
10813
108142014-01-03 Maarten Brock <sourceforge.brock AT dse.nl>
10815
10816	* device/lib/_gptrget.c,
10817	* device/lib/_gptrput.c,
10818	* src/ds390/main.c,
10819	* src/ds390/gen.c: renamed _ap to acc1, fixed bug 1896
10820	* support/regression/tests/gcc-torture-execute-loop-5.c: enabled for ds390
10821	* sdas/asxxsrc/aslex.c (nxtline): fixed bug 2166 and 2206
10822	* src/SDCClospre.hpp,
10823	* src/SDCCralloc.hpp: fixed MSVC warnings
10824
108252014-01-02 Maarten Brock <sourceforge.brock AT dse.nl>
10826
10827	* doc/sdccman.lyx: applied patch 62
10828	* sdas/linksrc/lkarea.c (lnksect): fixed bug 1805
10829	* sdas/linksrc/lkmain.c (Areas51): use only for mcs51
10830	* src/hc08/main.c: mark XINIT as (CODE)
10831
108322013-12-30 Philipp Klaus Krause <pkk AT spth.de>
10833
10834	* src/hc08/ralloc2.cc,
10835	  src/stm8/gen.c,
10836	  src/stm8/ralloc2.cc:
10837	  Remove some GETHBIT leftovers.
10838
108392013-12-30 Maarten Brock <sourceforge.brock AT dse.nl>
10840
10841	* src/mcs51/gen.c (genGetHbit): removed
10842	* src/mcs51/main.c (hasExtBitOp): removed GETHBIT
10843	* src/SDCCast.c (optimizeGetByte, optimizeGetWord): do not use GETYBTE or
10844	  GETWORD for byte or word sources
10845	  (createFunction): allow xstack==NULL
10846	* src/SDCCmem.c (redoStackOffsets): allow xstack==NULL
10847	* src/SDCCerr.c (W_CONST_TOO_LARGE): fixed format bug
10848	* src/SDCCerr.h: cosmetics
10849	* src/SDCCsymt.c (mergeSpec, checkSClass): fixed bug 2068, loss of register
10850	  storage class
10851
108522013-12-29 Philipp Klaus Krause <pkk AT spth.de>
10853
10854	* device/lib/is*.c
10855	  Revert and redo commit #8912.
10856
108572013-12-27 Maarten Brock <sourceforge.brock AT dse.nl>
10858
10859	* src/SDCCglue.c (glue): added .optsdcc --all-callee-saves, fixed bug 2090
10860	* src/SDCCmain.c (preProcess): added -D__SDCC_ALL_CALLEE_SAVES
10861	* src/SDCCglobl.h: removed xa51 MODEL_PAGE0
10862	* doc/sdccman.lyx: documented predefined macro
10863
108642013-12-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
10865
10866	* support/scripts/sdcc.nsi: copy either sjlj or seh support dll
10867
108682013-12-25 Maarten Brock <sourceforge.brock AT dse.nl>
10869
10870	* device/lib/abs.c,         device/lib/acosf.c,         device/lib/asincosf.c,
10871	* device/lib/asinf.c,       device/lib/atan2f.c,        device/lib/atanf.c,
10872	* device/lib/ceilf.c,       device/lib/cosf.c,          device/lib/coshf.c,
10873	* device/lib/cotf.c,        device/lib/expf.c,          device/lib/fabsf.c,
10874	* device/lib/floorf.c,      device/lib/frexpf.c,        device/lib/labs.c,
10875	* device/lib/ldexpf.c,      device/lib/log10f.c,        device/lib/logf.c,
10876	* device/lib/modff.c,       device/lib/powf.c,          device/lib/rand.c,
10877	* device/lib/sincosf.c,     device/lib/sincoshf.c,      device/lib/sinf.c,
10878	* device/lib/sinhf.c,       device/lib/sqrtf.c,         device/lib/tancotf.c,
10879	* device/lib/tanf.c,        device/lib/tanhf.c,
10880	* device/include/math.h: removed const from arguments
10881
10882	* device/lib/pic14/libm/acosf.c,    device/lib/pic14/libm/asincosf.c,
10883	* device/lib/pic14/libm/asinf.c,    device/lib/pic14/libm/atan2f.c,
10884	* device/lib/pic14/libm/atanf.c,    device/lib/pic14/libm/ceilf.c,
10885	* device/lib/pic14/libm/cosf.c,     device/lib/pic14/libm/coshf.c,
10886	* device/lib/pic14/libm/cotf.c,     device/lib/pic14/libm/errno.c,
10887	* device/lib/pic14/libm/expf.c,     device/lib/pic14/libm/fabsf.c,
10888	* device/lib/pic14/libm/floorf.c,   device/lib/pic14/libm/frexpf.c,
10889	* device/lib/pic14/libm/ldexpf.c,   device/lib/pic14/libm/log10f.c,
10890	* device/lib/pic14/libm/logf.c,     device/lib/pic14/libm/modff.c,
10891	* device/lib/pic14/libm/powf.c,     device/lib/pic14/libm/sincosf.c,
10892	* device/lib/pic14/libm/sincoshf.c, device/lib/pic14/libm/sinf.c,
10893	* device/lib/pic14/libm/sinhf.c,    device/lib/pic14/libm/sqrtf.c,
10894	* device/lib/pic14/libm/tancotf.c,  device/lib/pic14/libm/tanf.c,
10895	* device/lib/pic14/libm/tanhf.c,
10896	* device/include/pic14/math.h: removed const from arguments
10897
10898	* device/lib/pic16/libm/acosf.c,    device/lib/pic16/libm/asincosf.c,
10899	* device/lib/pic16/libm/asinf.c,    device/lib/pic16/libm/atan2f.c,
10900	* device/lib/pic16/libm/atanf.c,    device/lib/pic16/libm/ceilf.c,
10901	* device/lib/pic16/libm/cosf.c,     device/lib/pic16/libm/coshf.c,
10902	* device/lib/pic16/libm/cotf.c,     device/lib/pic16/libm/errno.c,
10903	* device/lib/pic16/libm/expf.c,     device/lib/pic16/libm/fabsf.c,
10904	* device/lib/pic16/libm/floorf.c,   device/lib/pic16/libm/frexpf.c,
10905	* device/lib/pic16/libm/ldexpf.c,   device/lib/pic16/libm/log10f.c,
10906	* device/lib/pic16/libm/logf.c,     device/lib/pic16/libm/modff.c,
10907	* device/lib/pic16/libm/powf.c,     device/lib/pic16/libm/sincosf.c,
10908	* device/lib/pic16/libm/sincoshf.c, device/lib/pic16/libm/sinf.c,
10909	* device/lib/pic16/libm/sinhf.c,    device/lib/pic16/libm/sqrtf.c,
10910	* device/lib/pic16/libm/tancotf.c,  device/lib/pic16/libm/tanf.c,
10911	* device/lib/pic16/libm/tanhf.c,
10912	* device/include/pic16/math.h: removed const from arguments
10913
10914	* device/lib/_memchr.c,     device/lib/_memcmp.c,       device/lib/_memcpy.c,
10915	* device/lib/_memmove.c,    device/lib/_memset.c,       device/lib/_strcat.c,
10916	* device/lib/_strchr.c,     device/lib/_strcmp.c,       device/lib/_strcpy.c,
10917	* device/lib/_strcspn.c,    device/lib/_strlen.c,       device/lib/_strncat.c,
10918	* device/lib/_strncmp.c,    device/lib/_strncpy.c,      device/lib/_strpbrk.c,
10919	* device/lib/_strrchr.c,    device/lib/_strspn.c,       device/lib/_strstr.c,
10920	* device/lib/_strtok.c,
10921	* device/include/string.h: added const for const pointer arguments
10922
10923	* device/lib/pic16/libc/string/memchr.c,
10924	* device/lib/pic16/libc/string/memcmp.c,
10925	* device/lib/pic16/libc/string/memcpy.c,
10926	* device/lib/pic16/libc/string/memmove.c,
10927	* device/include/pic16/string.h: added const for const pointer arguments
10928
10929	* device/lib/_setjmp.c: small optimization
10930	* sdas/linksrc/lkarea.c (lnksect2): fixed s_XISEG calculation
10931	* sdas/linksrc/lkmem.c: cosmetics
10932	* src/SDCCmain.c: place xstack_loc at same address as xdata_loc by default
10933	* src/SDCCsymt.c (printFromToType): print in one go for make -j output,
10934	  (compareFuncType): fixed bug 2134
10935	* sdas/astlcs90/t90mch.c (machine, 16bit indirect op): fixed warning
10936	* support/cpp/libiberty/md5.c: synced with support/sdbinutils/libiberty/md5.c
10937
109382013-12-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
10939
10940	* device/lib/tlcs90/Makefile.in: fix assembler level .include
10941	  when not building within source tree
10942	* sim/ucsim/utils.cc: properly enable vasprintf() declaration
10943
109442013-12-22 Maarten Brock <sourceforge.brock AT dse.nl>
10945
10946	* src/SDCCval.c (valForStructElem): fixed bug 2122
10947
109482013-12-22 Maarten Brock <sourceforge.brock AT dse.nl>
10949
10950	* src/SDCCmain.c (setDefaultOptions): start xdata at 1 by default, fixes bug
10951	  2173
10952	* src/SDCCast.c (decorateType, RETURN): error on returning void expression
10953	  when not using sdcc extensions
10954	* src/stm8/gen.c (genReturn): accept returning void, fixes bug 2158
10955	* support/regression/tests/gcc-torture-execute-20000314-3.c: reintroduced
10956
109572013-12-22 Maarten Brock <sourceforge.brock AT dse.nl>
10958
10959	* src/mcs51/gen.c (aopGet): fixed for remat non-generic pointers,
10960	  (genPointerGet, genPointerSet): remat all cast remat pointers
10961	* src/mcs51/ralloc.c (packRegisters): remat all cast of remat ptr
10962	* src/SDCCast.c (decorateType, CAST): fix bug 2133, array==pointer
10963	* src/SDCCmain.c: cosmetics
10964	* src/SDCCsymt.h: reordered DECLARATOR_TYPE
10965	* support/regression/tests/bug-2133.c: new, added
10966	* support/regression/tests/gcc-torture-execute-20021010-2.c,
10967	* support/regression/tests/gcc-torture-execute-20041112-1.c,
10968	* support/regression/tests/gcc-torture-execute-960116-1.c,
10969	* support/regression/tests/staticinit.c: fixed warnings
10970
109712013-12-20 Maarten Brock <sourceforge.brock AT dse.nl>
10972
10973	* src/SDCCerr.c,
10974	* src/SDCCerr.h: added W_UNRECOGNIZED_ASM
10975	* src/SDCCglobl.h,
10976	* src/z80/gen.c: cosmetics
10977	* src/SDCCpeeph.c (StrStr): added
10978	  (pcDistance): largest instruction on any target is 4 bytes?
10979	* src/z80/peep.c (ISINST): use STRNCASECMP,
10980	  (argCont): use StrStr,
10981	  (z80instructionSize): use STRNCASECMP, W_UNRECOGNIZED_ASM,
10982	   fixed some bugs, return 999 when unrecognized
10983	* support/regression/tests/bug-2222.c: removed memset and un
10984	* support/regression/tests/gcc-torture-execute-20040313-1.c: enabled for all
10985	  targets with reduced footprint
10986
109872013-12-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
10988
10989	* src/stm8/gen.c:
10990	  Document subw uses that can be enabled once bug #2227 is fixed.
10991	* device/include/ctype.h:
10992	  Provide macros that use inline functions to improve efficiency of some
10993	  common functions.
10994
109952013-12-18 Philipp Klaus Krause <pkk AT spth.de>
10996
10997	* src/stm8/gen.c,
10998	  support/regression/tests/float_single.c:
10999	  Fix float comparison, bug #2170.
11000	* support/regression/tests/gcc-torture-execute-20050826-1.c:
11001	  Use smaller array for stm8.
11002
110032013-12-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11004
11005	* support/regression/tests/gcc-torture-execute-20040313-1.c:
11006	  Enabled test.
11007
110082013-12-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11009
11010	* device/include/ctype.h,
11011	  device/include/stdio.h,
11012	  device/lib/incl.mk,
11013	  device/lib/_is*.c,
11014	  device/lib/is*.c,
11015	  device/lib/tolower.c,
11016	  device/lib/toupper.c,
11017	  support/regression/tests/ctype.c:
11018	  Fix ctype.h and anything in there.
11019
110202013-12-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11021
11022	* device/lib/z80/crt0.s,
11023	  device/lib/z180/crt0.s,
11024	  device/lib/r3ka/crt0.s,
11025	  device/lib/r2k/crt0.s,
11026	  device/lib/gbz80/crt0.s:
11027	  Fix bug #2153.
11028
110292013-12-18 Maarten Brock <sourceforge.brock AT dse.nl>
11030
11031	* src/SDCCast.c (stringToSymbol, createIf): fixed bug 2163
11032	* support/regression/tests/gcc-torture-execute-string-opt-5.c: enabled for
11033	  mcs51 with smaller buffer
11034	* support/regression/tests/bug-2163.c: new, added
11035
110362013-12-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11037
11038	* device/lib/tlcs90/t90regs.s,
11039	  device/lib/tlcs90/crt0.s:
11040	  crt0 for tlcs90.
11041
110422013-12-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11043
11044	* src/stm8/peep.c:
11045	  Fix bug #2182.
11046	* src/SDCCralloc.hpp:
11047	  Enable warning for non-connected live ranges for hc08 and s08.
11048
110492013-12-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11050
11051	* src/z80/gen.c: Fix cost for built-in strncpy().
11052
110532013-12-16 Maarten Brock <sourceforge.brock AT dse.nl>
11054
11055	* src/SDCCglue.c (glue): fixed bug 2212
11056	* src/z80/gen.c (genBuiltInStrncpy): fixed bug 2231
11057	* support/regression/tests/bug-2231.c: new, added
11058
110592013-12-15 Maarten Brock <sourceforge.brock AT dse.nl>
11060
11061	* src/SDCCicode.c (newiTempOperand): fixed bug 2235
11062	* support/regression/tests/bug-2235.c: new, added
11063	* src/SDCCptropt.c (ptrPseudoSymSafe): fixed bug 2216
11064	* support/regression/tests/bug-2216.c: new, added
11065
110662013-12-07 Maarten Brock <sourceforge.brock AT dse.nl>
11067
11068	* .version, doc/sdccman.lyx: bumped version to 3.3.2
11069	* src/SDCCast.c (decorateType, NOT): fixed bug 2232
11070	* src/SDCCmain.c (printVersionInfo): mention GPL
11071	* support/regression/tests/bool.c: fixed warning
11072
110732013-12-06 Maarten Brock <sourceforge.brock AT dse.nl>
11074
11075	* src/mcs51/gen.c (outBitC, genIfx): fixed both parts of bug 2233
11076	* support/regression/tests/bool.c: added test
11077
110782013-12-02 Philipp Klaus Krause <pkk AT spth.de>
11079
11080	* src/z80/ralloc2.cc:
11081	  Fix handling of IY during accesses to global variables.
11082
110832013-11-23 Philipp Klaus Krause <pkk AT spth.de>
11084
11085	* src/SDCClospre.hpp:
11086	  Fix use flag initialization in lospre edge splitting.
11087	* src/SDCCglue.c:
11088	  Add comment on bug #2089 that allocates strings twice.
11089
110902013-11-16 Maarten Brock <sourceforge.brock AT dse.nl>
11091
11092	* device/lib/_divulong.c: cosmetic, use y0
11093	* device/lib/_fsadd.c: cosmetic
11094	* device/lib/clean.mk: clean pic14 and tlcs90
11095	* device/lib/ds390/tinibios.c (_sdcc_external_startup): do not change stack
11096	* device/lib/Makefile.in: use TAB's
11097	* device/non-free/lib/clean.mk: clean pic14
11098	* device/non-free/lib/pic14/Makefile.in,
11099	* sdas/as6808/clean.mk,
11100	* sdas/as8051/clean.mk,
11101	* sdas/as8xcxxx/clean.mk,
11102	* sdas/asgb/clean.mk,
11103	* sdas/asrab/clean.mk,
11104	* sdas/asstm8/clean.mk,
11105	* sdas/astlcs90/clean.mk,
11106	* sdas/asz80/clean.mk,
11107	* support/sdbinutils/Makefile.in: prevent warnings
11108	* sim/ucsim/cmd.src/clean.mk: clean cmdpars.* & cmdlex.*
11109	* src/clean.mk: clean pic14 and stm8
11110	* src/common.h: cosmetic
11111	* src/ds390/main.c (_ds390_genAssemblerPreamble): added dpl, dph, acon,
11112	  (_ds390_genIVT): change addressing mode and stack at __reset_vect,
11113	  (_ds390_genInitStartup): no need for 10bit stack init here
11114	* src/port.h: added rtrackUpdate
11115	* src/SDCCgen.c (emit_raw): try to track constant register contents
11116	* src/ds390/main.c,
11117	* src/hc08/main.c,
11118	* src/pic14/main.c,
11119	* src/pic16/main.c,
11120	* src/stm8/main.c,
11121	* src/z80/main.c (*_port): no register tracking
11122	* src/mcs51/rtrack.h: renamed rtrackUpdate to _mcs51_rtrackUpdate
11123	* src/mcs51/rtrack.c: enabled by default,
11124	  implemented suggested removals
11125	* src/mcs51/main.c: use _mcs51_rtrackUpdate
11126	* src/mcs51/gen.c (genSend, genPagedPointerGet): fixed bugs obscured by
11127	  peephole rules,
11128	  (genLeftShiftLiteral): disabled assert to fix bug 2224
11129	* src/z80/z80.vcxproj,
11130	* src/z80/z80.vcxproj.filters: added peeph-tlcs90.def
11131	* support/regression/Makefile.in: clean host/spec.mk
11132	* support/regression/tests/bug-2222.c: enabled test for mcs51
11133
111342013-11-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11135
11136	* support/regression/tests/bug-2222.c:
11137	  Do not try to execute code that dereferences 0 pointer.
11138
111392013-11-11 Raphael Neider <rneider AT web.de>
11140
11141	* src/pic14/main.c,
11142	  src/pic14/main.h,
11143	  src/pic16/device.h,
11144	  src/pic16/main.c:
11145	  add warning if --use-non-free is *not* given while compiling
11146	  for PIC14 or PIC16 devices; the warning can be disabled by
11147	  either passing --use-non-free (usually recommended) or
11148	  by passing --no-warn-non-free (usually not recommended)
11149
11150	* device/lib/pic14/Makefile.common,
11151	  device/lib/pic16/Makefile.common,
11152	  device/non-free/lib/pic14/Makefile.common.in,
11153	  device/non-free/lib/pic16/Makefile.common,
11154	  support/regression/ports/pic14/spec.mk,
11155	  support/regression/ports/pic16/spec.mk:
11156	  pass --no-warn-non-free to avoid new warnings
11157
11158	* device/lib/pic14/Makefile.in,
11159	  device/lib/pic14/aclocal.m4,
11160	  device/lib/pic14/configure,
11161	  device/lib/pic14/libm/Makefile.in,
11162	  device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in,
11163	  device/lib/pic14/libsdcc/enhanced/Makefile.in,
11164	  device/lib/pic14/libsdcc/regular/Makefile.in,
11165	  device/lib/pic16/Makefile.in,
11166	  device/lib/pic16/aclocal.m4,
11167	  device/lib/pic16/configure,
11168	  device/lib/pic16/debug/Makefile.in,
11169	  device/lib/pic16/libc/Makefile.in,
11170	  device/lib/pic16/libio/Makefile.in,
11171	  device/lib/pic16/libm/Makefile.in,
11172	  device/lib/pic16/libsdcc/Makefile.in,
11173	  device/lib/pic16/startup/Makefile.in,
11174	  device/non-free/lib/pic16/Makefile.in,
11175	  device/non-free/lib/pic16/aclocal.m4,
11176	  device/non-free/lib/pic16/configure,
11177	  device/non-free/lib/pic16/libdev/Makefile.in:
11178	  regenerated
11179
111802013-09-30 Philipp Klaus Krause <pkk AT spth.de>
11181
11182	* device/lib/tlcs90/stubs.s,
11183	  device/lib/tlcs90/Makefile.in:
11184	  TLCS-90 library.
11185
111862013-09-29 Philipp Klaus Krause <pkk AT spth.de>
11187
11188	* device/include/asm/tlcs90,
11189	  device/include/math.h,
11190	  device/include/sdcc-lib.h,
11191	  device/include/stdarg.h,
11192	  device/lib/tlcs90/Makefile.in,
11193	  device/lib/tlcs90/divmixed.s,
11194	  device/lib/tlcs90/modmixed.s,
11195	  src/z80/gen.c:
11196	  TLCS-90 library.
11197
111982013-09-28 Philipp Klaus Krause <pkk AT spth.de>
11199
11200	* src/z80/peeph-gbz80.def:
11201	  Remove broken peephole rule.
11202
112032013-09-27 Philipp Klaus Krause <pkk AT spth.de>
11204
11205	* sdas/astlcs90/t90mch.c:
11206	  Fix handling of 8-bit immediates, patch by Rainer Keuchel.
11207	* src/stm8/peeph.def:
11208	  More flexible unreachable jump elimination.
11209	* configure.in,
11210	  device/lib/Makefile.in,
11211	  device/lib/tlcs90,
11212	  src/z80/main.c:
11213	  Library for TLCS-90.
11214	* src/stm8/gen.c:
11215	  Fix comparisons with operand in y, fix offset in wide pointer read when
11216	  optimizing for code size, fix and improve stack adjustment.
11217	* src/z80/peeph-tlcs90.def,
11218	  src/z80/main.c,
11219	  src/z80/peep.c:
11220	  Peephole optimization for TLCS-90.
11221
112222013-09-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
11223
11224	* src/SDCCicode.c (operandFromSymbol): don't allocate register
11225	  equivalents for symbols that can't fit in HC08/S08 registers.
11226	* src/SDCClrange.c (visit): remove TARGET_HC08_LIKE exception.
11227
112282013-09-26 Philipp Klaus Krause <pkk AT spth.de>
11229
11230	* src/stm8/main.c,
11231	  src/stm8/peep.c:
11232	  notUsedFrom() for stm8.
11233	* src/z80/peeph-r2k.def,
11234	  src/z80/peeph-z80.def,
11235	  support/regression/tests/bug-2228.c:
11236	  Fix bug #2228.
11237	* sim/ucsim/stm8.src/inst.cc:
11238	  Fix type name.
11239	* support/regression/tests/bug-2222.c:
11240	  Fix use of uninitialized memory.
11241
112422013-09-25 Philipp Klaus Krause <pkk AT spth.de>
11243
11244	* src/z80/gen.c:
11245	  Improve handling of global variables in addition (and prepare for
11246	  subtraction).
11247	* sim/ucsim/stm8.src/inst.cc:
11248	  Code cleanup.
11249
112502013-09-24 Maarten Brock <sourceforge.brock AT dse.nl>
11251
11252	* device/include/mcs51/reg51.h: fall back to 8052.h
11253	* doc/sdccman.lyx: pragma exclude bits
11254	* src/mcs51/gen.c (genFunction, genEndFunction): applied patch 193 for
11255	  pragma exclude bits
11256	* src/port.h: maxextalign warning fixed
11257	* src/SDCCglobl.h: define true and false for MSVC
11258	* src/stm8/gen.c (genCmp): fixed warning
11259	* src/stm8/ralloc2.cc (Ainst_ok): fixed warning
11260
112612013-09-24 Philipp Klaus Krause <pkk AT spth.de>
11262
11263	* src/SDCCralloc.hpp:
11264	  Enable warning for non-connected live-ranges.
11265
112662013-09-24 Philipp Klaus Krause <pkk AT spth.de>
11267
11268	* src/z80/gen.c,
11269	  src/stm8/gen.c,
11270	  support/regression/tests/bug-2222.c:
11271	  Fix bugs #2222, 2223.
11272
112732013-09-24 Philipp Klaus Krause <pkk AT spth.de>
11274
11275	* src/SDCCralloc.hpp,
11276	  src/SDCClrange.c:
11277	  Check more carefully for undead hiding among the living variables.
11278
112792013-09-23 Philipp Klaus Krause <pkk AT spth.de>
11280
11281	* sdas/astlcs90,
11282	  Makefile.common.in,
11283	  Makefile.in,
11284	  configure.in:
11285	  Integrate Rainer Keuchel's TLCS-90 assembler.
11286
112872013-09-23 Philipp Klaus Krause <pkk AT spth.de>
11288
11289	* src/stm8/peeph.def:
11290	  Remove redundant jumps.
11291
112922013-09-22 Borut Razem <borut.razem AT gmail.com>
11293
11294	* device/non-free/lib/pic14/configure.in,
11295	  device/non-free/lib/pic14/configure,
11296	  device/non-free/lib/pic16/supported-devices.ac,
11297	  device/non-free/lib/pic16/configure,
11298	  device/lib/pic16/configure: fixed bash dependencies
11299
113002013-09-21 Philipp Klaus Krause <pkk AT spth.de>
11301
11302	* src/stm8/gen.c:
11303	  More efficient stack adjustment when optimizing for code size.
11304
113052013-09-21 Maarten Brock <sourceforge.brock AT dse.nl>
11306
11307	* src/mcs51/gen.c (genEndFunction): applied patch 207 to fix bug 2221,
11308	  Thanks Alex Burton!
11309	* support/regression/tests/bug-2221.c: new, added
11310
113112013-09-20 Philipp Klaus Krause <pkk AT spth.de>
11312
11313	* src/stm8/gen.c:
11314	  Refactor testing for literal bytes, more efficient cast from unsigned.
11315
113162013-09-20 Borut Razem <borut.razem AT gmail.com>
11317
11318	* device/non-free/lib/pic14/configure.in,
11319	  device/non-free/lib/pic14/configure,
11320	  device/non-free/lib/pic16/supported-devices.ac,
11321	  device/non-free/lib/pic16/configure,
11322	  device/lib/pic16/configure:
11323	  fixed bug #2220 Detection of 16 bit pic devices supported by gputils
11324	  is not working correctly on Cygwin environment
11325
113262013-09-19 Molnar Karoly <molnarkaroly AT users.sf.net>
11327
11328	* device/include/pic14/pic14devices.txt,
11329	  device/include/pic14/pic16regs.h,
11330	  device/non-free/include/pic14/pic16f1704.h,
11331	  device/non-free/include/pic14/pic16f1708.h,
11332	  device/non-free/include/pic14/pic16lf1704.h,
11333	  device/non-free/include/pic14/pic16lf1708.h,
11334	  device/non-free/lib/pic14/libdev/devices.txt,
11335	  device/non-free/lib/pic14/libdev/pic16f1704.c,
11336	  device/non-free/lib/pic14/libdev/pic16f1708.c,
11337	  device/non-free/lib/pic14/libdev/pic16lf1704.c,
11338	  device/non-free/lib/pic14/libdev/pic16lf1708.c,
11339	  doc/sdccman.lyx:
11340	  New devices.
11341
113422013-09-19 Philipp Klaus Krause <pkk AT spth.de>
11343
11344	* src/z80/gen.c:
11345	  Enable some Rabbit optimizations for the TLCS-90.
11346	* src/SDCCtree_dec.hpp,
11347	  src/SDCCralloc.hpp,
11348	  src/SDCCnaddr.hpp,
11349	  src/SDCClospre.hpp:
11350	  Reduce memory footprint in lospre and named address spaces, prepare for
11351	  reducing memory footprint in register allocation.
11352
113532013-09-17 Philipp Klaus Krause <pkk AT spth.de>
11354
11355	* src/stm8/gen.c:
11356	  More efficient zeroing of longs.
11357	* src/z80/gen.c:
11358	  Remove C99 variable declaration.
11359
113602013-09-17 Philipp Klaus Krause <pkk AT spth.de>
11361
11362	* src/stm8/ralloc.c:
11363	  Do not allocate spill locations for optimized-out jump conditions.
11364
113652013-09-16 Philipp Klaus Krause <pkk AT spth.de>
11366
11367	* src/stm8/gen.c:
11368	  More efficient casts to long, fix handling of register deadness in shifts.
11369
113702013-09-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
11371
11372	* sim/ucsim/stm8.src/stm8.cc: fix simulation of LDW Y,(n,SP)
11373	  to properly update N & Z flag bits
11374
113752013-09-14 Philipp Klaus Krause <pkk AT spth.de>
11376
11377	* src/stm8/gen.c,
11378	  sim/ucsim/stm8.src/inst.cc:
11379	  More efficient conditional jumps.
11380
113812013-09-13 Philipp Klaus Krause <pkk AT spth.de>
11382
11383	* src/stm8/gen.c:
11384	  Assume spilt variables are on non-extended stack during dry runs.
11385
113862013-09-12 Philipp Klaus Krause <pkk AT spth.de>
11387
11388	* Makefile.common.in,
11389	  configure.in,
11390	  src/z80/gen.c:
11391	  Preparations for TLCS-90 port.
11392	* src/stm8/peeph.def:
11393	  Peepholes to work around lack of RFE #357.
11394
113952013-09-12 Philipp Klaus Krause <pkk AT spth.de>
11396
11397	* src/z80/gen.c:
11398	  Negative stack adjustment efficiency, restore stack pointer from frame pointer.
11399	* src/stm8/peep.c:
11400	  Provide our own isblank()-substitute for compilers that lack C99 support.
11401
114022013-09-11 Philipp Klaus Krause <pkk AT spth.de>
11403
11404	* src/z80/gen.c,
11405	  src/z80/mappings.i,
11406	  src/z80/peep.c:
11407	  Stack adjustment code refactoring.
11408
114092013-09-11 Philipp Klaus Krause <pkk AT spth.de>
11410
11411	* src/SDCCmain.c,
11412	  src/port.h,
11413	  src/z80/main.c,
11414	  src/z80/peep.c,
11415	  src/z80/z80.h,
11416	  src/z80/gen.c,
11417	  src/z80/peep.c:
11418	  Preparations for TLCS-90 port.
11419
114202013-09-09 Philipp Klaus Krause <pkk AT spth.de>
11421
11422	* support/regression/tests/addrspace.c:
11423	  Disable test for host regression tests.
11424	* src/stm8/gen.c:
11425	  Make it compile on compilers that lack C99 support.
11426
114272013-09-08 Philipp Klaus Krause <pkk AT spth.de>
11428
11429	* src/SDCC.y,
11430	  src/SDCCmem.c,
11431	  src/SDCCglue.c,
11432	  doc/sdccman.lyx,
11433	  support/regression/tests/addrspace.c:
11434	  Support for const named address spaces (for variables in ROM).
11435	* src/z80/peeph-z80.def,
11436	  src/z80/peeph-r2k.def:
11437	  Check for volatile in peephole 1.
11438
114392013-09-05 Philipp Klaus Krause <pkk AT spth.de>
11440
11441	* src/stm8/gen.c:
11442	  Fix bug #2211, fix name of codegen struct (_G vs. G).
11443
114442013-09-04 Philipp Klaus Krause <pkk AT spth.de>
11445
11446	* support/regression/tests/bitvars.c,
11447	  support/regression/tests/bool.c,
11448	  support/regression/tests/bug1057979.c,
11449	  support/regression/tests/bug1738367.c,
11450	  support/regression/tests/bug2084206.c,
11451	  support/regression/tests/bug2935162.c,
11452	  support/regression/tests/bug3183823.c,
11453	  support/regression/tests/bug3290691.c,
11454	  support/regression/tests/bug3467508.c,
11455	  support/regression/tests/bug3537338.c,
11456	  support/regression/tests/float_single.c,
11457	  support/regression/tests/gcc-torture-execute-20000412-2.c,
11458	  support/regression/tests/gcc-torture-execute-20030714-1.c,
11459	  support/regression/tests/gcc-torture-execute-990524-1.c,
11460	  support/regression/tests/gcc-torture-execute-pr15296.c,
11461	  support/regression/tests/gcc-torture-execute-string-opt-5.c,
11462	  support/regression/tests/genptrs.c,
11463	  support/regression/tests/muldiv.c,
11464	  support/regression/tests/onebyte.c,
11465	  support/regression/tests/snprintf.c:
11466	  Disable tests for the least-broken one of the broken ports.
11467
114682013-09-04 Philipp Klaus Krause <pkk AT spth.de>
11469
11470	* src/stm8/gen.c,
11471	  support/regression/tests/gcc-torture-execute-20020219-1.c,
11472	  support/regression/tests/gcc-torture-execute-20050104-1.c,
11473	  support/regression/tests/gcc-torture-execute-920810-1.c,
11474	  support/regression/tests/gcc-torture-execute-950612-1.c,
11475	  support/regression/tests/gcc-torture-execute-pr42269-2.c,
11476	  support/regression/tests/gcc-torture-execute-950915-1.c,
11477	  support/regression/tests/gcc-torture-execute-20080529-1.c:
11478	  Fix returning of long long.
11479
114802013-09-04 Philipp Klaus Krause <pkk AT spth.de>
11481
11482	* src/stm8/gen.c:
11483	  Partial workaround for linker bug #2198.
11484	* support/regression/tests/bug-136564.c,
11485	  support/regression/tests/bug-927659.c,
11486	  support/regression/tests/bug1057979.c,
11487	  support/regression/tests/bug3521024.c,
11488	  support/regression/tests/funptrs.c,
11489	  support/regression/tests/gcc-torture-execute-20021120-3.c,
11490	  support/regression/tests/gcc-torture-execute-20030626-1.c,
11491	  support/regression/tests/gcc-torture-execute-20070201-1.c,
11492	  support/regression/tests/gcc-torture-execute-921208-1.c,
11493	  support/regression/tests/gcc-torture-execute-930513-1.c,
11494	  support/regression/tests/gcc-torture-execute-960327-1.c,
11495	  support/regression/tests/gcc-torture-execute-980707-1.c,
11496	  support/regression/tests/snprintf.c,
11497	  support/regression/tests/gcc-torture-execute-20021118-2.c,
11498	  support/regression/tests/gcc-torture-execute-20030626-2.c:
11499	  Enable tests that pass due to workaround for bug #2198.
11500	* support/regression/tests/gcc-torture-execute-20030916-1.c:
11501	  Enable passing test.
11502
115032013-09-03 Philipp Klaus Krause <pkk AT spth.de>
11504
11505	* src/stm8/gen.c:
11506	  Implement assertion for linker bug #2198 so it is no longer silent to the
11507	  user.
11508	* support/regression/tests/gcc-torture-execute-20030714-1.c:
11509	  Disable failing test.
11510
115112013-09-02 Philipp Klaus Krause <pkk AT spth.de>
11512
11513	* src/stm8/gen.c:
11514	  Pointer indirect long addressing mode.
11515
115162013-09-02 Philipp Klaus Krause <pkk AT spth.de>
11517
11518	* src/z80/ralloc2.cc:
11519	  Tuned register allocation heuristic.
11520
115212013-09-01 Philipp Klaus Krause <pkk AT spth.de>
11522
11523	* src/stm8/gen.c:
11524	  Fix loading of upper parts of large values through frame pointer, bug #2209.
11525
115262013-08-30 Philipp Klaus Krause <pkk AT spth.de>
11527
11528	* src/stm8/gen.c:
11529	  Slightly more efficient addition and loading through frame pointer.
11530
115312013-08-30 Maarten Brock <sourceforge.brock AT dse.nl>
11532
11533	* support/regression/tests/bug-2205.c: new, added
11534	* support/regression/tests/*: set svn properties eol and keywords
11535	* device/lib/clean.mk: add stm8 port to cleaning
11536
115372013-08-30 Philipp Klaus Krause <pkk AT spth.de>
11538
11539	* src/z80/ralloc2.cc,
11540	  support/regression/tests/bug-2208.c:
11541	  Fix bug #2208.
11542
115432013-08-29 Philipp Klaus Krause <pkk AT spth.de>
11544
11545	* src/SDCCpeeph.c,
11546	  src/ds390/peeph.def,
11547	  src/hc08/peeph.def,
11548	  src/mcs51/peeph.def,
11549	  src/stm8/peeph.def,
11550	  src/z80/peeph-gbz80.def,
11551	  src/z80/peeph-r2k.def,
11552	  src/z80/peeph-z80.def:
11553	  Simplified peephole rules.
11554
115552013-08-29 Philipp Klaus Krause <pkk AT spth.de>
11556
11557	* src/stm8/peeph.def:
11558	  Rules for bit setting.
11559	* src/stm8/peep.c:
11560	  Implement more of register use check.
11561	* src/stm8/gen.c:
11562	  Fix byte skipping in subtraction.
11563
115642013-08-28 Philipp Klaus Krause <pkk AT spth.de>
11565
11566	* src/stm8/gen.c:
11567	  Fix generation of temporary labels in dry runs, more efficient shift by
11568	  literal, subtraction and addition, partially fix recognition of multibyte
11569	  on-stack operands.
11570	* src/stm8/peeph.def:
11571	  Eliminate unreachable jumps (which can be generated by other rules).
11572	* src/stm8/ralloc2.cc:
11573	  Tune register allocation heuristic.
11574
115752013-08-27 Philipp Klaus Krause <pkk AT spth.de>
11576
11577	* src/stm8/gen.c:
11578	  Fix handling of A in float negation and equality comparison, more flexible
11579	  addition and subtraction.
11580	* support/regression/tests/float_single.c:
11581	  Enable tests for asinf(), atanf(), cosf(), sinf(), sinhf().
11582
115832013-08-25 Raphael Neider <rneider AT web.de>
11584
11585	* device/include/pic16/pic16devices.txt:
11586	  add flag indicating XINST availability per device
11587	* src/pic16/device.c:
11588	  parse XINST flag in pic16devices.txt
11589	* src/pic16/device.h:
11590	  add field to store XINST availability per device
11591	* src/pic16/glue.c:
11592	  emit warning on code breakage when XINST is supported and not
11593	  explicitly disabled (#pragma config XINST=OFF).
11594	* src/pic16/main.c:
11595	  detect and remember occurrence of #pragma config XINST=OFF
11596	* support/scripts/optimize_pic16devices.pl:
11597	  support new XINST flag
11598	* support/scripts/pic16_update_xinst.sh:
11599	  update XINST flags is pic16devices.txt from information extracted
11600	  out of gputils/libgputils/gpprocessor.c
11601
116022013-08-21 Philipp Klaus Krause <pkk AT spth.de>
11603
11604	* src/stm8/gen.c:
11605	  Be a little bit more flexible about addition operands - necessary to make
11606	  Coremark compile.
11607
116082013-08-21 Philipp Klaus Krause <pkk AT spth.de>
11609
11610	* src/stm8/peep.c,
11611	  src/stm8/peeph.def:
11612	  Eliminate dead popw / pushw pairs.
11613
116142013-08-20 Philipp Klaus Krause <pkk AT spth.de>
11615
11616	* src/stm8/gen.c:
11617	  More efficient left shift by literal.
11618
116192013-08-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
11620
11621	* src/SDCCast.c (decorateType): fixed bug 2205 (return discarded if
11622	  missing expected operand)
11623
116242013-08-20 Philipp Klaus Krause <pkk AT spth.de>
11625
11626	* src/stm8/gen.c:
11627	  More efficient right shift by literal.
11628
116292013-08-08 Borut Razem <borut.razem AT gmail.com>
11630
11631	* doc/sdccman.lyx: added some STM8 tools info, various fixes
11632
116332013-08-07 Borut Razem <borut.razem AT gmail.com>
11634
11635	* doc/sdccman.lyx: updated Sourceforge URLs
11636
116372013-08-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
11638
11639	* src/SDCCast.c (decorateType): fixed bug 2201 (spurious limited
11640	  range warning)
11641
116422013-08-04 Philipp Klaus Krause <pkk AT spth.de>
11643
11644	* src/stm8/peeph.def:
11645	  Peepholes for in-place operations.
11646	* src/stm8/gen.c:
11647	  More efficient pointer write, fix handling of a in comparison for equality.
11648
116492013-08-03 Philipp Klaus Krause <pkk AT spth.de>
11650
11651	* src/stm8/peep.c,
11652	  src/stm8/peeph.def:
11653	  Infrastructure for notUsed().
11654	* src/stm8/gen.c:
11655	  More efficient stack-to-stack copy.
11656
116572013-08-02 Philipp Klaus Krause <pkk AT spth.de>
11658
11659	* src/stm8/gen.c:
11660	  More efficient pcall.
11661
116622013-08-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11663
11664	* src/SDCClospre.hpp,
11665	  src/SDCCopt.c:
11666	  Fix handling of isaddr flag in optimizations.
11667
116682013-08-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11669
11670	* src/SDCCopt.c,
11671	  src/SDCCicode.c,
11672	  src/stm8/gen.c,
11673	  src/z80/gen.c:
11674	  Fold offset into ADDRESS_OF, RFE #393.
11675
116762013-08-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11677
11678	* src/stm8/gen.c:
11679	  More efficient zeroing of bytes, more efficient addition of constants,
11680	  fix handling of a in pointer set.
11681	* src/SDCCpeeph.c:
11682	  Fix handling of architectures that have absolute jump instructions of
11683	  different length.
11684	* src/stm8/peeph.def:
11685	  More jump-to-jump optimizations.
11686
116872013-08-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
11688
11689	* support/scripts/sdcc.nsi: install/uninstall stm8 related files
11690
116912013-08-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11692
11693	* src/stm8/gen.c:
11694	  Smaller code for GET_VALUE_AT_ADDRESS and signed casts.
11695
116962013-07-30 Philipp Klaus Krause <pkk AT spth.de>
11697
11698	* src/stm8/gen.c:
11699	  More efficient mixed-size addition of on-stack operands, and assignment
11700	  to parts of x and y.
11701	* support/regression/tests/bug-136564.c,
11702	  support/regression/tests/bug3521024.c,
11703	  support/regression/tests/gcc-torture-execute-980707-1.c:
11704	  Disable tests affected by bug #2196, 2198.
11705	* support/regression/tests/float_single.c:
11706	  Disable failing sinf, cosf tests.
11707	* src/stm8/peeph.def:
11708	  Tail call optimization.
11709
117102013-07-30 Borut Razem <borut.razem AT gmail.com>
11711
11712	* support/sdbinutils/*: sync with binutils 2.23.2
11713
117142013-07-29 Philipp Klaus Krause <pkk AT spth.de>
11715
11716	* src/stm8/peeph.def,
11717	  src/stm8/gen.c:
11718	  Enable peepholes for inverse jumps, and labels, fix label reference
11719	  counting bug #2183.
11720
117212013-07-29 Borut Razem <borut.razem AT gmail.com>
11722
11723	* support/cpp/sdcpp-diagnostic.c, upport/cpp/sdcpp-opts.c: fixed bug
11724	  #2194 Missing header file produces error, but still zero exit status
11725
117262013-07-27 Leland Morrison <enigmalee AT sourceforge.net>
11727
11728	* sdas/linksrc/lkrloc3.c:
11729	  prevent NULL ptr dereference when generating error message
11730	  (fixes bug #2076 core dump from sdldz80
11731	   if relative jump exceeds range)
11732
117332013-07-26 Philipp Klaus Krause <pkk AT spth.de>
11734
11735	* src/stm8/peep.c,
11736	  src/stm8/peeph.def:
11737	  Enable peephole for jp to jra optimization.
11738
117392013-07-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11740
11741	* support/regression/tests/bug-927659.c,
11742	  support/regression/tests/bug1057979.c,
11743	  support/regression/tests/bug2084206.c,
11744	  support/regression/tests/funptrs.c,
11745	  support/regression/tests/gcc-torture-execute-20020219-1.c,
11746	  support/regression/tests/gcc-torture-execute-20021118-2.c,
11747	  support/regression/tests/gcc-torture-execute-20021120-3.c,
11748	  support/regression/tests/gcc-torture-execute-20030626-1.c,
11749	  support/regression/tests/gcc-torture-execute-20030626-2.c,
11750	  support/regression/tests/gcc-torture-execute-20050104-1.c,
11751	  support/regression/tests/gcc-torture-execute-20070201-1.c,
11752	  support/regression/tests/gcc-torture-execute-20080529-1.c,
11753	  support/regression/tests/gcc-torture-execute-921208-1.c,
11754	  support/regression/tests/gcc-torture-execute-930513-1.c,
11755	  support/regression/tests/gcc-torture-execute-950612-1.c,
11756	  support/regression/tests/gcc-torture-execute-950915-1.c,
11757	  support/regression/tests/gcc-torture-execute-960327-1.c,
11758	  support/regression/tests/gcc-torture-execute-pr42269-2.c,
11759	  support/regression/tests/snprintf.c:
11760	  Disabled tests that fail due to linker issue, bug #2196, 2198.
11761	* support/regression/tests/gcc-torture-execute-20030916-1.c:
11762	  Disable failing test, bug #2200.
11763
117642013-07-24 Philipp Klaus Krause <pkk AT spth.de>
11765
11766	* src/stm8/gen.c,
11767	  src/stm8/ralloc2.cc,
11768	  src/stm8/main.c:
11769	  More efficient unsigned right shifts by more than 3 bits,
11770	  implement GETABIT, implement jump from and.
11771	* src/hc08/gen.c,
11772	  src/hc08/main.c:
11773	  Remove support for GETHBIT.
11774
117752013-07-23 Philipp Klaus Krause <pkk AT spth.de>
11776
11777	* src/stm8/gen.c:
11778	  More efficient unsigned right shifts by more than 7 bits.
11779
117802013-07-23 Philipp Klaus Krause <pkk AT spth.de>
11781
11782	* src/SDCCralloc.hpp,
11783	  src/hc08/ralloc2.cc,
11784	  src/stm8/ralloc2.cc
11785	  src/stm8/gen.h,
11786	  src/stm8/gen.c,
11787	  src/z80/ralloc2.cc:
11788	  Consider ifx optimization in register allocation.
11789	* device/lib/_mullong.c:
11790	  Fix typo in comment.
11791
117922013-07-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
11793
11794	* src/hc08/gen.c (genLeftShift,genRightShift): fixed bug in shifting
11795	  when result and shift count partially overlapped registers
11796
117972013-07-22 Philipp Klaus Krause <pkk AT spth.de>
11798
11799	* src/SDCCralloc.hpp,
11800	  src/stm8/gen.c,
11801	  src/stm8/ralloc2.cc:
11802	  Implement direct jump from comparison, eliminating temporary;
11803	  fix operand handling in multiplication.
11804
118052013-07-21 Philipp Klaus Krause <pkk AT spth.de>
11806
11807	* src/SDCCglobl.h,
11808	  src/SDCCmain.c,
11809	  src/*/ralloc.c,
11810	  src/SDCCopt.c,
11811	  src/SDCCast.c,
11812	  doc/sdccman.lyx:
11813	  Reorganize debug output dump options.
11814
118152013-07-20 Philipp Klaus Krause <pkk AT spth.de>
11816
11817	* src/stm8/gen.c:
11818	  More efficient zeroing and comparing.
11819
118202013-07-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11821
11822	* src/stm8/gen.c,
11823	  src/stm8/ralloc2.cc:
11824	  Efficient pushes.
11825
118262013-07-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11827
11828	* src/stm8/gen.c:
11829	  More efficient long and long long shifts by small contants.
11830
118312013-07-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11832
11833	* src/stm8/gen.c,
11834	  support/regression/tests/compare.c:
11835	  Fix handling of comparisons to immediates for stm8.
11836
118372013-07-18 Philipp Klaus Krause <pkk AT spth.de>
11838
11839	* device/lib/_mullong.c:
11840	  Use 16x16 multiplication instead of 8x8 where faster; patch #133 by Marco
11841	  Bodrato.
11842
118432013-07-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11844
11845	* src/SDCClrange.c,
11846	  support/regression/tests/bug-2197.c:
11847	  Fix handling of pointer write in live-range splitting, fixing bug #2197.
11848
118492013-07-16 Philipp Klaus Krause <pkk AT spth.de>
11850
11851	* src/z80/ralloc.c,
11852	  src/z80/ralloc2.cc,
11853	  support/regression/tests/bug-2195.c,
11854	  src/hc08/ralloc.c,
11855	  src/hc08/ralloc2.cc:
11856	  Unify handling of register survival in old and new register allocator,
11857	  fixing bug #2195.
11858
118592013-07-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
11860
11861	* support/regression/compact-results.py,
11862	* support/regression/collate-results.py: Also look for "unknown
11863	   instruction"
11864	* sim/ucsim/st7.src/st7.cc,
11865	* sim/ucsim/hc08.src/hc08.cc,
11866	* sim/ucsim/hc08.src/inst.cc: Change result code for invalid and
11867	  incomplete instructions so regression tests scripts detect problem.
11868
118692013-07-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
11870
11871	* sim/ucsim/stm8.src/stm8.cc: Change result code for invalid and
11872	  incomplete instructions so regression tests scripts detect problem.
11873
118742013-07-13 Philipp Klaus Krause <pkk AT spth.de>
11875
11876	* src/SDCCerr.c:
11877	  Change message text for warning on variables being dead at their definitions.
11878
118792013-07-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11880
11881	* src/SDCClospre.hpp:
11882	  Fix lospre forwarding.
11883
118842013-07-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
11885
11886	* src/SDCCBBlock.c,
11887	  src/SDCClrange.c,
11888	  src/SDCClrange.h,
11889	  src/SDCCopt.c,
11890	  src/SDCCralloc.hpp,
11891	  src/*/ralloc.c:
11892	  Split non-connected live-ranges.
11893
118942013-07-05 Philipp Klaus Krause <pkk AT spth.de>
11895
11896	* src/SDCCset.h,
11897	  src/SDCCset.c:
11898	  Improve const use in sets.
11899	* src/SDCCglobl.h,
11900	  src/SDCCBBlock.c,
11901	  src/SDCCopt.c:
11902      Allow debug iCode dump after lospre.
11903
119042013-07-04 Philipp Klaus Krause <pkk AT spth.de>
11905
11906	* src/SDCCbitv.h,
11907	  src/SDCCbitv.c:
11908	  Improve const use in bit vectors.
11909
119102013-07-03 Philipp Klaus Krause <pkk AT spth.de>
11911
11912	* src/SDCClospre.hpp:
11913	  Fix invalidation in lospre forwarding.
11914
119152013-07-01 Philipp Klaus Krause <pkk AT spth.de>
11916
11917	* src/SDCClospre.cc:
11918	  Mark receive opcodes as invalidating for losrpe.
11919
119202013-06-30 Philipp Klaus Krause <pkk AT spth.de>
11921
11922	* sdccconf_in.h:
11923	  Regenerated to make --disable-stm8-port work.
11924
119252013-06-27 Philipp Klaus Krause <pkk AT spth.de>
11926
11927	* src/SDCClospre.cc:
11928	  Disable safety in division for stm8.
11929
119302013-06-27 Philipp Klaus Krause <pkk AT spth.de>
11931
11932	* src/SDCCnaddr.hpp:
11933	  Add comment to reference the paper on bank selection.
11934
119352013-06-16 Philipp Klaus Krause <pkk AT spth.de>
11936
11937	* src/stm8/peeph.def:
11938	  Reorganize rules, disable rules depending on notUsed() or unimplemented
11939	  ref count.
11940	* src/stm8/peep.c,
11941	  src/SDCCpeeph.c:
11942	  Fix const, handling of relative jumps, read from uninitialized pointer.
11943
119442013-06-16 Valentin Dudouyt <valentin dudouyt AT gmail.com>
11945
11946	* src/stm8/main.c,
11947	* src/stm8/peep.c: implemented stm8canAssign and stm8notUsed,
11948	  fixed handling of label entities in stm8instructionSize,
11949	  added internal buffer in nextToken.
11950	* src/stm8/peeph.def: uncommented a few peephole rules.
11951
119522013-06-16 Maarten Brock <sourceforge.brock AT dse.nl>
11953
11954	* device/lib/_mullonglong.c,
11955	* sdas/as8051/i51adr.c,
11956	* sdas/linksrc/lkbank.c,
11957	* sdas/linksrc/lklibr.c,
11958	* sdas/linksrc/lkrloc.c,
11959	* sdas/linksrc/aslink.h,
11960	* src/mcs51/main.c: cosmetic changes
11961	* sdas/asxxsrc/asmain.c (main): default to 16 bit address width
11962	* sdas/as8051/i51mch.c (minit): set address width to 24 bit
11963	* sdas/as8xcxxx/ds8mch.c (machine): validate address width
11964	* sdas/asxxsrc/asdata.c,
11965	* sdas/asxxsrc/asxxxx.h: added a_bytes, a_mask, s_mask, v_mask and outradix
11966	* sdas/asxxsrc/asexpr.c (exprmasks): set a_bytes and masks
11967	* sdas/asxxsrc/aslist.c: use a_bytes
11968	* sdas/asxxsrc/asout.c: use a_bytes,
11969	  (outradix, outgsd): added to output address width
11970	* sdas/linksrc/lkarea.c,
11971	* sdas/linksrc/lklist.c: small optimizations
11972	* sdas/linksrc/lkrloc3.c (relr3): use a_bytes
11973	* support/sdbinutils/bfd/asxxxx.c (asxxxx_is_rel): fixed get_eol
11974
119752013-06-10 Maarten Brock <sourceforge.brock AT dse.nl>
11976
11977	* sdas/linksrc/lkaomf51.c (GetName, SaveLinkedFilePath): small optimization
11978	  (OutputAOEMF51, CollectInfoFromCDB, ReadHexFile): fixed bug 2184
11979	* sdas/linksrc/lkmain.c: cosmetics
11980	* sdas/linksrc/lkout.c (ixx, iflush): fixed bug 1986
11981	* sdas/linksrc/lksym.c: comments
11982
119832013-06-09 Maarten Brock <sourceforge.brock AT dse.nl>
11984
11985	* src/sdcc.vcxproj: removed boost library path
11986	* src/stm8/stm8.vcxproj,
11987	* src/stm8/stm8.vcxproj.filters: added peep.[ch]
11988	* src/z80/z80.vcxproj: fixed message typo
11989	* src/stm8/peep.c: fixed errors for MSVC (C89 compatible only):
11990	  only declarations at start of block
11991	* support/packihx/packihx.c: whitespace
11992
119932013-06-08 Philipp Klaus Krause <pkk AT spth.de>
11994
11995	* src/stm8/peeph.def:
11996	  Prepare for replacing absolute jumps by relative jumps and inverting jump
11997	  conditions.
11998	* src/stm8/peep.c,
11999	  src/SDCCpeeph.c:
12000	  Fix buffer overflows, improve error detection.
12001
120022013-06-08 Valentin Dudouyt <valentin dudouyt AT gmail.com>
12003
12004	* src/stm8/main.c,
12005	* src/stm8/peep.h,
12006	* src/stm8/peep.c:
12007	  Implemented stm8instructionSize.
12008
120092013-06-07 Philipp Klaus Krause <pkk AT spth.de>
12010
12011	* src/SDCClospre.hpp:
12012	  Cleanup debugging code in lospre.
12013
120142013-06-06 Philipp Klaus Krause <pkk AT spth.de>
12015
12016	* src/z80/gen.c,
12017	  tests/bug-2181.c:
12018	  Fix bug #2181.
12019
120202013-06-03 Maarten Brock <sourceforge.brock AT dse.nl>
12021
12022	* sdcc.sln,
12023	* src/stm8/stm8.vcxproj,
12024	* src/stm8/stm8.vcxproj.filters: added stm8 project
12025	* src/hc08/hc08.vcxproj,
12026	* src/z80/z80.vcxproj,
12027	* src/sdcc.vcxproj: use boost 1.50, the last working installer from boostpro
12028	* debugger/mcs51/symtab.h,
12029	* src/ds390/gen.c,
12030	* src/hc08/gen.c,
12031	* src/mcs51/gen.c,
12032	* src/pic14/gen.c,
12033	* src/pic16/gen.c,
12034	* src/pic16/glue.c,
12035	* src/SDCCast.c,
12036	* src/SDCCdwarf2.c,
12037	* src/SDCCglue.c,
12038	* src/SDCCsymt.h,
12039	* src/z80/gen.c: fixed signed/unsigned comparison warnings
12040	* src/stm8/gen.c: fixed errors for MSVC (C89 compatible only):
12041	  don't use snprintf but only SNPRINT,
12042	  only declarations at start of block,
12043	  don't use true/false but only TRUE/FALSE
12044	* src/stm8/main.c (stm8_defaultRules): fixed init error
12045	* src/stm8/ralloc2.cc (instruction_cost): fixed warning
12046	* src/SDCCglue.c (glue): removed target dependent code
12047	* support/regression/fwk/include/testfwk.h: removed ASSERT_FAILED,
12048	  added ASSERTFALSE
12049	* support/regression/tests/gcc-torture-execute-20050826-1.c: use ASSERFALSE,
12050	  enabled test for mcs51
12051	* support/regression/tests/gcc-torture-execute-920810-1.c: use ASSERTFALSE
12052
120532013-06-03 Philipp Klaus Krause <pkk AT spth.de>
12054
12055	* src/stm8/gen.c:
12056	  More efficient register-to-register assignment using ldw.
12057
120582013-06-02 Philipp Klaus Krause <pkk AT spth.de>
12059
12060	* sim/ucsim/stm8.src/inst.cc:
12061	  Fix handling of N and Z flags in addw, subw.
12062	* support/regression/tests/gcc-torture-execute-20021120-1.c:
12063	  Disable failing test for stm8 (bug #2180).
12064	* src/stm8/gen.c:
12065	  More efficient subtraction.
12066	* support/regression/tests/gcc-torture-execute-pr47337.c:
12067	  Disable this very colatile test for stm8 for now. See bug #2172 for the
12068	  longer justification.
12069
120702013-06-01 Valentin Dudouyt <valentin dudouyt AT gmail.com>
12071
12072	* sim/ucsim/stm8.src/inst.cc:
12073	  Fixed subw y.
12074
120752013-05-31 Philipp Klaus Krause <pkk AT spth.de>
12076
12077	* src/SDCCcse.c,
12078	  src/SDCClospre.cc:
12079	  Fix bug #2167.
12080	* src/stm8/main.c,
12081	  src/stm8/gen.c:
12082	  Implement jump tables.
12083
120842013-05-30 Raphael Neider <rneider AT web.de>
12085
12086	* doc/sdccman.lyx: remove --enable-new-pics, add
12087	  --no-extended-instructions, adjust section on adding devices
12088
120892013-05-30 Raphael Neider <rneider AT web.de>
12090
12091	* device/lib/pic16/configure.ac,
12092	* device/non-free/lib/pic16/configure.ac: remove obsolete option
12093	  --enable-new-pics, use common device support detection from
12094	  supported-devices.ac and the generated processors.ac
12095	* device/non-free/lib/pic16/supported-devices.ac: fragment from
12096	  configure.ac performing detection of devices supported by gputils;
12097	  device detection also performs linking step for robustness
12098
12099	* device/lib/pic16/libio/adc.ignore,
12100	* device/lib/pic16/libio/i2c.ignore,
12101	* device/lib/pic16/libio/usart.ignore: use full device id (18fxxxx)
12102
12103	* device/lib/pic16/libio/mkmk.sh,
12104	* device/non-free/lib/pic16/libdev/mkmk.sh,
12105	* device/non-free/lib/pic16/libdev/testall.sh:
12106	  derive device list from files in non-free/lib/pic16/libdev rather
12107	  than the manually maintained pics.all, enclose each device in
12108	  ENABLE_<DEVICE> conditionals
12109
12110	* device/non-free/lib/pic16/update.sh: script to update the build
12111	  system to be run whenever the set of devices supported by sdcc
12112	  changed; generates processor.ac and reconfigures all PIC16 libs
12113
12114	* support/scripts/cinc2h.pl: update instructions regarding adding
12115	  support for new devices
12116
12117	* device/lib/pic16/libio/Makefile.am: regenerated from mkmk.sh
12118	* device/non-free/lib/pic16/libdev/Makefile.am:
12119	  regenerated from mkmk.sh
12120	* device/non-free/lib/pic16/pics.all: removed (no longer used)
12121	* device/non-free/lib/pic16/processors.ac: added, list of automake
12122	  conditionals for automatic detection of devices supported by
12123	  gputils, generated from update.sh
12124
12125	* device/lib/pic16/Makefile.in,
12126	* device/lib/pic16/aclocal.m4,
12127	* device/lib/pic16/configure,
12128	* device/lib/pic16/debug/Makefile.in,
12129	* device/lib/pic16/libc/Makefile.in,
12130	* device/lib/pic16/libio/Makefile.in,
12131	* device/lib/pic16/libm/Makefile.in,
12132	* device/lib/pic16/libsdcc/Makefile.in,
12133	* device/lib/pic16/startup/Makefile.in,
12134	* device/non-free/lib/pic16/Makefile.in,
12135	* device/non-free/lib/pic16/aclocal.m4,
12136	* device/non-free/lib/pic16/configure,
12137	* device/non-free/lib/pic16/libdev/Makefile.in: regenerated
12138
121392013-05-30 Raphael Neider <rneider AT web.de>
12140
12141	* device/lib/pic14/configure.in: remove now obsolete --enable-new-pics,
12142	  check support for enhanced cores and extended instruction set,
12143	* device/lib/pic14/Makefile.am: build libsdcce.a iff enhanced cores
12144	  are supported, use special version avoiding extended instructions
12145	  if those are not supported by gputils
12146	* device/lib/pic14/libm/Makefile.am: build libme.a iff enhanced cores
12147	  are supported, avoid extended instructions if not supported by
12148	  gputils (0.13.5-6)
12149	* device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.am,
12150	* device/lib/pic14/libsdcc/enhanced-no-xinst/Makefile.in,
12151	* device/lib/pic14/libsdcc/enhanced-no-xinst/_gptrget1.S,
12152	* device/lib/pic14/libsdcc/enhanced-no-xinst/_gptrget2.S,
12153	* device/lib/pic14/libsdcc/enhanced-no-xinst/_gptrget3.S,
12154	* device/lib/pic14/libsdcc/enhanced-no-xinst/_gptrget4.S,
12155	* device/lib/pic14/libsdcc/enhanced-no-xinst/_gptrput1.S,
12156	* device/lib/pic14/libsdcc/enhanced-no-xinst/_gptrput2.S,
12157	* device/lib/pic14/libsdcc/enhanced-no-xinst/_gptrput3.S,
12158	* device/lib/pic14/libsdcc/enhanced-no-xinst/_gptrput4.S,
12159	* device/lib/pic14/libsdcc/enhanced-no-xinst/macros.inc:
12160	  special version of gptr* for enhanced cores without using extended
12161	  instructions
12162	* device/non-free/lib/pic14/configure.in: remove now obsolete option
12163	  --enable-new-pics, improve gputils device support detection support
12164	  by also performing linking, export list of supported devices to
12165	  libdev/Makefile.in
12166	* device/non-free/lib/pic14/libdev/Makefile.in: accept list of devices
12167	  to build from configure
12168
12169	* device/lib/pic14/Makefile.in,
12170	* device/lib/pic14/aclocal.m4,
12171	* device/lib/pic14/configure,
12172	* device/lib/pic14/libm/Makefile.in,
12173	* device/lib/pic14/libsdcc/enhanced/Makefile.in,
12174	* device/lib/pic14/libsdcc/regular/Makefile.in,
12175	* device/non-free/lib/pic14/configure:
12176	  regenerated
12177
121782013-05-30 Raphael Neider <rneider AT web.de>
12179
12180	* src/pic14/main.c, src/pic14/main.h: add option to avoid generating
12181	  instructions from the extended instruction set in order to work
12182	  around issues with gputils-0.13.6
12183	* src/pic14/gen.c (inc_fsr): avoid generating ADDFSR if
12184	  --no-extended-instructions is specified
12185
121862013-05-30 Philipp Klaus Krause <pkk AT spth.de>
12187
12188	* src/stm8/gen.c,
12189	  support/regression/tests/bug-2175.c:
12190	  Fix bug #2175.
12191
121922013-05-29 Philipp Klaus Krause <pkk AT spth.de>
12193
12194	* src/stm8/gen.c:
12195	  Fix ADDRESS_OF with result in y for variables at sp + 2, more efficient
12196	  assignment to stack using ldw.
12197
121982013-05-29 Philipp Klaus Krause <pkk AT spth.de>
12199
12200	* device/lib/_divsint.c,
12201	  device/lib/_divslong.c,
12202	  device/lib/_modsint.c,
12203	  device/lib/_modslong.c:
12204	  Remove dependencies of signed division support functions on unsigned
12205	  division support functions.
12206	* src/stm8/gen.c,
12207	  src/stm8/main.c:
12208	  Fix partial saving of Y in division and multiplication, implement unsigned
12209	  int division.
12210
122112013-05-29 Philipp Klaus Krause <pkk AT spth.de>
12212
12213	* src/stm8/gen.c,
12214	  src/stm8/ralloc.c,
12215	  support/regression/tests/gcc-torture-execute-20010129-1.c,
12216	  support/regression/tests/gcc-torture-execute-pr28982a.c,
12217	  support/regression/tests/gcc-torture-execute-930614-2.c,
12218	  support/regression/tests/gcc-torture-execute-20021120-1.c:
12219	  Support for calls to functions returning long from functions that use
12220	  extended stack.
12221
122222013-05-28 Philipp Klaus Krause <pkk AT spth.de>
12223
12224	* src/stm8/ralloc2.cc,
12225	  src/stm8/ralloc.c,
12226	  src/stm8/gen.h,
12227	  src/stm8/gen.c,
12228	  support/regression/tests/bp.c,
12229	  support/regression/tests/gcc-torture-execute-20071030-1.c,
12230	  support/regression/tests/gcc-torture-execute-990513-1.c,
12231	  support/regression/tests/gcc-torture-execute-pr47538.c,
12232	  support/regression/tests/gcc-torture-execute-980707-1.c,
12233	  support/regression/tests/bug2094505.c,
12234	  support/regression/tests/gcc-torture-execute-20031012-1.c,
12235	  support/regression/tests/gcc-torture-execute-20030916-1.c:
12236	  Support for extended stack on stm8, more efficient ADDRESS_OF.
12237
122382013-05-27 Philipp Klaus Krause <pkk AT spth.de>
12239
12240	* src/stm8/gen.c:
12241	  More efficient pointer access, more efficient loading of constants to
12242	  stack, fix handling of shift count deadness.
12243	* sim/ucsim/stm8.src/inst.cc:
12244	  Fix ldw pointer write (bug #2174).
12245	* support/regression/tests/gcc-torture-execute-pr47538.c:
12246	  Disable volatile test affected by bug #2171.
12247	* src/stm8/ralloc2.cc:
12248	  Implement heuristic bias for register assignment.
12249
122502013-05-26 Philipp Klaus Krause <pkk AT spth.de>
12251
12252	* src/stm8/gen.c:
12253	  More efficient zeroing by pointer, more efficient unsigned cast,
12254	  preparations for more efficient pointer access.
12255	* src/SDCCopt.c:
12256	  Allow offset in pointer read.
12257	* sim/ucsim/stm8.src/inst.cc:
12258	  Fix handling of N and Z flag in ldw.
12259	* src/stm8/main.c:
12260	  More efficient initialization.
12261
122622013-05-25 Philipp Klaus Krause <pkk AT spth.de>
12263
12264	* src/stm8/gen.c:
12265	  More efficient addition.
12266
122672013-05-25 Borut Razem <borut.razem AT gmail.com>
12268
12269	* src/SDCCopt.c: fixed bug #2165 - "Broken comparison" by disabling
12270	  optimization of comparison unsigned with 2^n literal since it is broken
12271	* support/regression/test/compare_2_n.m4: added test for bug #2165
12272
122732013-05-25 Philipp Klaus Krause <pkk AT spth.de>
12274
12275	* Merged stm8 branch.
12276
122772013-05-25 Philipp Klaus Krause <pkk AT spth.de>
12278
12279	* support/regression/tests/float_single.c,
12280	  support/regression/tests/gcc-torture-execute-20030714-1.c,
12281	  support/regression/tests/gcc-torture-execute-20050826-1.c:
12282	  STM8: Disable failing tests.
12283
122842013-05-25 Borut Razem <borut.razem AT gmail.com>
12285
12286	* Makefile.in: applied patch #211 - "sdbinutils is installed twice",
12287	  thanks to Tijl Coosemans
12288
122892013-05-24 Philipp Klaus Krause <pkk AT spth.de>
12290
12291	* support/regression/tests/gcc-torture-execute-20010224-1.c:
12292	  STM8: Disable test that fails due to known CSE bug #1968.
12293	* support/regression/ports/stm8/spec.mk:
12294	  STM8: Remove definition for __reentrant.
12295	* src/stm8/gen.c:
12296	  STM8: Fix handling of out-of-range offsets.
12297
122982013-05-23 Philipp Klaus Krause <pkk AT spth.de>
12299
12300	* src/stm8/gen.c:
12301	  STM8: Fix float negation, fix large stack-to-stack copy under high
12302	  register pressure, fix handling of immediate operands.
12303	* support/regression/tests/gcc-torture-execute-20030408-1.c:
12304	  STM8: Disable test for known front-end bug.
12305	* sim/ucsim/stm8.src/inst.cc:
12306	  STM8: Fix handling of V and H flags in cpw.
12307	* sim/ucsim/stm8.src/inst.cc:
12308	  STM8: Silence some warnings.
12309	* src/stm8/ralloc.c:
12310	  STM8: Fix missing include.
12311	* support/regression/tests/gcc-torture-execute-20050613-1.c:
12312	  STM8: Disable regression test that fails due to front-end bug.
12313
123142013-05-22 Philipp Klaus Krause <pkk AT spth.de>
12315
12316	* src/stm8/gen.c:
12317	  STM8: More efficient xor, or, and. Fix overwriting of shift count in
12318	  shifts, fix comparison with upper byte in a, fix long comparison stacked
12319	  offset, fix unsigned long / unsigned long long comparison.
12320
123212013-05-22 Philipp Klaus Krause <pkk AT spth.de>
12322
12323	* src/SDCCopt.c:
12324	  STM8: Disable broken optimization of comparisons into and.
12325	* src/stm8/gen.c:
12326	  STM8: Slightly more efficient shifts, fix long ifx, fix use of word
12327	  rotation in copy, fix handling of a in signed cast.
12328
123292013-05-21 Valentin Dudouyt <valentin dudouyt AT gmail.com>
12330
12331	* src/stm8/main.c,
12332	* src/SDCCglue.c:
12333	STM8: Fixed init code: some of GSINIT parts aren't executed under certain
12334	linking conditions.
12335
123362013-05-20 Maarten Brock <sourceforge.brock AT dse.nl>
12337
12338	* support/scripts/sdcc.nsi: added RequestExecutionLevel admin
12339
123402013-05-20 Philipp Klaus Krause <pkk AT spth.de>
12341
12342	* src/z80/gen.c:
12343	  More efficient cast from _Bool,
12344	* src/z80/peep.c:
12345	  Fix recognition of xor as writing a in peepholes.
12346
123472013-05-20 Maarten Brock <sourceforge.brock AT dse.nl>
12348
12349	* Small Device C Compiler 3.3.0 released
12350	* .version, doc/sdccman.lyx: changed sdcc version to 3.3.1
12351
123522013-05-19 Philipp Klaus Krause <pkk AT spth.de>
12353
12354	* src/stm8/gen.c:
12355	  STM8: Fix long and long long comparison.
12356
123572013-05-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
12358
12359	* src/stm8/gen.c:
12360	  STM8: Give up trying to fix big-endian bit-fields. Make bit-fields
12361	  little-endian.
12362
123632013-05-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
12364
12365	* sim/ucsim/stm8.src/instcl.h,
12366	  sim/ucsim/stm8.src/inst.cc,
12367	  sim/ucsim/stm8.src/stm8mac.h,
12368	  sim/ucsim/stm8.src/glob.cc,
12369	  sim/ucsim/stm8.src/stm8.cc,
12370	  sdas/asstm8/stm8mch.c:
12371	  STM8: Patches by Valentin Dudouyt to fix simulator.
12372	* src/stm8/gen.c:
12373	  STM8: Fix conditional jump, address generation for on-stack variables.
12374	* device/lib/_mullong.c,
12375	  device/lib/_mulint.c,
12376	  device/lib/stm8/Makefile.in,
12377	  device/lib/_mulschar.c,
12378	  device/lib/_modschar.c,
12379	  device/lib/_divschar.c,
12380	  src/SDCCsymt.c,
12381	  src/stm8/main.c:
12382	  STM8: Multiplication and division fixes.
12383
123842013-05-18 Philipp Klaus Krause <pkk AT spth.de>
12385
12386	* src/stm8/gen.c:
12387	  STM8: Fix offset in wide addition, fix handling of a in copy from
12388	  registers to global, fix stack adjustment for large variables, fix large
12389	  arithmetic signed right shift.
12390
123912013-05-18 Maarten Brock <sourceforge.brock AT dse.nl>
12392
12393	* doc/INSTALL.txt: small update
12394	* support/scripts/repack_release.sh: added windows x64 setup
12395
123962013-05-17 Philipp Klaus Krause <pkk AT spth.de>
12397
12398	* src/stm8/gen.c:
12399	  STM8: Fix bit-field access.
12400	* sim/ucsim/stm8.src/inst.cc:
12401	  STM8: Fix handling of carry bit in negation in simulator.
12402
124032013-05-16 Philipp Klaus Krause <pkk AT spth.de>
12404
12405	* src/stm8/main.c:
12406	  STM8: Fix endianness for initializers.
12407
124082013-05-15 Philipp Klaus Krause <pkk AT spth.de>
12409
12410	* support/regression/ports/stm8/support.c:
12411	  STM8: Remove unneeded global variable that clashes with identifiers in
12412	  regression tests.
12413	* support/regression/tests/malloc.c,
12414	  support/regression/tests/gcc-torture-execute-920810-1.c:
12415	  STM8: Disable regression tests for unimplemented malloc().
12416	* src/stm8/gen.c:
12417	  STM8: Fix saving of a in early stack-to-stack copy, fix offset in stacked
12418	  register operand, fix handling of operand in wide register in pointer set,
12419	  fix endless loop in shifts.
12420
124212013-05-12 Philipp Klaus Krause <pkk AT spth.de>
12422
12423	* sim/ucsim/stm8.src/inst.cc:
12424	  STM8: Fix clr, partially by patch by Valentin Dudouyt.
12425	* src/stm8/main.c:
12426	  STM8:  Patch by Valentin Dudouyt to initialize global and static
12427	  variables to zero.
12428
124292013-05-12 Philipp Klaus Krause <pkk AT spth.de>
12430
12431	* sim/ucsim/stm8.src/inst.cc:
12432	  STM8: Patch by Valentin Dudouyt to fix ldw.
12433	* src/stm8/main.c:
12434	  STM8: Patches by Valentin Dudouyt to fix handling of global variables and
12435	  startup.
12436
124372013-05-11 Philipp Klaus Krause <pkk AT spth.de>
12438
12439	* sim/ucsim/stm8.src/inst.cc,
12440	  sim/ucsim/stm8.src/instcl.h,
12441	  sim/ucsim/stm8.src/stm8.cc,
12442	  sim/ucsim/stm8.src/stm8mac.h,
12443	  support/regression/ports/stm8/support.c:
12444	  STM8: Patches by Valentin Dudouyt: The last bits to enable regression
12445	  testing, fix bug in wide addition.
12446	* support/regression/tests/0fail.c,
12447	  support/regression/tests/0pass.c:
12448	  Removed dummy tests.
12449	* src/stm8/gen.c:
12450	  STM8: Fix handling of large operands partially in x in comparison for
12451	  equality, be more careful in partial move for cast, fix signed cast.
12452	* src/hc08/gen.c,
12453	  src/z80/gen.c:
12454	  More efficient cast from _Bool.
12455
124562013-05-11 Molnar Karoly <molnarkaroly AT users.sf.net>
12457
12458	* device/include/pic14/pic14devices.txt,
12459	  device/include/pic14/pic16regs.h,
12460	  device/non-free/include/pic14/pic16f753.h,
12461	  device/non-free/include/pic14/pic16hv753.h,
12462	  device/non-free/lib/pic14/libdev/devices.txt,
12463	  device/non-free/lib/pic14/libdev/pic16f753.c,
12464	  device/non-free/lib/pic14/libdev/pic16hv753.c,
12465	  doc/sdccman.lyx:
12466	  New devices.
12467
124682013-05-10 Maarten Brock <sourceforge.brock AT dse.nl>
12469
12470	* sdas/doc/asmlnk.txt: updated for all steps towards ASxxxx v5
12471	* sdas/doc/asxhtm.html: removed
12472	* .version,
12473	* doc/INSTALL.txt,
12474	* doc/sdccman.lyx: version 3.3.0
12475
124762013-05-10 Philipp Klaus Krause <pkk AT spth.de>
12477
12478	* src/stm8/gen.c:
12479	  STM8: Fix endianness in stack / stack copy.
12480
124812013-05-09 Philipp Klaus Krause <pkk AT spth.de>
12482
12483	* src/stm8/gen.c:
12484	  STM8: Fix multibyte false Ifx.
12485
124862013-05-07 Borut Razem <borut.razem AT gmail.com>
12487
12488	* support/scripts/sdcc.nsi: removed dedication to Dennis M. Ritchie,
12489	  corrected ChangeLog path
12490
124912013-05-05 Philipp Klaus Krause <pkk AT spth.de>
12492
12493	* src/stm8/gen.c:
12494	  STM8: Fix endianness in register / stack copy.
12495
124962013-05-04 Maarten Brock <sourceforge.brock AT dse.nl>
12497
12498	* .version,
12499	* doc/INSTALL.txt,
12500	* doc/sdccman.lyx: version 3.3.0 rc1
12501	* sdcc.spec: version 3.3.0
12502	* sdas/asxxsrc/asout.c: suppress warning
12503
125042013-05-04 Philipp Klaus Krause <pkk AT spth.de>
12505
12506	* src/stm8/gen.c:
12507	  STM8: Fix stack variable offset.
12508
125092013-05-04 Philipp Klaus Krause <pkk AT spth.de>
12510
12511	* src/z80/peep.c:
12512	  More accurately model behaviour of xor for peepholes.
12513	* sdas/asstm8/stm8mch.c,
12514	  sdas/asxxsrc/asout.c:
12515	  Applied patch from Valentin Dudouyt to make range check stm8-specific.
12516
125172013-05-01 Philipp Klaus Krause <pkk AT spth.de>
12518
12519	* src/z80/peeph-z80.def,
12520	  src/z80/peeph-r2k.def:
12521	  Fix generation of extra # in peephole.
12522
125232013-04-30 Philipp Klaus Krause <pkk AT spth.de>
12524
12525	* src/stm8/gen.c:
12526	  STM8: Fix memory leak in conditional jump.
12527
125282013-04-30 Philipp Klaus Krause <pkk AT spth.de>
12529
12530	* support/regression/tests/gcc-torture-execute-20000314-3.c:
12531	  STM8: Removed regression test, since it tests for non-standard gcc behaviour.
12532	* src/stm8/gen.c:
12533	  STM8: Fix saving of a on stack in binary complement.
12534
125352013-04-30 Philipp Klaus Krause <pkk AT spth.de>
12536
12537	* src/stm8/gen.c,
12538	  src/stm8/main.c,
12539	  src/stm8/ralloc2.cc:
12540	  STM8: Implement unsigned division.
12541
125422013-04-30 Philipp Klaus Krause <pkk AT spth.de>
12543
12544	* support/regression/tests/bp.c,
12545	  support/regression/tests/bug2094505.c,
12546	  support/regression/tests/bug3475630.c,
12547	  support/regression/tests/gcc-torture-execute-20010129-1.c,
12548	  support/regression/tests/gcc-torture-execute-20021120-1.c,
12549	  support/regression/tests/gcc-torture-execute-20030916-1.c,
12550	  support/regression/tests/gcc-torture-execute-pr28982a.c,
12551	  support/regression/tests/gcc-torture-execute-20031012-1.c,
12552	  support/regression/tests/gcc-torture-execute-20071030-1.c,
12553	  support/regression/tests/gcc-torture-execute-930614-2.c,
12554	  support/regression/tests/gcc-torture-execute-930628-1.c,
12555	  support/regression/tests/gcc-torture-execute-980707-1.c,
12556	  support/regression/tests/gcc-torture-execute-990513-1.c:
12557	  STM8: Disable some regression tests that need support for extended stack
12558	  operands.
12559	* src/stm8/gen.c:
12560	  STM8: Improve error reporting for unimplemented extended stack operands,
12561	  fix pointer write.
12562	* device/lib/_divschar.c,
12563	  device/lib/_modschar.c,
12564	  device/lib/stm8/Makefile.in:
12565	  STM8: Support routines for signed char divide and modulo.
12566
125672013-04-29 Philipp Klaus Krause <pkk AT spth.de>
12568
12569	* src/stm8/gen.c:
12570	  STM8: Fix stack handling in equality comparison, handle dead code, fix
12571	  shift to zero.
12572
125732013-04-29 Philipp Klaus Krause <pkk AT spth.de>
12574
12575	* src/stm8/gen.c:
12576	  STM8: Implement DUMMY_READ_VOLATILE.
12577
125782013-04-29 Philipp Klaus Krause <pkk AT spth.de>
12579
12580	* src/stm8/gen.c:
12581	  STM8: Implement read from signed bit-field.
12582
125832013-04-28 Philipp Klaus Krause <pkk AT spth.de>
12584
12585	* sdas/asxxsrc/asout.c,
12586	  src/stm8/main.c:
12587	  STM8: Applied patched from Valentin Dudouyt to improve error checking in
12588	  assembler, implement initialization of globals, __interrupt.
12589
125902013-04-28 Philipp Klaus Krause <pkk AT spth.de>
12591
12592	* src/stm8/main.c,
12593	  src/stm8/gen.c:
12594	  STM8: Implement multiplication.
12595
125962013-04-28 Philipp Klaus Krause <pkk AT spth.de>
12597
12598	* src/stm8/gen.c:
12599	  STM8: Fix asmop freeing for GET_VALUE_AT_ADDRESS, do not share symbol
12600	  aops to fix double free, fix large comparison, implement bit-field writes.
12601
126022013-04-28 Philipp Klaus Krause <pkk AT spth.de>
12603
12604	* src/stm8/gen.c:
12605	  STM8: Fix unsigned cast, implement read from unsigned bit-field.
12606	* support/regression/tests/0fail.c,
12607	  support/regression/tests/0pass.c:
12608	  Dummy tests for debugging regression testing.
12609
126102013-04-26 Philipp Klaus Krause <pkk AT spth.de>
12611
12612	* src/stm8/gen.c:
12613	  STM8: Fix in handling of result in a in addition, minor improvements.
12614
126152013-04-26 Philipp Klaus Krause <pkk AT spth.de>
12616
12617	* src/stm8/gen.c:
12618	  STM8: Fix stack handling in signed cast, fix wide right shift, minor
12619	  refactoring.
12620
126212013-04-26 Philipp Klaus Krause <pkk AT spth.de>
12622
12623	* src/stm8/gen.c:
12624	  STM8: Fix handling of a in addition, subtraction and negation, more
12625	  flexible copy, fix comparison.
12626
126272013-04-25 Philipp Klaus Krause <pkk AT spth.de>
12628
12629	* src/stm8/gen.c:
12630	  STM8: Update TODO/todo comments to reflect known bug vs optimization
12631	  potential.
12632
126332013-04-24 Philipp Klaus Krause <pkk AT spth.de>
12634
12635	* src/stm8/gen.c:
12636	  STM8: Various fixes.
12637
126382013-04-23 Philipp Klaus Krause <pkk AT spth.de>
12639
12640	* src/stm8/gen.c:
12641	  STM8: Make lack of support for bit-fields explicit, implement binary
12642	  complement, minor improvements.
12643
126442013-04-23 Philipp Klaus Krause <pkk AT spth.de>
12645
12646	* src/stm8/gen.c:
12647	  STM8: Fix large operands in equality comparison of register with literal
12648	  or stack op.
12649	* src/stm8/ralloc2.cc:
12650	  STM8: Fix liveness of registers at parameter pushes.
12651
126522013-04-23 Philipp Klaus Krause <pkk AT spth.de>
12653
12654	* src/stm8/gen.c:
12655	  STM8: Fix parameter stack offset, fix handling of a in GET_VALUE_AT_ADDRESS.
12656
126572013-04-22 Philipp Klaus Krause <pkk AT spth.de>
12658
12659	* src/stm8/gen.c:
12660	  STM8: Fix returning 4-byte values, fix saving of x, y over call, fix
12661	  handling of registers in stack-to-stack copy.
12662
126632013-04-21 Molnar Karoly <molnarkaroly AT users.sf.net>
12664
12665	* device/include/pic14/pic16regs.h:
12666	  New common header for the pic14 family.
12667
126682013-04-21 Philipp Klaus Krause <pkk AT spth.de>
12669
12670	* device/lib/stm8/Makefile.in:
12671	  STM8: Add missing integer support functions.
12672	* src/stm8/gen.c:
12673	  STM8: Enable inline asm.
12674
126752013-04-21 Philipp Klaus Krause <pkk AT spth.de>
12676
12677	* support/regression/Makefile.in,
12678	  support/regression/ports/stm8/spec.mk,
12679	  support/regression/ports/stm8/support.c,
12680	  support/regression/ports/stm8/uCsim.cmd:
12681	  STM8: Basic infrastructure for regression tests, partially from a patch
12682	  by Valentin Dudouyt.
12683	* src/stm8/gen.c:
12684	  STM8: Name mangling for address generation.
12685
126862013-04-21 Philipp Klaus Krause <pkk AT spth.de>
12687
12688	* device/lib/Makefile.in:
12689	  STM8: Enable building standard library.
12690
126912013-04-21 Philipp Klaus Krause <pkk AT spth.de>
12692
12693	* src/stm8/gen.c,
12694	  src/stm8/main.c:
12695	  STM8: Applied patch from Valentin Dudouyt to implement __critical.
12696
126972013-04-19 Philipp Klaus Krause <pkk AT spth.de>
12698
12699	* device/lib/stm8/Makefile.in:
12700	  STM8: Disable building some library files.
12701	* src/stm8/gen.c:
12702	  STM8: Fix comparison.
12703	* src/stm8/main.c:
12704	  STM8: Disable some annoying debug output.
12705
127062013-04-19 Philipp Klaus Krause <pkk AT spth.de>
12707
12708	* src/stm8/main.c,
12709	  sdas/asstm8/stm8mch.c:
12710	  STM8: Applied patch from Valentin Dudouyt to support addw sp, #byte.
12711	* src/stm8/ralloc2.cc:
12712	  STM8: Enabled cost function for more iCodes.
12713	* src/stm8/gen.c:
12714	  STM8: Fixes for logic ops, RETURN, '-', stack-to-stack copy, implement
12715	  more operands for comparison.
12716
127172013-04-18 Philipp Klaus Krause <pkk AT spth.de>
12718
12719	* src/stm8/main.c:
12720	  STM8: Disable generation of jump tables.
12721	* src/stm8/gen.c:
12722	  STM8: Implement more comparison operands, fix for stack-to-stack
12723	  temporary assignment.
12724
127252013-04-18 Philipp Klaus Krause <pkk AT spth.de>
12726
12727	* src/stm8/gen.c:
12728	  STM8: Endianness fixes, implement dummy pointer reads, implement '!',
12729	  implement more operands in logic ops, implement more return operands,
12730	  implement more operands for cast to _Bool, implement more operands for
12731	  subtraction.
12732
127332013-04-18 Borut Razem <borut.razem AT gmail.com>
12734
12735	* device/non-free/lib/pic14/libdev/mkall.sh,
12736	  device/examples/mcs51/simple/test,
12737	  device/examples/mcs51/simple/go,
12738	  device/examples/mcs51/simple2/go,
12739	  device/examples/mcs51/simple2/test,
12740	  sim/ucsim/conf:
12741	  use /bin/sh instead of /bin/bash to enable compilation on OpenBSD
12742
127432013-04-17 Philipp Klaus Krause <pkk AT spth.de>
12744
12745	* src/stm8/gen.c:
12746	  STM8: Fix for cast to bool.
12747
127482013-04-17 Philipp Klaus Krause <pkk AT spth.de>
12749
12750	* src/stm8/gen.c:
12751	  STM8: Implement more shifts, unary minus for float, implement large
12752	  return values, save regs over calls, coalescing.
12753
127542013-04-16 Philipp Klaus Krause <pkk AT spth.de>
12755
12756	* src/stm8/gen.c:
12757	  STM8: Fix emission of rlwa, fix 16-bit increment with result in x,
12758	  operand not in x.
12759
127602013-04-15 Philipp Klaus Krause <pkk AT spth.de>
12761
12762	* src/stm8/gen.c:
12763	  STM8: Fixes for reading / writing through pointer, implement more IFX,
12764	  fix wide subtraction and compariosn.
12765
127662013-04-15 Philipp Klaus Krause <pkk AT spth.de>
12767
12768	* src/stm8/gen.c:
12769	  STM8: Now that we know more about sp-manipulation, we can do it smarter.
12770
127712013-04-14 Molnar Karoly <molnarkaroly AT users.sf.net>
12772
12773	* support/scripts/mcs51-disasm.pl:
12774	  The overlapped block and instruction it is no longer a fatal error.
12775
127762013-04-14 Philipp Klaus Krause <pkk AT spth.de>
12777
12778	* src/stm8/main.c:
12779	  STM8: Applied patch from Valentin Dudouyt to set default code loc.
12780	* src/stm8/gen.c:
12781	  STM8: Be more cautious about arithmetic on stack pointer.
12782
127832013-04-13 Philipp Klaus Krause <pkk AT spth.de>
12784
12785	* src/SDCCglobl.h,
12786	  src/SDCCglue.c,
12787	  src/SDCCmain.c,
12788	  src/pic16/glue.c,
12789	  src/z80/main.c,
12790	  doc/sdccman.lyx,
12791	  src/stm8/main.c:
12792	  Remove option --main-return, make the behaviour previously invoked by
12793	  --main-return the default.
12794
127952013-04-13 Philipp Klaus Krause <pkk AT spth.de>
12796
12797	* sdas/asstm8/stm8.h,
12798	  sdas/asstm8/stm8mch.c,
12799	  sdas/asstm8/stm8pst.c,
12800	  src/SDCCglue.c,
12801	  src/stm8/gen.c,
12802	  src/stm8/main.c:
12803	  STM8: Applied patches from Valentin Dudouyt containing various fixes.
12804
128052013-04-11 Philipp Klaus Krause <pkk AT spth.de>
12806
12807	* src/stm8/gen.c,
12808	  src/stm8/ralloc.c:
12809	  Fix handling of stack part of local variables.
12810
128112013-04-11 Philipp Klaus Krause <pkk AT spth.de>
12812
12813	* src/stm8/gen.c:
12814	  STM8: Implement basic pointer writes, fix handling of 16-bit literals.
12815
128162013-04-10 Philipp Klaus Krause <pkk AT spth.de>
12817
12818	* src/stm8/gen.c:
12819	  STM8: END_FUNCTION stack adjustment fix, more efficient zeroing, addition
12820	  fix, return value use.
12821
128222013-04-09 Philipp Klaus Krause <pkk AT spth.de>
12823
12824	* src/stm8/gen.c:
12825	  STM8: Fix for GET_VALUE_AT_ADDRESS, fixes for shift by literal, implement
12826	  call by pointer, minor improvements.
12827
128282013-04-08 Philipp Klaus Krause <pkk AT spth.de>
12829
12830	* src/stm8/gen.c:
12831	  STM8: Allow more operands in xor, and, or.
12832
128332013-04-08 Philipp Klaus Krause <pkk AT spth.de>
12834
12835	* src/stm8/gen.c:
12836	  STM8: Implement integer unary minus, or fix.
12837
128382013-04-08 Philipp Klaus Krause <pkk AT spth.de>
12839
12840	* src/stm8/gen.c:
12841	  STM8: Implement more comparisons, stack handling fix.
12842	* src/SDCCsymt.c:
12843	  STM8: Allow returning long long (not implemented in code genration yet).
12844
128452013-04-08 Philipp Klaus Krause <pkk AT spth.de>
12846
12847	* src/stm8/gen.c:
12848	  STM8: Stack adjustment fixes, signed cast fix, ifx fix,
12849	  GET_VALUE_AT_ADDRESS fix.
12850
128512013-04-08 Philipp Klaus Krause <pkk AT spth.de>
12852
12853	* src/stm8/gen.c:
12854	  STM8: Implement cast to _Bool.
12855	* device/include/sdcc-lib.h,
12856	  device/include/asm/stm8/features.h:
12857	  STM8: Port feature header.
12858	* device/include/math.h,
12859	  device/include/stdarg.h:
12860	  STM8: Port feature configuration.
12861
128622013-04-07 Philipp Klaus Krause <pkk AT spth.de>
12863
12864	* src/stm8/gen.c:
12865	  STM8: Allow more operand types in Ifx, implement more casts.
12866
128672013-04-06 Philipp Klaus Krause <pkk AT spth.de>
12868
12869	* src/stm8/gen.c:
12870	  STM8: Fixes for stack pointer handling.
12871
128722013-04-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
12873
12874	* support/regression/tests/literalop.c,
12875	  support/regression/tests/bitwise.c: Fix host regression failues on
12876	  64-bit PowerPC
12877	* support/regression/tests/align.c: do not include stdalign.h on
12878	  hosts that do not support it
12879
128802013-04-06 Philipp Klaus Krause <pkk AT spth.de>
12881
12882	* src/stm8/gen.c:
12883	  STM8: Implement comparison for more operand types.
12884
128852013-04-02 Philipp Klaus Krause <pkk AT spth.de>
12886
12887	* src/SDCC.lex,
12888	  src/SDCC.y,
12889	  src/SDCCerr.h,
12890	  src/SDCCerr.c,
12891	  src/SDCCsymt.h,
12892	  src/SDCCsymt.c,
12893	  src/SDCCicode.c,
12894	  src/SDCCval.h,
12895	  src/SDCCval.c,
12896	  src/port.h:
12897	  src/*/main.c:
12898	  doc/sdccman.lyx,
12899	  support/regression/tests/assert.c,
12900	  support/regression/tests/align.c:
12901	  Support for C11 _Static_assert static assertions and _Alignas alignment
12902	  specifiers.
12903
129042013-04-01 Philipp Klaus Krause <pkk AT spth.de>
12905
12906	* src/SDCCsymt.c,
12907	  src/stm8/gen.c,
12908	  src/stm8/main.c:
12909	  STM8: Implement on-stack register passing, taking addresses of on-stack
12910	  variables, handling of on-stack parameter operands.
12911
129122013-03-31 Philipp Klaus Krause <pkk AT spth.de>
12913
12914	* doc/sdccman.lyx:
12915	  Update manual.
12916	* src/SDCCmain.c:
12917	  Deprecation warning for --small-is-8bits.
12918	* device/include/assert.h:
12919	  Prepare for static assertions.
12920	* src/SDCCast.h:
12921	  Fix warning.
12922
129232013-03-30 Philipp Klaus Krause <pkk AT spth.de>
12924
12925	* doc/sdccman.lyx:
12926	  Update and reorganize manual.
12927	* src/izt:
12928	  Kill i186 and tcls900h ports.
12929
129302013-03-29 Philipp Klaus Krause <pkk AT spth.de>
12931
12932	* src/SDCC.lex,
12933	  src/SDCCast.c,
12934	  src/SDCCast.h,
12935	  src/SDCC.y,
12936	  device/include/stdalign.h,
12937	  device/include/stddef.h,
12938	  device/include/stdnoreturn.h,
12939	  support/regression/tests/align.c:
12940	  Support for C11 _Alignof operator.
12941
129422013-03-24 Philipp Klaus Krause <pkk AT spth.de>
12943
12944	* src/z80/gen.c:
12945	  Use mlt for multiplication by constant in z180 port.
12946	* src/SDCCralloc.hpp:
12947	  Add comment to reference the paper on the register allocator.
12948
129492013-03-16 Philipp Klaus Krause <pkk AT spth.de>
12950
12951	* src/z80/gen.c:
12952	  Fix bug #2145.
12953
129542013-03-18 Borut Razem <borut.razem AT gmail.com>
12955
12956	* support/scripts/gen_known_bugs.pl: use http instead https since the
12957	  LWP::Protocol::https perl module seems not to be installed by default
12958
129592013-03-16 Molnar Karoly <molnarkaroly AT users.sf.net>
12960
12961	* device/include/pic14/pic14devices.txt,
12962	  device/non-free/include/pic14/pic16f1788.h,
12963	  device/non-free/include/pic14/pic16f1789.h,
12964	  device/non-free/lib/pic14/libdev/Makefile.in,
12965	  device/non-free/lib/pic14/libdev/devices.txt,
12966	  device/non-free/lib/pic14/libdev/pic16f1788.c,
12967	  device/non-free/lib/pic14/libdev/pic16f1789.c,
12968	  doc/sdccman.lyx:
12969	  New devices: PIC16F1788, PIC16F1789
12970
129712013-03-15 Borut Razem <borut.razem AT gmail.com>
12972
12973	* support/scripts/gen_known_bugs.pl: adapted for Allura bug tracker
12974
129752013-03-14 Philipp Klaus Krause <pkk AT spth.de>
12976
12977	* src/z80/peep.c:
12978	  Fix bug #2142 (ld is fixed, upper case still open).
12979
129802013-03-12 Molnar Karoly <molnarkaroly AT users.sf.net>
12981
12982	* support/scripts/mcs51-disasm.pl:
12983	  Filters the invalid instructions and code cleaning.
12984
129852013-03-12 Sourceforge
12986
12987	* Project upgrade: Bug and RFE numbers after this
12988	  Use a numbering system different from the one
12989	  used before (also some other changes).
12990
129912013-03-05 Molnar Karoly <molnarkaroly AT users.sf.net>
12992	* device/non-free/include/pic14/pic16f1784.h,
12993	  device/non-free/include/pic14/pic16f1786.h,
12994	  device/non-free/include/pic14/pic16f1787.h,
12995	  device/non-free/include/pic16/pic18f65j94.h,
12996	  device/non-free/include/pic16/pic18f66j60.h,
12997	  device/non-free/include/pic16/pic18f66j65.h,
12998	  device/non-free/include/pic16/pic18f66j94.h,
12999	  device/non-free/include/pic16/pic18f66j99.h,
13000	  device/non-free/include/pic16/pic18f67j60.h,
13001	  device/non-free/include/pic16/pic18f67j94.h,
13002	  device/non-free/include/pic16/pic18f85j94.h,
13003	  device/non-free/include/pic16/pic18f86j60.h,
13004	  device/non-free/include/pic16/pic18f86j65.h,
13005	  device/non-free/include/pic16/pic18f86j94.h,
13006	  device/non-free/include/pic16/pic18f86j99.h,
13007	  device/non-free/include/pic16/pic18f87j60.h,
13008	  device/non-free/include/pic16/pic18f87j94.h,
13009	  device/non-free/include/pic16/pic18f95j94.h,
13010	  device/non-free/include/pic16/pic18f96j60.h,
13011	  device/non-free/include/pic16/pic18f96j65.h,
13012	  device/non-free/include/pic16/pic18f96j94.h,
13013	  device/non-free/include/pic16/pic18f96j99.h,
13014	  device/non-free/include/pic16/pic18f97j60.h,
13015	  device/non-free/include/pic16/pic18f97j94.h,
13016	  support/scripts/cinc2h.pl:
13017	  Updated based on the gputils.
13018
130192013-03-03 Raphael Neider <rneider AT web.de>
13020
13021	* src/pic14/gen.c (popGet): improve debugging output,
13022	  (SetIrp): handle PO_IMMEDIATES correctly, restructure code,
13023	  (genUnpackBits): handle dummy reads w/o result correctly,
13024	  (genNearPointerGet): handle dummy reads w/o result efficiently,
13025	  together this fixes #3606703
13026	* src/pic14/gen.c (genConstPointerGet):
13027	  read AOP_SIZE(result) bytes from source, fixes #3606709
13028
130292013-02-25 Raphael Neider <rneider AT web.de>
13030
13031	* src/pic14/ralloc.c (packRegsForOneuse):
13032	  prevent NULL ptr dereference (fixes bug #3605966)
13033
130342013-02-24 Raphael Neider <rneider AT web.de>
13035
13036	* device/lib/pic14/libsdcc/ulong2fs.c:
13037	  prefer 'while (COND) {}' over 'if (COND) do {} while (COND)'
13038	* src/pic14/gen.c (genAnd):
13039	  fix for loop condition in ulong2fs.c (fixes #3605855)
13040	* device/lib/pic14/libm/Makefile.am:
13041	  fix typo in CFLAGS for libme (fixes #3605860)
13042
130432013-02-17 Raphael Neider <rneider AT web.de>
13044
13045	* device/non-free/lib/pic14/configure.in,
13046	  device/non-free/lib/pic16/configure.ac:
13047	  Check and display devices missing in gputils before proceeding
13048	  and request updating gputils if any to-be-supported is missing
13049	* device/non-free/lib/pic14/configure,
13050	  device/non-free/lib/pic16/configure:
13051	  regenerated
13052
130532013-02-13 Molnar Karoly <molnarkaroly AT users.sf.net>
13054
13055	* support/scripts/mcs51-disasm.pl:
13056	  Use default sfr and sbit names if no header file.
13057
130582013-02-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13059
13060	* src/stm8/gen.c:
13061	  Code generation fixes and refactoring, implement ^, CALL.
13062	* src/SDCCopt.c:
13063	  Enable lospre for stm8.
13064	* src/stm8/main.c:
13065	  Correctly announce lack of multiplication support.
13066
130672013-02-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13068
13069	* src/stm8/gen.c:
13070	  Basic code generation infrastructure for &, |, RETURN, <, >.
13071
130722013-02-10 Molnar Karoly <molnarkaroly AT users.sf.net>
13073
13074	* support/scripts/mcs51-disasm.pl: Adds used count to sfr, sbit and bit lists.
13075
130762013-02-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13077
13078	* src/stm8/gen.c,
13079	  src/stm8/main.c:
13080	  Various code generation fixes, improvements, debug messages.
13081	* device/lib/stm8/Makefile.in:
13082	  Fix some hc08 leftovers.
13083
130842013-02-08 Molnar Karoly <molnarkaroly AT users.sf.net>
13085
13086	* support/scripts/mcs51-disasm.pl: bugfix
13087
130882013-02-03 Molnar Karoly <molnarkaroly AT users.sf.net>
13089
13090	* support/scripts/mcs51-disasm.pl: Improved recognition of jump tables.
13091
130922013-02-03 Molnar Karoly <molnarkaroly AT users.sf.net>
13093
13094	* support/scripts/mcs51-disasm.pl: Improved recognition of jump tables and
13095	  bugfix.
13096
130972013-02-03 Molnar Karoly <molnarkaroly AT users.sf.net>
13098
13099	* support/scripts/mcs51-disasm.pl: Bugfix and count of references in the RAM.
13100
131012013-02-01 Molnar Karoly <molnarkaroly AT users.sf.net>
13102
13103	* support/scripts/mcs51-disasm.pl: Small refinements.
13104
131052013-01-31 Molnar Karoly <molnarkaroly AT users.sf.net>
13106
13107	* support/scripts/mcs51-disasm.pl: Use IRAM key in name-list file.
13108
131092013-01-29 Philipp Klaus Krause <philipp AT colecovision.eu>
13110
13111	* src/stm8/gen.c:
13112	  Use clr for more efficient zeroing.
13113
131142013-01-29 Molnar Karoly <molnarkaroly AT users.sf.net>
13115
13116	* support/scripts/mcs51-disasm.pl: Use informations of the OSEG area from
13117	  map file.
13118
131192013-01-28 Molnar Karoly <molnarkaroly AT users.sf.net>
13120
13121	* support/scripts/mcs51-disasm.pl: New command option: --name-list
13122
131232013-01-28 Philipp Klaus Krause <pkk AT spth.de>
13124
13125	* src/hc08/gen.c,
13126	  More efficient calls to _Noreturn functions.
13127
131282013-01-28 Molnar Karoly <molnarkaroly AT users.sf.net>
13129
13130	* support/scripts/mcs51-disasm.pl: Improved finds of stack. Prints into
13131	  map the iRAM.
13132
131332013-01-27 Philipp Klaus Krause <pkk AT spth.de>
13134
13135	* src/SDCCpeeph.c,
13136	  src/z80/gen.c,
13137	  More efficient calls to _Noreturn functions.
13138
131392013-01-27 Molnar Karoly <molnarkaroly AT users.sf.net>
13140
13141	* support/scripts/mcs51-disasm.pl: Prints the map of RAM, list of bits and
13142	  start of stack.
13143
131442013-01-27 Molnar Karoly <molnarkaroly AT users.sf.net>
13145
13146	* support/scripts/mcs51-disasm.pl: Improved recognition of jump tables.
13147
131482013-01-26 Molnar Karoly <molnarkaroly AT users.sf.net>
13149
13150	* support/scripts/mcs51-disasm.pl: New command option: --recognize-jump-tables
13151
131522013-01-24 Molnar Karoly <molnarkaroly AT users.sf.net>
13153
13154	* support/scripts/mcs51-disasm.pl: New command option: --find-lost-labels
13155
131562013-01-23 Molnar Karoly <molnarkaroly AT users.sf.net>
13157
13158	* support/scripts/mcs51-disasm.pl:
13159	  New feature in "Public labels" section: (calls: ..., jumps: ...)
13160	  ("number of calls" and "number of jumps")
13161
131622013-01-21 Molnar Karoly <molnarkaroly AT users.sf.net>
13163
13164	* support/scripts/mcs51-disasm.pl: Bugfix and more proposal for use.
13165
131662013-01-20 Molnar Karoly <molnarkaroly AT users.sf.net>
13167
13168	* support/scripts/mcs51-disasm.pl: Additional informations about direction
13169          of the jumps.
13170
131712013-01-20 Molnar Karoly <molnarkaroly AT users.sf.net>
13172
13173	* support/scripts/mcs51-disasm.pl: "Public variables" -> "Public labels"
13174
131752013-01-20 Molnar Karoly <molnarkaroly AT users.sf.net>
13176
13177	* support/scripts/mcs51-disasm.pl: Improved handling of blocks and
13178	  lists of labels and variables.
13179
131802013-01-19 Molnar Karoly <molnarkaroly AT users.sf.net>
13181
13182	* support/scripts/mcs51-disasm.pl: Expanded assembly mode and nicer tables.
13183
131842013-01-15 Raphael Neider <rneider AT web.de>
13185
13186	* device/lib/pic16/libsdcc/long/modulong.c:
13187	  return ~0UL instead of looping endlessly on divide-by-0,
13188	  addresses #3600983
13189
131902013-01-13 Raphael Neider <rneider AT web.de>
13191
13192	* src/pic14/gen.c (genDataPointerSet):
13193	  fix and simplify operand size detection, fixes #3600361
13194	* src/pic14/main.c (keywords[]):
13195	  remove unsupported "pdata", fixes #3600724
13196
131972013-01-13 Molnar Karoly <molnarkaroly AT users.sf.net>
13198
13199	* support/scripts/cinc2h.pl: Canceled the command option: --create-sfr16
13200	* device/non-free/include/pic16/pic18*.h,
13201	  device/non-free/lib/pic16/libdev/pic18*.c: Canceled the __sfr16 type.
13202
132032013-01-13 Molnar Karoly <molnarkaroly AT users.sf.net>
13204
13205	* support/scripts/mcs51-disasm.pl: New command option: --assembly-source
13206
132072013-01-13 Molnar Karoly <molnarkaroly AT users.sf.net>
13208
13209	* support/scripts/cinc2h.pl: New command option: --create-sfr16
13210	  (This option is for the time being operates only at the pic16 series.)
13211	* device/non-free/include/pic16/pic18*.h,
13212	  device/non-free/lib/pic16/libdev/pic18*.c: Implementation of the __sfr16
13213	  type.
13214
132152013-01-12 Molnar Karoly <molnarkaroly AT users.sf.net>
13216
13217	* support/scripts/mcs51-disasm.pl: New command option: --no-explanations
13218
132192013-01-12 Molnar Karoly <molnarkaroly AT users.sf.net>
13220
13221	* support/scripts/mcs51-disasm.pl: New command option: --hex-constant
13222
132232013-01-12 Molnar Karoly <molnarkaroly AT users.sf.net>
13224
13225	* support/scripts/mcs51-disasm.pl: Faster the decoding of instructions.
13226
132272013-01-11 Molnar Karoly <molnarkaroly AT users.sf.net>
13228
13229	* support/scripts/mcs51-disasm.pl: More control characters are recognized.
13230	  Refinement the align of explanations.
13231
132322013-01-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13233
13234	* src/hc08/main.c: Nearly exact instruction sizes for peephole
13235	  branch optimizations.
13236
132372013-01-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13238
13239	* src/mcs51/gen.c (genSend): "fix" for bug #3600343
13240
132412013-01-10 Molnar Karoly <molnarkaroly AT users.sf.net>
13242
13243	* support/scripts/mcs51-disasm.pl: Simplified the code.
13244
132452013-01-10 Molnar Karoly <molnarkaroly AT users.sf.net>
13246
13247	* doc/sdccman.lyx: Expanded the 6.2 (Tools) table.
13248
132492013-01-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13250
13251	* src/hc08/ralloc.c (packRegisters),
13252	* src/hc08/gen.c (aopForRemat): allow more rematerializations of
13253	  cast pointers
13254	* src/hc08/ralloc2.cc (operand_is_ax): fixed bug that misidentified
13255	  some register assignments as the register pair AX
13256
132572013-01-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13258
13259	* src/SDCC.y,
13260	* src/SDCCast.h,
13261	* src/SDCCast.c: Move the test condition of a for-loop to the end of
13262	  the loop if it is always true for the first iteration of the loop
13263	  and has no side-effects.
13264
132652013-01-09 Molnar Karoly <molnarkaroly AT users.sf.net>
13266
13267	* support/scripts/mcs51-disasm.pl: Internal restructuring an bug fixes.
13268
132692013-01-08 Molnar Karoly <molnarkaroly AT users.sf.net>
13270
13271	* support/scripts/mcs51-disasm.pl: Prints in table the embedded constants.
13272
132732013-01-07 Molnar Karoly <molnarkaroly AT users.sf.net>
13274
13275	* support/scripts/mcs51-disasm: Renamed to mcs51-disasm.pl
13276
132772013-01-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13278
13279	* src/hc08/gen.c,
13280	* src/hc08/ralloc2.cc: Support more register combinations
13281	  with pointer get/set and ifx iCodes. Allow rmw instructions to
13282	  use X as a scratch register.
13283	* sim/ucsim/hc08.src/inst.cc: Fixed bug with cbeq using stack operand
13284	  modifying hx
13285
132862012-01-07 Philipp Klaus Krause <pkk AT spth.de>
13287
13288	* src/stm8/gen.c:
13289	  Infrastructure for the stm8 port.
13290
132912012-01-06 Philipp Klaus Krause <pkk AT spth.de>
13292
13293	* src/stm8/gen.c:
13294	  Infrastructure for the stm8 port.
13295
132962013-01-06 Philipp Klaus Krause <pkk AT spth.de>
13297
13298	* src/z80/gen.c,
13299	  src/z80/ralloc.c:
13300	  Minor code cleanup.
13301
133022013-01-06 Molnar Karoly <molnarkaroly AT users.sf.net>
13303
13304	* support/scripts/mcs51-disasm:
13305	  Changes in the commandline options:
13306	    Renamed --code-size to --rom-size.
13307	    Removed: --debug
13308	    New: --verbose, --const-area
13309	  Extracts more informations from map file.
13310
133112012-01-06 Philipp Klaus Krause <pkk AT spth.de>
13312
13313	* src/stm8/ralloc.c,
13314	  src/stm8/gen.c:
13315	  Infrastructure for the stm8 port.
13316
133172013-01-06 Borut Razem <borut.razem AT gmail.com>
13318
13319	* src/SDCCasm.c, src/SDCCasm.h: excluded unused asm mappings
13320
133212012-01-06 Philipp Klaus Krause <pkk AT spth.de>
13322
13323	* src/stm8/ralloc.c,
13324	  src/stm8/ralloc2.cc:
13325	  Register allocation infrastructure for the stm8 port.
13326	* src/stm8/gen.c:
13327	  Code generation infrastructure for the stm8 port.
13328
133292013-01-05 Molnar Karoly <molnarkaroly AT users.sf.net>
13330
13331	* support/scripts/mcs51-disasm: More informations from map file.
13332
133332013-01-05 Molnar Karoly <molnarkaroly AT users.sf.net>
13334
13335	* support/scripts/mcs51-disasm: The required perl version: 5.12.0
13336	  One repair: The unknown instruction is actually simple embedded
13337	  data in the code.
13338
133392013-01-05 Molnar Karoly <molnarkaroly AT users.sf.net>
13340
13341	* support/scripts/mcs51-disasm: New commandline option: --map-file
13342	  More detailed comments of instructions.
13343
133442013-01-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13345
13346	* src/hc08/ralloc.h,
13347	* src/hc08/ralloc.c,
13348	* src/hc08/gen.h,
13349	* src/hc08/gen.c: Removed some unused fields of the asmop
13350	  struct. Made checking asmops for registers more efficient.
13351
133522013-01-04 Molnar Karoly <molnarkaroly AT users.sf.net>
13353
13354	* support/scripts/mcs51-disasm: New commandline option: --code-size
13355	  In addition, limited tracking of some register (Rx, DPTR).
13356
133572013-01-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13358
13359	* src/hc08/ralloc.c: Removed old code from the original fork
13360	  from mcs51 that was not being used. Brought the old register
13361	  allocator up to date with the current code generator.
13362	* src/hc08/gen.c: Support ldhx/sthx with stack operands on s08.
13363	  Avoid using hx to assign literals to stack operands on hc08.
13364
133652013-01-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13366
13367	* src/hc08/gen.c (genAssignLit): fixed bug on systems that default
13368	  to signed char.
13369
133702013-01-03 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13371
13372	* src/hc08/gen.c: Fixed code size regression on s08 from overuse
13373	  of indexed addressing mode. Clean out some old, unused source.
13374	  Initialize hc08_aop_pass[] only once. Correct costs in
13375	  accopWithAop() for 2 byte instructions. Small improvements
13376	  to addition and subtraction.
13377
133782013-01-02 Molnar Karoly <molnarkaroly AT users.sf.net>
13379
13380	* device/non-free/include/pic14/pic16f720.h,
13381	  device/non-free/include/pic14/pic16f721.h,
13382	  device/non-free/include/pic14/pic16lf1902.h,
13383	  device/non-free/include/pic14/pic16lf1903.h,
13384	  device/non-free/include/pic16/pic18f65j94.h,
13385	  device/non-free/include/pic16/pic18f66j60.h,
13386	  device/non-free/include/pic16/pic18f66j65.h,
13387	  device/non-free/include/pic16/pic18f66j94.h,
13388	  device/non-free/include/pic16/pic18f66j99.h,
13389	  device/non-free/include/pic16/pic18f67j60.h,
13390	  device/non-free/include/pic16/pic18f67j94.h,
13391	  device/non-free/include/pic16/pic18f85j94.h,
13392	  device/non-free/include/pic16/pic18f86j60.h,
13393	  device/non-free/include/pic16/pic18f86j65.h,
13394	  device/non-free/include/pic16/pic18f86j94.h,
13395	  device/non-free/include/pic16/pic18f86j99.h,
13396	  device/non-free/include/pic16/pic18f87j60.h,
13397	  device/non-free/include/pic16/pic18f87j94.h,
13398	  device/non-free/include/pic16/pic18f95j94.h,
13399	  device/non-free/include/pic16/pic18f96j60.h,
13400	  device/non-free/include/pic16/pic18f96j65.h,
13401	  device/non-free/include/pic16/pic18f96j94.h,
13402	  device/non-free/include/pic16/pic18f96j99.h,
13403	  device/non-free/include/pic16/pic18f97j60.h,
13404	  device/non-free/include/pic16/pic18f97j94.h,
13405	  device/non-free/lib/pic14/libdev/pic16f720.c,
13406	  device/non-free/lib/pic14/libdev/pic16f721.c,
13407	  device/non-free/lib/pic14/libdev/pic16lf1902.c,
13408	  device/non-free/lib/pic14/libdev/pic16lf1903.c:
13409	  Updated based on the gputils.
13410
134112013-01-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13412
13413	* src/hc08/gen.h,
13414	* src/hc08/gen.c: More optimization of literal constant assignments.
13415	  Use indexed addressing mode in place of extended in some contexts.
13416
134172013-01-01 Molnar Karoly <molnarkaroly AT users.sf.net>
13418
13419	* support/scripts/mcs51-disasm: Disassembler for the mcs51 family.
13420
134212013-01-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13422
13423	* src/hc08/peeph.def: Removed peephole rule #8 since it is handled
13424	  in code generator now. Added rules for dbnz.
13425	* src/hc08/gen.c:  Rewrote genDbnz(). Minor improvements to genCmp()
13426	  and asmopToBool(). Removed some totally wrong code from genIfx().
13427
134282012-12-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13429
13430	* src/hc08/ralloc.h,
13431	* src/hc08/ralloc.c,
13432	* src/hc08/gen.c: optimization of literal constant loads/transfers
13433
134342012-12-31 Raphael Neider <rneider AT web.de>
13435
13436	* src/pic14/genarith.c (genAddLit): fixed coding style,
13437	  fixed #3599010 by adding implementation of (int + X)
13438	  for X in [0x0102; 0x01FE]
13439
134402012-12-29 Philipp Klaus Krause <pkk AT spth.de>
13441
13442	* src/stm8/gen.c,
13443	  src/stm8/ralloc2.cc:
13444	  Infrastructure for STM8 port.
13445
134462012-12-29 Philipp Klaus Krause <pkk AT spth.de>
13447
13448	* src/SDCCbtree.cc:
13449	  Fix bug #3598841.
13450
134512012-12-29 Maarten Brock <sourceforge.brock AT dse.nl>
13452
13453	* sdcc_vc.h.in: converted TABs to spaces
13454	* src/SDCCast.c(expandInlineFuncs): even MSVC 2012 still does not support
13455	  C99 randomly placed declarations, please place all declarations at the
13456	  start of a block
13457	* src/sdcc.vcxproj,
13458	* src/sdcc.vcxproj.filters: added SDCCbtree.cc and SDCCbtree.h
13459	* src/SDCCbtree.cc: fixed STX usage
13460
134612012-12-29 Philipp Klaus Krause <pkk AT spth.de>
13462
13463	* src/stm8/ralloc2.cc,
13464	  src/stm8/gen.c,
13465	  src/stm8/ralloc.c:
13466	  Infrastructure for STM8 port.
13467
134682012-12-28 Philipp Klaus Krause <pkk AT spth.de>
13469
13470	* src/stm8/ralloc2.cc,
13471	  src/stm8/gen.c,
13472	  src/stm8/gen.h:
13473	  Infrastructure for STM8 port.
13474
134752012-12-28 Philipp Klaus Krause <pkk AT spth.de>
13476
13477	* support/regression/tests/gcc-torture-execute-20011126-1.c,
13478	  support/regression/tests/gcc-torture-execute-20000717-2.c,
13479	  support/regression/tests/gcc-torture-execute-921202-2.c,
13480	  support/regression/tests/gcc-torture-execute-20050104-1.c:
13481	  Enable some long long regression tests, that now seem to work even on
13482	  32-bit systems.
13483
134842012-12-28 Maarten Brock <sourceforge.brock AT dse.nl>
13485
13486	* doc/sdccman.lyx: small update about sdas390
13487	* sdas/asgb/gbpst.c: enable macros
13488	* sdas/asxxsrc/aslex.c (nxtline): also fix macro case
13489	* sdas/asxxsrc/asmcro.c,
13490	* sdas/asxxsrc/asout.c,
13491	* sdas/asxxsrc/asxxxx.h: small step to ASxxxx v5
13492	* src/mcs51/gen.c(genJumpTab): use optimize.codeSpeed and options.acall_ajmp
13493	* src/SDCCast.c(createFunction): fixed warning
13494	* src/SDCCpeeph.c: cosmetics
13495	* support/regression/tests/bug3467508.c: suppress warnings
13496	* support/regression/tests/gcc-torture-execute-20050125-1.c: fixed warning
13497	* support/regression/tests/gcc-torture-execute-20050224-1.c: shortened test,
13498	  always perform ASSERT for correct statistics
13499	* support/regression/tests/gcc-torture-execute-20051104-1.c: added comments
13500	* support/regression/tests/gcc-torture-execute-doloop-2.c: always ASSERT
13501	* support/regression/tests/key.c,
13502	* support/regression/tests/long_asm_line.c,
13503	* support/regression/tests/macro.c: use at least one ASSERT
13504
135052012-12-28 Philipp Klaus Krause <pkk AT spth.de>
13506
13507	* src/stm8/ralloc2.cc,
13508	  src/stm8/gen.h,
13509	  src/stm8/main.c,
13510	  src/stm8/gen.c,
13511	  src/stm8/ralloc.h,
13512	  src/stm8/ralloc.c:
13513	  Infrastructure for STM8 port.
13514
135152012-12-27 Philipp Klaus Krause <pkk AT spth.de>
13516
13517	* Merged blocktree branch.
13518
135192012-12-27 Philipp Klaus Krause <pkk AT spth.de>
13520
13521	* src/SDCCglue.c:
13522	  Handle emission of long long constants.
13523	  Emit error message for unknown sizes instead of failing silently.
13524
135252012-12-27 Maarten Brock <sourceforge.brock AT dse.nl>
13526
13527	* src/SDCCval.c,
13528	* sdcc_vc.h.in: moved strto(u)ll macros and fixed warnings
13529
135302012-12-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13531
13532	* src/SDCCglue.c (emitOverlay): fixed bug #3596899
13533	* support/regression/tests/gcc-tortue-execute-20021118-2.c:
13534	  re-enabled test (fixed by my 2012-12-26 commit)
13535
135362012-12-26 Maarten Brock <sourceforge.brock AT dse.nl>
13537
13538	* src/SDCCval.c: inserted macros for strtoll and strtoull
13539
135402012-12-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13541
13542	* src/SDCC.y,
13543	* src/SDCCsymt.c,
13544	* src/SDCCsymt.h,
13545	* src/SDCCast.c,
13546	* src/SDCCast.h: Fixed some scope related bugs including
13547	  #3190029 (improved previous fix), #3513308, and #3511513
13548	* support/regression/tests/gcc-torture-execute-960116-1.c:
13549	  re-enabled test
13550
135512012-12-26 Borut Razem <borut.razem AT gmail.com>
13552
13553	* support/sdbinutils/binutils/configure.in,
13554	  support/sdbinutils/binutils/configure:
13555	  fixed bug #3527589 - "Build fails on archlinux ppc"
13556
135572012-12-25 Borut Razem <borut.razem AT gmail.com>
13558
13559	* src/pic14/gen.c, src/pic14/main.c:
13560	  applied patch #3193179 - "pic14 naked ISR handler"
13561	  implementing RFE #1432077 - "naked for pic14",
13562	  thanks to Wolfgang Jung
13563
135642012-12-23 Vaclav Peroutka <vaclavpe AT seznam.cz>
13565
13566   * sim/ucsim/configure
13567     sim/ucsim/configure.in
13568     sim/ucsim/main_in.mk
13569     sim/ucsim/packages_in.mk
13570     sim/ucsim/stypes.h
13571     sim/ucsim/st7.src/(c).1
13572     sim/ucsim/st7.src/Makefile.in
13573     sim/ucsim/st7.src/clean.mk
13574     sim/ucsim/st7.src/conf.mk
13575     sim/ucsim/st7.src/glob.cc
13576     sim/ucsim/st7.src/glob.h
13577     sim/ucsim/st7.src/inst.cc
13578     sim/ucsim/st7.src/instcl.h
13579     sim/ucsim/st7.src/regsst7.h
13580     sim/ucsim/st7.src/simst7.cc
13581     sim/ucsim/st7.src/simst7cl.h
13582     sim/ucsim/st7.src/sst7.cc
13583     sim/ucsim/st7.src/st7.cc
13584     sim/ucsim/st7.src/st7cl.h
13585     sim/ucsim/st7.src/st7mac.h
13586     sim/ucsim/stm8.src/inst.cc
13587     sim/ucsim/stm8.src/instcl.h
13588     sim/ucsim/stm8.src/stm8.cc
13589     sim/ucsim/stm8.src/stm8mac.h
13590
135912012-12-23 Philipp Klaus Krause <pkk AT spth.de>
13592
13593	* src/stm8/gen.c,
13594	  src/stm8/ralloc.h,
13595	  src/stm8/ralloc2.cc,
13596	  src/stm8/ralloc.c:
13597	  Infrastructure for STM8 port.
13598
135992012-12-22 Philipp Klaus Krause <pkk AT spth.de>
13600
13601	* src/stm8/main.c,
13602	  src/stm8/gen.c,
13603	  src/stm8/gen.h,
13604	  src/stm8/ralloc.h,
13605	  src/port.h,
13606	  src/SDCCmain.c,
13607	  src/stm8/ralloc.c:
13608	  Basic infrastructure for STM8 port.
13609
136102012-12-21 Philipp Klaus Krause <pkk AT spth.de>
13611
13612	* Makefile.common.in,
13613	  Makefile.in,
13614	  configure.in,
13615	  sim/ucsim/aclocal.m4,
13616	  sim/ucsim/configure,
13617	  configure,
13618	  debugger/mcs51/aclocal.m4,
13619	  src/port.h,
13620	  src/stm8,
13621	  src/stm8/Makefile.in,
13622	  src/stm8/main.c,
13623	  src/stm8/peeph.def,
13624	  device/lib/stm8,
13625	  device/lib/stm8/Makefile.in,
13626	  src/stm8/ralloc.h:
13627	  Basic build infrastructure for STM8 port.
13628
136292012-12-20 Philipp Klaus Krause <pkk AT spth.de>
13630
13631	* src/SDCCbtree.cc:
13632	  BTREE_DEBUG macro for enabling debub messages in blocktree-based allocator.
13633
136342012-12-20 Philipp Klaus Krause <pkk AT spth.de>
13635
13636	* support/regression/tests/frexpf.c:
13637	  Test for frexpf().
13638	* src/z80/gen.c:
13639	  Do not attempt to restore pair using dec, when it has been pushed.
13640
136412012-12-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13642
13643	* src/SDCCval.c (constVal),
13644	* sdas/asxxsrc/aslex.c (nxtline): fixed warnings
13645
136462012-12-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13647
13648	* src/SDCCbtree.cc:
13649	  Special handling for parameters in btree-based stack allocation.
13650
136512012-12-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13652
13653	* src/SDCCralloc.hpp:
13654	  Send error message about invalid root to cerr instead of cout.
13655
136562012-12-19 Borut Razem <borut.razem AT gmail.com>
13657
13658	* src/SDCCmain.c, src/SDCCglobl.h, support/cpp/sdcpp.opt,
13659	  support/cpp/libcpp/init.c, support/cpp/sdcpp-opts.c
13660	  fixed bug 3572584 - "Trigraphs don't work", 2nd try:
13661	  trigraphs are enabled by default in sdcpp
13662
136632012-12-16 Borut Razem <borut.razem AT gmail.com>
13664
13665	* src/SDCCglobl.h, src/SDCCmain.c:
13666	  fixed bug 3572584 - "Trigraphs don't work"
13667
136682012-12-14 Philipp Klaus Krause <pkk AT spth.de>
13669
13670	* src/SDCCbtree.cc,
13671	  src/SDCCast.c:
13672	  Fixes for block-based stack allocation.
13673
136742012-12-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13675
13676	* src/SDCC.y
13677	  src/SDCCbtree.h,
13678	  src/SDCCbtree.cc,
13679	  src/SDCCast.c,
13680	  src/SDCCmem.c:
13681	  Fixes for block-based stack allocation.
13682
136832012-12-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13684
13685	* src/SDCC.y
13686	  src/SDCCbtree.h,
13687	  src/SDCCbtree.cc,
13688	  src/SDCCmem.c:
13689	  Infrastructure for block-based stack allocation.
13690
136912012-12-09 Philipp Klaus Krause <pkk AT spth.de>
13692
13693	* src/z80/gen.c:
13694	  Do not generate redundant loads when fetching pair from regs.
13695
136962012-12-02 Molnar Karoly <molnarkaroly AT users.sf.net>
13697
13698	* support/scripts/cinc2h.pl,
13699	  support/scripts/pic14-header-parser.pl,
13700	  support/scripts/pic16-header-parser.pl: I changed the copyright.
13701
137022012-12-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13703
13704	* src/SDCC.y (labeled_statement): fixed bug #3590884
13705
137062012-11-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13707
13708	* src/SDCCcse.c (algebraicOpts),
13709	* src/SDCCicode.c (operandOperation),
13710	* src/SDCCsymt.c (bitsForType),
13711	* src/SDCCval.h,
13712	* src/SDCCval.c: working towards long long constant support
13713
137142012-11-25 Molnar Karoly <molnarkaroly AT users.sf.net>
13715
13716	* device/non-free/include/pic16/pic18f6390.h,
13717	  device/non-free/lib/pic16/libdev/pic18f6390.c:
13718	  Repaired wrong address of RCREG, 0x0FA0 --> 0x0FAE.
13719
137202012-11-25 Molnar Karoly <molnarkaroly AT users.sf.net>
13721
13722	* device/non-free/include/pic16/pic18f63j11.h,
13723	  device/non-free/lib/pic16/libdev/pic18f63j11.c:
13724	  Repaired wrong address of RCREG, 0x0FD0 --> 0x0FAE.
13725
137262012-11-24 Borut Razem <borut.razem AT gmail.com>
13727
13728	* doc/sdccman.lyx: LyX format update to lyxformat 413, LyX 2.x.x
13729
137302012-11-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13731
13732	* src/SDCCtree_dec.hpp:
13733	  Ensure we have an empty bag at the root in nice tree decompositions.
13734	* support/regression/tests/gcc-torture-execute-20060110-1.c:
13735	  Disable test which fails on arm for gbz80 due to unimplemented long long constants.
13736
137372012-11-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13738
13739	* doc/sdccman.lyx: removed duplicate commands my lyx edit added
13740
137412012-11-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13742
13743	* doc/sdccman.lyx: document --no-ret-without-call and fix some typos
13744
137452012-11-18 Maarten Brock <sourceforge.brock AT dse.nl>
13746
13747	* src/mcs51/gen.c (emitDummyCall): use temporary label,
13748	  (genPcall): use temporary label call instead of pushes,
13749	  (genJumpTab): optimized thresholds and always use jmp @a+dptr
13750	* src/mcs51/peep.c (scan4op): detect lcall temporary label
13751	* src/mcs51/ralloc.c: cosmetics
13752
137532012-11-18 Molnar Karoly <molnarkaroly AT users.sf.net>
13754
13755	* support/scripts/pic16-header-parser.pl:
13756	  New capability: Handling of I/O pins of the peripheral.
13757	  The program creates six files in the actual directory:
13758		adc.tables, ccp.tables, pwm.tables, i2c.tables,
13759		spi.tables, usart.tables
13760
137612012-11-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13762
13763	* src/SDCCglobl.h,
13764	* src/mcs51/main.c
13765	* src/mcs51/gen.c (emitDummyCall,genJumpTab, genPcall):
13766	  added --no-ret-without-call option for compatibility with
13767	  Infineon's Memory Extension Stack
13768
137692012-11-15 Maarten Brock <sourceforge.brock AT dse.nl>
13770
13771	* sdcc.sln,
13772	* support/scripts/sdcc.nsi: added sdas390
13773
137742012-11-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13775
13776	* src/SDCCast.c (decorateType): fixed bug #3577669
13777	* support/regression/tests/gcc-torture-execute-20021010-1.c: reenabled
13778
137792012-11-13 Maarten Brock <sourceforge.brock AT dse.nl>
13780
13781	* configure: added as8xcxxx to CONFIG_FILES
13782
137832012-11-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13784
13785	* src/z80/mappings.i:
13786	  Fix use of and macro for z80asm assembler.
13787
137882012-11-12 Maarten Brock <sourceforge.brock AT dse.nl>
13789
13790	* configure,
13791	* configure.in,
13792	* Makefile.in: added as8xcxxx
13793	* Makefile.common.in: fixed OPT_DISABLE_DS390
13794	* sdas/as8051/i51mch.c,
13795	* sdas/as8051/i51pst.c: removed flat24
13796	* sdas/as8xcxxx/,
13797	* sdas/as8xcxxx/clean.mk,
13798	* sdas/as8xcxxx/ds8.h,
13799	* sdas/as8xcxxx/ds8adr.c,
13800	* sdas/as8xcxxx/ds8mch.c,
13801	* sdas/as8xcxxx/ds8pst.c,
13802	* sdas/as8xcxxx/Makefile.in,
13803	* sdas/as8xcxxx/sdas390.vcxproj,
13804	* sdas/as8xcxxx/sdas390.vcxproj.filters: new, added sdas390
13805	* sdas/asxxsrc/asdata.c: removed flat24Mode
13806	* sdas/asxxsrc/asexpr.c: added exprmasks()
13807	* sdas/asxxsrc/asmain.c: removed S_FLAT24 case
13808	* sdas/asxxsrc/asout.c: outr*() synced with ASxxxx v5
13809	* sdas/asxxsrc/asxxxx.h: next step to ASxxxx v5
13810	* sdas/asxxsrc/sdas.c,
13811	* sdas/asxxsrc/sdas.h: added TARGET_ID_DS390
13812	* src/ds390/gen.c: replaced ACC.x with ACC[x]
13813	* src/ds390/main.c: issue .DS80C390 and .amode instead of .flat24,
13814	  and use sdas390
13815
138162012-11-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13817
13818	* support/regression/ports/ucr2k/spec.mk:
13819	  Make ucr2k timeout the same as ucr3ka.
13820	* support/regression/tests/gcc-torture-execute-20111208-1.c:
13821	  Disable test for gcc older than 5.0.
13822
138232012-11-10 Borut Razem <borut.razem AT gmail.com>
13824
13825	* support/regression/ports/ds390/spec.mk:
13826	  doubled timeout since the gcc-torture-execute-20050224-1
13827	  regression test stil fails with timeout on i586-mingw32msvc
13828
138292012-11-09 Borut Razem <borut.razem AT gmail.com>
13830
13831	* support/regression/fwk/lib/testfwk.c:
13832	  "code" substituted with "__code"
13833
138342012-11-08 Borut Razem <borut.razem AT gmail.com>
13835
13836	* support/sdbinutils/bfd/Makefile.am,
13837	  support/sdbinutils/bfd/Makefile.in,
13838	  support/sdbinutils/include/opcode,
13839	  support/sdbinutils/include/opcode/ia64.h,
13840	  support/sdbinutils/include/opcode/sparc.h,
13841	  support/sdbinutils/include/mach-o/x86-64.h,
13842	  support/sdbinutils/bfd/verilog.c,
13843	  support/sdbinutils/bfd/tekhex.c,
13844	  support/sdbinutils/bfd/cpu-ia64-opc.c,
13845	  support/sdbinutils/bfd/coff-ia64.c,
13846	  support/sdbinutils/bfd/peXXigen.c,
13847	  support/sdbinutils/bfd/elfnn-ia64.c,
13848	  support/sdbinutils/bfd/bdfwin.c,
13849	  support/sdbinutils/opcodes,
13850	  support/sdbinutils/opcodes/ia64-opc.h:
13851	  removed unused files
13852	* Makefile.in, support/scripts/sdcc.nsi, doc/sdccman.lyx,
13853	  support/sdbinutils/binutils/Makefile.am,
13854	  support/sdbinutils/binutils/Makefile.in,
13855	  support/sdbinutils/bfd/targets.c,
13856	  support/sdbinutils/binutils/ieee.c,
13857	  support/sdbinutils/binutils/rddbg.c,
13858	  support/sdbinutils/binutils/not-strip.c,
13859	  support/sdbinutils/binutils/objcopy.c,
13860	  support/sdbinutils/binutils/budbg.h,
13861	  support/sdbinutils/binutils/rdcoff.c,
13862	  support/sdbinutils/binutils/wrstabs.c,
13863	  support/sdbinutils/binutils/debug.c,
13864	  support/sdbinutils/binutils/debug.h,
13865	  support/sdbinutils/binutils/stabs.c,
13866	  support/sdbinutils/include/ieee.h:
13867	  added binary target support, added sdobjcopy utility
13868	* support/regression/ports/ds390/spec.mk,
13869	  support/regression/ports/mcs51-common/spec.mk,
13870	  support/regression/ports/ucr3ka/spec.mk:
13871	  increased timeouts due to the gcc-torture-execute-20050224-1
13872	  regression test timeout failures
13873
138742012-11-07 Borut Razem <borut.razem AT gmail.com>
13875
13876	* support/sdbinutils/bfd/Makefile.am,
13877	  support/sdbinutils/bfd/*.c:
13878	  removed unused machine an backend files
13879
138802012-11-06 Borut Razem <borut.razem AT gmail.com>
13881
13882	* support/sdbinutils/bfd/targets.c:
13883	  removed unneeded vectors and flavours
13884	* support/sdbinutils/bfd/targets.c,
13885	  support/sdbinutils/bfd/config.bfd:
13886	  support/sdbinutils/binutils/configure.in,
13887	  support/sdbinutils/binutils/configure,
13888	  removed all unused vectors; hardcode default target to asxxxx
13889	* support/sdbinutils/bfd/configure.in,
13890	  support/sdbinutils/bfd/configure,
13891	  support/sdbinutils/bfd/Makefile.in,
13892	  support/sdbinutils/bfd/archures.c,
13893	  support/sdbinutils/bfd/Makefile.am,
13894	  support/sdbinutils/bfd/config.bfd:
13895	  removed all unused architectures
13896
138972012-11-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
13898
13899	* support/sdbinutils/bfd/targets.c: reenable asxxxx
13900
139012012-11-05 Borut Razem <borut.razem AT gmail.com>
13902
13903	* support/sdbinutils/*:
13904	  sdbinutils synced with binutils-2.23
13905
139062012-11-05 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13907
13908	* src/z80/peeph-z80.def,
13909	  src/z80/peeph-r2k.def:
13910	  Fix condition on bc in peephole rule.
13911
139122012-11-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13913
13914	* support/regression/tests/gcc-torture-execute-20040313-1.c:
13915	  Disabled test, since it fails on 32-bit Linux.
13916
139172012-11-02 Molnar Karoly <molnarkaroly AT users.sf.net>
13918
13919	* device/lib/pic16/startup/crt0i.c,
13920	  device/lib/pic16/startup/crt0iz.c: Was reduced size of the code.
13921
139222012-11-02 Molnar Karoly <molnarkaroly AT users.sf.net>
13923
13924	* doc/sdccman.lyx: Added new pic18f97j94 family.
13925
139262012-11-02 Molnar Karoly <molnarkaroly AT users.sf.net>
13927
13928	* support/scripts/cinc2h.pl,
13929	  support/scripts/pic14-header-parser.pl,
13930	  support/scripts/pic16-header-parser.pl: Toggle execution flag.
13931
139322012-11-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13933
13934	* src/z80/gen.c:
13935	  Fixed bug in assignment from register pair iy to extended stack, fix #3582658.
13936
139372012-11-02 Molnar Karoly <molnarkaroly AT users.sf.net>
13938
13939	* support/scripts/cinc2h.pl: Changed option "-c" onto "-o".
13940	* support/scripts/pic14-header-parser.pl,
13941	  support/scripts/pic16-header-parser.pl,
13942	  support/scripts/pic16fam-h-gen.pl: Updated my email address.
13943
139442012-11-02 Molnar Karoly <molnarkaroly AT users.sf.net>
13945
13946	* device/include/pic16/pic16devices.txt,
13947	  device/include/pic16/pic18fregs.h,
13948	  device/lib/pic16/libio/Makefile.am,
13949	  device/lib/pic16/libio/Makefile.in,
13950	  device/lib/pic16/libio/adc.ignore,
13951	  device/lib/pic16/libio/i2c.ignore,
13952	  device/lib/pic16/libio/usart.ignore,
13953	  device/non-free/include/pic16/pic18f65j94.h,
13954	  device/non-free/include/pic16/pic18f66j94.h,
13955	  device/non-free/include/pic16/pic18f66j99.h,
13956	  device/non-free/include/pic16/pic18f67j94.h,
13957	  device/non-free/include/pic16/pic18f85j94.h,
13958	  device/non-free/include/pic16/pic18f86j94.h,
13959	  device/non-free/include/pic16/pic18f86j99.h,
13960	  device/non-free/include/pic16/pic18f87j94.h,
13961	  device/non-free/include/pic16/pic18f95j94.h,
13962	  device/non-free/include/pic16/pic18f96j94.h,
13963	  device/non-free/include/pic16/pic18f96j99.h,
13964	  device/non-free/include/pic16/pic18f97j94.h,
13965	  device/non-free/lib/pic16/libdev/Makefile.am,
13966	  device/non-free/lib/pic16/libdev/Makefile.in,
13967	  device/non-free/lib/pic16/libdev/pic18f65j94.c,
13968	  device/non-free/lib/pic16/libdev/pic18f66j94.c,
13969	  device/non-free/lib/pic16/libdev/pic18f66j99.c,
13970	  device/non-free/lib/pic16/libdev/pic18f67j94.c,
13971	  device/non-free/lib/pic16/libdev/pic18f85j94.c,
13972	  device/non-free/lib/pic16/libdev/pic18f86j94.c,
13973	  device/non-free/lib/pic16/libdev/pic18f86j99.c,
13974	  device/non-free/lib/pic16/libdev/pic18f87j94.c,
13975	  device/non-free/lib/pic16/libdev/pic18f95j94.c,
13976	  device/non-free/lib/pic16/libdev/pic18f96j94.c,
13977	  device/non-free/lib/pic16/libdev/pic18f96j99.c,
13978	  device/non-free/lib/pic16/libdev/pic18f97j94.c,
13979	  device/non-free/lib/pic16/pics.all: Support for new devices.
13980
139812012-11-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13982
13983	* src/z80/ralloc2.cc:
13984	  Fix non-destructive bitwise and with single-bit literal for extended stack operands.
13985	* src/z80/gen.c:
13986	  Fix built-in memset() for argument c in register pair hl.
13987
139882012-11-01 Molnar Karoly <molnarkaroly AT users.sf.net>
13989
13990	* device/non-free/include/pic14/pic1*.h,
13991	  device/non-free/include/pic16/pic1*.h,
13992	  device/non-free/lib/pic14/pic1*.c,
13993	  device/non-free/lib/pic16/pic1*.c: recreated
13994	* support/scripts/cinc2h.pl: Updated my email address.
13995
139962012-11-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
13997
13998	* src/z80/gen.c:
13999	  Fix long shifts for result in a permutation of operand registers.
14000
140012012-10-31 Maarten Brock <sourceforge.brock AT dse.nl>
14002
14003	* sdas/asxxxsrc/asout.c (outdp): oops, forgot to commit this
14004
140052012-10-30 Erik Petrich <epetrich AT ivorytower.norman.ok.s>
14006
14007	* sdas/asxxxsrc/asout.c (outdp): fix to match prototype
14008
140092012-10-29 Maarten Brock <sourceforge.brock AT dse.nl>
14010
14011	* sdas/as6808/as_hc08.vcxproj,
14012	* sdas/as6808/as_hc08.vcxproj.filters,
14013	* sdas/as8051/asx8051.vcxproj,
14014	* sdas/as8051/asx8051.vcxproj.filters,
14015	* sdas/asgb/asgb.vcxproj,
14016	* sdas/asgb/asgb.vcxproj.filters,
14017	* sdas/asrab/asrab.vcxproj,
14018	* sdas/asrab/asrab.vcxproj.filters,
14019	* sdas/asz80/as_z80.vcxproj,
14020	* sdas/asz80/as_z80.vcxproj.filters: added asmcro.c
14021	* sdas/as6808/m08mch.c,
14022	* sdas/as6808/m6808.h,
14023	* sdas/asxxsrc/asxxxx.h: outdp, chkindx synced with ASxxxx v5
14024	* device/lib/_gptrput.c: lock up on code write
14025
140262012-10-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14027
14028	* support/regression/ports/ds390/spec.mk,
14029	  support/regression/ports/mcs51-common/spec.mk:
14030	  Slightly increase timeouts.
14031	* support/regression/tests/gcc-torture-execute-20051104-1.c,
14032	  support/regression/tests/gcc-torture-execute-950426-1.c,
14033	  support/regression/tests/gcc-torture-execute-20021204-1.c:
14034	  Disable warning on assigning string literal to non-const pointer.
14035
140362012-10-24 Philipp Klaus Krause <pkk AT spth.de>
14037
14038	* support/regression/tests/gcc-torture-execute-20070724-1.c:
14039	  Disabled test on gcc older than 5.0.
14040
140412012-10-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14042
14043	* support/regression/tests/gcc-torture-execute-20050613-1.c:
14044	  Disable a test for mcs51, where it fails for stack-auto.
14045
140462012-10-19 Philipp Klaus Krause <pkk AT spth.de>
14047
14048	* support/regression/tests/gcc-torture-execute-20060929-1.c,
14049	  support/regression/tests/gcc-torture-execute-20070201-1.c:
14050	  Disable tests on gcc older than 5.0.
14051
140522012-10-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14053
14054	* src/z80/gen.c,
14055	  support/regression/tests/gcc-torture-execute-20060930-2.c:
14056	  Fixed bug #3577673.
14057	* support/regression/tests/gcc-torture-execute-20060127-1.c,
14058	  support/regression/tests/gcc-torture-execute-20060110-2.c:
14059	  Note that these are affected by lack of support for long long literals.
14060
140612012-10-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14062
14063	* support/regression/tests/gcc-torture-execute-20041210-1.c,
14064	  support/regression/tests/gcc-torture-execute-20050218-1.c,
14065	  support/regression/tests/gcc-torture-execute-20051110-1.c,
14066	  support/regression/tests/gcc-torture-execute-20041112-1.c,
14067	  support/regression/tests/gcc-torture-execute-20040820-1.c,
14068	  support/regression/tests/gcc-torture-execute-20040704-1.c,
14069	  support/regression/tests/gcc-torture-execute-20050826-1.c,
14070	  support/regression/tests/gcc-torture-execute-20040311-1.c,
14071	  support/regression/tests/gcc-torture-execute-20040319-1.c,
14072	  support/regression/tests/gcc-torture-execute-20051110-2.c,
14073	  support/regression/tests/gcc-torture-execute-20071213-1.c,
14074	  support/regression/tests/gcc-torture-execute-20040409-1.c,
14075	  support/regression/tests/gcc-torture-execute-20070724-1.c,
14076	  support/regression/tests/gcc-torture-execute-20050826-2.c,
14077	  support/regression/tests/gcc-torture-execute-20051021-1.c,
14078	  support/regression/tests/gcc-torture-execute-20050613-1.c,
14079	  support/regression/tests/gcc-torture-execute-20041113-1.c,
14080	  support/regression/tests/gcc-torture-execute-20050104-1.c,
14081	  support/regression/tests/gcc-torture-execute-20040409-2.c,
14082	  support/regression/tests/gcc-torture-execute-20071205-1.c,
14083	  support/regression/tests/gcc-torture-execute-20041212-1.c,
14084	  support/regression/tests/gcc-torture-execute-20040409-3.c,
14085	  support/regression/tests/gcc-torture-execute-20050131-1.c,
14086	  support/regression/tests/gcc-torture-execute-20040411-1.c,
14087	  support/regression/tests/gcc-torture-execute-20041114-1.c,
14088	  support/regression/tests/gcc-torture-execute-20040706-1.c,
14089	  support/regression/tests/gcc-torture-execute-20040313-1.c,
14090	  support/regression/tests/gcc-torture-execute-20040831-1.c,
14091	  support/regression/tests/gcc-torture-execute-20050713-1.c,
14092	  support/regression/tests/gcc-torture-execute-20111208-1.c,
14093	  support/regression/tests/gcc-torture-execute-20050410-1.c,
14094	  support/regression/tests/gcc-torture-execute-20040331-1.c,
14095	  support/regression/tests/gcc-torture-execute-20051104-1.c,
14096	  support/regression/tests/gcc-torture-execute-20071108-1.c,
14097	  support/regression/tests/gcc-torture-execute-20050106-1.c,
14098	  support/regression/tests/gcc-torture-execute-20041213-2.c,
14099	  support/regression/tests/gcc-torture-execute-20040823-1.c,
14100	  support/regression/tests/gcc-torture-execute-20040707-1.c,
14101	  support/regression/tests/gcc-torture-execute-20070201-1.c,
14102	  support/regression/tests/gcc-torture-execute-20071011-1.c,
14103	  support/regression/tests/gcc-torture-execute-20050124-1.c,
14104	  support/regression/tests/gcc-torture-execute-20071216-1.c,
14105	  support/regression/tests/gcc-torture-execute-20050125-1.c,
14106	  support/regression/tests/gcc-torture-execute-20040208-1.c,
14107	  support/regression/tests/gcc-torture-execute-20050929-1.c,
14108	  support/regression/tests/gcc-torture-execute-20071030-1.c,
14109	  support/regression/tests/gcc-torture-execute-20050502-1.c,
14110	  support/regression/tests/gcc-torture-execute-20040423-1.c,
14111	  support/regression/tests/gcc-torture-execute-20050224-1.c,
14112	  support/regression/tests/gcc-torture-execute-20041126-1.c,
14113	  support/regression/tests/gcc-torture-execute-20041011-1.c,
14114	  support/regression/tests/gcc-torture-execute-20071210-1.c,
14115	  support/regression/tests/gcc-torture-execute-20050502-2.c,
14116	  support/regression/tests/gcc-torture-execute-20041019-1.c,
14117	  support/regression/tests/gcc-torture-execute-20070212-1.c,
14118	  support/regression/tests/gcc-torture-execute-20040218-1.c,
14119	  support/regression/tests/gcc-torture-execute-20070623-1.c,
14120	  support/regression/tests/gcc-torture-execute-20071202-1.c,
14121	  support/regression/tests/gcc-torture-execute-20070212-2.c,
14122	  support/regression/tests/gcc-torture-execute-20051215-1.c,
14123	  support/regression/tests/gcc-torture-execute-20071219-1.c,
14124	  support/regression/tests/gcc-torture-execute-20070212-3.c,
14125	  support/regression/tests/gcc-torture-execute-20040309-1.c,
14126	  support/regression/tests/gcc-torture-execute-20050111-1.c,
14127	  support/regression/tests/gcc-torture-execute-20070517-1.c,
14128	  support/regression/tests/gcc-torture-execute-20040917-1.c:
14129	  Added remaining parts (excluding tests for builtin functions and
14130	  IEEE-compliane for floating-point) of the execute part
14131	  of the gcc torture stest uite to regression tests.
14132
141332012-10-16 Molnar Karoly <molnarkaroly AT users.sf.net>
14134
14135	* device/lib/pic16/libio/i2c/i2copen.c:
14136	  Bugfix: TRISCbits.TRISC2 --> TRISCbits.TRISC4
14137
141382012-10-16 Molnar Karoly <molnarkaroly AT users.sf.net>
14139
14140	* device/include/pic16/usart.h: Supplement to "USART styles".
14141	* device/lib/pic16/libio/usart/uopen.c:
14142	  Use the (__SDCC_USART_STYLE == 1865850) condition.
14143	* doc/README.txt:
14144	  New line at the end of the "Authors and interested persons" section.
14145
141462012-10-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14147
14148	* support/regression/tests/gcc-torture-execute-20020213-1.c,
14149	  support/regression/tests/gcc-torture-execute-20020615-1.c,
14150	  support/regression/tests/gcc-torture-execute-20020508-1.c,
14151	  support/regression/tests/gcc-torture-execute-20020911-1.c,
14152	  support/regression/tests/gcc-torture-execute-20020321-1.c,
14153	  support/regression/tests/gcc-torture-execute-20020402-1.c,
14154	  support/regression/tests/gcc-torture-execute-20021015-1.c,
14155	  support/regression/tests/gcc-torture-execute-20020920-1.c,
14156	  support/regression/tests/gcc-torture-execute-20020508-2.c,
14157	  support/regression/tests/gcc-torture-execute-20020402-2.c,
14158	  support/regression/tests/gcc-torture-execute-20020508-3.c,
14159	  support/regression/tests/gcc-torture-execute-20020510-1.c,
14160	  support/regression/tests/gcc-torture-execute-20021204-1.c,
14161	  support/regression/tests/gcc-torture-execute-20020206-1.c,
14162	  support/regression/tests/gcc-torture-execute-20020402-3.c,
14163	  support/regression/tests/gcc-torture-execute-20020805-1.c,
14164	  support/regression/tests/gcc-torture-execute-20020215-1.c,
14165	  support/regression/tests/gcc-torture-execute-20020904-1.c,
14166	  support/regression/tests/gcc-torture-execute-20020716-1.c,
14167	  support/regression/tests/gcc-torture-execute-20020413-1.c,
14168	  support/regression/tests/gcc-torture-execute-20020216-1.c,
14169	  support/regression/tests/gcc-torture-execute-20020503-1.c,
14170	  support/regression/tests/gcc-torture-execute-20020225-1.c,
14171	  support/regression/tests/gcc-torture-execute-20020118-1.c,
14172	  support/regression/tests/gcc-torture-execute-20021010-1.c,
14173	  support/regression/tests/gcc-torture-execute-20020127-1.c,
14174	  support/regression/tests/gcc-torture-execute-20020225-2.c,
14175	  support/regression/tests/gcc-torture-execute-20020529-1.c,
14176	  support/regression/tests/gcc-torture-execute-20020611-1.c,
14177	  support/regression/tests/gcc-torture-execute-20020619-1.c,
14178	  support/regression/tests/gcc-torture-execute-20021010-2.c,
14179	  support/regression/tests/gcc-torture-execute-20020423-1.c,
14180	  support/regression/tests/gcc-torture-execute-20020307-1.c,
14181	  support/regression/tests/gcc-torture-execute-20020226-1.c,
14182	  support/regression/tests/gcc-torture-execute-20021011-1.c,
14183	  support/regression/tests/gcc-torture-execute-20020201-1.c,
14184	  support/regression/tests/gcc-torture-execute-20020103-1.c,
14185	  support/regression/tests/gcc-torture-execute-20021118-1.c,
14186	  support/regression/tests/gcc-torture-execute-20020916-1.c,
14187	  support/regression/tests/gcc-torture-execute-20020720-1.c,
14188	  support/regression/tests/gcc-torture-execute-20020129-1.c,
14189	  support/regression/tests/gcc-torture-execute-20021118-2.c,
14190	  support/regression/tests/gcc-torture-execute-20020810-1.c,
14191	  support/regression/tests/gcc-torture-execute-20020219-1.c,
14192	  support/regression/tests/gcc-torture-execute-20021111-1.c,
14193	  support/regression/tests/gcc-torture-execute-20020506-1.c,
14194	  support/regression/tests/gcc-torture-execute-20021119-1.c,
14195	  support/regression/tests/gcc-torture-execute-20021118-3.c,
14196	  support/regression/tests/gcc-torture-execute-20021120-1.c,
14197	  support/regression/tests/gcc-torture-execute-20021120-2.c,
14198	  support/regression/tests/gcc-torture-execute-20020614-1.c,
14199	  support/regression/tests/gcc-torture-execute-20020819-1.c,
14200	  support/regression/tests/gcc-torture-execute-20021120-3.c,
14201	  support/regression/tests/gcc-torture-execute-20021219-1.c,
14202	  support/regression/tests/gcc-torture-execute-20020328-1.c,
14203	  support/regression/tests/gcc-torture-execute-20060929-1.c,
14204	  support/regression/tests/gcc-torture-execute-20060412-1.c,
14205	  support/regression/tests/gcc-torture-execute-20060930-1.c,
14206	  support/regression/tests/gcc-torture-execute-20060930-2.c,
14207	  support/regression/tests/gcc-torture-execute-20060905-1.c,
14208	  upport/regression/tests/gcc-torture-execute-20060110-1.c,
14209	  support/regression/tests/gcc-torture-execute-20060127-1.c,
14210	  support/regression/tests/gcc-torture-execute-20060110-2.c,
14211	  support/regression/tests/gcc-torture-execute-20060102-1.c,
14212	  support/regression/tests/gcc-torture-execute-20061101-2.c,
14213	  support/regression/tests/gcc-torture-execute-20060910-1.c:
14214	  More tests from gcc.
14215
142162012-10-16 Molnar Karoly <molnarkaroly AT users.sf.net>
14217
14218	* support/scripts/cinc2h.pl: Comfortable version.
14219	  Writes to the separate directory (device and header) the *.C and
14220	  *.H files. Removed the --create-pseudo-registers option.
14221
142222012-10-16 Molnar Karoly <molnarkaroly AT users.sf.net>
14223
14224	* device/include/pic16/usart.h:
14225	  Simplification the definition of __SDCC_NO_SPBRGH.
14226	  Thanks to Diego Herranz.
14227
142282012-10-16 Molnar Karoly <molnarkaroly AT users.sf.net>
14229
14230	* support/scripts/pic18fam-h-gen.pl,
14231	  device/non-free/include/pic16/pic18fam.h:
14232	  Repaired the wrong classification of "__SDCC_PIC16_FAMILY 1865850"
14233	  in the (E)USART style.
14234
142352012-10-16 Molnar Karoly <molnarkaroly AT users.sf.net>
14236
14237	* doc/sdccman.lyx: Added the new pic processors.
14238
142392012-10-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14240
14241	* src/SDCCmain.c:
14242	  Fixed typo in --std-c89 option description.
14243
142442012-10-16 Borut Razem <borut.razem AT gmail.com>
14245
14246	* support/sdbinutils/opcodes/ia64-opc.h:
14247	  fixed bug #3577586 - missing binutils headers on ia64
14248
142492012-10-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14250
14251	* device/include/mcs51/lint.h:
14252	  Fixed bug #3577318.
14253
142542012-10-13 Maarten Brock <sourceforge.brock AT dse.nl>
14255
14256	* sdas/as6808/m08mch.c,
14257	* sdas/as6808/m08pst.c,
14258	* sdas/as6808/m6808.h,
14259	* sdas/as6808/Makefile.in,
14260	* sdas/as8051/i51mch.c,
14261	* sdas/as8051/i51pst.c,
14262	* sdas/as8051/Makefile.in,
14263	* sdas/asgb/gb.h,
14264	* sdas/asgb/gbadr.c,
14265	* sdas/asgb/gbmch.c,
14266	* sdas/asgb/Makefile.in,
14267	* sdas/asrab/Makefile.in,
14268	* sdas/asrab/rab.h,
14269	* sdas/asrab/rabadr.c,
14270	* sdas/asrab/rabmch.c,
14271	* sdas/asrab/rabpst.c,
14272	* sdas/asxxsrc/asdata.c,
14273	* sdas/asxxsrc/asexpr.c,
14274	* sdas/asxxsrc/aslex.c,
14275	* sdas/asxxsrc/aslist.c,
14276	* sdas/asxxsrc/asmain.c,
14277	* sdas/asxxsrc/asxxxx.h,
14278	* sdas/asxxsrc/asmcro.c,
14279	* sdas/asz80/Makefile.in,
14280	* sdas/asz80/z80.h,
14281	* sdas/asz80/z80adr.c,
14282	* sdas/asz80/z80mch.c,
14283	* sdas/asz80/z80pst.c: added ASxxxx v5 macro support
14284
142852012-10-13 Philipp Klaus Krause <pkk AT spth.de>
14286
14287	* src/SDCCtree_dec.hpp,
14288	  src/SDCCralloc.hpp:
14289	  Fixed bug #3566360.
14290
142912012-10-08 Borut Razem <borut.razem AT gmail.com>
14292
14293	* support/sdbinutils/include/opcode/ia64.h: added since build
14294	  on IA64 fails with elf64-ia64.c:27:25: error: opcode/ia64.h:
14295	  No such file or directory
14296
142972012-10-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14298
14299	* src/mcs51/gen.c (genPagedPointerGet): fixed bug #3527222
14300	* support/regression/tests/gcc-torture-execute-921013-1.c: reenabled
14301	* src/mcs51/gen.c (genCast),
14302	* src/ds390/gen.c (genCast): fixed bug3467508 regression test failures
14303	* support/regression/tests/bug3467508.c: reenabled for mcs51 and ds390
14304
143052012-10-08 Maarten Brock <sourceforge.brock AT dse.nl>
14306
14307	* sdas/asgb/asgb.vcxproj,
14308	* sdas/asgb/asgb.vcxproj.filters,
14309	* sdas/asgb/Makefile.in,
14310	* sdas/asgb/gbext.c: removed gbext.c
14311	* sdas/as8051/i51mch.c,
14312	* sdas/as8051/i8051.h,
14313	* sdas/asgb/gbadr.c,
14314	* sdas/asgb/gbmch.c,
14315	* sdas/asrab/rabadr.c,
14316	* sdas/asz80/z80adr.c,
14317	* sdas/asxxsrc/asdata.c,
14318	* sdas/asxxsrc/aslist.c,
14319	* sdas/asxxsrc/asout.c,
14320	* sdas/asxxsrc/asxxxx.h: and yet another step towards ASxxxx v5
14321
143222012-10-06 Maarten Brock <sourceforge.brock AT dse.nl>
14323
14324	* sdas/as6808/m08pst.c,
14325	* sdas/as8051/i51pst.c,
14326	* sdas/asgb/gbpst.c,
14327	* sdas/asrab/rabpst.c,
14328	* sdas/asz80/z80pst.c,
14329	* sdas/asxxsrc/asdata.c,
14330	* sdas/asxxsrc/asdbg.c,
14331	* sdas/asxxsrc/aslex.c,
14332	* sdas/asxxsrc/aslist.c,
14333	* sdas/asxxsrc/asmain.c,
14334	* sdas/asxxsrc/assubr.c,
14335	* sdas/asxxsrc/asxxxx.h: use ASxxxx v5 file structs
14336
143372012-10-06 Borut Razem <borut.razem AT gmail.com>
14338
14339	* support/scripts/optimize_pic16devices.pl:
14340	  updated with the latest version from Molnar Karoly
14341	* support/scripts/pic14-header-parser.pl,
14342	  support/scripts/pic16-header-parser.pl: applied patch #3567006 -
14343	  New support/scripts/pic1[46]-header-parser.pl,
14344	  thanks to Molnar Karoly
14345
143462012-10-05 Borut Razem <borut.razem AT gmail.com>
14347
14348	* support/scripts/zip-pic16devices.pl,
14349	  device/include/pic16/pic16devices.txt:
14350	  applied patch #3574556 - Compressed pic16devices.txt file,
14351	  thanks to Molnar Karoly
14352	* support/scripts/optimize_pic16devices.pl:
14353	  renamed from zip-pic16devices.pl
14354	* support/scripts/inc2h-pic16.pl, support/scripts/inc2h.pl:
14355	  removed, functionaly replaced by cinc2h.pl
14356
143572012-10-03 Maarten Brock <sourceforge.brock AT dse.nl>
14358
14359	* sdas/asxxsrc/asdata.c,
14360	* sdas/asxxsrc/asdbg.c,
14361	* sdas/asxxsrc/asexpr.c,
14362	* sdas/asxxsrc/aslex.c,
14363	* sdas/asxxsrc/aslist.c,
14364	* sdas/asxxsrc/asmain.c,
14365	* sdas/asxxsrc/asout.c,
14366	* sdas/asxxsrc/asxxxx.h: another step to ASxxxx v5
14367
143682012-10-03 Borut Razem <borut.razem AT gmail.com>
14369
14370	* device/non-free/lib/pic16/libdev/mkmk.sh:
14371	  applied patch #3574102 - Modification of device/non-free/lib/pic16/libdev/mkmk.sh
14372
143732012-10-02 Borut Razem <borut.razem AT gmail.com>
14374
14375	* device/include/pic16/pic18fregs.h,
14376	  device/include/pic16/pic16devices.txt,
14377	  device/lib/pic16/libio/Makefile.am,
14378	  device/lib/pic16/libio/adc.ignore,
14379	  device/lib/pic16/libio/i2c.ignore,
14380	  device/lib/pic16/libio/usart.ignore,
14381	  device/lib/pic16/libio/Makefile.in,
14382	  device/non-free/lib/pic16/libdev/Makefile.in,
14383	  device/non-free/lib/pic16/libdev/Makefile.am,
14384	  device/non-free/lib/pic16/pics.all,
14385	  device/non-free/include/pic16pic18f13k22.h,
14386	  device/non-free/lib/pic16/libdev/pic18f13k22.c,
14387	  device/non-free/include/pic16pic18f14k22.h,
14388	  device/non-free/lib/pic16/libdev/pic18f14k22.c,
14389	  device/non-free/include/pic16pic18f24j11.h,
14390	  device/non-free/lib/pic16/libdev/pic18f24j11.c,
14391	  device/non-free/include/pic16pic18f24k50.h,
14392	  device/non-free/lib/pic16/libdev/pic18f24k50.c,
14393	  device/non-free/include/pic16pic18f25j11.h,
14394	  device/non-free/lib/pic16/libdev/pic18f25j11.c,
14395	  device/non-free/include/pic16pic18f25k50.h,
14396	  device/non-free/lib/pic16/libdev/pic18f25k50.c,
14397	  device/non-free/include/pic16pic18f25k80.h,
14398	  device/non-free/lib/pic16/libdev/pic18f25k80.c,
14399	  device/non-free/include/pic16pic18f26j11.h,
14400	  device/non-free/lib/pic16/libdev/pic18f26j11.c,
14401	  device/non-free/include/pic16pic18f26j13.h,
14402	  device/non-free/lib/pic16/libdev/pic18f26j13.c,
14403	  device/non-free/include/pic16pic18f26j53.h,
14404	  device/non-free/lib/pic16/libdev/pic18f26j53.c,
14405	  device/non-free/include/pic16pic18f26k80.h,
14406	  device/non-free/lib/pic16/libdev/pic18f26k80.c,
14407	  device/non-free/include/pic16pic18f27j13.h,
14408	  device/non-free/lib/pic16/libdev/pic18f27j13.c,
14409	  device/non-free/include/pic16pic18f27j53.h,
14410	  device/non-free/lib/pic16/libdev/pic18f27j53.c,
14411	  device/non-free/include/pic16pic18f44j11.h,
14412	  device/non-free/lib/pic16/libdev/pic18f44j11.c,
14413	  device/non-free/include/pic16pic18f45j11.h,
14414	  device/non-free/lib/pic16/libdev/pic18f45j11.c,
14415	  device/non-free/include/pic16pic18f45k50.h,
14416	  device/non-free/lib/pic16/libdev/pic18f45k50.c,
14417	  device/non-free/include/pic16pic18f45k80.h,
14418	  device/non-free/lib/pic16/libdev/pic18f45k80.c,
14419	  device/non-free/include/pic16pic18f46j11.h,
14420	  device/non-free/lib/pic16/libdev/pic18f46j11.c,
14421	  device/non-free/include/pic16pic18f46j13.h,
14422	  device/non-free/lib/pic16/libdev/pic18f46j13.c,
14423	  device/non-free/include/pic16pic18f46j53.h,
14424	  device/non-free/lib/pic16/libdev/pic18f46j53.c,
14425	  device/non-free/include/pic16pic18f46k80.h,
14426	  device/non-free/lib/pic16/libdev/pic18f46k80.c,
14427	  device/non-free/include/pic16pic18f47j13.h,
14428	  device/non-free/lib/pic16/libdev/pic18f47j13.c,
14429	  device/non-free/include/pic16pic18f47j53.h,
14430	  device/non-free/lib/pic16/libdev/pic18f47j53.c,
14431	  device/non-free/include/pic16pic18f63j11.h,
14432	  device/non-free/lib/pic16/libdev/pic18f63j11.c,
14433	  device/non-free/include/pic16pic18f63j90.h,
14434	  device/non-free/lib/pic16/libdev/pic18f63j90.c,
14435	  device/non-free/include/pic16pic18f64j11.h,
14436	  device/non-free/lib/pic16/libdev/pic18f64j11.c,
14437	  device/non-free/include/pic16pic18f64j90.h,
14438	  device/non-free/lib/pic16/libdev/pic18f64j90.c,
14439	  device/non-free/include/pic16pic18f65j10.h,
14440	  device/non-free/lib/pic16/libdev/pic18f65j10.c,
14441	  device/non-free/include/pic16pic18f65j11.h,
14442	  device/non-free/lib/pic16/libdev/pic18f65j11.c,
14443	  device/non-free/include/pic16pic18f65j15.h,
14444	  device/non-free/lib/pic16/libdev/pic18f65j15.c,
14445	  device/non-free/include/pic16pic18f65j90.h,
14446	  device/non-free/lib/pic16/libdev/pic18f65j90.c,
14447	  device/non-free/include/pic16pic18f65k22.h,
14448	  device/non-free/lib/pic16/libdev/pic18f65k22.c,
14449	  device/non-free/include/pic16pic18f65k80.h,
14450	  device/non-free/lib/pic16/libdev/pic18f65k80.c,
14451	  device/non-free/include/pic16pic18f65k90.h,
14452	  device/non-free/lib/pic16/libdev/pic18f65k90.c,
14453	  device/non-free/include/pic16pic18f66j10.h,
14454	  device/non-free/lib/pic16/libdev/pic18f66j10.c,
14455	  device/non-free/include/pic16pic18f66j11.h,
14456	  device/non-free/lib/pic16/libdev/pic18f66j11.c,
14457	  device/non-free/include/pic16pic18f66j15.h,
14458	  device/non-free/lib/pic16/libdev/pic18f66j15.c,
14459	  device/non-free/include/pic16pic18f66j16.h,
14460	  device/non-free/lib/pic16/libdev/pic18f66j16.c,
14461	  device/non-free/include/pic16pic18f66j90.h,
14462	  device/non-free/lib/pic16/libdev/pic18f66j90.c,
14463	  device/non-free/include/pic16pic18f66j93.h,
14464	  device/non-free/lib/pic16/libdev/pic18f66j93.c,
14465	  device/non-free/include/pic16pic18f66k22.h,
14466	  device/non-free/lib/pic16/libdev/pic18f66k22.c,
14467	  device/non-free/include/pic16pic18f66k80.h,
14468	  device/non-free/lib/pic16/libdev/pic18f66k80.c,
14469	  device/non-free/include/pic16pic18f66k90.h,
14470	  device/non-free/lib/pic16/libdev/pic18f66k90.c,
14471	  device/non-free/include/pic16pic18f67j10.h,
14472	  device/non-free/lib/pic16/libdev/pic18f67j10.c,
14473	  device/non-free/include/pic16pic18f67j11.h,
14474	  device/non-free/lib/pic16/libdev/pic18f67j11.c,
14475	  device/non-free/include/pic16pic18f67j90.h,
14476	  device/non-free/lib/pic16/libdev/pic18f67j90.c,
14477	  device/non-free/include/pic16pic18f67j93.h,
14478	  device/non-free/lib/pic16/libdev/pic18f67j93.c,
14479	  device/non-free/include/pic16pic18f67k22.h,
14480	  device/non-free/lib/pic16/libdev/pic18f67k22.c,
14481	  device/non-free/include/pic16pic18f67k90.h,
14482	  device/non-free/lib/pic16/libdev/pic18f67k90.c,
14483	  device/non-free/include/pic16pic18f83j11.h,
14484	  device/non-free/lib/pic16/libdev/pic18f83j11.c,
14485	  device/non-free/include/pic16pic18f83j90.h,
14486	  device/non-free/lib/pic16/libdev/pic18f83j90.c,
14487	  device/non-free/include/pic16pic18f84j11.h,
14488	  device/non-free/lib/pic16/libdev/pic18f84j11.c,
14489	  device/non-free/include/pic16pic18f84j90.h,
14490	  device/non-free/lib/pic16/libdev/pic18f84j90.c,
14491	  device/non-free/include/pic16pic18f85j10.h,
14492	  device/non-free/lib/pic16/libdev/pic18f85j10.c,
14493	  device/non-free/include/pic16pic18f85j11.h,
14494	  device/non-free/lib/pic16/libdev/pic18f85j11.c,
14495	  device/non-free/include/pic16pic18f85j15.h,
14496	  device/non-free/lib/pic16/libdev/pic18f85j15.c,
14497	  device/non-free/include/pic16pic18f85j90.h,
14498	  device/non-free/lib/pic16/libdev/pic18f85j90.c,
14499	  device/non-free/include/pic16pic18f85k22.h,
14500	  device/non-free/lib/pic16/libdev/pic18f85k22.c,
14501	  device/non-free/include/pic16pic18f85k90.h,
14502	  device/non-free/lib/pic16/libdev/pic18f85k90.c,
14503	  device/non-free/include/pic16pic18f86j10.h,
14504	  device/non-free/lib/pic16/libdev/pic18f86j10.c,
14505	  device/non-free/include/pic16pic18f86j11.h,
14506	  device/non-free/lib/pic16/libdev/pic18f86j11.c,
14507	  device/non-free/include/pic16pic18f86j15.h,
14508	  device/non-free/lib/pic16/libdev/pic18f86j15.c,
14509	  device/non-free/include/pic16pic18f86j16.h,
14510	  device/non-free/lib/pic16/libdev/pic18f86j16.c,
14511	  device/non-free/include/pic16pic18f86j72.h,
14512	  device/non-free/lib/pic16/libdev/pic18f86j72.c,
14513	  device/non-free/include/pic16pic18f86j90.h,
14514	  device/non-free/lib/pic16/libdev/pic18f86j90.c,
14515	  device/non-free/include/pic16pic18f86j93.h,
14516	  device/non-free/lib/pic16/libdev/pic18f86j93.c,
14517	  device/non-free/include/pic16pic18f86k22.h,
14518	  device/non-free/lib/pic16/libdev/pic18f86k22.c,
14519	  device/non-free/include/pic16pic18f86k90.h,
14520	  device/non-free/lib/pic16/libdev/pic18f86k90.c,
14521	  device/non-free/include/pic16pic18f87j10.h,
14522	  device/non-free/lib/pic16/libdev/pic18f87j10.c,
14523	  device/non-free/include/pic16pic18f87j11.h,
14524	  device/non-free/lib/pic16/libdev/pic18f87j11.c,
14525	  device/non-free/include/pic16pic18f87j72.h,
14526	  device/non-free/lib/pic16/libdev/pic18f87j72.c,
14527	  device/non-free/include/pic16pic18f87j90.h,
14528	  device/non-free/lib/pic16/libdev/pic18f87j90.c,
14529	  device/non-free/include/pic16pic18f87j93.h,
14530	  device/non-free/lib/pic16/libdev/pic18f87j93.c,
14531	  device/non-free/include/pic16pic18f87k22.h,
14532	  device/non-free/lib/pic16/libdev/pic18f87k22.c,
14533	  device/non-free/include/pic16pic18f87k90.h,
14534	  device/non-free/lib/pic16/libdev/pic18f87k90.c,
14535	  device/non-free/include/pic16pic18f2439.h,
14536	  device/non-free/lib/pic16/libdev/pic18f2439.c,
14537	  device/non-free/include/pic16pic18f2458.h,
14538	  device/non-free/lib/pic16/libdev/pic18f2458.c,
14539	  device/non-free/include/pic16pic18f2539.h,
14540	  device/non-free/lib/pic16/libdev/pic18f2539.c,
14541	  device/non-free/include/pic16pic18f2553.h,
14542	  device/non-free/lib/pic16/libdev/pic18f2553.c,
14543	  device/non-free/include/pic16pic18f4439.h,
14544	  device/non-free/lib/pic16/libdev/pic18f4439.c,
14545	  device/non-free/include/pic16pic18f4458.h,
14546	  device/non-free/lib/pic16/libdev/pic18f4458.c,
14547	  device/non-free/include/pic16pic18f4539.h,
14548	  device/non-free/lib/pic16/libdev/pic18f4539.c,
14549	  device/non-free/include/pic16pic18f4553.h,
14550	  device/non-free/lib/pic16/libdev/pic18f4553.c,
14551	  device/non-free/include/pic16pic18f6310.h,
14552	  device/non-free/lib/pic16/libdev/pic18f6310.c,
14553	  device/non-free/include/pic16pic18f6390.h,
14554	  device/non-free/lib/pic16/libdev/pic18f6390.c,
14555	  device/non-free/include/pic16pic18f6393.h,
14556	  device/non-free/lib/pic16/libdev/pic18f6393.c,
14557	  device/non-free/include/pic16pic18f6410.h,
14558	  device/non-free/lib/pic16/libdev/pic18f6410.c,
14559	  device/non-free/include/pic16pic18f6490.h,
14560	  device/non-free/lib/pic16/libdev/pic18f6490.c,
14561	  device/non-free/include/pic16pic18f6493.h,
14562	  device/non-free/lib/pic16/libdev/pic18f6493.c,
14563	  device/non-free/include/pic16pic18f6525.h,
14564	  device/non-free/lib/pic16/libdev/pic18f6525.c,
14565	  device/non-free/include/pic16pic18f6621.h,
14566	  device/non-free/lib/pic16/libdev/pic18f6621.c,
14567	  device/non-free/include/pic16pic18f6628.h,
14568	  device/non-free/lib/pic16/libdev/pic18f6628.c,
14569	  device/non-free/include/pic16pic18f6723.h,
14570	  device/non-free/lib/pic16/libdev/pic18f6723.c,
14571	  device/non-free/include/pic16pic18f8310.h,
14572	  device/non-free/lib/pic16/libdev/pic18f8310.c,
14573	  device/non-free/include/pic16pic18f8390.h,
14574	  device/non-free/lib/pic16/libdev/pic18f8390.c,
14575	  device/non-free/include/pic16pic18f8393.h,
14576	  device/non-free/lib/pic16/libdev/pic18f8393.c,
14577	  device/non-free/include/pic16pic18f8410.h,
14578	  device/non-free/lib/pic16/libdev/pic18f8410.c,
14579	  device/non-free/include/pic16pic18f8490.h,
14580	  device/non-free/lib/pic16/libdev/pic18f8490.c,
14581	  device/non-free/include/pic16pic18f8493.h,
14582	  device/non-free/lib/pic16/libdev/pic18f8493.c,
14583	  device/non-free/include/pic16pic18f8525.h,
14584	  device/non-free/lib/pic16/libdev/pic18f8525.c,
14585	  device/non-free/include/pic16pic18f8621.h,
14586	  device/non-free/lib/pic16/libdev/pic18f8621.c,
14587	  device/non-free/include/pic16pic18f8628.h,
14588	  device/non-free/lib/pic16/libdev/pic18f8628.c,
14589	  device/non-free/include/pic16pic18f8723.h,
14590	  device/non-free/lib/pic16/libdev/pic18f8723.c:
14591	  applied patch #3573506 - Support of new PIC18Fxxx devices
14592	  thanks to Molnar Karoly
14593	* device/include/pic16/pic18fregs.h:
14594	  applied patch #3573796 - Correction the bug of pic18fregs.h
14595	  thanks to Molnar Karoly
14596
145972012-09-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14598
14599	* src/hc08/main.c,
14600	  src/ds390/main.c,
14601	  src/z80/main.c,
14602	  src/mcs51/main.c,
14603	  src/pic14/main.c,
14604	  src/pic16/main.c:
14605	  A bit of consistency in port structure style.
14606
146072012-10-01 Borut Razem <borut.razem AT gmail.com>
14608
14609	* support/scripts/cinc2h.pl:
14610	  applied patch #3572693: Correction of cinc2h.pl
14611	  thanks to Molnar Karoly
14612	* device/non-free/include/pic14/*.h,
14613	  device/non-free/lib/pic14/libdev/*.c,
14614	  device/non-free/include/pic16/*.h,
14615	  device/non-free/lib/pic16/libdev/*.c,
14616	  device/lib/pic16/libio/usart/uopen.c: applied patch #3571327 -
14617	  Regenerate the DEVICE.[ch] files with the cinc2h.pl program.
14618	  thanks to Molnar Karoly
14619
146202012-09-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14621
14622	* device/lib/r2k/crt0.s,
14623	  device/lib/z180/crt0.s,
14624	  device/lib/r3ka/crt0.s,
14625	  device/lib/z80/crt0.s,
14626	  device/lib/z80/crtcall.s,
14627	  src/SDCCglue.c,
14628	  src/port.h,
14629	  src/SDCCmem.c,
14630	  src/SDCCmem.h,
14631	  src/hc08/main.c,
14632	  src/ds390/main.c,
14633	  src/z80/main.c,
14634	  src/mcs51/main.c,
14635	  src/pic14/main.c,
14636	  src/pic16/main.c:
14637	  Most of RFE #3565759.
14638	* device/lib/r2k/Makefile.in,
14639	  device/lib/z180/Makefile.in,
14640	  device/lib/r3ka/Makefile.in,
14641	  device/lib/z80/Makefile.in:
14642	  Removed obsolete RLE initialization support.
14643
146442012-09-25 Maarten Brock <sourceforge.brock AT dse.nl>
14645
14646	* sdas/as6808/m08pst.c,
14647	* sdas/as8051/i51pst.c,
14648	* sdas/asgb/gbpst.c,
14649	* sdas/asrab/rabpst.c,
14650	* sdas/asz80/z80pst.c,
14651	* sdas/asxxsrc/asdata.c,
14652	* sdas/asxxsrc/asmain.c,
14653	* sdas/asxxsrc/asxxxx.h: next step to ASxxxx v5
14654
146552012-09-27 Borut Razem <borut.razem AT gmail.com>
14656
14657	* support/scripts/inc2h.pl, support/scripts/cinc2h.pl,
14658	  support/scripts/inc2h-pic16.pl: fixed typo tbut
14659
146602012-09-27 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14661
14662	* support/regression/tests/bug3467508.c:
14663	  Regression test for bug #3467508.
14664
146652012-09-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14666
14667	* src/SDCCast.c (decorateType): fixed bug #3467508
14668
146692012-09-26 Borut Razem <borut.razem AT gmail.com>
14670
14671	* support/scripts/cinc2h.pl: added,
14672	  thanks to Molnar Karoly
14673
146742012-09-25 Maarten Brock <sourceforge.brock AT dse.nl>
14675
14676	* sdas/asrab/rabbitext.c: removed
14677	* sdas/asrab/rabbit.h,    sdas/asrab/rab.h,
14678	* sdas/asrab/rabbitadr.c, sdas/asrab/rabadr.c,
14679	* sdas/asrab/rabbitmch.c, sdas/asrab/rabmch.c,
14680	* sdas/asrab/rabbitpst.c, sdas/asrab/rabpst.c: renamed
14681	* sdas/asrab/asrab.vcxproj,
14682	* sdas/asrab/asrab.vcxproj.filters,
14683	* sdas/asrab/Makefile.in: updated
14684	* sdas/as6808/m08pst.c,
14685	* sdas/as8051/i51pst.c,
14686	* sdas/asgb/gbpst.c,
14687	* sdas/asrab/rabpst.c,
14688	* sdas/asz80/z80pst.c,
14689	* sdas/asxxsrc/asmain.c,
14690	* sdas/asxxsrc/asxxxx.h: next small steps towards ASxxxx v5
14691
146922012-09-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14693
14694	* src/SDCCicode.c (geniCodePostInc/Dec, geniCodePreInc/Dec):
14695	fixed bug #3511511
14696	* support/regression/tests/gcc-tortute-execute-950426-1.c:
14697	re-enabled
14698
146992012-09-23 Maarten Brock <sourceforge.brock AT dse.nl>
14700
14701	* sdas/asxxsrc/asdata.c,
14702	* sdas/asxxsrc/asdbg.c,
14703	* sdas/asxxsrc/aslist.c,
14704	* sdas/asxxsrc/asmain.c,
14705	* sdas/asxxsrc/assym.c,
14706	* sdas/asxxsrc/aslex.c,
14707	* sdas/asxxsrc/assubr.c,
14708	* sdas/asxxsrc/asxxxx.h: next small steps towards ASxxxx v5
14709
147102012-09-19 Maarten Brock <sourceforge.brock AT dse.nl>
14711
14712	* sdas/asz80/Makefile.in,
14713	* sdas/asz80/as_z80.vcxproj,
14714	* sdas/asz80/as_z80.vcxproj.filters,
14715	* sdas/asz80/z80ext.c: removed z80ext.c
14716	* sdas/as8051/i51mch.c,
14717	* sdas/asxxsrc/asmain.c,
14718	* sdas/asz80/z80.h,
14719	* sdas/asz80/z80mch.c: small step towards ASxxxx v5
14720
147212012-09-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14722
14723	* src/pic16/glue.c (pic16_initPointer): fixed pointer initialization
14724	from address of struct/union
14725
147262012-09-17 Maarten Brock <sourceforge.brock AT dse.nl>
14727
14728	* sdas/asxxsrc/asdata.c,
14729	* sdas/asxxsrc/asexpr.c,
14730	* sdas/asxxsrc/aslist.c,
14731	* sdas/asxxsrc/asmain.c,
14732	* sdas/asxxsrc/asxxxx.h,
14733	* sdas/linksrc/aslink.h,
14734	* sdas/linksrc/lklist.c,
14735	* src/hc08/main.c,
14736	* src/mcs51/main.c,
14737	* src/z80/main.c: again a small step towards ASxxxx v5
14738
147392012-09-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14740
14741	* src/z80/ralloc2.cc (inst_sane): fixed bug #3558402
14742
147432012-09-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14744
14745	* support/regression/tests/bug3564649.c:
14746	  Disable test for host, since we cannot assume C11 support yet.
14747
147482012-09-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14749
14750	* support/regression/tests/gcc-torture-execute-20030209-1.c:
14751	  Reduced array size, reenabled test.
14752	* support/regression/tests/gcc-torture-execute-991016-1.c:
14753	  Enabled test for targets that support long long, since returning long long was implemented some time ago.
14754
147552012-09-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14756
14757	* src/SDCCglue.c (emitRegularMap, printIvalType, printIvalBitFields),
14758	* src/SDCCast.c (constExprValue): fixed bug #3560781 and related
14759	* support/regression/tests/bug3564649.c: ensure noreturn function
14760	  does not return
14761
147622012-09-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14763
14764	* src/z80/gen.c:
14765	  More efficient stack pointer restoration.
14766	* support/regression/tests/bug3564649.c:
14767	  Regression test for bug #3564649.
14768
147692012-09-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14770
14771	* support/valdiag/tests/tentdecl.c,
14772	* support/valdiag/tests/primtypes.c,
14773	* support/valdiag/tests/constantRange.c,
14774	* support/valdiag/tests/funcdec.c,
14775	* support/valdiag/tests/overflow.c,
14776	* support/valdiag/Makefile.in,
14777	* support/valdiag/valdiag.py: update to work with current SDCC version
14778
147792012-09-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14780
14781	* src/SDCCBBlock.c (iCode2eBBlock),
14782	* src/SDCCcflow.c (eBBSuccessors): fixed bug #3564649
14783
147842012-09-14 Maarten Brock <sourceforge.brock AT dse.nl>
14785
14786	* sdas/as8051/i51mch.c,
14787	* sdas/as8051/i8051.h,
14788	* sdas/asxxsrc/asdata.c,
14789	* sdas/asxxsrc/asxxxx.h: another small step towards ASxxxx v5
14790
147912012-09-12 Leland Morrison <enigmalee AT sourceforge.net>
14792
14793	* sdas/asz80/z80.h, sdas/asz80/z80pst.c, sdas/asz80/z80mch.c,
14794	* sdas/asz80/z80adr.c: added support for undocument z80 instructions
14795
147962012-09-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14797
14798	* src/SDCCicode.h,
14799	* src/SDCCicode.c (isOperandInBitSpace): new function
14800	* src/mcs51/ralloc.c (packRegsForOneuse): fixed bug #3564969
14801
148022012-09-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14803
14804	* src/SDCCsymt.c (computeType): fixed bug #3564104
14805	* support/regression/tests/bug3564104.c: reenabled test
14806
148072012-09-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14808
14809	* src/z80/gen.c:
14810	  Fixed bug #3566191 by disabling register tracking for iy.
14811	* src/z80/z80.h,
14812	  src/z80/ralloc.c:
14813	  Enabled rematerialization by register allocation for gbz80.
14814
148152012-09-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14816
14817	* support/regression/tests/inline.c: added test for bug #3564755
14818	* support/regression/tests/bug3565757.c: temporarily disabled bool
14819	  in struct
14820	* src/SDCCast.c: fixed bugs #3566114 and #3539508
14821
148222012-09-09 Borut Razem <borut.razem AT gmail.com>
14823
14824	* configure.in, configure, sdccconf_in.h:
14825	  removed (commented out) avr and xa51 configuration options
14826
148272012-09-09 Maarten Brock <sourceforge.brock AT dse.nl>
14828
14829	* sdas/as8051/Makefile.in,
14830	* sdas/as8051/asx8051.vcxproj,
14831	* sdas/as8051/asx8051.vcxproj.filters,
14832	* sdas/as8051/i51ext.c: removed i51ext.c
14833	* sdas/as6808/m08mch.c,   sdas/as6808/m08pst.c,
14834	* sdas/as8051/i51mch.c,   sdas/as8051/i51pst.c,
14835	* sdas/asgb/gbmch.c,      sdas/asgb/gbpst.c,
14836	* sdas/asrab/rabbitmch.c, sdas/asrab/rabbitpst.c,
14837	* sdas/asz80/z80mch.c,    sdas/asz80/z80pst.c,
14838	* sdas/asxxsrc/asdata.c,  sdas/asxxsrc/asexpr.c,
14839	* sdas/asxxsrc/aslist.c,  sdas/asxxsrc/asmain.c,
14840	* sdas/asxxsrc/asout.c,   sdas/asxxsrc/asxxxx.h: small step towards ASxxxx v5
14841	* src/mcs51/gen.c(freeAsmop): fix for MSVC
14842	* src/SDCCsymt.c(typeFromStr): added 'C' for const
14843	* src/z80/main.c(_z80_builtins): use 'C' to fix warnings
14844
148452012-09-09 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14846
14847	* src/z80/gen.c,
14848	  support/regression/tests/bug3565757.c:
14849	  Fixed bug #3565757.
14850
148512012-09-09 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14852
14853	* src/z80/gen.c,
14854	  support/regression/tests/bug3559997.c:
14855	  Fixed bug #3559997.
14856
148572012-09-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14858
14859	* src/SDCCsymt.c (checkSClass),
14860	* src/SDCCast.c (expandInlineFuncs): fixed bug #3564755
14861
148622012-09-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14863
14864	* src/SDCCval.c (cheapestVal): fixed bug #3563977
14865	* support/regression/tests/enum.c: tests added for bug #3563977
14866
148672012-09-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14868
14869	* src/SDCCicode.c (operandOperation): fixed bug #3537139
14870
148712012-09-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
14872
14873	* sdas/linksrc/aslink.h,
14874	* sdas/linksrc/lkarea.c,
14875	* sdas/linksrc/lkelf.c,
14876	* src/hc08/gen.c: Fixed bug #3536431
14877
148782012-09-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14879
14880	* src/SDCClospre.hpp:
14881	  More verbose lospre debug output.
14882	* support/regression/tests/bug3564104.c:
14883	  Regression test for #3564104.
14884
148852012-08-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14886
14887	* src/z80/ralloc2.cc,
14888	  src/z80/gen.c:
14889	  Fix for handling of parameters in the z80-related ports.
14890
148912012-08-27 Borut Razem <borut.razem AT gmail.com>
14892
14893	* src/ds390/gen.c:
14894	  fixed muldiv regression test failures on ARM architecture
14895
148962012-08-25 Borut Razem <borut.razem AT gmail.com>
14897
14898	* src/mcs51/gen.c:
14899	  fixed muldiv regression test failures on ARM architecture
14900
149012012-08-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14902
14903	* src/z80/gen.c,
14904	  support/regression/tests/bug3561215.c:
14905	  Fixed bug #3561215.
14906
149072012-08-22 Maarten Brock <sourceforge.brock AT dse.nl>
14908
14909	* src/mcs51/gen.c: Reinserted break in proper context
14910
149112012-08-21 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14912
14913	* src/mcs51/gen.c:
14914	  Remove out-of-context break.
14915
149162012-08-20 Maarten Brock <sourceforge.brock AT dse.nl>
14917
14918	* src/mcs51/gen.c (aopPtrForSym): added warning for memory space overflow,
14919	  see bug 3509704
14920	  (freeForBranchAsmop, freeForBranchAsmops): need extra ic parameter
14921	  (aopPut, genFarPointerSet): partial fix for bug 3534523
14922
149232012-08-17 Borut Razem <borut.razem AT gmail.com>
14924
14925	* src/SDCCasm.c, SDCCsymt.h: fixed failing regression tests if
14926	  sdcc compiled on ARM architecture where default "char" is "unsigned char"
14927
149282012-08-13 Borut Razem <borut.razem AT gmail.com>
14929
14930	* support/regression/tests/bitvars.c,
14931	  support/regression/tests/funsigned-char.c:
14932	  fixed for gcc hosts with unsigned char (ARM architecture)
14933
149342012-08-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
14935
14936	* src/z80/gen.c:
14937	  Improve code generation for and with result in register and bit complement operand.
14938
149392012-08-04 Borut Razem <borut.razem AT gmail.com>
14940
14941	* device/include/pic14/pic14devices.txt:
14942	  applied patch minor-pic12lf1552-error.diff from
14943	  #3553952 - "New devices to pic14 series and pic16fam-h-gen.pl update II."
14944	  thanks to Molnar Karoly
14945
149462012-08-03 Borut Razem <borut.razem AT gmail.com>
14947
14948	* support/scripts/pic16fam-h-gen.pl,
14949	  device/include/pic14/pic14devices.txt,
14950	  device/non-free/lib/pic14/libdev/devices.txt,
14951	  device/non-free/lib/pic14/libdev/Makefile.in,
14952	  device/non-free/include/pic14/pic16fam.h,
14953	  doc/sdccman.lyx: updated,
14954	  device/non-free/include/pic14/pic16f723a.h,
14955	  device/non-free/include/pic14/pic16f1512.h,
14956	  device/non-free/include/pic14/pic16f723.h,
14957	  device/non-free/include/pic14/pic16f727.h,
14958	  device/non-free/include/pic14/pic12f617.h,
14959	  device/non-free/include/pic14/pic16f1513.h,
14960	  device/non-free/include/pic14/pic12f609.h,
14961	  device/non-free/include/pic14/pic16f724.h,
14962	  device/non-free/include/pic14/pic16f707.h,
14963	  device/non-free/include/pic14/pic12lf1552.h,
14964	  device/non-free/include/pic14/pic16f610.h,
14965	  device/non-free/include/pic14/pic16f631.h,
14966	  device/non-free/include/pic14/pic16f677.h,
14967	  device/non-free/include/pic14/pic16f722a.h,
14968	  device/non-free/include/pic14/pic12f615.h,
14969	  device/non-free/include/pic14/pic16f722.h,
14970	  device/non-free/include/pic14/pic16f726.h,
14971	  device/non-free/lib/pic14/libdev/pic16f723.c,
14972	  device/non-free/lib/pic14/libdev/pic16f727.c,
14973	  device/non-free/lib/pic14/libdev/pic12f617.c,
14974	  device/non-free/lib/pic14/libdev/pic16f1513.c,
14975	  device/non-free/lib/pic14/libdev/pic12f609.c,
14976	  device/non-free/lib/pic14/libdev/pic16f724.c,
14977	  device/non-free/lib/pic14/libdev/pic16f707.c,
14978	  device/non-free/lib/pic14/libdev/pic12lf1552.c,
14979	  device/non-free/lib/pic14/libdev/pic16f610.c,
14980	  device/non-free/lib/pic14/libdev/pic16f631.c,
14981	  device/non-free/lib/pic14/libdev/pic16f677.c,
14982	  device/non-free/lib/pic14/libdev/pic16f722a.c,
14983	  device/non-free/lib/pic14/libdev/pic12f615.c,
14984	  device/non-free/lib/pic14/libdev/pic16f722.c,
14985	  device/non-free/lib/pic14/libdev/pic16f726.c,
14986	  device/non-free/lib/pic14/libdev/pic16f723a.c,
14987	  device/non-free/lib/pic14/libdev/pic16f1512.c: added,
14988	  applied patch #3553952 - "New devices to pic14 series and pic16fam-h-gen.pl update II."
14989	  thanks to Molnar Karoly
14990	* device/non-free/include/pic14/pic16f1516.h,
14991	  device/non-free/include/pic14/pic16f1517.h,
14992	  device/non-free/include/pic14/pic16f1518.h,
14993	  device/non-free/include/pic14/pic16f1519.h:
14994	  applied patch #3553938 - "pic16f151[6-9].h unnecessary ANSC[01] bits"
14995	  thanks to Molnar Karoly
14996
149972012-08-01 Borut Razem <borut.razem AT gmail.com>
14998
14999	* device/non-free/include/pic14/pic12f752.h,
15000	  device/non-free/include/pic14/pic16f1784.h,
15001	  device/non-free/include/pic14/pic10f322.h,
15002	  device/non-free/include/pic14/pic16f1454.h,
15003	  device/non-free/include/pic14/pic16f1786.h,
15004	  device/non-free/include/pic14/pic12f1501.h,
15005	  device/non-free/include/pic14/pic10f320.h,
15006	  device/non-free/include/pic14/pic16f1787.h,
15007	  device/non-free/lib/pic14/libdev/pic16f1787.c,
15008	  device/non-free/lib/pic14/libdev/pic10f320.c,
15009	  device/non-free/lib/pic14/libdev/pic16f1784.c,
15010	  device/non-free/lib/pic14/libdev/pic12f752.c,
15011	  device/non-free/lib/pic14/libdev/pic16f1454.c,
15012	  device/non-free/lib/pic14/libdev/pic10f322.c,
15013	  device/non-free/lib/pic14/libdev/pic16f1786.c,
15014	  device/non-free/lib/pic14/libdev/pic12f1501.c,
15015	  support/scripts/pic16fam-h-gen.pl,
15016	  device/include/pic14/pic14devices.txt,
15017	  device/non-free/include/pic14/pic16fam.h,
15018	  device/non-free/lib/pic14/libdev/devices.txt,
15019	  device/non-free/lib/pic14/libdev/Makefile.in,
15020	  doc/sdccman.lyx:
15021	  applied patch #3553108 - "New devices to pic14 series and pic16fam-h-gen.pl update",
15022	  thanks to Molnar Karoly
15023
150242012-08-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15025
15026	* src/z80/z80.h,
15027	  src/z80/ralloc2.cc,
15028	  src/z80/main.c:
15029	  Provide --fno-omit-frame-pointer option for not omitting frame pointer.
15030
150312012-07-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15032
15033	* src/SDCCicode.c (geniCodeAdd): made fix for bug 3537338 endian
15034	  agnostic
15035
150362012-07-21 Borut Razem <borut.razem AT gmail.com>
15037
15038	* src/pic14/main.c: fixed bug
15039	  #3546732 - "pic16f1507lib: No such file or directory"
15040
150412012-07-21 Maarten Brock <sourceforge.brock AT dse.nl>
15042
15043	* src/SDCCmem.c (allocGlobal, allocLocal): added check if bit space exists
15044	* src/SDCCsymt.c (computeType): fixed bug 3531687
15045	* src/SDCCast.c,
15046	* src/SDCCicode.c,
15047	* src/SDCCsymt.h: renamed RESULT_TYPE_BIT to RESULT_TYPE_BOOL
15048	* support/regression/tests/bug3531687.c: reinserted char > bool test
15049	* support/regression/tests/bug3537338.c: use _STATMEM for more coverage
15050	* support/regression/tests/gcc-torture-execute-930513-1.c: modified to
15051	  accept "<NO FLOAT>" and prevent buffer overrun
15052
150532012-07-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15054
15055	* src/SDCClospre.hpp (implement_lospre_assignment): explicitly ignore
15056	  vertices created from newly split edges
15057	* src/SDCCopt.c (eBBlockFromiCode): reenable lospre
15058
150592012-07-19 Maarten Brock <sourceforge.brock AT dse.nl>
15060
15061	* src/SDCCicode.c (geniCodeAdd): fixed bug 3537338
15062	* src/ds390/gen.c (genMultOneByte): handle long result for pointer offsets
15063	* src/mcs51/gen.c (genLeftShiftLiteral, genRightShiftLiteral),
15064	* src/z80/gen.c (genLeftShiftLiteral): added wassert
15065	* support/regression/tests/bug3537338.c: new, added
15066
150672012-07-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15068
15069	* src/SDCCopt.c: temporarily disable lospre until I can figure out
15070	  why it's failing on some hosts.
15071
150722012-07-15 Maarten Brock <sourceforge.brock AT dse.nl>
15073
15074	* sdcc.sln: sdcdb depends on config
15075	* all.vcxproj: excluded copy to bin\ from debug build as it seems to mess up
15076	  the dependencies
15077	* all.vcxproj.filters: added sdasrab.exe
15078	* src/sdcc.vcxproj.filters,
15079	* src/sdcc.vcxproj: removed SDCC.y dependency from lexing
15080	  added version.h to Header Files
15081	  added SDCClospre.cc and SDCClospre.hpp
15082	* config.vcxproj,
15083	* src/yacc.vcxproj: updated all custom build commands and dependencies
15084	* src/SDCCast.c (decorateType, '='): fixed lost linenumber in bug 3540054
15085	* src/SDCCsymt.c (dbuf_printTypeChain): removed 'd'
15086	* sdas/asrab/rabbitmch.c (machine): removed const to fix prototype conflict
15087	* src/SDCClospre.cc (lospre): fixed warning
15088	* src/SDCCutil.h,
15089	* src/SDCCutil.c (processStrSet): fix warning by using explicit function ptr
15090
150912012-07-15 Borut Razem <borut.razem AT gmail.com>
15092
15093	* src/SDCCmain.c, src/SDCCutil.c, src/SDCCutil.h, src/SDCCsystem.c,
15094	  src/mcs51/main.c, src/ds390/main.c, src/z80/main.c, src/hc08/main.c,
15095	  src/pic14/main.c, src/pic16/main.c, src/avr/main.c, src/xa51/main.c:
15096	  properly quoted file names when transferred to preprocessor,
15097	  assembler and linker
15098	* support/scripts/repack_release.sh: added -pr to usage
15099
151002012-07-12 Borut Razem <borut.razem AT gmail.com>
15101
15102	* src/SDCCerr.c, src/SDCCerr.h, src/pic16/main.c, src/pic16/main.h,
15103	  src/pic16/glue.c, src/pic16/device.h, src/SDCCast.c, src/SDCCast.h,
15104	  doc/sdccman.lyx: properly fixed bug
15105	  #3539804 - pragma config and certain string constants
15106
151072012-07-11 Borut Razem <borut.razem AT gmail.com>
15108
15109	* support/scripts/repack_release.sh: implemented feature request
15110	  #3472159 - sdcc-3.1.0.tar.bz2 will untar with name sdcc;
15111	  the result will be seen at the next sdcc release 3.3.0
15112
151132012-07-11 Philipp Klaus Krause <pkk AT spth.de>
15114
15115	* src/z80/peeph-z80.def:
15116	  Fixed comment.
15117
151182012-07-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15119
15120	* Merged the lospre branch.
15121
151222012-07-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15123
15124	* src/z80/gen.c,
15125	  src/hc08/gen.c:
15126	  Disable cost function debugging output.
15127
151282012-07-09 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15129
15130	* Merged the smallopts branch.
15131
151322012-07-09 Borut Razem <borut.razem AT gmail.com>
15133
15134	* Small Device C Compiler 3.2.0 released
15135	* .version, doc/sdccman.lyx: changed sdcc version to 3.2.1
15136
151372012-07-09 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15138
15139	* src/SDCCopt.c:
15140	  Disable lospre for ports unrelated to z80 or hc08.
15141
151422012-07-07 Philipp Klaus Krause <pkk AT spth.de>
15143
15144	* src/z80/gen.c:
15145	  Improve code generation for multiplication by literal.
15146
151472012-07-07 Philipp Klaus Krause <pkk AT spth.de>
15148
15149	* src/z80/gen.c:
15150	  Fix bug in built-in strchr().
15151	* device/lib/Makefile.in:
15152	  Fix building of strcpy() for mcs51.
15153
151542012-07-07 Philipp Klaus Krause <pkk AT spth.de>
15155
15156	* src/z80/gen.c:
15157	  Fix bug in stack restoration for built-in functions.
15158	* device/lib/_strchr.c,
15159	  device/lib/_strncpy.c:
15160	  Fix conflict between built-in and non built-in functions.
15161
151622012-07-07 Borut Razem <borut.razem AT gmail.com>
15163
15164	* support/scripts/repack_release.sh:
15165	  updated, added -dl, -r and -ul command line options
15166
151672012-07-07 Philipp Klaus Krause <pkk AT spth.de>
15168
15169	* src/SDCCmain.c,
15170	  src/SDCClospre.cc,
15171	  src/SDCCglobl.h:
15172	  Provide option to allow unsafe reads in lospre.
15173
151742012-07-07 Philipp Klaus Krause <pkk AT spth.de>
15175
15176	* src/SDCClospre.hpp,
15177	  src/SDCClospre.cc:
15178	  Safety in lospre.
15179
151802012-07-06 Philipp Klaus Krause <pkk AT spth.de>
15181
15182	* src/SDCClospre.hpp,
15183	  src/SDCClospre.cc:
15184	  Preparations for safety in lospre.
15185
151862012-07-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15187
15188	* src/SDCClospre.hpp,
15189	  src/SDCClospre.cc:
15190	  Preparations for safety.
15191
151922012-07-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15193
15194	* src/SDCClospre.hpp:
15195	  Fix for out-of-memory handling in lospre.
15196
151972012-07-06 Borut Razem <borut.razem AT gmail.com>
15198
15199	* src/pic16/main.c: bug patched with sdcc-3.2.0-config_fix.diff
15200	  #3539804 - #pragma config and certain string constants,
15201	  thanks to Herbert Potzl
15202
152032012-07-05 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15204
15205	* src/SDCClospre.cc:
15206	  Preparations for safety in lospre.
15207
152082012-06-30 Borut Razem <borut.razem AT gmail.com>
15209
15210	* support/scripts/sdcc.nsi:
15211	  fixed 'Installer suggest "C:\Program Files\SDCC" instead of
15212	  "C:\Program Files (x86)\SDCC"' problem
15213
152142012-07-04 Philipp Klaus Krause <pkk AT spth.de>
15215
15216	* src/z80/gen.c:
15217	  Fix for operand handling in built-in memset().
15218	* src/SDCCopt.c:
15219	  Convert zero-length built-in memcpy(), strncpy(), memset()
15220	  back to ensure any volatiles are read. Fixes #3538725.
15221
152222012-06-30 Philipp Klaus Krause <pkk AT spth.de>
15223
15224	* src/z80/ralloc2.cc,
15225	  src/z80/gen.c:
15226	  Fix stack adjustment after call and omission of frame pointer for --reserve-regs-iy.
15227
152282012-06-28 Maarten Brock <sourceforge.brock AT dse.nl>
15229
15230	* sdcc.sln,
15231	* sdas/asrab/asrab.vcxproj: renamed output to sdasrab
15232	* all.vcxproj: added sdasrab.exe and sdldrab.exe
15233	* src/sdcc.vcxproj: removed parsing SDCC.y
15234	* src/yacc.vcxproj: cosmetics
15235	* sdas/as6808/m6808.h,
15236	* sdas/as8051/i8051.h,
15237	* sdas/asgb/gb.h,
15238	* sdas/asrab/rabbit.h,
15239	* sdas/asz80/z80.h: removed (conflicting) prototypes for machine and minit
15240	* src/hc08/ralloc.c (packRegisters): fixed bug indicated by a warning
15241	* src/pic14/gen.c (genDataPointerGet, genConstPointerGet),
15242	* src/pic14/genarith.c (genAddLit),
15243	* src/pic14/glue.c (pic14_constructAbsMap, emitInitVal)
15244	* src/pic16/device.h (PIC16_device),
15245	* src/pic16/gen.c (pic16_storeForReturn, genAnd, genXor, genAssign),
15246	* src/pic16/glue.c (pic16_printIvalType, pic16_printIvalChar,
15247	  pic16_printIvalBitFields, pic16_printIvalUnion),
15248	* src/z80/ralloc2.cc (iy_reserved, Ainst_ok, omit_frame_ptr): fixed warnings
15249
152502012-06-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15251
15252	* src/SDCCopt.c,
15253	  src/z80/gen.c,
15254	  src/z80/main.c,
15255	  device/include/string.h:
15256	  Built-in strncpy().
15257
152582012-06-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15259
15260	* src/SDCCralloc.hpp,
15261	  src/z80/ralloc2.cc,
15262	  src/z80/gen.c,
15263	  src/hc08/ralloc2.cc,
15264	  device/include/string.h:
15265	  Built-in strchr().
15266	* src/z80/peep.c:
15267	  Fix out-of-array read.
15268
152692012-06-27 Borut Razem <borut.razem AT gmail.com>
15270
15271	* src/SDCC.lex:
15272	  unescape file names from preprocessor, 3rd try
15273	* device/non-free/lib/pic16/libdev/Makefile.am,
15274	  device/non-free/lib/pic16/libdev/Makefile.in,
15275	  device/non-free/lib/pic14/libdev/Makefile.in:
15276	  gputils supports all devices supported by SDCC
15277
152782012-06-27 Philipp Klaus Krause <pkk AT spth.de>
15279
15280	* src/z80/main.c,
15281	  src/z80/gen.c:
15282	  Built-in strcpy().
15283
152842012-06-27 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15285
15286	* device/lib/z180/Makefile.in,
15287	  device/lib/incl.mk,
15288	  device/lib/r3ka/Makefile.in,
15289	  device/lib/gbz80/Makefile.in,
15290	  device/lib/s08/Makefile.in,
15291	  device/lib/r2k/Makefile.in,
15292	  device/lib/hc08/Makefile.in,
15293	  device/lib/z180/strcpy.s
15294	  device/lib/r3ka/strcpy.s
15295	  device/lib/z80/strcpy.s
15296	  device/lib/r2k/strcpy.s:
15297	  Use ldi for strcpy().
15298
152992012-06-27 Borut Razem <borut.razem AT gmail.com>
15300
15301	* src/SDCC.lex:
15302	  unescape file names from preprocessor, 2nd try
15303
153042012-06-26 Borut Razem <borut.razem AT gmail.com>
15305
15306	* src/SDCC.lex, src/SDCCerr.c, src/SDCCerr.h:
15307	  unescape file names from preprocessor
15308
153092012-06-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15310
15311	* src/z80/gen.c:
15312	  Use xor to zero the accumulator in a few more places.
15313
153142012-06-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15315
15316	* src/z80/gen.c:
15317	  Improve memset() for small sizes, RFE #3537534.
15318
153192012-06-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15320
15321	* src/z80/ralloc2.cc:
15322	  Improve handling of hl in additions with on-stack param operands.
15323
153242012-06-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15325
15326	* device/lib/z180/shift.s,
15327	  device/lib/r3ka/shift.s,
15328	  device/lib/z80/shift.s,
15329	  device/lib/gbz80/shift.s,
15330	  device/lib/r2k/shift.s,
15331	  src/port.h,
15332	  src/z80/gen.c,
15333	  src/z80/main.c,
15334	  device/lib/z180/Makefile.in,
15335	  device/lib/z180/stubs.s,
15336	  device/lib/r3ka/Makefile.in,
15337	  device/lib/r3ka/stubs.s,
15338	  device/lib/z80/Makefile.in,
15339	  device/lib/z80/stubs.s,
15340	  device/lib/gbz80/stubs.s,
15341	  device/lib/gbz80/Makefile.in,
15342	  device/lib/r2k/Makefile.in,
15343	  device/lib/r2k/stubs.s:
15344	  Code generation instead of support calls for all shifts.
15345
153462012-06-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15347
15348	* src/z80/gen.c:
15349	  Better cost estimation for loading parameters into pairs,
15350	  more efficient loading from stack into iy for Rabbits.
15351
153522012-06-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15353
15354	* src/z80/gen.c:
15355	  Use dec r and inc a in comparison for equality.
15356
153572012-06-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15358
15359	* src/z80/gen.c,
15360	  src/z80/ralloc2.cc:
15361	  Use 16-bit sbc in subtraction and comparison.
15362
153632012-06-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15364
15365	* src/z80/gen.c:
15366	  Improve handling of pointers to long and long long.
15367
153682012-06-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15369
15370	* src/z80/gen.c:
15371	  Minor addition improvement,
15372	  refactoring of pair test code.
15373
153742012-06-25 Borut Razem <borut.razem AT gmail.com>
15375
15376	* src/regression/Makefile:
15377	  applied patch #3537593 - pic16 regression patch,
15378	  thanks to Don Wooton
15379
153802012-06-24 Borut Razem <borut.razem AT gmail.com>
15381
15382	* support/scripts/repack_release.sh: updated
15383
153842012-06-24 Maarten Brock <sourceforge.brock AT dse.nl>
15385
15386	* src/mcs51/gen.c (genLeftShiftLiteral): commented out wassert to work
15387	  around bug 3537338
15388
153892012-06-21 Borut Razem <borut.razem AT gmail.com>
15390
15391	* device/non-free/lib/pic14/libdev/devices.txt,
15392	  device/non-free/lib/pic14/libdev/Makefile.in,
15393	  device/non-free/lib/pic14/libdev/pic16c782.c,
15394	  device/non-free/lib/pic14/libdev/pic16f676.c,
15395	  device/non-free/lib/pic14/libdev/pic16f1782.c,
15396	  device/non-free/lib/pic14/libdev/pic16c770.c,
15397	  device/non-free/lib/pic14/libdev/pic16f716.c,
15398	  device/non-free/lib/pic14/libdev/pic16f1503.c,
15399	  device/non-free/lib/pic14/libdev/pic16f1507.c,
15400	  device/non-free/lib/pic14/libdev/pic16f1783.c,
15401	  device/non-free/lib/pic14/libdev/pic16c771.c,
15402	  device/non-free/lib/pic14/libdev/pic16c925.c,
15403	  device/non-free/lib/pic14/libdev/pic16f1508.c,
15404	  device/non-free/lib/pic14/libdev/pic16f1823.c,
15405	  device/non-free/lib/pic14/libdev/pic16c432.c,
15406	  device/non-free/lib/pic14/libdev/pic16c717.c,
15407	  device/non-free/lib/pic14/libdev/pic16c781.c,
15408	  device/non-free/lib/pic14/libdev/pic12f675.c,
15409	  device/non-free/lib/pic14/libdev/pic16c926.c,
15410	  device/non-free/lib/pic14/libdev/pic16f1509.c,
15411	  device/non-free/lib/pic14/libdev/pic12f629.c,
15412	  device/non-free/lib/pic14/libdev/pic16f684.c,
15413	  device/non-free/lib/pic14/libdev/pic16f688.c,
15414	  device/non-free/lib/pic14/libdev/pic16f630.c,
15415	  device/non-free/lib/pic14/libdev/pic16f747.c,
15416	  device/non-free/lib/pic14/libdev/pic16c946.c,
15417	  device/non-free/include/pic14/pic16c782.h,
15418	  device/non-free/include/pic14/pic16f676.h,
15419	  device/non-free/include/pic14/pic16f1509.h,
15420	  device/non-free/include/pic14/pic16c770.h,
15421	  device/non-free/include/pic14/pic16f716.h,
15422	  device/non-free/include/pic14/pic16f1782.h,
15423	  device/non-free/include/pic14/pic16c771.h,
15424	  device/non-free/include/pic14/pic16c925.h,
15425	  device/non-free/include/pic14/pic16f1503.h,
15426	  device/non-free/include/pic14/pic16f1507.h,
15427	  device/non-free/include/pic14/pic16f1783.h,
15428	  device/non-free/include/pic14/pic16c432.h,
15429	  device/non-free/include/pic14/pic16c717.h,
15430	  device/non-free/include/pic14/pic16c781.h,
15431	  device/non-free/include/pic14/pic12f675.h,
15432	  device/non-free/include/pic14/pic16c926.h,
15433	  device/non-free/include/pic14/pic16f1508.h,
15434	  device/non-free/include/pic14/pic16f1823.h,
15435	  device/non-free/include/pic14/pic12f629.h,
15436	  device/non-free/include/pic14/pic16f684.h,
15437	  device/non-free/include/pic14/pic16f688.h,
15438	  device/non-free/include/pic14/pic16f630.h:
15439	  device/non-free/include/pic14/pic16f747.h:
15440	  device/non-free/include/pic14/pic16c946.h:
15441	  applied modified patch
15442	  #3536909 - "Pic14 device and header upgrade.",
15443	  thanks to Molnar Karoly
15444	* support/scripts/inc2h.pl: applied modified patch
15445	  #3536022 - "Error in the inc2h.pl program.",
15446	  thanks to Molnar Karoly
15447	* device/non-free/include/pic14/recreate.sh:
15448	  generate NO_LEGACY_NAMES block if exists in the old version
15449	* src/pic14/genarith.c: applied patch
15450	  #3521376 - "pic14 incorrect asm op code",
15451	  thanks to Raphael Neider
15452
154532012-06-21 Philipp Klaus Krause <pkk AT spth.de>
15454
15455	* src/SDCCralloc.hpp,
15456	  src/port.h,
15457	  src/xa51/main.c,
15458	  src/mcs51/main.c,
15459	  src/ds390/main.c,
15460	  src/pic14/main.c,
15461	  src/pic16/main.c,
15462	  src/z80/main.c,
15463	  src/z80/ralloc2.cc,
15464	  src/hc08/main.c,
15465	  src/hc08/ralloc2.cc:
15466	  Nice fix for bug #3536902.
15467	* src/z80/gen.c:
15468	  More efficient built-in memcpy() for small copies.
15469
154702012-06-21 Philipp Klaus Krause <pkk AT spth.de>
15471
15472	* src/SDCCralloc.hpp,
15473	  src/z80/ralloc2.c,
15474	  src/z80/ralloc.h:
15475	  Ugly hack to fix bug #3536902.
15476
154772012-06-21 Leland Morrison <enigmalee AT sourceforge.net>
15478
15479	* sim/ucsim/z80.src/inst_r2k.cc:
15480	  Fix flags for rl de, rr d, rr hl (merged by Philipp Klaus Krause from smallopts branch).
15481
154822012-06-21 Philipp Klaus Krause <pkk AT spth.de>
15483
15484	* src/z80/gen.c:
15485	  Fix spilling of comitted pair after ex (sp), dd.
15486
154872012-06-21 Maarten Brock <sourceforge.brock AT dse.nl>
15488
15489	* device/include/mcs51/cc2530.h: renamed TR0 to TESTREG0
15490
154912012-06-21 Philipp Klaus Krause <pkk AT spth.de>
15492
15493	* src/z80/gen.c:
15494	  Use destructive increment in comparison for equality with #0xff,
15495	  more efficient assignment of 16-byte values,
15496	  fix spilling of comitted pair after ex (sp), dd.
15497
154982012-06-21 Philipp Klaus Krause <pkk AT spth.de>
15499
15500	* src/z80/gen.c:
15501	  Enable use of rl de in destructive and.
15502
155032012-06-20 Leland Morrison <enigmalee AT sourceforge.net>
15504
15505	* sim/ucsim/z80.src/inst_r2k.cc:
15506	  Fix flags for rl de, rr d, rr hl.
15507
155082012-06-20 Philipp Klaus Krause <pkk AT spth.de>
15509
15510	* src/z80/gen.c:
15511	  Improve destructive and.
15512
155132012-06-19 Philipp Klaus Krause <pkk AT spth.de>
15514
15515	* src/z80/peeph-z80.def,
15516	  src/z80/peeph-r2k.def:
15517	  Minor peephole fix.
15518
155192012-06-19 Philipp Klaus Krause <pkk AT spth.de>
15520
15521	* src/z80/gen.c:
15522	  More efficient assignment for global variables.
15523
155242012-06-19 Philipp Klaus Krause <pkk AT spth.de>
15525
15526	* src/z80/gen.c:
15527	  Fix bug in & 0x8000 with ifx for unsigned int.
15528
155292012-06-19 Philipp Klaus Krause <pkk AT spth.de>
15530
15531	* src/z80/gen.c:
15532	  Refactor code for setup for built-in memcpy(),
15533	  use ex de, hl in register move,
15534	  use cp instead of xor for clearing the carry flag.
15535
155362012-06-18 Philipp Klaus Krause <pkk AT spth.de>
15537
15538	* src/SDCCopt.c,
15539	  src/hc08/ralloc.c:
15540	  Document relation between offsetFold() and packPointerOp().
15541
155422012-06-18 Borut Razem <borut.razem AT gmail.com>
15543
15544	* doc/sdccman.lyx, device/include/pic14/pic14devices.txt,
15545	  device/non-free/lib/pic14/libdev/devices.txt,
15546	  device/non-free/lib/pic14/libdev/Makefile.in,
15547	  device/non-free/include/pic14/pic16f883.h,
15548	  device/non-free/include/pic14/pic16f884.h,
15549	  device/non-free/include/pic14/pic16f882.h,
15550	  device/non-free/lib/pic14/libdev/pic16f884.c,
15551	  device/non-free/lib/pic14/libdev/pic16f882.c,
15552	  device/non-free/lib/pic14/libdev/pic16f883.c:
15553	  applied patch #3531530 - new CPU support (pic16f882, 883, 884),
15554	  thanks to Molnar Karoly
15555
155562012-06-18 Philipp Klaus Krause <pkk AT spth.de>
15557
15558	* src/z80/peeph-z80.def,
15559	  src/z80/peeph-r2k.def:
15560	  Some more peepholes that help when framepointer is omitted.
15561	* src/z80/peep.c:
15562	  Handle cpl, ldir, di, ei, out, in, mul and bool in read analysis.
15563
155642012-06-18 Philipp Klaus Krause <pkk AT spth.de>
15565
15566	* src/z80/gen.c,
15567	  src/z80/ralloc2.cc:
15568	  Improve shifts by non-literal.
15569
155702012-06-17 Borut Razem <borut.razem AT gmail.com>
15571
15572	* support/scripts/sdcc.nsi:
15573	  added removal of include\asm\r3ka\*.h
15574	* device/non-free/include/pic14/pic16fam.h,
15575	  support/scripts/pic16fam-h-gen.pl:
15576	  applied patch #3531531 - The pic16fam-h-gen correction,
15577	  thanks to Molnar Karoly
15578	* support/scripts/repack_release.sh:
15579	  remove unneeded directories produced by sdbinutils
15580
155812012-06-17 Philipp Klaus Krause <pkk AT spth.de>
15582
15583	* src/SDCCerr.h,
15584	  src/SDCCerr.c,
15585	  src/SDCCval.c:
15586	  Warn when encountering long long literals.
15587
155882012-06-17 Philipp Klaus Krause <pkk AT spth.de>
15589
15590	* src/z80/gen.c:
15591	  Improve destructive and.
15592
155932012-06-16 Leland Morrison <enigmalee AT sourceforge.net>
15594
15595	* sdas/asz80/z80mch.c: Change to report error for invalid operands
15596	  to z180 tst instruction.
15597
155982012-06-09 Borut Razem <borut.razem AT gmail.com>
15599
15600	* .version, sdcc.spec, doc/sdccman.lyx:
15601	  changed sdcc version to 3.2.0
15602
156032012-06-16 Philipp Klaus Krause <pkk AT spth.de>
15604
15605	* src/z80/gen.c:
15606	  Implement #3512989.
15607
156082012-06-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15609
15610	* support/regression/ports/pic14/support.c:
15611	  Fix for renamed __asm.
15612	* support/regression/tests/gcc-torture-execute-pr31169.c,
15613	  support/regression/tests/bitfields.c,
15614	  support/regression/tests/gcc-torture-execute-20100316-1.c,
15615	  support/regression/tests/gcc-torture-execute-pr38422.c,
15616	  support/regression/tests/gcc-torture-execute-921016-1.c:
15617	  Disable tests that use bitfields of size greater than 8 bits, which is not yet supported by the pic16 port.
15618
156192012-06-15 Leland Morrison <enigmalee AT sourceforge.net>
15620
15621	* sim/ucsim/z80.src/z80cl.h, z80.cc, inst_ed.cc:
15622	  Added in0, out0, and tst instructions for z180 support.
15623
156242012-06-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15625
15626	* src/SDCClospre.hpp:
15627	  Fix lospre nonforward-substitution of POINTER_SET.
15628	* src/SDCClospre.cc:
15629	  Improve handling of invalidation at POINTER_SET.
15630
156312012-06-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15632
15633	* support/regression/tests/and_survive.c:
15634	  Test non-destructive and, regression test for #3534833.
15635	* support/regression/tests/gcc-torture-execute-980707-1.c:
15636	  Adapted and enabled test for mcs51.
15637
156382012-06-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15639
15640	* src/hc08/gen.c:
15641	  Fix cost calculation for branches.
15642
156432012-06-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15644
15645	* src/hc08/gen.c:
15646	  Improve storing of hx in assignment.
15647
156482012-06-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15649
15650	* src/z80/gen.c:
15651	  Fix for 16-bit addition to avoid generating invalid add hl, iy.
15652
156532012-06-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15654
15655	* src/z80/gen.c:
15656	  Improve multiplication for Rabbits.
15657
156582012-06-13 Leland Morrison <enigmalee AT sourceforge.net>
15659
15660	* sdas/asz80/z80mch.c:  Allow the tst instruction for z180/.hd64 to
15661	  use the two operand form (tst a,X) (fixes bug #3534833)
15662
156632012-06-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15664
15665	* src/z80/gen.c:
15666	  Improve one-byte shifts, use fix of #3534833 in non-destructive and.
15667
156682012-06-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15669
15670	* src/z80/gen.c:
15671	  Improve right shift.
15672
156732012-06-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15674
15675	* src/z80/gen.c:
15676	  Improve 16-bit addition with operand in hl and result in iy.
15677
156782012-06-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15679
15680	* src/z80/ralloc2.cc,
15681	  src/z80/gen.c:
15682	  Improvements to left shift by literal.
15683
156842012-06-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15685
15686	* src/z80/ralloc2.cc,
15687	  src/z80/gen.c,
15688	  src/z80/peep.c:
15689	  Improvements to non-destructive and, including #3526286.
15690
156912012-06-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15692
15693	* src/SDCCmain.c,
15694	  src/SDCCopt.c,
15695	  src/SDCCglobl.h:
15696	  Implement --nolospre option for disabling lospre.
15697
156982012-06-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15699
15700	* src/SDCCicode.c:
15701	  Fix debug output for GET_VALUE_AT_ADDRESS right operand.
15702
157032012-06-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15704
15705	* src/SDCClospre.hpp:
15706	  Fix handling of IFX in forward substitution.
15707
157082012-06-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15709
15710	* src/SDCClospre.cc:
15711	  Disable lospre of assignments with iTemp source.
15712
157132012-06-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15714
15715	* src/SDCClospre.hpp,
15716	  src/SDCClospre.cc:
15717	  Reorganize forward substitution code, lospre for GET_VALUE_AT_ADDRESS.
15718
157192012-06-10 Maarten Brock <sourceforge.brock AT dse.nl>
15720
15721	* src/SDCCast.c (decorateType, &/|/^): optimize bool with literal,
15722	  (optimizeGetAbit): prevent memory leak
15723	* src/SDCCcse.c (algebraicOpts): optimize bool XOR literal
15724	* src/SDCCsymt.c (computeType): also remove const from result,
15725	  fixed bug 3531687 by removing wrong CHAR = ? 1 : 0 optimization to BOOL
15726	* src/SDCCval.h,
15727	* src/SDCCval.c (constBoolVal): new function
15728	  (cheapestVal): added BOOL for 0 or 1,
15729	* support/regression/tests/bug3531687.c: enabled test, removed unrelated
15730	  and already covered test
15731	* support/regression/tests/getbyte.c: new, added
15732
157332012-06-09 Borut Razem <borut.razem AT gmail.com>
15734
15735	* support/regression/ports/pic14/spec.mk,
15736	  support/regression/ports/pic16/spec.mk:
15737	  fixed pic -> pic14, --non-free -> --use-non-free
15738
157392012-06-09 Philipp Klaus Krause <pkk AT spth.de>
15740
15741	* src/z80/ralloc2.cc:
15742	  Disallow source operand in h or l for >= 16-bit addition that also has a
15743	  source operand on extended stack. Final part of fix for bug #3531660.
15744	* support/regression/tests/bug3531687.c:
15745	  Regression test for bug #3531687.
15746
157472012-06-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15748
15749	* src/SDCCopt.c: fixed several missing def/use problems including
15750	  bug #3511517
15751	* src/SDCCBBlock.c (addiCodeToeBBlock): fixed bug #3511516
15752	* src/hc08/ralloc.c (packRegisters): fixed bug #3531045
15753	* support/regression/tests/gcc-torture-execute-980604-1.c: reenabled
15754	* support/regression/tests/gcc-torture-execute-980205.c: reenabled
15755
157562012-06-07 Philipp Klaus Krause <pkk AT spth.de>
15757
15758	* src/z80/main.c:
15759	  Fix handling of --fomit-frame-pointer for z180, r2k and r3ka port.
15760
157612012-06-07 Maarten Brock <sourceforge.brock AT dse.nl>
15762
15763	* src/ds390/gen.c (genAssign): no assignment for ruonly to ruonly
15764	* src/SDCC.y,
15765	* src/SDCCerr.c: W_COMP_RANGE, W_EMPTY_SOURCE_FILE & W_CONTROL_FLOW are pedantic
15766	* src/SDCCast.c (processParms): no cast for signedness only,
15767	  (resultTypePropagate): propagate for GETHBIT, GETABIT, GETBYTE & GETWORD,
15768	  (decorateType: BITWISEAND): rearrange first,
15769	  (decorateType: RETURN): no cast for signedness only,
15770	  (optimizeGetHbit, optimizeGetAbit): use bitsForType instead of getSize and
15771	   propagate resultType,
15772	  (optimizeGetByte, optimizeGetWord): handle offset 0
15773	* src/SDCClabel.c (deleteIfx),
15774	* src/SDCCcse.c (ifxOptimize): W_CONTROL_FLOW is pedantic,
15775	  (algebraicOpts: BITWISEAND, OR): use bitsForType instead of getSize
15776	* src/SDCCicode.c (geniCodeLogic): W_COMP_RANGE is pedantic,
15777	  (geniCodeUnary, geniCodeBinary): added param resType,
15778	  (checkTypes): no cast for signedness only,
15779	  (ast2iCode): propagate tree->ftype
15780	* src/SDCCopt.c (optimizeCastCast): use bitsForType instead of getSize
15781	* src/SDCCsymt.c (comparePtrType): only cast signedness if necessary
15782	* src/SDCCsymt.h,
15783	* src/SDCCicode.h: cosmetics
15784
157852012-06-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15786
15787	* src/hc08/gen.c: fixed bugs #3531546 and #3531545
15788
157892012-06-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15790
15791	* src/z80/gen.c:
15792	  Fix 16-Bit addition for interleaved pairs. Partial fix for bug #3531660.
15793
157942012-06-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15795
15796	* src/z80/gen.c:
15797	  Fix POINTER_SET with surviving result partially in hl. Partial fix for bug #3531660.
15798
157992012-06-06 Maarten Brock <sourceforge.brock AT dse.nl>
15800
15801	* device/lib/_autobaud.c: cosmetics
15802	* device/lib/printfl.c: fixed bug 3513300
15803
158042012-06-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15805
15806	* src/hc08/gen.c: Fixed bug #3531544. Fixed cast from h to hx.
15807
158082012-06-05 Borut Razem <borut.razem AT gmail.com>
15809
15810	* support/sdbinutils/libiberty/makefile.in:
15811	  excluded pex*.c files from build since pex-unix.c doesn't
15812	  compile on cygwim mingw and they are not needed by sdbinutils
15813	* doc/sdccman.lyx: compiler macro definitions not starting with
15814	  double underscore characters are deprecated if --std-cXX
15815	  command line option is defined;
15816	  new compiler macros for processor definition were introduced
15817	  for pic14 and pic16 targets
15818
158192012-06-05 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15820
15821	* src/z80/ralloc2.cc:
15822	  Disallow surviving hl in addition with extended stack operands. Partial fix for bug #3531660.
15823
158242012-06-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15825
15826	* src/mcs51/ralloc.c (packForPush),
15827	* src/ds390/ralloc.c (packForPush),
15828	* src/hc08/ralloc.c (packForPush),
15829	* src/pic14/ralloc.c (packForPush),
15830	* src/pic16/ralloc.c (packForPush): fixed bug #3527285
15831
158322012-06-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15833
15834	* src/z80/gen.c:
15835	  Fix corner case in addition with extended stack right operand and low result byte in hl. Partial fix for bug #3531660.
15836
158372012-06-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15838
15839	* src/z80/ralloc2.cc:
15840	  Disallow use of hl over comparison when there is an extended stack operand. Partial fix for bug #3531660.
15841	* src/z80/gen.c:
15842	  Save a during GET_VALUE_AT_ADDRESS when storing to extended stack operand. Partial fix for bug #3531660.
15843
158442012-06-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15845
15846	* src/hc08/gen.c (loadRegIndex, storeRegIndexed): added missing
15847	  rematOfs
15848
158492012-06-03 Borut Razem <borut.razem AT gmail.com>
15850
15851	* src/pic14/main.c, src/pic16/main.c: re-enabled deprecated
15852	  macros not starting with double underscore characters in
15853	  combination with --std-cXX
15854	* device/include/pic16/pic18fregs.h: modified for __SDCC_PICXXX
15855
158562012-06-03 Philipp Klaus Krause <pkk AT spth.de>
15857
15858	* src/z80/gen.c:
15859	  Fix handling of extended stack operands in 16-bit unary minus and signed comparison. Partial fix for bug #3531660.
15860
158612012-06-03 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15862
15863	* src/SDCCopt.c,
15864	* src/hc08/ralloc.c: RFE 3526269 and 3526268
15865
158662012-06-02 Philipp Klaus Krause <pkk AT spth.de>
15867
15868	* src/port.h:
15869	  Fixed bug #3531540.
15870
158712012-06-02 Philipp Klaus Krause <pkk AT spth.de>
15872
15873	* src/SDCCerr.c, src/SDCCerr.h: added W_STRING_CANNOT_BE_TERMINATED
15874	  src/SDCCast.c (createIvalCharPtr): fixed #3007799: generate different warning
15875	  for initializer strings that fit in buffer without terminating '\0'. According
15876	  C99 $6.7.8:14 this is allowed. With --less-pedantic no warning is generated.
15877	  Modified version of patch by Jan Waclawek.
15878
158792012-06-02 Borut Razem <borut.razem AT gmail.com>
15880
15881	* src/SDCCmain.c, src/pic14/main.c, src/pic16/main.c,
15882	  support/scripts/pic14fam-h-gen.pl,
15883	  applied modified patch
15884	  #3531337 - The pic14 port, automatically creates the -DpicXXX,
15885	  thanks to Molnar Karoly
15886	* support/scripts/pic16fam-h-gen.pl: modified for __SDCC_PICXXX
15887	* device/non-free/include/pic14/pic14fam.h,
15888	  device/non-free/include/pic16/pic16fam.h: (re)generated
15889
158902012-06-01 Borut Razem <borut.razem AT gmail.com>
15891
15892	* doc/README.txt, doc/INSTALL.txt: updated for SDCC 3.2.0 release
15893
158942012-06-01 Philipp Klaus Krause <pkk AT spth.de>
15895
15896	* src/z80/peeph-z80.def,
15897	  src/z80/peeph-r2k.def:
15898	  Shift optimization.
15899
159002012-06-01 Philipp Klaus Krause <pkk AT spth.de>
15901
15902	* src/SDCClospre.cc,
15903	  src/SDCCsymt.h,
15904	  src/SDCCsymt.c,
15905	  src/SDCClospre.hpp:
15906	  Relax lospre type checking.
15907
159082012-06-01 Philipp Klaus Krause <pkk AT spth.de>
15909
15910	* src/SDCClospre.cc:
15911	  Disable lospre for literla assignments (can be reenabled once ports can rematerialize this).
15912	* src/SDCClospre.hpp:
15913	  Improve handling of volatile.
15914
159152012-06-01 Philipp Klaus Krause <pkk AT spth.de>
15916
15917	* src/z80/gen.c:
15918	  Always use 16-bit addition when an operand and the result are in hl.
15919
159202012-06-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15921
15922	* src/hc08/gen.c: Preparations for further pointer offset
15923	  optimizations. Bug fixes for certain register assignment cases
15924	  in complement, unary minus, bitwise operators, and bitfield
15925	  unpacking.
15926
159272012-05-31 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15928
15929	* src/z80/gen.c:
15930	  Fix handling of a in casts, bug #3531118.
15931
159322012-05-31 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15933
15934	* doc/sdccman.lyx:
15935	  Updated manual (mostly r3ka and s08 port).
15936
159372012-05-31 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15938
15939	* src/SDCClospre.hpp:
15940	  Fix handling of invalidating iCodes in lospre.
15941	* src/SDCClospre.cc:
15942	  Fix multiround-lospre.
15943
159442012-05-31 Borut Razem <borut.razem AT gmail.com>
15945
15946	* debugger/mcs51/cmd.c: fixed bug #3530998 - source code bug..
15947
159482012-05-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15949
15950	* src/SDCCsymt.h: handle up to 8 registers per symbol for long long
15951	  support
15952
159532012-05-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15954
15955	* src/z80/ralloc.h,
15956	  src/z80/gen.c,
15957	  src/z80/ralloc2.cc:
15958	  More flexible handling of a during pointer access in z80-related ports.
15959
159602012-05-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15961
15962	* src/z80/peeph-r2k.def:
15963	  Fix invalid stack-relative increment.
15964	* src/z80/gen.c:
15965	  More efficient handling of 16-bit stores to stack.
15966
159672012-05-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15968
15969	* sim/ucsim/z80.src/inst_r2k.cc:
15970	  Fix handling of carry in 16-bit shift rotate instructions.
15971	* src/z80/gen.c:
15972	  Better 16 bit signed comparison for z80 related (except gbz80).
15973
159742012-05-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15975
15976	* src/z80/gen.c:
15977	  Allow result of GET_VALUE_AT_ADDRESS in A for z80-related ports.
15978
159792012-05-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15980
15981	* src/z80/gen.c:
15982	  Improve storing of literals to stack for Rabbits.
15983
159842012-05-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15985
15986	* src/z80/gen.c:
15987	  Fix multibyte global to global assignment on gbz80 with de alive.
15988
159892012-05-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
15990
15991	* src/hc08/ralloc2.cc (operand_sane): fixed erroneous rejection of
15992	  single byte operand register assignment due to out of bounds
15993	  dereference
15994
159952012-05-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
15996
15997	* src/z80/gen.c:
15998	  Fix for surviving pair in bitfield write.
15999
160002012-05-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16001
16002	* src/SDCClospre.hpp:
16003	  Fix for handling global variables over calls in lospre.
16004
160052012-05-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16006
16007	* src/z80/gen.c,
16008	  src/hc08/gen.c:
16009	  Added assertions to debug rematerialization issues.
16010
160112012-05-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16012
16013	* src/hc08/ralloc.c (moveSendToCall, packRegisters): move SEND iCodes
16014	  to immediately precede their CALL/PCALL for better live range info.
16015	* src/hc08/gen.c (genSend): fixed bug swapping SEND iCode order.
16016
160172012-05-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16018
16019	* src/SDCClospre.hpp:
16020	  Fix invalid memory access bug.
16021
160222012-05-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16023
16024	* src/SDCClospre.hpp,
16025	  src/z80/gen.c:
16026	  Fix handling of ADDRESS_OF in lospre forward assignment.
16027
160282012-05-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16029
16030	* src/z80/gen.c:
16031	  Fixed bug #3530276.
16032
160332012-05-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16034
16035	* src/SDCCbitv.c (bitVectSetBit, bitVectUnSetBit),
16036	* src/hc08/ralloc2.cc (set_surviving_regs),
16037	* src/z80/ralloc2.cc (set_surviving_regs): Prohibit negative bit
16038	  position in bit vectors to avoid memory corruption
16039	* device/lib/clean.mk: add s08 and r3ka ports to cleaning
16040
160412012-05-28 Philipp Klaus Krause <pkk AT spth.de>
16042
16043	* src/z80/gen.c:
16044	  Use Rabbit's cast to bool instruction for zeroing h,
16045	  more efficient loading of pairs in shifts.
16046	* src/z80/peep.c:
16047	  Handle bool in instruction size calculations.
16048
160492012-05-28 Borut Razem <borut.razem AT gmail.com>
16050
16051	* src/pic16/main.c: allow underscore characters in #pragma config
16052
160532012-05-28 Philipp Klaus Krause <pkk AT spth.de>
16054
16055	* src/SDCClospre.hpp,
16056	  src/SDCClospre.cc:
16057	  Improve handling of results of substituted instructions in lospre.
16058
160592012-05-27 Philipp Klaus Krause <pkk AT spth.de>
16060
16061	* src/SDCClospre.hpp,
16062	  src/SDCClospre.cc:
16063	  Fix handling of --max-allocs-per-node in lospre.
16064
160652012-05-26 Borut Razem <borut.razem AT gmail.com>
16066
16067	* src/pic16/main.c: allow space characters in #pragma config
16068
160692012-05-25 Borut Razem <borut.razem AT gmail.com>
16070
16071	* doc/sdccman.lyx: corrected #pragma configure to #pragma config
16072
160732012-05-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16074
16075	* src/SDCClospre.hpp:
16076	  Improve handling of --max-allocs-per-node in lospre.
16077
160782012-05-25 Maarten Brock <sourceforge.brock AT dse.nl>
16079
16080	* src/hc08/gen.c (genPointerSet): fixed warning
16081
160822012-05-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16083
16084	* src/SDCCicode.h,
16085	  src/SDCCicode.c,
16086	  src/SDCClospre.hpp,
16087	  src/SDCClospre.cc:
16088	  Fixes for handling of globals and volatile in lospre.
16089
160902012-05-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16091
16092	* support/scripts/sdcc.nsi: fix my typo in r3ka path
16093
160942012-05-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16095
16096	* src/SDCClospre.hpp,
16097	  src/SDCClospre.cc:
16098	  lospre.
16099
161002012-05-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16101
16102	* src/z80/peeph-r2k.def,
16103	  src/z80/peeph-z80.def,
16104	  src/z80/peeph-gbz80.def:
16105	  Jump optimization.
16106
161072012-05-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16108
16109	* src/z80/ralloc2.cc,
16110	  src/z80/gen.c:
16111	  Non-destructive & with bit literal.
16112
161132012-05-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16114
16115	* src/SDCClospre.hpp,
16116	  src/SDCClospre.cc:
16117	  Preparations for lospre.
16118
161192012-05-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16120
16121	* src/hc08/peeph.def:
16122	  Improve elimination of branches.
16123
161242012-05-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16125
16126	* src/SDCClospre.hpp,
16127	  src/SDCClospre.cc:
16128	  Preparations for lospre.
16129	* src/z80/gen.c:
16130	  More verbose debugging for variables that are not in registers, but should be.
16131
161322012-05-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16133
16134	* support/scripts/sdcc.nsi: added r3ka and s08 to installer
16135	* support/sdbinutils/binutils/configure.in,
16136	* support/sdbinutils/binutils/configure: fix bug #3527589
16137	* src/SDCCcse.c (newCseDef): fix bug #3528899
16138
161392012-05-23 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16140
16141	* src/SDCClospre.hpp,
16142	  src/SDCClospre.cc:
16143	  Preparations for lospre.
16144
161452012-05-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16146
16147	* src/hc08/gen.c: Preparations for further pointer offset
16148	   optimizations
16149
161502012-05-22 Philipp Klaus Krause <pkk AT spth.de>
16151
16152	* src/hc08/peeph.def:
16153	  Allow disabling of tail-call and jump to return optimization.
16154
161552012-05-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16156
16157	* src/hc08/gen.c: Fixed inconsistent offsets for 16-bit register
16158	  accesses. Removed broken and unused AOP_STR type. Prohibit loading
16159	  h via hx from volatile operands.
16160
161612012-05-21 Philipp Klaus Krause <pkk AT spth.de>
16162
16163	* support/regression/tests/memory.c,
16164	  src/z80/gen.c,
16165	  src/port.h,
16166	  src/SDCCglue.c,
16167	  src/z80/main.c,
16168	  src/z80/peep.c:
16169	  Use lsidr for built-in memset() for r3ka.
16170	* src/hc08/gen.c:
16171	  Use ldhx, sthx for memory-to-memory assignment and cast.
16172	* src/hc08/peeph.def:
16173	  Basic tail call optimization.
16174
161752012-05-21 Philipp Klaus Krause <pkk AT spth.de>
16176
16177	* src/hc08/gen.c:
16178	  More efficient loading of H and HX for hc08 and s08.
16179
161802012-05-21 Philipp Klaus Krause <pkk AT spth.de>
16181
16182	* support/regression/tests/setjmp.c:
16183	  Enable test for r3ka.
16184	* support/regression/tests/gcc-torture-execute-pr28982a.c,
16185	  support/regression/tests/gcc-torture-execute-20010224-1.c,
16186	  support/regression/tests/gcc-torture-execute-20030408-1.c:
16187	  Disable tests for r3ka.
16188	* support/regression/Makefile.in:
16189	  Add ucr3ka target to z80 target.
16190
161912012-05-21 Leland Morrison <enigmalee AT sourceforge.net>
16192
16193	* SDCCpeeph.c, peep.c: Fixed so that R2K instructions are
16194	  recognized for -mr3ka target by the peephole optimizer.
16195
161962012-05-20 Leland Morrison <enigmalee AT sourceforge.net>
16197
16198	* support/regression/Makefile.in, support/regression/ports/ucr3ka/*,
16199	  support/regression/fwk/include/testfwk.h: added test-ucr3ka to
16200	  run regression tests on the rabbit 3000A port
16201
162022012-05-20 Leland Morrison <enigmalee AT sourceforge.net>
16203
16204	* device/include/sdcc-lib.h, device/include/math.h: Added conditional
16205	  for rabbit 3000
16206	* devince/include/asm/r3ka/features.h: Added to allow customizations
16207	  for -mr3ka
16208
162092012-05-20 Leland Morrison <enigmalee AT sourceforge.net>
16210
16211	* src/sdas/asrab/rabbitpst.c: Added mnemonics for rabbit 3000A
16212	* src/sdas/asrab/rabbitmch.c: Added .r3k flag and rabbit 3000A
16213	  instructions, changed much of the indentation to make gnu style,
16214	  and update two functions declarations from K&R style
16215	* src/sdas/asrab/rabbit.h: Added constants for rabbit 3000 support
16216
162172012-05-20 Philipp Klaus Krause <pkk AT spth.de>
16218
16219	* src/hc08/gen.c:
16220	  Emit cost information only when --fverbose-asm is used.
16221
162222012-05-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16223
16224	* src/hc08/gen.c: Fixed yet more problems with registers possibly
16225	  clobbered in division/modulus. Optimized GET_VALUE_AT_ADDRESS
16226	  including handling non-zero right operand.
16227	* src/hc08/ralloc.c: Allow packRegsForSupport() to optimize
16228	  conditions computed for IFX. Handle non-zero right operand
16229	  for GET_VALUE_AT_ADDRESS when generating pseudo symbol.
16230	* src/SDCCopt.c: Let GET_VALUE_AT_ADDRESS have non-zero right
16231	  operand for HC08-like ports. Fix def/use info on operands
16232	  converted to integer support function calls.
16233
162342012-05-20 Philipp Klaus Krause <pkk AT spth.de>
16235
16236	* sdccconf_in.h:
16237	  Regenerated, so building with r3ka port disabled works now.
16238
162392012-05-20 Philipp Klaus Krause <pkk AT spth.de>
16240
16241	* src/hc08/gen.c:
16242	  Improved code for PCALL.
16243
162442012-05-20 Philipp Klaus Krause <pkk AT spth.de>
16245
16246	* src/hc08/gen.c,
16247	  src/hc08/ralloc2.cc:
16248	  Improved code for GET_VALUE_AT_ADDRESS.
16249
162502012-05-19 Philipp Klaus Krause <pkk AT spth.de>
16251
16252	* src/hc08/gen.c:
16253	  Improve addition for hc08 and s08.
16254	* src/z80/main.c:
16255	  Fix name of r3ka library.
16256	* src/hc08/main.c:
16257	  Fix name of s08 library.
16258
162592012-05-19 Philipp Klaus Krause <pkk AT spth.de>
16260
16261	* sim/ucsim/hc08.src/hc08.cc:
16262	  Fix sthx with ext operand on s08.
16263	* src/hc08/gen.c:
16264	  Use ldhx, cphx and sthx with ext operands for s08 in places where we use them for hc08 with imm operands.
16265
162662012-05-19 Philipp Klaus Krause <pkk AT spth.de>
16267
16268	* sdas/as6808/m08mch.c,
16269	  sdas/as6808/m6808.h,
16270	  sdas/as6808/m08pst.c,
16271	  src/SDCCralloc.hpp,
16272	  src/SDCCglue.c,
16273	  src/hc08/main.c,
16274	  src/hc08/ralloc2.cc:
16275	  Asm for s08.
16276
162772012-05-19 Philipp Klaus Krause <pkk AT spth.de>
16278
16279	* support/regression/tests/bug3223041.c:
16280	  Do not handle hc08 as special case.
16281
162822012-05-18 Philipp Klaus Krause <pkk AT spth.de>
16283
16284	* device/lib/r3ka/Makefile.in:
16285	  Fix building of r3ka lib.
16286	* device/lib/s08/Makefile.in:
16287	  Fix building of s08 lib.
16288	* support/regression/Makefile.in,
16289	  support/regression/ports/s08,
16290	  support/regression/fwk/include/testfwk.h,
16291	  support/regression/tests/gcc-torture-execute-func-ptr-1.c,
16292	  support/regression/tests/gcc-torture-execute-991112-1.c,
16293	  support/regression/tests/gcc-torture-execute-921208-1.c,
16294	  support/regression/tests/bug3379723.c,
16295	  support/regression/tests/gcc-torture-execute-930702-1.c,
16296	  support/regression/tests/float_single.c,
16297	  support/regression/tests/gcc-torture-execute-20000412-2.c,
16298	  support/regression/tests/gcc-torture-execute-20080529-1.c,
16299	  support/regression/tests/gcc-torture-execute-20030209-1.c,
16300	  support/regression/tests/gcc-torture-execute-950915-1.c,
16301	  support/regression/tests/bug1723128.c,
16302	  support/regression/tests/gcc-torture-execute-20001221-1.c,
16303	  support/regression/tests/gcc-torture-execute-20030307-1.c,
16304	  support/regression/tests/gcc-torture-execute-950612-1.c,
16305	  support/regression/tests/gcc-torture-execute-20001108-1.c,
16306	  support/regression/tests/cse.c:
16307	  Regression testing for s08 port.
16308	* device/include/stdarg.h:
16309	  Fix variable arguments for s08.
16310	* device/lib/_mullong.c:
16311	  Fix long multiplication for s08.
16312
163132012-05-18 Philipp Klaus Krause <pkk AT spth.de>
16314
16315	* configure.in,
16316	  src/SDCCicode.c,
16317	  src/SDCCsymt.c,
16318	  src/SDCCmain.c,
16319	  src/port.h,
16320	  src/SDCCglue.c,
16321	  src/hc08/main.c,
16322	  src/SDCCpeeph.c,
16323	  src/hc08/hc08.h,
16324	  device/lib/Makefile.in,
16325	  device/lib/s08:
16326	  Dummy (behaves as HC08) S08 port.
16327
163282012-05-18 Philipp Klaus Krause <pkk AT spth.de>
16329
16330	* device/include/stdarg.h,
16331	  device/include/string.h,
16332	  device/include/setjmp.h,
16333	  device/lib/Makefile.in,
16334	  configure.in,
16335	  src/SDCCopt.c,
16336	  src/z80/gen.c,
16337	  src/z80/main.c,
16338	  src/z80/z80.h,
16339	  src/SDCCmain.c,
16340	  src/port.h,
16341	  sim/ucsim/aclocal.m4,
16342	  sim/ucsim/configure,
16343	  device/lib/r3ka:
16344	  Dummy (behaves as Rabbit 2000/3000) Rabbit 3000A port.
16345
163462012-05-17 Leland Morrison <enigmalee AT sourceforge.net>
16347
16348	* sim/ucsim/hc08/hc08.cc: Fix for opcodes 0xAE, 0xBE, and 0xCE op-decode
16349
163502012-05-17 Philipp Klaus Krause <pkk AT spth.de>
16351
16352	* support/regression/tests/bug3521024.c:
16353	  Regression test for bug #3521024.
16354
163552012-05-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16356
16357	* src/hc08/gen.c: Use non-destructive bit tests when possible
16358	  (rfe #3526285). Fixed loss of association between generated
16359	  assembly and iCodes.
16360	* src/hc08/peeph.def: Additional rules for conditional branches and
16361	  to remove unused labels.
16362
163632012-05-16 Maarten Brock <sourceforge.brock AT dse.nl>
16364
16365	* support/regression/Makefile.in: renamed test-z80 and test-gbz80 to test-rr...
16366	* support/regression/ports/gbz80,
16367	* support/regression/ports/rrgbz80: renamed to rrgbz80
16368	* support/regression/ports/z80,
16369	* support/regression/ports/rrz80: renamed to rrz80
16370	* support/regression/tests/gcc-torture-execute-921013-1.c: disabled for xstack
16371
163722012-05-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16373
16374	* src/hc08/gen.c (genAnd): added forgotten ifx->generated = TRUE
16375
163762012-05-15 Maarten Brock <sourceforge.brock AT dse.nl>
16377
16378	* support/regression/tests/gcc-torture-execute-961017-2.c: use less loops to
16379	  reduce test time
16380
163812012-05-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16382
16383	* sim/ucsim/hc08.src/hc08.cc,
16384	* sim/ucsim/hc08.src/inst.cc: Fixed simulation of brset/brclr. Keep
16385	  track of instruction cycle times.
16386	* src/hc08/gen.c (genAnd): Use brset/brclr where possible
16387
163882012-05-14 Leland Morrison <enigmalee AT sourceforge.net>
16389
16390	* sim/ucsim/stypes.h,
16391	* sim/ucsim/globals.cc: add R3KA (rabbit 3000A) processor type
16392	* sim/ucsim/z80.src/r2k.cc,
16393	* sim/ucsim/z80.src/simz80.cc: added initialization code for R3KA support
16394	* sim/ucsim/z80.src/r2kcl.h,
16395	* sim/ucsim/z80.src/inst_ed_r2k.cc: support for r3ka instructions
16396	* sim/ucsim/z80.src/inst_ed.cc: change to allow overloading of inst_ed_
16397
163982012-05-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16399
16400	* src/SDCClospre.hpp,
16401	  src/SDCClospre.cc:
16402	  Early preparations for lospre.
16403
164042012-05-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16405
16406	* src/SDCClospre.hpp:
16407	  Early preparations for lospre.
16408
164092012-05-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16410
16411	* src/hc08/gen.c: correct some dry run costs, update genDivOneByte()
16412	  and genModOneByte() to handle all register operand posibilities
16413
164142012-05-13 Maarten Brock <sourceforge.brock AT dse.nl>
16415
16416	* sim/ucsim/pobj.cc,
16417	* sim/ucsim/pobjcl.h: made cl_list::at inline
16418	* sim/ucsim/s51.src/regs51.h: added AP
16419	* sim/ucsim/s51.src/uc390.cc (inst_inc_dptr): fixed sel bug,
16420	  (disass): show inc/dec dptr,
16421	  (print_regs): show DPTR0, DPTR1 and AP
16422	* src/ds390/gen.c (genGenPointerGet, genGenPointerSet): fixed bug 3509705
16423	* support/regression/compact-results.py: align results
16424	* support/regression/tests/gcc-torture-execute-921013-1.c: enabled tests
16425
164262012-05-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16427
16428	* src/SDCClospre.hpp,
16429	  src/SDCClospre.cc:
16430	  Early preparations for lospre.
16431
164322012-05-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16433
16434	* src/SDCCopt.c,
16435	  src/SDCCopt.c,
16436	  src/SDCClospre.cc,
16437	  Preparations for finding lospre optimization candidates.
16438
164392012-05-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16440
16441	* src/z80/ralloc2.cc,
16442	  src/hc08/ralloc2.c:
16443	  Bypass dry run for generated ic.
16444
164452012-05-10 Maarten Brock <sourceforge.brock AT dse.nl>
16446
16447	* src/hc08/gen.h,
16448	* src/hc08/gen.c (aopName): compile conditionally,
16449	  (assignResultValue): MSVC has no true/false,
16450	  (hasInchc08): fixed warning,
16451	  (genReceive): declarations first
16452	* src/hc08/ralloc.c: include dbuf_string.h,
16453	  (createStackSpil): removed unused slocBuffer
16454	* src/hc08/hc08.vcxproj.filters,
16455	* src/hc08/hc08.vcxproj: added ralloc2.cc and boost include dir
16456	* src/z80/gen.c (genCmp): fixed uninitialised warning
16457	* src/SDCCicode.h: cosmetics
16458
164592012-05-09 Philipp Klaus Krause <pkk AT spth.de>
16460
16461	* src/SDCCralloc.hpp,
16462	  src/hc08/ralloc2.cc:
16463	  Added some debug info code.
16464
164652012-05-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16466
16467	* src/SDCClospre.hpp,
16468	  src/SDCCralloc.hpp,
16469	  src/SDCCnaddr.cc,
16470	  src/SDCCnaddr.hpp,
16471	  src/SDCClospre.cc:
16472	  Declare some data types for lospre.
16473
164742012-05-09 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16475
16476	* src/hc08/gen.c,
16477	  src/hc08/ralloc.c:
16478	  Remove some unused variables.
16479
164802012-05-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16481
16482	* src/hc08/gen.c (aopOp): Handle spill location correctly even
16483	  though it is not actually allocated during dry run
16484
164852012-05-07 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16486
16487	* support/regression/ports/ds390/spec.mk:
16488	  Increase timeout from 40 to 60, since ds390 simulation on NetBSD is slow.
16489
164902012-05-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16491
16492	* src/hc08/gen.c (aopAdrStr): handle incompletely initialized
16493	  spill location symbols during dry run
16494
164952012-05-06 Borut Razem <borut.razem AT gmail.com>
16496
16497	* .version, doc/sdccman.lyx: bumped version to 3.1.5
16498	* ChangeLog: removed unicode BOM
16499	* support/sdbinutils/binutils/Makefile.am,
16500	  support/sdbinutils/binutils/Makefile.in:
16501	  fixed the first part of bug #3518739 - Build weird behaviour...
16502
165032012-05-05 Maarten Brock <sourceforge.brock AT dse.nl>
16504
16505	* support/regression/tests/gcc-torture-execute-pr44555.c: test was not
16506	  disabled for gcc 4.4.3, now it is for all 4.x.x < 4.6.0
16507
165082012-05-05 Philipp Klaus Krause <pkk AT spth.de>
16509
16510	* src/SDCCicode.c,
16511	* src/SDCCicode.h,
16512	* src/SDCCralloc.hpp,
16513	* src/SDCCset.c,
16514	* src/SDCCsymt.c,
16515	* src/hc08/gen.c,
16516	* src/hc08/gen.h,
16517	* src/hc08/main.c,
16518	* src/hc08/ralloc.c,
16519	* src/hc08/ralloc.h,
16520	* src/hc08/ralloc2.cc,
16521	* src/yacc.vcxproj,
16522	* src/z80/gen.c,
16523	* src/z80/ralloc.c,
16524	* src/z80/ralloc2.cc: Merged optralloc-hc08 branch
16525
165262012-05-05 Maarten Brock <sourceforge.brock AT dse.nl>
16527
16528	* config.vcxproj,
16529	* configure_vc.awk,
16530	* doc/sdccman.lyx,
16531	* sdcc_vc.h.in, sdcc_vc_in.h: renamed sdcc_vc_in.h to sdcc_vc.h.in
16532	* src/SDCCval.c (byteOfVal),
16533	* src/z80/gen.c (genLeftShiftLiteral, genPointerGet),
16534	* src/mcs51/gen.c (genLeftShiftLiteral): fixed warnings
16535	* src/SDCCnaddr.hpp: renamed cfg_node to cfg_naddr_node
16536	* src/SDCCralloc.hpp: default_constructor_of_cfg_node_called and
16537	  cfg_node constructor disabled to fix bug 3521407
16538	* src/SDCCtree_dec.hpp: set svn properties
16539	* support/regression/ports/mcs51-common/spec.mk: fixed SIM_TIMEOUT bug
16540	* support/regression/tests/bug-3495411.c: enabled for mcs51
16541	* support/regression/tests/gcc-torture-execute-20000622-1.c,
16542	* support/regression/tests/gcc-torture-execute-20010924-1.c,
16543	* support/regression/tests/gcc-torture-execute-961004-1.c,
16544	* support/regression/tests/gcc-torture-execute-961125-1.c,
16545	* support/regression/tests/gcc-torture-execute-990404-1.c: suppressed warnings
16546
165472012-05-05 Philipp Klaus Krause <pkk AT spth.de>
16548
16549	* support/regression/tests/gcc-torture-execute-20080529-1.c:
16550	  Disable test for gcc older than 5.0.
16551
165522012-05-05 Borut Razem <borut.razem AT gmail.com>
16553
16554	* support/regression/ports/ds390/spec.mk,
16555	  support/regression/ports/hc08/spec.mk,
16556	  support/regression/ports/mcs51-common/spec.mk,
16557	  support/regression/ports/pic14/spec.mk,
16558	  support/regression/ports/pic16/spec.mk,
16559	  support/regression/ports/ucgbz80/spec.mk,
16560	  support/regression/ports/ucr2k/spec.mk,
16561	  support/regression/ports/ucz180/spec.mk,
16562	  support/regression/ports/ucz80/spec.mk: use SIM_TIMEOUT
16563
165642012-05-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16565
16566	* support/regression/ports/ucgbz80/spec.mk:
16567	  Increase timeout from 20s to the 30s other ports use to get rid of NetBSD/sparc64 regression failure.
16568
165692012-05-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16570
16571	* src/hc08/main.c,
16572	  src/hc08/ralloc.c:
16573	  Revive old register allocator for --oldralloc.
16574
165752012-05-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16576
16577	* src/SDCCmain.c,
16578	  src/z80/gen.c,
16579	  src/z80/ralloc.c,
16580	  src/z80/main.c,
16581	  src/z80/z80.h,
16582	  src/SDCCglobl.h:
16583	  Made --oldralloc less port-specific.
16584
165852012-05-03 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16586
16587	* src/z80/gen.c (aopPut3): added missing declarations
16588
165892012-05-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16590
16591	* src/hc08/gen.c:
16592	  Remove obsolete genPointerGetSetOfs().
16593
165942012-05-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16595
16596	* configure: regenerated from new configure.in
16597
165982012-05-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16599
16600	* src/z80/gen.c:
16601	  More efficent storing of registers pairs to top of stack.
16602
166032012-05-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16604
16605	* support/regression/tests/gcc-torture-execute-20101013-1.c:
16606	  Disable test until nonzero integer constants work.
16607
166082012-05-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16609
16610	* src/SDCCval.h,
16611	* src/SDCCval.c (byteOfVal): new function
16612	* src/z80/gen.c (aopGet, gencjneshort),
16613	* src/SCCglue.c (aopLiteralLong): use byteOfVal() to access value
16614	* configure.in,
16615	* sdcc_vc_in.h,
16616	* sdccconf_in.h: find/define appropriate 64-bit integer
16617	* src/SDCCsymt.h: start of support for 64-bit literal
16618
166192012-04-30 Leland Morrison <enigmalee AT sourceforge.net>
16620
16621	* sim/ucsim/app.cc:  reduced the frequency of checks for user input
16622
166232012-04-26 Philipp Klaus Krause <pkk AT spth.de>
16624
16625	* src/z80/gen.c:
16626	  Improve code generation for comparison to zero.
16627
166282012-04-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16629
16630	* support/librarian/sdcclib.c:
16631	  Do not depend on PATH_MAX, fix #3521650.
16632	* sdas/asxxsrc/asxxxx.h:
16633	  Use FILENAME_MAX if PATH_MAX is not defined.
16634
166352012-04-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16636
16637	* src/hc08/gen.c: Optimize access to h/hx on top of stack. Compute
16638	  cost of SEND.
16639	* src/hc08/ralloc2.cc: Compute cost of SEND. Support xa and ax
16640	  with GETBYTE and GETWORD.
16641
166422012-04-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16643
16644	* src/hc08/gen.c: Rewrite genSend to fix problem with register
16645	  clobbering. Allow use of tsx with function return values.
16646	* src/hc08/ralloc.c: Removed unneed constraint on stack operands
16647
166482012-04-25 Borut Razem <borut.razem AT gmail.com>
16649
16650	* src/common.h, src/ds390/main.c: include SDCCsystem.h in common.h
16651	* src/SDCCmain.c: added newline at end of file
16652	* src/SDCCicode.c: use TRUE instead of undefined true
16653	* src/SDCCicode.h: fixed declaration of isOperandLiteral()
16654
166552012-04-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16656
16657	* src/z80/peeph-gbz80.def:
16658	  Removed peephole that resulted in invalid or operand on gbz80.
16659
166602012-04-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16661
16662	* src/z80/gen.c:
16663	  Fix #3521024.
16664
166652012-04-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16666
16667	* src/hc08/gen.c: Fixed bug with cpx use. Optimize stack adjustments
16668	  of +/-1. Use mov #0 instead of clr with volatile operands to avoid
16669	  read side effect. Avoid using x as stack frame base unless it saves
16670	  clock cycles.
16671
166722012-04-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16673
16674	* src/SDCCicode.c,
16675	  src/SDCCopt.c,
16676	  src/z80/gen.c:
16677	  GET_VALUE_AT_ADDRESS with offset for z80, z180 and r2k.
16678
166792012-04-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16680
16681	* src/hc08/gen.c: Index stack frame via x instead of sp when convenient
16682
166832012-04-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16684
16685	* src/hc08/gen.c: Use msb to lsb order in assignment for compatibility
16686	  with hardware hardware registers. Expanded use of cpx and ldhx
16687	  instructions. Removed some old unused code. Fixed a stack bug in
16688	  genPlusIncr.
16689
166902012-04-23 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16691
16692	* src/SDCCicode.c:
16693	  Enable replacing division by power of two by conditional addition and shift (for hc08, z80, z180, gbz80 and r2k).
16694	* src/z80/gen.c,
16695	  src/mcs51/gen.c:
16696	  Fortify a "/* I assume that [...]" comment by an assertion that would have saved me some time.
16697
166982012-04-20 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16699
16700	* src/hc08/main.c:
16701	  Enable CSE for an approx. 0.1-0.2% code size reduction.
16702
167032012-04-22 Raphael Neider <rneider AT web.de>
16704
16705	* device/lib/pic16/libsdcc/gptr/eeprom{8,16}_gptrput[1234].c:
16706	  fix accessing EECON1.WREN
16707
167082012-04-22 Raphael Neider <rneider AT web.de>
16709
16710	* device/non-free/lib/pic14/libdev/Makefile.in:
16711	  build 16f72[01] only if --enable-new-pics is given, as the
16712	  devices are not supported in the current gputils release 0.14.1
16713
167142012-04-21 Maarten Brock <sourceforge.brock AT dse.nl>
16715
16716	* src/ds390/main.c: undo removed include to fix implicit declaration
16717
167182012-04-21 Philipp Klaus Krause <pkk AT spth.de>
16719
16720	* src/SDCCicode.c:
16721	  Preparations for replacing division by power of two by conditional addition and shift.
16722	* support/regression/tests/longlong.c,
16723	  support/regression/tests/gcc-torture-execute-pr42269-2.c,
16724	  support/regression/tests/gcc-torture-execute-20080529-1.c,
16725	  support/regression/tests/gcc-torture-execute-950503-1.c,
16726	  support/regression/tests/float_single.c:
16727	  Enable more tests for hc08.
16728
167292012-04-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16730
16731	* src/hc08/gen.c: fix bugs in genRLC, genRRC, and genJumpTab; support large stack
16732	  offsets in rmwWithAop; optimized asmopToBool
16733	* src/hc08/ralloc.c: fix bug in findAssignToSym
16734
167352012-04-20 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16736
16737	* src/hc08/ralloc2.cc,
16738	  src/hc08/gen.c:
16739	  Allow some use of ax.
16740
167412012-04-20 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16742
16743	* src/hc08/ralloc2.cc,
16744	  src/hc08/gen.c:
16745	  Remove accuse.
16746
167472012-04-19 Raphael Neider <rneider AT web.de>
16748
16749	* device/lib/pic16/libc/stdio/strmmssp.c:
16750	  fixed use of access bank vs. BSR
16751
16752	* device/lib/pic16/libsdcc/gptr/eeprom{8,16}_gptr{get,put}[1234].c,
16753	  device/lib/pic16/libsdcc/gptr/eeprom{8,16}_write.c:
16754	  implement EEPROM read/write access
16755
16756	* device/lib/pic16/libsdcc/gptr/gptr{get,put}[1234].c:
16757	  call EEPROM dispatchers on EEPROM accesses
16758
16759	* device/lib/pic16/libsdcc/Makefile.am:
16760	  add gptr EEPROM accessors
16761
16762	* device/non-free/lib/pic16/libdev/gptr/*:
16763	  dispatch EEPROM accesses to the appropriate implementations
16764	  based on device capabilities (no eeprom, 8 or 16 bit EEPROM
16765	  address space)
16766
16767	* device/non-free/lib/pic16/libdev/mkmk.sh,
16768	  device/non-free/lib/pic16/libdev/newdevices.txt:
16769	  improved to automatically add SSPBUF workaround
16770	  plus EEPROM dispatchers as required by the devices
16771
16772	* device/non-free/lib/pic16/libdev/pic18f1330.c,
16773	  device/non-free/lib/pic16/libdev/pic18f1220.c,
16774	  device/non-free/lib/pic16/libdev/pic18f4450.c:
16775	  removed manual SSPBUF workaround
16776
16777	* device/non-free/lib/pic16/libdev/fake_sspbuf.c:
16778	  provide automatic SSPBUF workaround
16779
16780	* device/lib/pic16/libsdcc/Makefile.in,
16781	  device/non-free/lib/pic16/libdev/Makefile.am,
16782	  device/non-free/lib/pic16/libdev/Makefile.in:
16783	  regenerated
16784
167852012-04-20 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16786
16787	* src/hc08/ralloc2.cc,
16788	  src/hc08/gen.c:
16789	  Made hc08 code generation more robust wrt. surviving registers and register operands.
16790
167912012-04-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16792
16793	* src/hc08/gen.c: rewrite genCast for register source/results
16794
167952012-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16796
16797	* src/hc08/ralloc2.cc,
16798	  src/hc08/gen.c:
16799	  Fixes for the cost function (reducing code size and exposing code generation issues).
16800
168012012-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16802
16803	* src/hc08/ralloc2.cc,
16804	  src/hc08/gen.c:
16805	  Made hc08 code generation more robust wrt. surviving registers and register operands.
16806
168072012-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16808
16809	* src/hc08/gen.c:
16810	  Preparations for removing accuse.
16811
168122012-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16813
16814	* src/hc08/ralloc2.cc,
16815	  src/hc08/gen.c:
16816	  Fix xa to hx assignment.
16817
168182012-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16819
16820	* src/hc08/ralloc2.cc:
16821	  Fix assignment of nRegs and regs for accuse symbols.
16822
168232012-04-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16824
16825	* src/hc08/gen.c: fixed div/mod sign ext. to work with register result
16826
168272012-04-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16828
16829	* src/hc08/ralloc2.cc,
16830	  src/hc08/gen.c:
16831	  Made hc08 code generation more robust wrt. surviving registers and register operands.
16832
168332012-04-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16834
16835	* src/hc08/ralloc2.cc,
16836	  src/hc08/gen.c:
16837	  Made hc08 code generation more robust wrt. surviving registers and register operands.
16838
168392012-04-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16840
16841	* src/hc08/ralloc2.cc,
16842	  src/hc08/gen.c:
16843	  Handling of pointer access in new allocator.
16844
168452012-04-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16846
16847	* src/SDCCralloc.hpp,
16848	  src/SDCCicode.c,
16849	  src/SDCCicode.h,
16850	  src/z80/ralloc2.cc,
16851	  src/hc08/gen.h,
16852	  src/hc08/ralloc2.cc,
16853	  src/hc08/gen.c:
16854	  Improve hc08 cost function.
16855
168562012-04-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16857
16858	* src/hc08/ralloc2.cc,
16859	  src/hc08/gen.c:
16860	  Made hc08 code generation more robust wrt. surviving registers and register operands.
16861
168622012-04-14 Raphael Neider <rneider AT web.de>
16863
16864	* src/pic16/genarith.c (pic16_genMult8XLit_n,pic16_genMult8X8_n):
16865	  work around early clobbering of input operands, fixes #3515677;
16866	  clean up, eliminate dead code
16867
168682012-04-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16869
16870	* src/hc08/gen.c: fix isDead status for register H
16871
168722012-04-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16873
16874	* src/SDCCralloc.hpp,
16875	  src/hc08/ralloc2.cc,
16876	  src/hc08/gen.c:
16877	  Made hc08 code generation more robust wrt. surviving registers and register operands.
16878
168792012-04-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16880
16881	* src/hc08/ralloc.h,
16882	  src/hc08/ralloc2.cc,
16883	  src/hc08/gen.c,
16884	  src/z80/ralloc2.cc:
16885	  Introduce isDead for hc08 registers.
16886
168872012-04-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16888
16889	* src/hc08/gen.c (asmOp): always keep pointer to operand in asmop
16890	* src/hc08/ralloc2.cc (instruction_cost): reenable !, IFX, and CAST
16891
168922012-04-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16893
16894	* src/SDCCsymt.c (newBoolLink): return bool instead of bit if no
16895	  bit memory.
16896	* src/hc08/gen.c: Fixed no register assigned to iTemp for IFX.
16897	  Guarded more instances of emitLabel for dry run
16898
168992012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16900
16901	* src/hc08/gen.c:
16902	  Fix genPointerGet with postincrement and result in h.
16903
169042012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16905
16906	* support/regression/tests/gcc-torture-execute-920428-1.c:
16907	  Reformatted test.
16908
169092012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16910
16911	* src/hc08/gen.c:
16912	  Fix handling of isFree for register operands.
16913
169142012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16915
16916	* src/hc08/gen.c:
16917	  More flexible use of A in cast.
16918
169192012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16920
16921	* src/hc08/ralloc2.cc:
16922	  Fix checking of XA and reenable use of assignment.
16923	* src/hc08/gen.c:
16924	  Additional debugging output.
16925
169262012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16927
16928	* src/SDCCset.c:
16929	  Additional assertion.
16930	* src/hc08/ralloc.c:
16931	  Avoid buffer overflow.
16932	* src/hc08/ralloc2.cc:
16933	  Do not use assignment for now.
16934
169352012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16936
16937	* src/SDCCicode.h,
16938	  src/SDCCicode.c:
16939	  Made isOperandLiteral() work on const operand *.
16940
169412012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16942
16943	* src/hc08/ralloc.c:
16944	  Cleanup.
16945	* src/hc08/gen.c:
16946	  Made genDjnz() more flexible.
16947	* src/hc08/ralloc2.cc:
16948	  Disallow X, A for now.
16949
169502012-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16951
16952	* src/SDCCralloc.hpp,
16953	  src/z80/ralloc2.cc,
16954	  src/hc08/ralloc2.cc:
16955	  Make optimal register allocator less port-specific.
16956
169572012-04-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16958
16959	* src/SDCCralloc.hpp,
16960	  src/z80/gen.c,
16961	  src/hc08/ralloc2.cc,
16962	  src/hc08/gen.c,
16963	  src/hc08/ralloc.c,
16964	  src/SDCCicode.c:
16965	  Optimal register allocator for hc08 working partially.
16966
169672012-04-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16968
16969	* src/SDCCcse.c (ifOperandsHave): fixed bug #3516746
16970
169712012-04-11 Philipp Klaus Krause <pkk AT spth.de>
16972
16973	* support/regression/tests/string.c:
16974	  Added test for strrchr().
16975	* src/z80/gen.c,
16976	  src/SDCCpeeph.c:
16977	  Fixed memory leaks.
16978
169792012-04-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16980
16981	* src/SDCCralloc.hpp,
16982	  src/z80/ralloc.c,
16983	  src/hc08/ralloc.c,
16984	  src/hc08/gen.c:
16985	  Enable new allocator as dummy, spilling everything.
16986
169872012-04-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
16988
16989	* src/z80/ralloc.c,
16990	  src/hc08/ralloc2.cc,
16991	  src/hc08/ralloc.c:
16992	  Preparations for optimal register allocation for hc08.
16993
169942012-04-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
16995
16996	* support/regression/Makefile.in,
16997	  support/regression/collate-results.py : another fix for bug #3477347
16998	* support/regression/ports/hc08/spec.mk: increase timeout to 30 seconds
16999
170002012-04-08 Borut Razem <borut.razem AT gmail.com>
17001
17002	* src/SDCCgen.c:
17003	  don't emit leading whitespaces in inline asm, 2nd try
17004	  fixed bug #3515390 - asm with leading whitespace passed to backends
17005	* src/z80/peep.c: made z80instructionSize() function more
17006	  robust: accept arbitrary number of arbitrary space characters
17007	  between mnemonic and the first operand
17008
170092012-04-07 Philipp Klaus Krause <pkk AT spth.de>
17010
17011	* src/z80/ralloc2.cc:
17012	  Fix invalid reads.
17013	* src/z80/gen.c:
17014	  Fix a memory leak.
17015
170162012-04-07 Borut Razem <borut.razem AT gmail.com>
17017
17018	* src/common.h, SDCCglobal.h: fixed mingw32 build on derna:
17019	  macros min and max should not be defined when compiled with C++
17020	* src/pic16/device.c, src/pic16/genarith.c, src/pic16/gen.c,
17021	  src/pic16/pcode.c, src/pic16/glue.c:
17022	  applied patch #3515647 - Correction patch on the PIC16's branch,
17023	  thanks to Molnar Karoly
17024
170252012-04-07 Philipp Klaus Krause <pkk AT spth.de>
17026
17027	* src/SDCCralloc.hpp:
17028	  Additional assertion to track down #3475617 and #3506333.
17029
170302012-04-06 Borut Razem <borut.razem AT gmail.com>
17031
17032	* src/SDCCgen.c, src/SDCCgen.h, src/SDCCralloc.hpp, src/common.h,
17033	  src/mcs51/gen.c, src/pic14/gen.c, src/z80/gen.c,
17034	  src/pic16/gen.c, src/ds390/gen.c, src/hc08/gen.c:
17035	  fixed NetBSD sparc64 build, code beautification,
17036	  additional unification of target code generation
17037	* support/cpp/configure.in, support/cpp/configure,
17038	  support/cpp/system.h: fixed sdcc configure include paths
17039	* src/SDCCgen.c: don't emit leading whitespaces in inline asm;
17040	  fixed bug #3515390 - asm with leading whitespace passed to backends
17041
170422012-04-05 Philipp Klaus Krause <pkk AT spth.de>
17043
17044	* support/regression/tests/gcc-torture-execute-20080529-1.c:
17045	  Disable test for gcc older than 5.0.
17046	* src/z80/ralloc2.cc,
17047	  src/SDCCralloc.hpp,
17048	  src/z80/gen.h,
17049	  src/z80/gen.c:
17050	  Made optimal allocator less z80-specific.
17051
170522012-04-04 Borut Razem <borut.razem AT gmail.com>
17053
17054	* support/cpp/system.h, support/cpp/libiberty/filenames.h,
17055	  support/cpp/libiberty/md5.c, support/cpp/libiberty/obstack.h:
17056	  sdcpp partially synchronized with GCC CPP release version 4.7.0
17057	* support/cpp/sdcpp.vcxproj: enhancements, added custom build messages
17058
170592012-04-03 Philipp Klaus Krause <pkk AT spth.de>
17060
17061	* src/SDCCralloc.hpp:
17062	  Additional assertions to track down #3475617 and #3506333.
17063
170642012-04-02 Philipp Klaus Krause <pkk AT spth.de>
17065
17066	* src/SDCCsymt.c
17067	  src/z80/main.c
17068	  src/hc08/main.c
17069	  src/hc08/gen.c
17070	  src/hc08/ralloc.c
17071	  device/include/stdint.h
17072	  device/lib/_rlslonglong.c
17073	  device/lib/_divslonglong.c
17074	  device/lib/z180/Makefile.in
17075	  device/lib/z180/stubs.s
17076	  device/lib/_mullonglong.c
17077	  device/lib/_rrslonglong.c
17078	  device/lib/z80/Makefile.in
17079	  device/lib/z80/stubs.s
17080	  device/lib/gbz80/stubs.s
17081	  device/lib/gbz80/Makefile.in
17082	  device/lib/_rlulonglong.c
17083	  device/lib/Makefile.in
17084	  device/lib/_divulonglong.c
17085	  device/lib/_divslonglong_rrx_s.c
17086	  device/lib/_rrslonglong_rrx_s.c
17087	  device/lib/_divulonglong_rrx_s.c
17088	  device/lib/_rrulonglong_rrx_s.c
17089	  device/lib/_rrulonglong.c
17090	  device/lib/_rlslonglong_rrx_s.c
17091	  device/lib/r2k/Makefile.in
17092	  device/lib/r2k/stubs.s
17093	  device/lib/_rlulonglong_rrx_s.c
17094	  device/lib/hc08/Makefile.in
17095	  device/lib/hc08/_ret.c
17096	  support/regression/tests/gcc-torture-execute-991216-1.c
17097	  support/regression/tests/gcc-torture-execute-pr47337.c
17098	  support/regression/tests/gcc-torture-execute-991216-2.c
17099	  support/regression/tests/gcc-torture-execute-pr20187-1.c
17100	  support/regression/tests/gcc-torture-execute-20000121-1.c
17101	  support/regression/tests/gcc-torture-execute-960801-1.c
17102	  support/regression/tests/gcc-torture-execute-930111-1.c
17103	  support/regression/tests/gcc-torture-execute-20001112-1.c
17104	  support/regression/tests/gcc-torture-execute-20101013-1.c:
17105	  long long for hc08.
17106	* src/z80/gen.c,
17107	  support/regression/tests/gcc-torture-execute-pr47337.c,
17108	  support/regression/tests/gcc-torture-execute-961213-1.c:
17109	  Fixed bug #3513892.
17110	* src/SDCCralloc.hpp:
17111	  Additional assertions to track down #3475617.
17112	* src/z80/ralloc.c:
17113	  Assertion for local variables outside of functions.
17114
171152012-04-01 Philipp Klaus Krause <pkk AT spth.de>
17116
17117	* device/lib/Makefile.in,
17118	  device/lib/*/Makefile.in,
17119	  device/lib/*/stubs.s,
17120	  device/lib/_divslonglong_rrx_s.c,
17121	  device/lib/_rrslonglong_rrx_s.c,
17122	  support/regression/tests/gcc-torture-execute-20101013-1.c,
17123	  support/regression/tests/gcc-torture-execute-950512-1.c:
17124	  long long division.
17125	* support/regression/tests/gcc-torture-execute-920612-1.c,
17126	  support/regression/tests/gcc-torture-execute-920711-1.c:
17127	  Disable tests for gcc older than 5.0.
17128	* support/regression/tests/longlong.c,
17129	  support/regression/tests/gcc-torture-execute-960801-1.c,
17130	  support/regression/tests/longlong.c:
17131	  Disable long long tests since they fail on 32-bit systems.
17132
171332012-03-31 Borut Razem <borut.razem AT gmail.com>
17134
17135	* src/SDCCgen.c, src/SDCCgen.h, src/ds390/gen.c,
17136	  src/ds390/main.c, src/hc08/gen.c, src/hc08/main.c,
17137	  src/mcs51/gen.c, src/pic14/gen.c, src/pic16/gen.c,
17138	  src/z80/gen.c, src/z80/gen.h:
17139	  introduced labelKey2num label handling macro
17140
171412012-03-30 Borut Razem <borut.razem AT gmail.com>
17142
17143	* src/common.h, src/Makefile.in, src/SDCCgen.c, src/SDCCgen.h,
17144	  src/SDCCasm.c, src/SDCCasm.h, src/SDCCdebug.c,
17145	  src/SDCCdebug.h, src/SDCCpeeph.c, src/SDCCpeeph.h,
17146	  src/avr/gen.c, src/ds390/gen.c, src/ds390/gen.h,
17147	  src/ds390/main.c, src/ds390/main.h, src/hc08/gen.c,
17148	  src/mcs51/gen.c, src/mcs51/main.c, src/mcs51/main.h,
17149	  src/pic14/gen.c, src/pic16/gen.c, src/z80/gen.c,
17150	  sdcc_vc_in.h, src/sdcc.vcxproj, src/sdcc.vcxproj.filters:
17151	  unification of target code generation
17152
171532012-03-30 Philipp Klaus Krause <pkk AT spth.de>
17154
17155	* device/lib/z180/stubs.s,
17156	  device/lib/z80/stubs.s,
17157	  device/lib/gbz80/stubs.s,
17158	  support/regression/tests/longlong.c,
17159	  support/regression/tests/gcc-torture-execute-*.c:
17160	  Made TODO comments more specific wrt. to what sdcc functionality is required for enabling the test, enabled more long long tests.
17161
171622012-03-30 Borut Razem <borut.razem AT gmail.com>
17163
17164	* configure.in, configure, sdccconf_in.h:
17165	  added check if c supports tags in unnamed struct,
17166	  fixed IS_VALID_OPTION
17167	* sim/ucsim/configure.in, sim/ucsim/configure:
17168	  fixed IS_VALID_OPTION
17169	* sim/ucsim/aclocal.m4: regenerated
17170	* src/pic14/Makefile.in: removed unneeded PORT
17171
171722012-03-30 Philipp Klaus Krause <pkk AT spth.de>
17173
17174	* src/z80/gen.c:
17175	  Fix for returning long long, fixes #3512403.
17176	* device/lib/z180/stubs.s,
17177	  device/lib/z80/stubs.s,
17178	  device/lib/gbz80/stubs.s,
17179	  support/regression/tests/longlong.c:
17180	  More tests for long long.
17181	* support/regression/tests/gcc-torture-execute-*.c:
17182	  Made TODO comments more specific wrt. to what sdcc functionality is required for enabling the test.
17183	* device/lib/_rrslonglong_rrx_s.c,
17184	  device/lib/_rrulonglong_rrx_s.c,
17185	  device/lib/_rlulonglong_rrx_s.c:
17186	  Fixes for long long shift.
17187
171882012-03-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17189
17190	* src/SDCCsymt.c (initCSupport),
17191	  device/lib/_rrslonglong_rrx_s.c,
17192	  device/lib/_rrulonglong_rrx_s.c:
17193	  Fixed declarations for shift support functions.
17194	* device/lib/*z*/Makefile.in,
17195	  device/lib/Makefile.in,
17196	  device/lib/_r??longlong_rrx_s.c,
17197	   device/lib/_mullonglong.c:
17198	  Shift and multiplication support for long long.
17199
172002012-03-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17201
17202	* src/z80/gen.c,
17203	  src/z80/ralloc2.cc:
17204	  More flexible use of de for gbz80.
17205
172062012-03-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17207
17208	* src/SDCCsymt.c (initCSupport): fixed declarations for shift support functions
17209	* src/SDCCsymt.c (initBuiltIns),
17210	  src/SDCCast.c (funcOfTypeVarg),
17211	  src/SDCCast.h: added some const qualifiers
17212
172132012-03-29 Philipp Klaus Krause <pkk AT spth.de>
17214
17215	* src/z80/gen.c,
17216	  src/z80/ralloc2.cc:
17217	  More flexible use of de for gbz80.
17218
172192012-03-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17220
17221	* src/z80/ralloc2.cc:
17222	  Allow some use of de on gbz80.
17223	* src/z80/gen.c:
17224	  gbz80 >> fix.
17225	* device/lib/_rrslonglong_rrx_s.c,
17226	  device/lib/_rrulonglong_rrx_s.c:
17227	  Support functions for shifting long long.
17228
172292012-03-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17230
17231	* src/z80/ralloc2.cc,
17232	  src/z80/ralloc.c,
17233	  src/z80/z80.h:
17234	  Remove support for using the old allocator for A, while using the new allocator for other registers.
17235
172362012-03-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17237
17238	* src/z80/z80.h:
17239	  Enabled exact cost function for gbz80.
17240	* src/z80/gen.c:
17241	  Fixed a gbz80 comparison bug.
17242
172432012-03-28 Borut Razem <borut.razem AT gmail.com>
17244
17245	* src/SDCCval.c, src/SDCCval.h, src/SDCCicode.c:
17246	  double2ul converted from macro to a function
17247
172482012-03-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17249
17250	* src/z80/gen.c:
17251	  Better support for returning long long, now works for gbz80, too.
17252
172532012-03-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17254
17255	* src/z80/gen.c:
17256	  Better assignment for large variables.
17257	* src/z80/peep.c:
17258	  Fix code size calculation bug.
17259
172602012-03-28 Borut Razem <borut.razem AT gmail.com>
17261
17262	* configure.in, configure, sdccconf_in.h,
17263	  sim/ucsim/configure.in, sim/ucsim/configure,
17264	  sim/ucsim/ddconfig_in.h:
17265	  use AC_C_BIGENDIAN instead of SDCC_BUILD_BIGENDIAN
17266	* support/cpp/config.in: regenerated
17267	* custom_in.h, sim/ucsim/custom_in.h: removed
17268
172692012-03-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17270
17271	* device/include/stdint.h:
17272	  Use long long for intmax_t where available.
17273
172742012-03-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17275
17276	* support/regression/tests/gcc-torture-execute-981001-1.c: Revert my
17277	  previous edit since it was not needed
17278
172792012-03-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17280
17281	* src/z80/gen.c,
17282	  support/regression/tests/longlong.c:
17283	  Fixed returning long long, and reenabled test.
17284
172852012-03-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17286
17287	* support/regression/tests/gcc-torture-execute-981001-1.c: Only use
17288	  __reentrant for SDCC and not for test-host
17289	* support/regression/tests/gcc-torture-execute-930106-1.c: Reenabled
17290
172912012-03-28 Philipp Klaus Krause <pkk AT spth.de>
17292
17293	* support/regression/tests/gcc-torture-execute-981001-1.c:
17294	  Fixed #3511512 / #3511513.
17295
172962012-03-27 Philipp Klaus Krause <pkk AT spth.de>
17297
17298	* src/SDCCsymt.c,
17299	  src/z80/gen.c,
17300	  support/regression/tests/gcc-torture-execute-960801-1.c,
17301	  support/regression/tests/longlong.c:
17302	  Support for returning long long and unsigned long long in z80, z180 and r2k port.
17303
173042012-03-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17305
17306	* src/z80/gen.c:
17307	  Fixed stack unbalance bug.
17308
173092012-03-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17310
17311	* src/SDCCasm.c (FileBaseName): fixed bug 3511092
17312
173132012-03-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17314
17315	* support/regression/tests/gcc-torture-execute-9*.c:
17316	  Added some more tests from the execute part of the gcc torture regression test suite.
17317
173182012-03-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17319
17320	* src/mcs51/ralloc.c (packForPush),
17321	  src/ds390/ralloc.c (packForPush),
17322	  src/hc08/ralloc.c (packForPush): fixed bug #3502628
17323	* support/regression/tests/gcc-torture-execute-20010403-1.c: reenabled
17324	* src/hc08/ralloc.c (packRegisters, packForPush): use packForPush
17325	  for SEND iCodes too.
17326
173272012-03-25 Maarten Brock <sourceforge.brock AT dse.nl>
17328
17329	* src/mcs51/ralloc.c (packForPush): fixed bug 3502621
17330	* support/regression/tests/gcc-torture-execute-20030117-1.c: enabled test
17331
173322012-03-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17333
17334	* src/SDCCast.c (isConformingBody): fixed bug #3509715
17335	* support/regression/tests/gcc-torture-execute-930513-2.c: reenabled
17336	* src/SDCCast.c (decorateType): fixed bug #3509713
17337	* support/regression/tests/gcc-torture-execute-930429-1.c: reenabled
17338	* src/SDCCicode.c (geniCodeAssign): fixed bug #3509712
17339	* support/regression/tests/gcc-torture-execute-921016-1.c: reenabled
17340	* src/SDCCopt.c (optimizeCastCast): fixed bug #3509711
17341	* support/regression/tests/gcc-torture-execute-921218-1.c: reenabled
17342
173432012-03-24 Borut Razem <borut.razem AT gmail.com>
17344
17345	* support/makebin/makebin.c: applied modified patch
17346	  #3510671 - [makebin / gbz80] add nintendo logo info in ROM header,
17347	  thanks to Noel Lemouel
17348
173492012-03-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17350
17351	* support/regression/Makefile.in,
17352	  support/regression/ports/ds390/spec.mk,
17353	  support/regression/ports/hc08/spec.mk,
17354	  support/regression/ports/mcs51-common/spec.mk,
17355	  support/regression/ports/pic14/spec.mk,
17356	  support/regression/ports/pic16/spec.mk,
17357	  support/regression/ports/ucgbz80/spec.mk,
17358	  support/regression/ports/ucr2k/spec.mk,
17359	  support/regression/ports/ucz180/spec.mk,
17360	  support/regression/ports/ucz80/spec.mk,
17361	  support/regression/ports/xa51/spec.mk: attempt to fix bug #3477347
17362
173632012-03-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17364
17365	* src/SDCCcse.h,
17366	  src/SDCCcse.c: handle possible pointer aliasing more conservatively
17367	* src/z80/gen.c (genFunction): reset stack.pushed at function start too
17368
173692012-03-22 Philipp Klaus Krause <pkk AT spth.de>
17370
17371	* support/regression/tests/gcc-torture-execute-941021-1.c:
17372	  Disable test for gcc older than 5.0.
17373
173742012-03-22 Borut Razem <borut.razem AT gmail.com>
17375
17376	* doc/sdccman.lyx: double underlined keywords,
17377	  fixed bug #3510011 - Wrong keyword
17378	* src/sdcc.vcxproj, src/sdcc.vcxproj.filters:
17379	  added some missing header files
17380
173812012-03-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17382
17383	* src/SDCCsymt.h,
17384	  src/SDCCsymt.c (initCSupport, typeFromStr, printTypeChainRaw),
17385	  src/SDCCopt.c (cnvToFloatCast, cnvToFixed16x16Cast, cnvFromFloatCast,
17386	  cnvFromFixed16x16Cast, convilong): ongoing upgrades for long long type
17387
173882012-03-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17389
17390	* src/hc08/gen.c (transferAopAop): fixed bug 3509707
17391	* support/regression/tests/gcc-torture-execute-930603-1.c: reenabled
17392
173932012-03-21 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17394
17395	* support/regression/tests/gcc-torture-execute-92*,
17396	  support/regression/tests/gcc-torture-execute-93*,
17397	  support/regression/tests/gcc-torture-execute-94*:
17398	  Added some more tests from the execute part of the gcc torture regression test suite.
17399
174002012-03-20 Borut Razem <borut.razem AT gmail.com>
17401
17402	* src/mcs51/gen.c, src/SDCCasm.c, src/SDCCasm.h, src/z80/gen.c,
17403	  src/SDCCutil.c, src/ds390/gen.c, src/hc08/gen.c:
17404	  code cleaning, optimization, ...
17405
174062012-03-20 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17407
17408	* device/include/stdint.h,
17409	  device/include/string.h,
17410	  device/include/stddef.h,
17411	  device/include/stdlib.h,
17412	  device/include/stdio.h,
17413	  device/include/time.h,
17414	  device/include/errno.h:
17415	  rsize_t, errno_t, constraint_handler_t, RSIZE_MAX from annex K (bounds-checking) of the C11 standard.
17416
174172012-03-19 Borut Razem <borut.razem AT gmail.com>
17418
17419	* src/SDCC.lex, doc/sdccman.lyx: removed asm() pseudo function
17420	  since it is not standard-compliant
17421
174222012-03-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17423
17424	* src/SDCCpeeph.c:
17425	  Handle gbz80 (hl+) and (hl-).
17426
174272012-03-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17428
17429	* support/regression/Makefile.in,
17430	  support/regression/collate-results.py: Summarize any failures in a
17431	  nicer format instead of all run together on one line
17432	* src/ds390/gen.c (genPlusIncr): fix problem with dereferencing a
17433	  generic pointer via a struct losing pointer type byte
17434
174352012-03-18 Borut Razem <borut.razem AT gmail.com>
17436
17437	* doc/sdccman.lyx,src/avr/gen.c, src/ds390/gen.c,
17438	  src/hc08/gen.c, src/mcs51/gen.c, src/pic14/gen.c,
17439	  src/pic16/device.c, src/pic16/gen.c, src/pic16/glue.c,
17440	  src/pic16/pcode.c, src/SDCC.lex, src/SDCC.y, src/SDCCast.c,
17441	  src/SDCCglue.c, src/SDCCsymt.h, src/SDCCutil.c,
17442	  src/SDCCutil.h, src/SDCCval.c:
17443	  implemented feature request #2815320 - please add asm()
17444	  pseudo function as alternate
17445	* sdcc.sln, src/sdcc.vcxproj, src/sdcc.vcxproj.filters,
17446	  src/yacc.vcxproj:
17447	  re-itroduced yacc project
17448	* .version, doc/sdccman.lyx: bumped version to 3.1.4
17449	* config.vcxproj, src/ds390/ds390.vcxproj,
17450	  src/hc08/hc08.vcxproj, src/mcs51/mcs51.vcxproj,
17451	  src/pic14/pic14.vcxproj, src/pic16/pic16.vcxproj,
17452	  src/sdcc.vcxproj, src/yacc.vcxproj, src/z80/z80.vcxproj,
17453	  all.vcxproj, all.vcxproj.filters:
17454	  VS project enhancements
17455	* src/SDCC.y, src/SDCCsymt.h, src/SDCCutil.c, src/SDCCutil.h,
17456	  src/SDCCval.c: fixed flaws in previous commit
17457	* src/SDCCsymt.c, src/pic14/glue.c, src/cdbFile.c:
17458	  fixed printing size_t type numbers
17459
174602012-03-18 Maarten Brock <sourceforge.brock AT dse.nl>
17461
17462	* src/ds390/gen.c (aopGet, aopPut),
17463	* src/mcs51/gen.c (aopGet, aopPut): fixed bug 3496842
17464	* support/regression/tests/sfr16.c: enabled test and fixed for ds390
17465
174662012-03-17 Borut Razem <borut.razem AT gmail.com>
17467
17468	* support/regression/tests/strstr.c,
17469	  support/regression/tests/strcpy.c,
17470	  support/regression/tests/strcmp.c,
17471	  support/regression/tests/strtok.c,
17472	  support/regression/tests/strncmp.c,
17473	  support/regression/tests/strspn.c,
17474	  support/regression/tests/strpbrk.c,
17475	  support/regression/tests/string.c:
17476	  merged strstr.c, strcpy.c, strcmp.c, strtok.c, strncmp.c,
17477	  strspn.c, and strpbrk.c to string.c, added test for
17478	  bug #3506236
17479
174802012-03-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17481
17482	* sdas/linksrc/lkarea.c (lnksect2): applied fix from Tim Schuerewegen
17483	  (bug 3495316)
17484
174852012-03-16 Borut Razem <borut.razem AT gmail.com>
17486
17487	* sdcc.sln, src/sdcc.vcxproj, src/sdcc.vcxproj.filters,
17488	  src/yacc.vcxproj:
17489	  project src renamed to sdcc, removed project yacc
17490	* doc/sdccman.lyx, src/SDCCasm.c, src/SDCCicode.h,
17491	  src/SDCCast.c, src/SDCCast.h, src/pic16/main.c:
17492	  implemeted pragma config for pic16 target, solution
17493	  of bug #3486890 - pic16 port config directive warning
17494	* src/Makefile.in, src/sdcc.vcxproj:
17495	  fixed bug #3506236: sdcc.exe unicode problem? by generating
17496	  8-bit scanner
17497
174982012-03-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17499
17500	* sdas/linksrc/lkarea.c (allocate_space,find_empty_space): fixed bound
17501	  checking errors on allocation bitmap (possbile fix for bug #3502626)
17502
175032012-03-16 Raphael Neider <rneider AT web.de>
17504
17505	* device/non-free/lib/pic16/libdev/pic18f1330.c:
17506	  add dummy SSPBUF symbol as required by __stream_putchar/printf
17507	* device/non-free/lib/pic16/libdev/testall.sh:
17508	  test using printf_tiny() for greater confidence
17509
175102012-03-14 Borut Razem <borut.razem AT gmail.com>
17511
17512	* debugger/mcs51/sdcdb.c, src/mcs51/gen.c, src/SDCCopt.c,
17513	  src/hc08/gen.c, src/hc08/ralloc.c, src/ds390/gen.c,
17514	  src/ds390/ralloc.c, sim/ucsim/cmd.src/cmdset.cc,
17515	  sim/ucsim/cmd.src/cmdstat.cc, sim/ucsim/cmd.src/cmdgui.cc,
17516	  sim/ucsim/z80.src/inst.cci, sdas/asxxsrc/asout.c:
17517	  fixed gcc 4.6.1 warnimgs, mainly warning: 'xxx' may be used
17518	  uninitialized in this function [-Wuninitialized]
17519
175202012-03-14 Philipp Klaus Krause <pkk AT spth.de>
17521
17522	* src/z80/ralloc.c,
17523	  support/regression/tests/bug3502965.c:
17524	  Fixed bug #3502965.
17525	* support/regression/tests/gcc-torture-execute-20030209-1.c,
17526	  support/regression/tests/gcc-torture-execute-20031012-1.c:
17527	  Added explanation for why tests don't work on gbz80.
17528	* src/SDCCmain.c:
17529	  Reenable non-compliant SDCC macros (but not for --std-c89, --std-c99, --std-c11).
17530	* src/z80/ralloc2.cc:
17531	  More flexible handling of accumulator in multiplication and return.
17532
175332012-03-14 Borut Razem <borut.razem AT gmail.com>
17534
17535	* device/non-free/include/*, device/non-free/lib/*:
17536	  added info about "The header files should state that they are
17537	  only to be used with authentic Microchip devices" Microchip
17538	  requirement and GPL incompatibility
17539
175402012-03-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17541
17542	* support/regression/tests/gcc-torture-execute-20010224-1.c,
17543	  support/regression/tests/gcc-torture-execute-20030714-1.c:
17544	  Disable tests for gcc older than 5.0.
17545
175462012-03-13 Borut Razem <borut.razem AT gmail.com>
17547
17548	* device/include/*, device/lib/*: corrected GPL license version
17549	  from 2.1 to 2: GPLv2.1 does not exist
17550
175512012-03-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17552
17553	* support/regression/tests/gcc-torture-execute-2001*.c,
17554	  support/regression/tests/gcc-torture-execute-2003*.c:
17555	  Added some more tests from the execute part of the gcc torture regression test suite.
17556
175572012-03-12 Borut Razem <borut.razem AT gmail.com>
17558
17559	* doc/TININative.txt: removed, available at
17560	  http://sourceforge.net/apps/trac/sdcc/wiki/Using%20SDCC%20to%20develop%20Native%20Java%20functions
17561	* doc/Makefile.in:
17562	  don't generate unusable html and txt versions of sdccman
17563
175642012-03-11 Philipp Klaus Krause <pkk AT spth.de>
17565
17566	* src/SDCCpeeph.c,
17567	  src/z80/peeph-r2k.def,
17568	  src/z80/peeph-z80.def,
17569	  support/regression/tests/bug3501942.c:
17570	  Fixed bug #3501942.
17571
175722012-03-11 Philipp Klaus Krause <pkk AT spth.de>
17573
17574	* src/z80/gen.c:
17575	  Fixed bug that made copying from hl to iy ineffcient on r2k,
17576	  fix another check in commitPair(), improved stack adjustment
17577	  after function call.
17578
175792012-03-11 Raphael Neider <rneider AT web.de>
17580
17581	* device/lib/pic16/libio/usart/uopen.c:
17582	  properly setup BAUDCONbits.BRG16, closes #3495815
17583
17584	* device/non-free/include/pic16/pic18f1220.h:
17585	  added BAUDCON alias and structure definition for BAUDCTL
17586
175872012-03-10 Borut Razem <borut.razem AT gmail.com>
17588
17589	* doc/sdccman.lyx:
17590	  documented support for 18f1230/18f1330 device family
17591
175922012-03-10 Raphael Neider <rneider AT web.de>
17593
17594	* Makefile.in:
17595	  device/lib build depends on sdcc-sdbinutils
17596
17597	* device/include/pic16/adc.h,
17598	  device/include/pic16/pic16devices.txt,
17599	  device/include/pic16/pic18fregs.h,
17600	  device/lib/pic16/libio/Makefile.am,
17601	  device/lib/pic16/libio/adc/adcbusy.c,
17602	  device/lib/pic16/libio/adc/adcopen.c,
17603	  device/lib/pic16/libio/adc/adcsetch.c,
17604	  device/lib/pic16/libio/i2c.ignore,
17605	  device/lib/pic16/libio/usart/uopen.c,
17606	  device/non-free/include/pic16/pic18f1230.h,
17607	  device/non-free/include/pic16/pic18f1330.h,
17608	  device/non-free/lib/pic16/libdev/Makefile.am,
17609	  device/non-free/lib/pic16/libdev/pic18f1230.c,
17610	  device/non-free/lib/pic16/libdev/pic18f1330.c,
17611	  device/non-free/lib/pic16/pics.all,
17612	  support/scripts/pic18fam-h-gen.pl:
17613	  add support for 18f1230 and 18f1330 devices
17614
17615	* device/lib/pic16/libio/mkmk.sh:
17616	  adjust path to pics.all
17617
17618	* device/lib/pic16/libdev:
17619	  removed obsolete, empty directory
17620
17621	* device/lib/pic16/libio/Makefile.in,
17622	  device/non-free/include/pic16/pic18fam.h,
17623	  device/non-free/lib/pic16/libdev/Makefile.in:
17624	  regenerated
17625
176262012-03-10 Borut Razem <borut.razem AT gmail.com>
17627
17628	* doc/README.txt, doc/sdccman.lyx:
17629	  backslashes replaced with slashes in non-free paths;
17630	  obsoleted special sdcc keywords which are not preceded
17631	  by a double underscore
17632	* support/scripts/inc2h-pic16.pl, support/scripts/inc2h.pl:
17633	  added comment about Microchip "The header files should state
17634	  that they are only to be used with authentic Microchip
17635	  devices" requirement.
17636
176372012-03-10 Philipp Klaus Krause <pkk AT spth.de>
17638
17639	* src/z80/gen.c:
17640	  Fixed bug #3501019.
17641
176422012-03-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17643
17644	* src/mcs51/gen.c (genCast): fixed bug #3486542
17645	* support/regression/tests/gcc-torture-execute-pr15296.c: re-enabled
17646
176472012-03-09 Borut Razem <borut.razem AT gmail.com>
17648
17649	* doc/README.txt:
17650	  added info about included code from gcc test suite
17651	* Makefile.in:
17652	  replaced test -e with -f, since -e is not available in sh
17653	  on Solaris
17654
176552012-03-08 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17656
17657	* src/z80/gen.c:
17658	  Use 16-bit addition instructions for 8-bit additions when cheaper and possible.
17659
176602012-03-07 Borut Razem <borut.razem AT gmail.com>
17661
17662	* Makefile.in: copy correct sdbinutils executables to bin
17663
176642012-03-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17665
17666	* src/SDCCopt.c (getAddrspaceiCode),
17667	  src/SDCCralloc.hpp (create_cfg): properly handle IFX and
17668	  JUMPTABLE operands
17669
176702012-03-06 Borut Razem <borut.razem AT gmail.com>
17671
17672	* Makefile.in, support/sdbinutils/binutils/Makefile.am,
17673	  support/sdbinutils/binutils/Makefile.in,
17674	  support/scripts/sdcc.nsi,
17675	  support/sdbinutils/bfd/asxxxx.c,
17676	  support/sdbinutils/binutils/nm.c:
17677	  added sdnm sdbinutils utility
17678
176792012-03-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17680
17681	* src/z80/gen.c:
17682	  Fixed bug #3496508.
17683
176842012-03-05 Borut Razem <borut.razem AT gmail.com>
17685
17686	* src/SDCCicode.c:
17687	  disable -O2 optimization for gcc 4.6.3, see bug #3285611
17688	* support/scripts/sdcc_mingw32: minor cosmetical fix
17689	* configure.in, configure, config.guess, config.sub:
17690	  added host and build type detection
17691	* device/lib/pic14/Makefile.in,
17692	  device/lib/pic14/libm/Makefile.in: regenerated
17693
176942012-03-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17695
17696	* src/SDCCopt.c (separateAddressSpaces): fixed bug #3476041
17697
176982012-03-04 Borut Razem <borut.razem AT gmail.com>
17699
17700	* doc/README.txt, doc/sdccman.lyx: small corrections
17701	* src/SDCC.lex: removed forward declaration of non existing
17702	  function deprecated_keyword(), removed macro TKEYWORDSDCC
17703	* support/cpp/opts.c, support/cpp/sdcpp.c,
17704	  support/cpp/version.c, support/cpp/version.h:
17705	  updated version to 4.6.3
17706
177072012-03-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17708
17709	* src/SDCCsymt.h,
17710	* src/SDCCerr.c,
17711	* src/SDCCerr.h,
17712	* src/SDCC.y: fix struct/union tag scope problems
17713	  (including bug #3487670)
17714	* support/regression/tests/structscope.c: new tests
17715
177162012-03-03 Borut Razem <borut.razem AT gmail.com>
17717
17718	* support/regression/ports/ucz80/spec.mk,
17719	  support/regression/ports/ucz180/spec.mk:
17720	  simulation timeout doubled due to several tests
17721	  failures on sparc64-unknown-netbsd platform
17722
177232012-03-02 Philipp Klaus Krause <pkk AT spth.de>
17724
17725	* src/z80/gen.c,
17726	  src/z80/ralloc.c,
17727	  support/regression/tests/bug-3495411.c,
17728	  Fixed #3495411 and another --oldralloc bug.
17729
177302012-03-02 Borut Razem <borut.razem AT gmail.com>
17731
17732	* doc/sdccman.lyx: fixed pdf generation;
17733	  added chapter 1.2 SDCC Suite Licenses;
17734	  libraries license should be at least as liberal as the GPLv2+LE;
17735	  note about GPL incompatible pic device libraries;
17736	  added link to "List of the SDCC library" wiki page;
17737	  added link to "SDCC - Small Device C Compiler Wiki" wiki page;
17738	  use term "SDCC suite";
17739	  formatting cleaning
17740	* doc/README.txt: changed chapters Licenses and Authors and interested persons
17741
177422012-03-01 Borut Razem <borut.razem AT gmail.com>
17743
17744	* support/regression/ports/ucz80/spec.mk:
17745	  simulation timeout increased to 20s due to several tests
17746	  failures on sparc64-unknown-netbsd platform
17747	* configure.in, configure: report CPPFLAGS and LDFLAGS settings
17748	* support/sdbinutils/bfd/configure.in,
17749	  support/sdbinutils/bfd/configure,
17750	  PKGVERSION set to (sdbinutils derived from GNU Binutils),
17751	  BUGURL set to http://sourceforge.net/tracker/?group_id=599&atid=100599
17752	* support/sdbinutils/binutils/version.c:
17753	  --vesion shows sd* names instead GNU *
17754
177552012-03-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17756
17757	* support/regression/tests/gcc-torture-execute-20080506-1.c,
17758	  support/regression/tests/gcc-torture-execute-20080506-2.c:
17759	  Disable tests for gcc versions earlier than 5.0.
17760
177612012-03-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17762
17763	* support/regression/tests/cse.c: new tests checking for CSE problems
17764
177652012-02-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17766
17767	* support/regression/tests/2000*.c:
17768	  More tests from gcc.
17769
177702012-02-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17771
17772	* support/regression/tests/gcc-torture-execute-20000402-1.c:
17773	  Disable test since unsigned long long is not yet fully supported.
17774	* support/regression/tests/gcc-torture-execute-20000314-1.c:
17775	  Silence warning.
17776
177772012-02-27 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17778
17779	* support/regression/tests/2000*.c:
17780	  More tests from gcc.
17781
177822012-02-26 Borut Razem <borut.razem AT gmail.com>
17783
17784	* support/regression/ports/ds390/spec.mk:
17785	  simulation timeout icreased to 40s due to
17786	  gcc-torture-execute-20090113-1 test failure on
17787	  x86_64-w64-mingw32 and sparc64-unknown-netbsd platforms
17788	* doc/README.txt: added gbz80 to supported targets,
17789	  explanation of sdcc run time libraries licensing
17790
177912012-02-26 Philipp Klaus Krause <pkk AT spth.de>
17792
17793	* device/include/mcs51/compiler.h:
17794	  Update for SDCC -> __SDCC rename.
17795	* support/regression/tests/gcc-torture-execute-pr49161.c,
17796	  support/regression/tests/gcc-torture-execute-pr49039.c,
17797	  support/regression/tests/gcc-torture-execute-pr48809.c,
17798	  support/regression/tests/gcc-torture-execute-pr48973-1.c,
17799	  support/regression/tests/gcc-torture-execute-pr48973-2.c:
17800	  Disable tests for all gcc older than 5.0.
17801	* doc/sdccman.lyx:
17802	  Document feature macro rename.
17803
178042012-02-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17805
17806	* src/ds390/gen.c (genAssign): fixed bug #3463343
17807	* support/regression/tests/gcc-torture-execute-string-opt-5.c:
17808	  reenabled for ds390
17809	* src/ds390/gen.c (genPlus, genMinus): fix bug #3486541
17810	* support/regression/tests/gcc-torture-execute-pr20527-1.c:
17811	  reenabled for ds390
17812
178132012-02-26 Borut Razem <borut.razem AT gmail.com>
17814
17815	* doc/sdccman.lyx: documented support for 16f720/16f721
17816
178172012-02-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17818
17819	* support/regression/tests/gcc-torture-execute-stdarg-4.c:
17820	  reenabled for ds390
17821
178222012-02-25 Borut Razem <borut.razem AT gmail.com>
17823
17824	* configure.in, configure, Makefile.in, sdcc.sln,
17825	  doc/sdccman.lyx, support/sdranlib/*: support/sdranlib removed
17826	* .version, doc/sdccman.lyx: bumped version to 3.1.3
17827
178282012-02-25 Raphael Neider <rneider AT web.de>
17829
17830	* device/include/pic14/pic14devices.txt,
17831	  device/non-free/include/pic14/pic16f720.h,
17832	  device/non-free/include/pic14/pic16f721.h,
17833	  device/non-free/lib/pic14/libdev/Makefile.in,
17834	  device/non-free/lib/pic14/libdev/devices.txt,
17835	  device/non-free/lib/pic14/libdev/pic16f720.c,
17836	  device/non-free/lib/pic14/libdev/pic16f721.c:
17837	  added support for 16f720/16f721
17838
17839	* device/non-free/include/pic14/pic14regs.h:
17840	  fixed to use __SDCC_PROCESSOR instead of SDCC_PROCESSOR
17841
17842	* device/non-free/lib/pic16/libdev/testall.sh:
17843	  test support for all devices by compiling a source file
17844
178452012-02-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17846
17847	* src/SDCCcse.c: fixed bug #3473062
17848	* src/z80/gen.c (genCmpGt, genCmpLt),
17849	  src/hc08/gen.c (genCmp, genCmpEQorNE),
17850	  src/pic16/gen.c (genCmpGt, genCmpLt),
17851	  src/pic14/gen.c (genCmpGt, genCmpLt): fixed bug #3487025
17852
178532012-02-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17854
17855	* support/regression/tests/gcc-torture-execute-pr42833.c:
17856	  Disable test for all gcc versions earlier than 5.0.
17857
178582012-02-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17859
17860	* src/SDCCast.c (createDo): fixed bug #3489326
17861
178622012-02-23 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17863
17864	* src/z80/gen.c:
17865	  More efficient access to two-byte variables near the stack pointer for r2k, fix a bug when fetching 1-byte variables.
17866
178672012-02-23 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17868
17869	* src/z80/gen.c,
17870	  src/z80/peeph-z80.def:
17871	  More efficient access to two-byte variables near the stack pointer.
17872	* support/regression/tests/gcc-torture-execute-pr42833.c:
17873	  Disable test for even more gcc versions.
17874
178752012-02-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17876
17877	* src/SDCCmain.c,
17878	  device/*,
17879	  support/regression/*:
17880	  sdcc macro mess cleanup, fix #3490776.
17881
178822012-02-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17883
17884	* support/regression/tests/bug2935162.c,
17885	* device/include/limits.h: changed constants to be compatible with
17886	  both C89 and C99 integer constant type rules
17887	* src/SDCCval.c (constVal): fixed bug #3489899
17888	* src/mcs51/peeph.def: don't tail call optimize longjmp()
17889	* src/SDCCsymt.c (addSymChain): fixed bug #3489870
17890
178912012-02-21 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17892
17893	* device/include/setjmp.h,
17894	  support/regression/tests/setjmp.c,
17895	  device/lib/_setjmp.c:
17896	  Rename HIDE_LONGJMP to __SDCC_HIDE_LONGJMP for standard compliance, enable setjmp/longjmp for z180 and r2k.
17897
178982012-02-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17899
17900	* src/SDCCcse.c (cseBBlock): fixed bug #3482753
17901	* support/regression/tests/bug3482753.c: new
17902
179032012-02-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17904
17905	* src/SDCCsymt.h,
17906	  src/SDCCast.h,
17907	  src/SDCCast.c (decorateType, processParms, checkPtrCast, copyAstValues):
17908	  fixed bug #3438706
17909
179102012-02-19 Philipp Klaus Krause <pkk AT spth.de>
17911
17912	* src/z80/gen.c,
17913	  support/regression/tests/gcc-torture-execute-pr39339.c:
17914	  Fixed bug #3486544.
17915
179162012-02-19 Philipp Klaus Krause <pkk AT spth.de>
17917
17918	* src/z80/gen.c,
17919	  support/regression/tests/gcc-torture-execute-pr43236.c,
17920	  support/regression/tests/gcc-torture-execute-20090113-1.c:
17921	  Fixed bugs #3486543 and #3487324.
17922
179232012-02-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17924
17925	* src/SDCCsymt.h,
17926	  src/SDCCsymt.c (findSymWithLevel),
17927	  src/SDCCast.c (resolveSymbols, processBlockVars): fixed bugs 3403429,
17928	  3153215, 3107914
17929	* support/regression/tests/bug3403429.c: enabled test
17930
179312012-02-18 Philipp Klaus Krause <pkk AT spth.de>
17932
17933	* support/regression/tests/gcc-torture-execute-pr44468.c,
17934	  support/regression/tests/gcc-torture-execute-pr43438.c,
17935	  support/regression/tests/gcc-torture-execute-pr45034.c:
17936	  Disable tests for older gcc.
17937
179382012-02-17 Philipp Klaus Krause <pkk AT spth.de>
17939
17940	* device/lib/z80/divunsigned.s,
17941	  device/lib/z180/divunsigned.s,
17942	  device/lib/r2k/divunsigned.s:
17943	  Remove some leftover code for handling division by zero (patch by parerga, #3488149).
17944
179452012-02-17 Philipp Klaus Krause <pkk AT spth.de>
17946
17947	* support/regression/tests/gcc-torture-execute-pr37924.c:
17948	  Fix gcc compilation failure.
17949
179502012-02-16 Philipp Klaus Krause <pkk AT spth.de>
17951
17952	* src/z80/peeph-r2k.def:
17953	  Use some peepholes useful when omitting the frame pointer from z80 for r2k.
17954	* src/z80/gen.c:
17955	  Improve code generation for r2k when omitting frame pointer, enable use of ld iy, hl on r2k.
17956
179572012-02-16 Borut Razem <borut.razem AT gmail.com>
17958
17959	* support/sdbinutils/include/opcode/sparc.h,
17960	  support/sdbinutils/include/aout/sun4.h:
17961	  added for NetBSD/sparc64 bfd build
17962
179632012-02-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17964
17965	* src/hc08/main.c (hasExtBitOp),
17966	  src/hc08/gen.c (genGetAbit, genGetByte, genGetWord, genhc08Code):
17967	  implemented the GETABIT, GETBYTE, and GETWORD iCodes for HC08
17968
179692012-02-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17970
17971	* src/z80/gen.c:
17972	  Cheaper signed comparison when right operand is a literal.
17973	* support/regression/tests/gcc-torture-execute-pr37924.c:
17974	  Disable even more of a test for older gcc.
17975
179762012-02-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17977
17978	* support/regression/tests/gcc-torture-execute-pr37924.c,
17979	  support/regression/tests/gcc-torture-execute-pr33779-2.c:
17980	  Disable tests for older gcc.
17981	* src/SDCCast.c
17982	  Fix setting of CurrFunc for non-functions.
17983	* src/z80/main.c,
17984	  src/z80/gen.h,
17985	  src/z80/gen.c,
17986	  src/z80/ralloc2.cc:
17987	  Fixes for --fomit-frame-pointer, omit frame pointer by default for
17988	  functions with low register pressure and few stack accesses.
17989
179902012-02-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
17991
17992	* src/SDCCast.c (createWhile, createDo, backPatchLabels): put label
17993	  nodes above IFX nodes rather than between IFX and condition
17994	* src/SDCCicode.c (geniCodeIfx, ast2iCode): fixed bug #3429793
17995
179962012-02-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
17997
17998	* src/z80/ralloc2.cc,
17999	  src/z80/gen.h,
18000	  src/z80/gen.c:
18001	  Omit frame pointer for functions with low register pressure and few parameter accesses.
18002
180032012-02-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18004
18005	* src/z80/gen.c:
18006	  Fix addition when multiple operands are on the stack and --fomit-frame-pointer is used.
18007
180082012-02-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18009
18010	* src/z80/peeph-z80.def,
18011	  src/z80/gen.c,
18012	  src/z80/ralloc2.cc:
18013	  Generate better code when using --fomit-frame-ppinter.
18014
180152012-02-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18016
18017	* support/regression/tests/gcc-torture-execute-pr28651.c:
18018	  Disable test for older gcc.
18019
180202012-02-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18021
18022	* support/regression/tests/gcc-torture-execute-pr49073.c,
18023	  support/regression/tests/gcc-torture-execute-pr36691.c:
18024	  Disabled some tests for older gcc.
18025	* support/regression/tests/gcc-torture-execute-*.c:
18026	  Added some more tests from the execute part of the gcc torture regression test suite.
18027	* src/z80/gen.c:
18028	  Improve handling of bc, de in addition.
18029	* src/SDCC.lex:
18030	  Remove leftover legacy keyword function.
18031
180322012-02-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18033
18034	* src/z80/ralloc2.cc,
18035	  src/z80/gen.c:
18036	  Improve handling of hl in address calculations, minor decrement improvement.
18037
180382012-02-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
18039
18040	* support/regression/tests/gcc-torture-execute-pr34070-1.c,
18041	  support/regression/tests/gcc-torture-execute-pr34070-2.c:
18042	  Disable more tests for older gcc
18043	* support/regression/tests/gcc-torture-execute-pr15296.c,
18044	  support/regression/tests/bug1115321.c: Fix test to be compatible
18045	  with hosts in which int and pointers differ in size.
18046
180472012-02-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
18048
18049	* support/regression/tests/gcc-torture-execute-pr42833.c:
18050	  don't redefine ssize_t if host already defines
18051
180522012-02-12 Raphael Neider <rneider AT web.de>
18053
18054	* src/pic14/pcode.c (newpCodeOpBit):
18055	  prevent SIGSEGV on copying temporary registers
18056
18057	* src/pic14/gen.c (gen{,End}Function, gen{,End}Critical, genpic14Code),
18058	  src/pic16/gen.c (gen{,End}Function, gen{,End}Critical, genpic16Code):
18059	  implement __critical (block and function attribute, PIC14 limited to
18060	  no-arg functions: arg0 in W would be corrupted)
18061
180622012-02-12 Philipp Klaus Krause <pkk AT spth.de>
18063
18064	* support/regression/tests/gcc-torture-execute-pr42833.c,
18065	  support/regression/tests/gcc-torture-execute-pr44555.c,
18066	  support/regression/tests/gcc-torture-execute-pr48809.c,
18067	  support/regression/tests/gcc-torture-execute-pr48973-1.c,
18068	  support/regression/tests/gcc-torture-execute-pr48973-2.c,
18069	  support/regression/tests/gcc-torture-execute-pr49039.c,
18070	  support/regression/tests/gcc-torture-execute-pr49123.c,
18071	  support/regression/tests/gcc-torture-execute-pr49161.c,
18072	  support/regression/tests/gcc-torture-execute-pr49768.c:
18073	  Disable some tests for older gcc.
18074
180752012-02-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
18076
18077	* support/sdbinutils/include/mach-o/*: added missing files for Mac OS
18078
180792012-02-12 Raphael Neider <rneider AT web.de>
18080
18081	* src/pic14/gen.c (genGetABit, genpic14Code),
18082	  src/pic14/main.c (hasExtBitOp),
18083	  src/pic16/gen.c (genGetABit, genpic16Code),
18084	  src/pic16/main.c (hasExtBitOp):
18085	  implement GETABIT iCode, fixes #2986039
18086
180872012-02-11 Raphael Neider <rneider AT web.de>
18088
18089	* device/include/pic16/signal.h:
18090	  explicitly access SFRs via access bank, closes #3482876
18091
180922012-02-11 Raphael Neider <rneider AT web.de>
18093
18094	* device/include/pic14/pic14devices.txt,
18095	  device/non-free/include/pic14/pic16f1946.h,
18096	  device/non-free/include/pic14/pic16f1947.h,
18097	  device/non-free/lib/pic14/libdev/Makefile.in,
18098	  device/non-free/lib/pic14/libdev/devices.txt,
18099	  device/non-free/lib/pic14/libdev/pic16f1946.c,
18100	  device/non-free/lib/pic14/libdev/pic16f1947.c,
18101	  doc/sdccman.lyx:
18102	  enabled/added devices
18103
18104	* device/non-free/lib/pic14/libdev/testall.sh:
18105	  test support for all devices by compiling a source file
18106
18107	* device/non-free/lib/pic14/libdev/mkall.sh,
18108	  support/scripts/inc2h.pl:
18109	  improved regenerating device support files
18110
181112012-02-11 Borut Razem <borut.razem AT gmail.com>
18112
18113	* device/include/pic14/pic14devices.txt,
18114	  device/non-free/include/pic14/pic16f1503.h,
18115	  device/non-free/include/pic14/pic16f1507.h,
18116	  device/non-free/include/pic14/pic16f1508.h,
18117	  device/non-free/include/pic14/pic16f1509.h,
18118	  device/non-free/include/pic14/pic16f1516.h,
18119	  device/non-free/include/pic14/pic16f1517.h,
18120	  device/non-free/include/pic14/pic16f1518.h,
18121	  device/non-free/include/pic14/pic16f1519.h,
18122	  device/non-free/include/pic14/pic16f1526.h,
18123	  device/non-free/include/pic14/pic16f1527.h,
18124	  device/non-free/lib/pic14/libdev/Makefile.in,
18125	  device/non-free/lib/pic14/libdev/devices.txt,
18126	  device/non-free/lib/pic14/libdev/pic16f1503.c,
18127	  device/non-free/lib/pic14/libdev/pic16f1507.c,
18128	  device/non-free/lib/pic14/libdev/pic16f1508.c,
18129	  device/non-free/lib/pic14/libdev/pic16f1509.c,
18130	  device/non-free/lib/pic14/libdev/pic16f1516.c,
18131	  device/non-free/lib/pic14/libdev/pic16f1517.c,
18132	  device/non-free/lib/pic14/libdev/pic16f1518.c,
18133	  device/non-free/lib/pic14/libdev/pic16f1519.c,
18134	  device/non-free/lib/pic14/libdev/pic16f1526.c,
18135	  device/non-free/lib/pic14/libdev/pic16f1527.c:
18136	  applied patch #3471142: [PIC14] more enchanced core devices,
18137	  thanks to Gal Zsolt
18138	* doc/sdccman.lyx: added new 16f15xx devices to the list
18139	* support/sdbinutils/include/fopen-bin.h:
18140	  added, required by mingw build
18141	* Makefile.in: added EXEEXT required by mingw build
18142	* support/scripts/sdcc_mingw32: added TARGETAR
18143
181442012-02-11 Philipp Klaus Krause <pkk AT spth.de>
18145
18146	* support/regression/tests/gcc-torture-execute-pr20601-1.c:
18147	  Disabled test for host, since _Noreturn support is required.
18148	* support/regression/tests/gcc-torture-execute-pr23047.c:
18149	  Removed test, since it seems to test for implementation-defined behaviour.
18150	* support/regression/tests/gcc-torture-execute-pr33779-1.c:
18151	  Use exact-width integer types from stdint.h instead, no longer require long to be 32 bits.
18152
181532012-02-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18154
18155	* src/z80/ralloc2.cc,
18156	  src/z80/gen.c:
18157	  Increase flexibility of handling of register pair hl over function calls.
18158
181592012-02-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18160
18161	* support/regression/tests/*
18162	  Added some more tests from the execute part of the gcc torture regression test suite.
18163
181642012-02-10 Borut Razem <borut.razem AT gmail.com>
18165
18166	* configure, Makefile.in, configure.in, sdccconf_in.h,
18167	  device/lib/z180/Makefile.in, device/lib/small/Makefile.in,
18168	  device/lib/z80/Makefile.in, device/lib/gbz80/Makefile.in,
18169	  device/lib/ds390/Makefile.in, device/lib/medium/Makefile.in,
18170	  device/lib/Makefile.in, device/lib/ds400/Makefile.in,
18171	  device/lib/mcs51/Makefile.in, device/lib/huge/Makefile.in,
18172	  device/lib/large/Makefile.in, device/lib/r2k/Makefile.in,
18173	  device/lib/hc08/Makefile.in, Makefile.common.in,
18174	  support/scripts/sdcc.nsi, support/sdbinutils/*:
18175	  device/lib/z180/Makefileadded sdbinutils: sdar and sdranlib
18176	* device/lib/z180/Makefile:
18177	  deleted, generated from device/lib/z180/Makefile.in
18178
181792012-02-09 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18180
18181	* src/z80/gen.c:
18182	  Fix for yesterdays addition improvement, decide in which pair
18183	  to increment in code generator instead of peephole optimizer.
18184
181852012-02-08 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18186
18187	* src/z80/gen.c,
18188	  src/z80/peeph-z80.def:
18189	  Minor addition improvement.
18190
181912012-02-08 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18192
18193	* src/z80/gen.c:
18194	  Use bit instruction for & in jump condition.
18195	* src/z80/peep.c,
18196	  src/z80/peeph-z80.def:
18197	  Minor peephole improvements.
18198
181992012-02-07 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18200
18201	* src/z80/ralloc2.cc,
18202	  src/z80/gen.c:
18203	  Improve handling of register pairs, in particular hl.
18204
182052012-02-06 Philipp Klaus Krause <pkk AT spth.de>
18206
18207	* src/SDCCast.c:
18208	  Fixed bug #3073647.
18209	* src/SDCCsymt.c:
18210	  Fixed #3034739.
18211
182122012-02-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
18213
18214	* support/regression/tests/bug2935162.c: don't assume 32-bit long host
18215
182162012-02-06 Philipp Klaus Krause <pkk AT spth.de>
18217
18218	* src/z80/gen.c:
18219	  Fixed bug #3482732.
18220	* src/SDCClrange.h,
18221	  src/SDCClrange.c,
18222	  src/SDCCopt.c,
18223	  support/Regression/bug3482217.c:
18224	  Fixed bug #3482217.
18225
182262012-02-04 Maarten Brock <sourceforge.brock AT dse.nl>
18227
18228	* src/SDCCval.c (constVal): fixed bug 2935162
18229	* support/regression/tests/bug2935162.c: new, added
18230
182312012-02-03 Philipp Klaus Krause <pkk AT spth.de>
18232
18233	* src/z80/gen.c,
18234	  src/z80/z80.h,
18235	  src/z80/ralloc2.cc:
18236	  Fixes for #3482732, preparations for exact cost function in gbz80 port.
18237
182382012-02-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18239
18240	* src/z80/gen.c:
18241	  Fix generation of invalid instructions when --reserve-regs-iy is used.
18242
182432012-01-31 Borut Razem <borut.razem AT gmail.com>
18244
18245	* support/regression/ports/ucgbz80/spec.mk:
18246	  simulation timeout increased to 20s due to timeout failure on
18247	  gcc-torture-execute-divcmp-3 regressin test on
18248	  mypants.neurotica.com NetBSD/Sparc64 build machine
18249
182502012-01-31 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18251
18252	* src/z80/ralloc2.cc,
18253	  support/regression/tests/bug3482146.c:
18254	  Fixed bug #3482146.
18255
182562012-01-31 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18257
18258	* support/regression/tests/bug3482146.c:
18259	  Regression test for bug #3482146.
18260
182612012-01-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18262
18263	* src/z80/gen.c:
18264	  Fixed bug #3480597.
18265
182662012-01-29 Borut Razem <borut.razem AT gmail.com>
18267
18268	* support/regression/tests/key.c: fixed for Mac OS X
18269
182702012-01-28 Maarten Brock <sourceforge.brock AT dse.nl>
18271
18272	* src/mcs51/gen.c (genJumpTab): fixed bug 3480545
18273	* support/regression/tests/bug3480545.c: new, added
18274
182752012-01-27 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18276
18277	* src/z80/gen.c,
18278	  support/regression/tests/gcc-torture-execute-stdarg-4.c:
18279	  Fix bug #3463344.
18280
182812012-01-27 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18282
18283	* src/z80/peeph-gbz80.def:
18284	  Fix remaining gbz80 regression failures when using --max-allocs-per-node 5.
18285	* src/z80/gen.c:
18286	  Fix right shift for gbz80 using --max-allocs-per-node 1.
18287
182882012-01-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18289
18290	* src/z80/gen.c:
18291	  Fix comparison and unary minus for gbz80 when many operands are on the stack.
18292
182932012-01-26 Raphael Neider <rneider AT web.de>
18294
18295	* src/pic14/pcodepeep.c,
18296	  src/pic14/gen.c,
18297	  src/pic14/glue.c,
18298	  src/pic16/device.c,
18299	  src/pic16/pcodepeep.c,
18300	  src/pic16/gen.c,
18301	  src/pic16/pcoderegs.c,
18302	  src/pic16/ralloc.c,
18303	  src/pic16/pcode.c,
18304	  src/pic16/genutils.c: avoid compiler warnings
18305
183062012-01-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18307
18308	* support/cpp/libcpp/internal.h,
18309	  support/cpp/sdcpp.c,
18310	  support/cpp/libcpp/lex.c:
18311	  Remove support for _asm and _endasm, rename macros that had names reserved for the implementation.
18312	* support/regression/tests/key.c:
18313	  Regression test for obsolete keywords.
18314
183152012-01-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18316
18317	* src/z80/gen.c:
18318	  Correctly handle some forgotten corner cases in the fix for #3427564.
18319
183202012-01-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18321
18322	* doc/sdccman.lyx:
18323	  Mention -mz180, -mr2k, named address spaces and use non-deprectaed form of sdcc-specific keywords.
18324	* src/SDCC.lex:
18325	  Remove support for deprecated keywords.
18326	* src/z80/gen.c:
18327	  Fixed bug #3427564.
18328
183292012-01-25 Borut Razem <borut.razem AT gmail.com>
18330
18331	* device/lib/make51lib.bat: rewritten for ar / sdranlib
18332
183332012-01-23 Borut Razem <borut.razem AT gmail.com>
18334
18335	* doc/sdccman.lyx: pic14 enhanced cores enabled by default
18336
183372012-01-22 Borut Razem <borut.razem AT gmail.com>
18338
18339	* configure.in, configure: corrected test if ar accepts -S option
18340
183412012-01-22 Maarten Brock <sourceforge.brock AT dse.nl>
18342
18343	* support/regression/tests/bug3475630.c,
18344	* support/regression/tests/bug3475656.c: fixed for mcs51, native eol
18345	* device/include/mcs51/stc12.h: new, added, thanks intron
18346
183472012-01-21 Philipp Klaus Krause <pkk AT spth.de>
18348
18349	* src/z80/ralloc2.cc,
18350	  support/regression/tests/bug3475630.c:
18351	  Fixed bug #3475630.
18352	* support/regression/tests/bug3475656.c:
18353	  Regression test for bug #3475656.
18354
183552012-01-21 Philipp Klaus Krause <pkk AT spth.de>
18356
18357	* src/z80/peeph-gbz80.def:
18358	  Enable some more peephole rules for the gbz80.
18359
183602012-01-21 Borut Razem <borut.razem AT gmail.com>
18361
18362	* support/regression/tests/bug2942343.c: corrected test if SDCC
18363
183642012-01-20 Borut Razem <borut.razem AT gmail.com>
18365
18366	* device/lib/pic14/Makefile.am, device/lib/pic14/Makefile.in,
18367	  device/lib/pic14/libm/Makefile.am,
18368	  device/lib/pic14/libm/Makefile.in:
18369	  added template for NEW_PICS
18370	* device/non-free/lib/pic14/libdev/Makefile.in:
18371	  pic14 enhanced cores enabled by default
18372
183732012-01-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
18374
18375	* support/regression/tests/bug2942343.c: disable for test-host
18376	* support/regression/tests/bug3475990.c: skip named address space
18377	  declaration for test-host
18378
183792012-01-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18380
18381	* src/SDCCnaddr.hpp:
18382	  Fix preprocessing step for named address spaces.
18383
183842012-01-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18385
18386	* src/SDCCnaddr.cc,
18387	  src/SDCCnaddr.hpp,
18388	  src/SDCCopt.c,
18389	  src/SDCCopt.h,
18390	  support/regression/tests/bug3475990.c:
18391	  Fixed bug #3475990.
18392
183932012-01-19 Borut Razem <borut.razem AT gmail.com>
18394
18395	* device/lib/pic14/configure.in, device/lib/pic14/configure,
18396	  device/lib/pic14/Makefile.am, device/lib/pic14/Makefile.in,
18397	  device/lib/pic14/libm/Makefile.am,
18398	  device/lib/pic14/libm/Makefile.in:
18399	  pic14 enhanced cores enabled by default; gputils 0.14.1 or
18400	  newer required
18401
184022012-01-18 Maarten Brock <sourceforge.brock AT dse.nl>
18403
18404	* device/lib/_fsget1arg.c,
18405	* device/lib/_fsget2args.c: cosmetics
18406	* device/lib/_fsnormalize.c: fixed bug 3474855
18407	* support/regression/tests/bug3474855.c: new, added
18408
184092012-01-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18410
18411	* src/z80/gen.c:
18412	  Fix signed comparison on gbz80.
18413	* device/lib/_memmove.c:
18414	  Fix comparison in pointer location for memmove().
18415	* src/z80/peeph-gbz80.def:
18416	  Enable some jump peepholes for gbz80.
18417
184182012-01-15 Philipp Klaus Krause <pkk AT spth.de>
18419
18420	* src/z80/gen.c:
18421	  Fix #3473876.
18422	* Changelog:
18423	  Pretend to live in the year 2012 to not cause suspicion.
18424	* device/lib/_memmove.c:
18425	  Simplified test deciding copy direction for memmove().
18426	* src/z80/peeph-gbz80.def:
18427	  Use gbz80-specific load-and-increment/decrement instructions.
18428	* src/z80/mappings.i:
18429	  Use more intuitive add sp, d syntax instead of lda sp, d(sp).
18430
184312012-01-15 Borut Razem <borut.razem AT gmail.com>
18432
18433	* sdas/asrab/Makefile.in: fixed linking with -lm math library
18434	* src/SDCCnaddr.cc: removed unicode BOM
18435	* device/lib/pic14/configure.in, device/lib/pic14/configure,
18436	  device/lib/pic14/aclocal.m4: fixed transfer of gcc CFLAGS to
18437	  sdcc while generating dependencies
18438
184392012-01-14 Philipp Klaus Krause <pkk AT spth.de>
18440
18441	* src/z80/gen.c:
18442	  Fixed bug #3473863 in increment of pointers, fixed similar bug in equality comparison.
18443	* support/regression/tests/memory.c:
18444	  Enable a memchr() test.
18445	* support/regression/tests/bug2729218.c:
18446	  Move struct out of ROM for gbz80.
18447
184482012-01-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18449
18450	* src/z80/main.c:
18451	  Remove unnecessary value calculation in _hasNativeMulFor().
18452
184532012-01-14 Maarten Brock <sourceforge.brock AT dse.nl>
18454
18455	* .version,
18456	* doc/sdccman.lyx: bumped version to 3.1.2
18457	* src/SDCCicode.c (checkTypes): fixed bug 2942343
18458	* src/SDCCnaddr.cc: svn properties
18459	* src/SDCCnaddr.hpp: removed some typename keywords for MSVC,
18460	  fixed warning
18461	* src/src.vcxproj: added SDCCnaddr.*, added boost include path
18462	* src/z80/z80.vcxproj: upgraded boost include path
18463	* support/regression/tests/bug2942343.c: new, added
18464
184652012-01-11 Borut Razem <borut.razem AT gmail.com>
18466
18467	* src/SDCC.lex: removed #line rule handled by preprocessor
18468
184692012-01-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18470
18471	* src/SDCCglobl.h,
18472	  src/z80/z80.h,
18473	  src/z80/main.c,
18474	  src/z80/ralloc2.cc,
18475	  src/SDCCnaddr.hpp,
18476	  src/SDCCmain.c,
18477	  src/SDCCnaddr.cc:
18478	   Make optimal placement of bank-selection instructions configurable using
18479	   --max-allocs-per-node and --dump-graphs options.
18480
184812012-01-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18482
18483	* src/SDCCnaddr.hpp,
18484	  src/SDCCopt.c,
18485	  src/SDCCopt.h:
18486	  Optimal placement of bank-switching calls.
18487
184882012-01-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18489
18490	* src/SDCCicode.h,
18491	  src/SDCCnaddr.cc,
18492	  src/SDCCnaddr.hpp,
18493	  src/SDCCopt.c,
18494	  src/z80/ralloc2.cc,
18495	  src/SDCCopt.h,
18496	  src/Makefile.in:
18497	  Preparations for optimal placement of bank-switching calls.
18498
184992012-01-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
18500
18501	* src/SDCCicode.c: fixed bug 3466784
18502
185032012-01-09 Leland Morrison <enigmalee AT sourceforge.net>
18504
18505	* sim/ucsim/z80.src/glob_lr35902.cc: disassemble for gb processor
18506	* sim/ucsim/z80.src/inst_lr35902.cc: instruction simulation for gb
18507	* sim/ucsim/z80.src/lr35902.cc,
18508	* sim/ucsim/z80.src/lr35902cl.h: definition of gb processor
18509	* sim/ucsim/z80.src/z80cl.h,
18510	* sim/ucsim/z80.src/z80.cc: added peek1 function to look at next opcode
18511	* sim/ucsim/z80.src/glob.cc: fixes to disassembly for "ld e,<byte>",
18512	  "inc (hl)", and "dec (hl)" for z80 processor
18513	* sim/ucsim/z80.src/glob.h: added declaration for gb disassembly table
18514	* sim/ucsim/z80.src/inst_r2k.h: fix to sign extension for add sp,d
18515	* sim/ucsim/z80.src/simz80.cc: added -tlr35902 option for gameboy
18516	* support/regression/Makefile.in,
18517	* support/regression/ports/ucgbz80/*: added option to run regression
18518	  tests for the gb processor using ucsim
18519
185202012-01-08 Maarten Brock <sourceforge.brock AT dse.nl>
18521
18522	* src/SDCC.lex: included io.h for read() declaration with MSVC,
18523	  fixed linenr bug
18524	* src/SDCCerr.c: made W_LIT_OVERFLOW pedantic
18525	* src/SDCCglue.c (printIvalType, printIvalBitFields),
18526	* src/SDCCicode.c checkTypes): removed lessPedantic check
18527	* src/SDCCicode.c (geniCodeCast): fixed bug 3470368
18528
185292012-01-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18530
18531	* src/z80/gen.c:
18532	  Fixed width of lower part of large literals.
18533
185342012-01-06 Borut Razem <borut.razem AT gmail.com>
18535
18536	* sdas/linksrc/Makefile.in: removed LKLIB
18537	* device/non-free/lib/Makefile.in: removed SOURCES
18538
185392012-01-04 Philipp Klaus Krause <pkk AT spth.de>
18540
18541	* src/hc08/gen.c:
18542	  More explicit stack size reporting for hc08.
18543
185442012-01-04 Maarten Brock <sourceforge.brock AT dse.nl>
18545
18546	* src/SDCCopt.c (killDeadCode): fixed bug 2862308
18547	* support/regression/tests/bug2862308.c: new, added
18548
185492012-01-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18550
18551	* src/z80/gen.c,
18552	  support/regression/tests/gcc-torture-execute-string-opt-5.c:
18553	  Fixed bug #3463342.
18554
185552012-01-03 Maarten Brock <sourceforge.brock AT dse.nl>
18556
18557	* sdas/as6808/m08ext.c,
18558	* sdas/as6808/as_hc08.vcxproj,
18559	* sdas/as6808/as_hc08.vcxproj.filters,
18560	* sdas/as6808/Makefile.in: removed m08ext.c
18561	* sdas/as6808/m08adr.c,
18562	* sdas/as6808/m08mch.c,
18563	* sdas/as6808/m08pst.c,
18564	* sdas/as6808/m6808.h,
18565	* sdas/asxxsrc/asout.c: synced with ASxxxx v5 to fix bug 2894291
18566
185672012-01-02 Borut Razem <borut.razem AT gmail.com>
18568
18569	* sdcc/SDCC.lex: included unistd.h, needed by flex 2.5.4 on
18570	  NetBSD 5.0.1 sparc64 for read() declaration
18571	* sdas/linksrc/lkar.h: '\n' replaced by '\012'
18572
185732012-01-02 Maarten Brock <sourceforge.brock AT dse.nl>
18574
18575	* src/src.vcxproj: increased stack size 32M/64M so it never overflows
18576	* src/Makefile.in: added flex fast flag -f
18577	* src/SDCC.lex: removed preprocessor warning and error rules,
18578	  removed EOL after #... rules
18579
185802011-12-29 Maarten Brock <sourceforge.brock AT dse.nl>
18581
18582	* device/lib/clean.mk: added z180 and r2k
18583	* sim/ucsim/cmd.src/cmdlex.l: fixed unused yyunput warning
18584	* src/hc08/main.c: removed unused BSEG
18585	* src/SDCCglue.c (glue): suppress unused segments
18586	* src/SDCCmem.c (allocMap, initMem): skip when name==NULL,
18587	  (allocGlobal): use x_abs for __at on z80, fixed bug 2040874
18588	* src/z80/main.c: removed ISEG, XSEG, BSEG, OVERLAY, added DABS (x_abs)
18589	* support/regression/fwk/include/testfwk.h,
18590	* support/regression/tests/absolute.c: z80 supports __at
18591
185922011-12-29 Borut Razem <borut.razem AT gmail.com>
18593
18594	* support/cpp/libcpp/lex.c:
18595	  partialy synchronized with sdcpp 4.6.[12]: no mmx, sse, altivec
18596	* support/cpp/version.c: updated version to 4.6.2
18597	* support/cpp/configure.in, support/cpp/configure,
18598	  support/cpp/config.in: WORDS endianness detection
18599
186002011-12-27 Maarten Brock <sourceforge.brock AT dse.nl>
18601
18602	* src/SDCC.lex,
18603	* src/SDCC.y: fixed bugs 1810965 and 2698805
18604	* src/SDCCsymt.c (checkSClass): removed old hack-o-matic
18605	* support/regression/tests/bug1810965.c: new, added
18606
186072011-12-26 Philipp Klaus Krause <pkk AT spth.de>
18608
18609	* src/SDCCralloc.hpp:
18610	  Reduce stack space usage in recursion.
18611
186122011-12-25 Maarten Brock <sourceforge.brock AT dse.nl>
18613
18614	* device/lib/r2k/setjmp.s,
18615	* device/lib/z180/setjmp.s,
18616	* device/lib/z80/setjmp.s: optimized
18617	* device/lib/r2k/*,
18618	* device/lib/z180/*,
18619	* device/lib/z80/*: use native eol
18620
186212011-12-24 Maarten Brock <sourceforge.brock AT dse.nl>
18622
18623	* device/include/setjmp.h: changed longjmp return type to void
18624	* device/lib/_setjmp.c: but use int for the implementation
18625
186262011-12-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
18627
18628	* src/SDCCopt.c (replaceRegEqv): fixed bug 2938101
18629
186302011-12-23 Philipp Klaus Krause <pkk AT spth.de>
18631
18632	* src/SDCCerr.h,
18633	  src/SDCCerr.c,
18634	  src/SDCCicode.c:
18635	  Warn about return statements in _Noreturn functions.
18636	* device/include/setjmp.h,
18637	  device/lib/_setjmp.c:
18638	  Make longjmp() a _Noreturn function, as required by the C11 standard.
18639	* src/SDCClabel.c,
18640	  src/z80/gen.c:
18641	  Do some basic optimizations for _Noreturn functions.
18642
186432011-12-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
18644
18645	* src/SDCClabel.c (labelIfx): fixed bug 3463455
18646	* support/regression/tests/gcc-torture-execute-loop-12.c:
18647	  reenable tests for hc08 and ds390
18648	* support/regression/compact-results.py: wider test name field
18649
186502011-12-22 Maarten Brock <sourceforge.brock AT dse.nl>
18651
18652	* src/SDCCerr.c: changed E_NONRENT_ARGS description
18653
186542011-12-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18655
18656	* src/SDCCmain.c,
18657	  src/SDCCglobl.h,
18658	  src/SDCC.lex:
18659	  Add option and pragma for ISO C11.
18660	* support/regression/tests/gcc-torture-execute-anon-1.c:
18661	  Disable for compilers other than sdcc and use sdcc in C11 mode.
18662	* src/SDCCsymt.c,
18663	  src/SDCCsymt.h,
18664	  src/SDCC.y,
18665	  src/SDCC.lex,
18666	  device/include/stdnoreturn.h:
18667	  Accept C11 keyword _Noreturn.
18668	* device/include/stdio.h:
18669	  Do not declare gets() in C11 mode.
18670
186712011-12-21 Maarten Brock <sourceforge.brock AT dse.nl>
18672
18673	* sdas/as6808/Makefile.in,
18674	* sdas/as8051/Makefile.in,
18675	* sdas/asgb/Makefile.in,
18676	* sdas/asrab/Makefile.in,
18677	* sdas/asz80/Makefile.in: reverted as it fails to build without error
18678
186792011-12-21 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18680
18681	* support/regression/tests/gcc-torture-execute-pure-1.c,
18682	  support/regression/tests/gcc-torture-execute-string-opt-17.c,
18683	  support/regression/tests/gcc-torture-execute-pta-field-1.c,
18684	  support/regression/tests/gcc-torture-execute-string-opt-18.c,
18685	  support/regression/tests/gcc-torture-execute-struct-ini-1.c,
18686	  support/regression/tests/gcc-torture-execute-pta-field-2.c,
18687	  support/regression/tests/gcc-torture-execute-ptr-arith-1.c,
18688	  support/regression/tests/gcc-torture-execute-unroll-1.c,
18689	  support/regression/tests/gcc-torture-execute-struct-ini-2.c,
18690	  support/regression/tests/gcc-torture-execute-struct-ini-3.c,
18691	  support/regression/tests/gcc-torture-execute-string-opt-5.c,
18692	  support/regression/tests/gcc-torture-execute-stdarg-3.c,
18693	  support/regression/tests/gcc-torture-execute-shiftopt-1.c,
18694	  support/regression/tests/gcc-torture-execute-struct-ini-4.c,
18695	  support/regression/tests/gcc-torture-execute-stdarg-4.c,
18696	  support/regression/tests/gcc-torture-execute-switch-1.c,
18697	  support/regression/tests/gcc-torture-execute-scope-1.c,
18698	  support/regression/tests/gcc-torture-execute-loop-10.c,
18699	  support/regression/tests/gcc-torture-execute-loop-11.c,
18700	  support/regression/tests/gcc-torture-execute-loop-12.c,
18701	  support/regression/tests/gcc-torture-execute-loop-13.c,
18702	  support/regression/tests/gcc-torture-execute-loop-14.c,
18703	  support/regression/tests/gcc-torture-execute-loop-15.c,
18704	  support/regression/tests/gcc-torture-execute-loop-1.c,
18705	  support/regression/tests/gcc-torture-execute-loop-2.c,
18706	  support/regression/tests/gcc-torture-execute-loop-2c.c,
18707	  support/regression/tests/gcc-torture-execute-loop-2d.c,
18708	  support/regression/tests/gcc-torture-execute-loop-3b.c,
18709	  support/regression/tests/gcc-torture-execute-loop-3.c,
18710	  support/regression/tests/gcc-torture-execute-loop-3c.c,
18711	  support/regression/tests/gcc-torture-execute-loop-5.c,
18712	  support/regression/tests/gcc-torture-execute-loop-6.c,
18713	  support/regression/tests/gcc-torture-execute-loop-7.c,
18714	  support/regression/tests/gcc-torture-execute-loop-8.c,
18715	  support/regression/tests/gcc-torture-execute-loop-9.c,
18716	  support/regression/tests/gcc-torture-execute-func-ptr-1.c,
18717	  support/regression/tests/gcc-torture-execute-const-addr-expr-1.c,
18718	  support/regression/tests/gcc-torture-execute-divmod-1.c,
18719	  support/regression/tests/gcc-torture-execute-divcmp-4.c,
18720	  support/regression/tests/gcc-torture-execute-divconst-1.c,
18721	  support/regression/tests/gcc-torture-execute-compare-1.c,
18722	  support/regression/tests/gcc-torture-execute-divconst-2.c,
18723	  support/regression/tests/gcc-torture-execute-compare-2.c,
18724	  support/regression/tests/gcc-torture-execute-compare-3.c,
18725	  support/regression/tests/gcc-torture-execute-loop-12.c,
18726	  support/regression/tests/gcc-torture-execute-doloop-1.c,
18727	  support/regression/tests/gcc-torture-execute-doloop-2.c,
18728	  support/regression/tests/gcc-torture-execute-enum-2.c,
18729	  support/regression/tests/gcc-torture-execute-ifcvt-onecmpl-abs-1.c,
18730	  support/regression/tests/gcc-torture-execute-divcmp-1.c,
18731	  support/regression/tests/gcc-torture-execute-enum-3.c,
18732	  support/regression/tests/gcc-torture-execute-cmpsf-1.c,
18733	  support/regression/tests/gcc-torture-execute-mod-1.c,
18734	  support/regression/tests/gcc-torture-execute-divcmp-2.c,
18735	  support/regression/tests/gcc-torture-execute-int-compare.c,
18736	  support/regression/tests/gcc-torture-execute-divcmp-3.c,
18737	  support/regression/tests/gcc-torture-execute-anon-1.c,
18738	  support/regression/tests/gcc-torture-execute-arith-1.c,
18739	  support/regression/tests/gcc-torture-execute-postmod-1.c,
18740	  support/regression/tests/gcc-torture-execute-bitfld-1.c,
18741	  support/regression/tests/gcc-torture-execute-pending-4.c:
18742	  Added some tests from the execute part of the gcc torture regression test suite.
18743
187442011-12-20 Maarten Brock <sourceforge.brock AT dse.nl>
18745
18746	* sdas/as6808/Makefile.in,
18747	* sdas/as8051/Makefile.in,
18748	* sdas/asgb/Makefile.in,
18749	* sdas/asrab/Makefile.in,
18750	* sdas/asz80/Makefile.in: added dependencies
18751
187522011-12-19 Maarten Brock <sourceforge.brock AT dse.nl>
18753
18754	* sdas/asz80/z80pst.c: forgot this one, probably sdas dependencies are
18755	  insufficient too
18756
187572011-12-18 Maarten Brock <sourceforge.brock AT dse.nl>
18758
18759	* debugger/mcs51/sdcdb.c (escapeQuotes): fixed warning
18760	* sdas/asrab/rabbitmch.c: fixed bug 3461821 by calling outrb with 0
18761	* sdas/as6808/m08pst.c,
18762	* sdas/as8051/i51adr.c,
18763	* sdas/as8051/i51mch.c,
18764	* sdas/as8051/i51pst.c,
18765	* sdas/as8051/i8051.h,
18766	* sdas/asgb/gbpst.c,
18767	* sdas/asxxsrc/asdata.c,
18768	* sdas/asxxsrc/asexpr.c,
18769	* sdas/asxxsrc/aslex.c,
18770	* sdas/asxxsrc/aslist.c,
18771	* sdas/asxxsrc/asmain.c,
18772	* sdas/asxxsrc/asout.c,
18773	* sdas/asxxsrc/assym.c,
18774	* sdas/asxxsrc/asxxxx.h,
18775	* sdas/asz80/z80mch.c,
18776	* sdas/linksrc/aslink.h,
18777	* sdas/linksrc/lkarea.c,
18778	* sdas/linksrc/lkhead.c,
18779	* sdas/linksrc/lklex.c,
18780	* sdas/linksrc/lklist.c,
18781	* sdas/linksrc/sdld.c,
18782	* sdas/linksrc/sdld.h: another step towards ASxxxx v5
18783	* sdas/asrab/rabbit.h,
18784	* sdas/asrab/rabbitadr.c,
18785	* sdas/asrab/rabbitext.c,
18786	* sdas/asrab/rabbitpst.c: native line endings, no TABs
18787	* src/ds390/main.c,
18788	* src/mcs51/main.c,
18789	* src/z80/main.c: asxxx -z flag is now case INsensitive
18790	* src/hc08/main.c: fixed bug 1666106 by adding (PAG) to DSEG and OSEG
18791	* src/SDCCglobl.h: fixed -E comment
18792	* src/SDCCicode.c (geniCodeAdd),
18793	* src/SDCCsymt.c (compStructSize): added error for unknown struct size
18794	* src/SDCClabel.c: no TABs
18795
187962011-12-17 Maarten Brock <sourceforge.brock AT dse.nl>
18797
18798	* device/include/mcs51/cc2530.h: new, added, thanks Zafi Ramarosandratana
18799
188002011-12-08 Maarten Brock <sourceforge.brock AT dse.nl>
18801
18802	* device/lib/_atof.c,
18803	* device/lib/_divuint.c,
18804	* device/lib/_divulong.c,
18805	* device/lib/_fsadd.c,
18806	* device/lib/acosf.c,
18807	* device/lib/asincosf.c,
18808	* device/lib/asinf.c,
18809	* device/lib/cosf.c,
18810	* device/lib/cotf.c,
18811	* device/lib/expf.c,
18812	* device/lib/printf_large.c,
18813	* device/lib/sincosf.c,
18814	* device/lib/sincoshf.c,
18815	* device/lib/sinf.c,
18816	* device/lib/tancotf.c,
18817	* device/lib/tanf.c,
18818	* support/regression/tests/bug1337835.c,
18819	* support/regression/tests/bug2719592.c,
18820	* support/regression/tests/bug2805333.c,
18821	* support/regression/tests/bug3223041.c,
18822	* support/regression/tests/bug3290691.c,
18823	* support/regression/tests/funptrs.c: changed BOOL to bool
18824
188252011-12-07 Maarten Brock <sourceforge.brock AT dse.nl>
18826
18827	* device/include/stdbool.h: removed BOOL
18828	* src/SDCCast.c (decorateType, addess of),
18829	* src/SDCCsymt.c (checkSClass): fixed bug 2934292
18830	* support/regression/tests/bool.c: enabled function pointer tests
18831
188322011-12-07 Maarten Brock <sourceforge.brock AT dse.nl>
18833
18834	* sdas/linksrc/aslink.h,
18835	* sdas/linksrc/lkarea.c,
18836	* sdas/linksrc/lkbank.c,
18837	* sdas/linksrc/lkdata.c,
18838	* sdas/linksrc/lklex.c,
18839	* sdas/linksrc/lklist.c,
18840	* sdas/linksrc/lkmain.c,
18841	* sdas/linksrc/lknoice.c,
18842	* sdas/linksrc/lkout.c,
18843	* sdas/linksrc/lkrloc.c,
18844	* sdas/linksrc/lkrloc3.c,
18845	* sdas/linksrc/lks19.c,
18846	* sdas/linksrc/lksym.c,
18847	* sdas/linksrc/Makefile.in: and another step towards ASxxxx v5
18848
188492011-12-05 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18850
18851	* src/z80/ralloc.c:
18852	  Fixed bug #3441816.
18853
188542011-12-04 Maarten Brock <sourceforge.brock AT dse.nl>
18855
18856	* sdas/linksrc/aslink.h,
18857	* sdas/linksrc/aslink.vcxproj,
18858	* sdas/linksrc/aslink.vcxproj.filters,
18859	* sdas/linksrc/lkar.c,
18860	* sdas/linksrc/lkarea.c,
18861	* sdas/linksrc/lkbank.c,
18862	* sdas/linksrc/lkdata.c,
18863	* sdas/linksrc/lkhead.c,
18864	* sdas/linksrc/lklex.c,
18865	* sdas/linksrc/lklibr.c,
18866	* sdas/linksrc/lklist.c,
18867	* sdas/linksrc/lkmain.c,
18868	* sdas/linksrc/lkmem.c,
18869	* sdas/linksrc/lknoice.c,
18870	* sdas/linksrc/lkout.c,
18871	* sdas/linksrc/lkrloc.c,
18872	* sdas/linksrc/lkrloc3.c,
18873	* sdas/linksrc/lks19.c,
18874	* sdas/linksrc/lksdcclib.c,
18875	* sdas/linksrc/lksdcdb.c,
18876	* sdas/linksrc/lksym.c,
18877	* sdas/linksrc/Makefile.in: next step towards ASxxxx v5
18878	* src/SDCCmem.c (allocIntoSeg): MSVC 2010 still needs all declarations at
18879	  the start of a block in C mode
18880	* src/z80/gen.c (genPointerSet): fixed warning
18881	* src/SDCCast.c (processParms): removed incorrect function pointer check
18882	* support/regression/tests/bug3440327.c: reenabled test for mcs51
18883
188842011-12-03 Philipp Klaus Krause <pkk AT spth.de>
18885
18886	* support/regression/tests/bug3444293.c
18887	  Fix warning in regression test.
18888
188892011-12-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18890
18891	* src/SDCCcse.c,
18892	  src/SDCCicode.h:
18893	  Rename IS_ASSOCIATIVE to IS_COMMUTATIVE.
18894
188952011-12-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18896
18897	* src/z80/ralloc2.cc,
18898	  src/z80/gen.c,
18899	  src/z80/peeph-z80.def:
18900	  Minor improvements in pointer handling for the z80 backends.
18901
189022011-12-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18903
18904	* src/SDCClabel.c:
18905	  Disable hidden jump-to-jump optimization for mcs51, since it breaks large and huge.
18906
189072011-11-30 Philipp Klaus Krause <pkk AT spth.de>
18908
18909	* support/regression/tests/bug3440327.c:
18910	  Disable bug 3440327 test on mcs51.
18911
189122011-11-30 Philipp Klaus Krause <pkk AT spth.de>
18913
18914	* src/SDCCsymt.c:
18915	  Cleanup leftover warning.
18916
189172011-11-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18918
18919	* src/z80/ralloc2.cc,
18920	  src/z80/gen.c,
18921	  src/z80/peeph-z80.def:
18922	  Some small improvements to the generated code.
18923
189242011-11-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18925
18926	* src/z80/ralloc2.cc,
18927	  support/regression/tests/bug3444293.c:
18928	  Fixed bug #3444293.
18929
189302011-11-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18931
18932	* support/regression/tests/bug3440327.c:
18933	  Regression test for bug #3440327.
18934
189352011-11-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18936
18937	* src/SDCClabel.c:
18938	  Optimize hidden jump-to-jump.
18939
189402011-11-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18941
18942	* src/z80/gen.c:
18943	  Replaced some uses of isLastUse() by the safer isPairDead().
18944
189452011-11-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18946
18947	* Merged the addrspacequal branch (named address spaces).
18948
189492011-11-28 Borut Razem <borut.razem AT gmail.com>
18950
18951	* sim/ucsim/libltdl: direcrory removed since it is not used
18952	* support/scripts/gen_known_bugs.pl: warious fixes
18953	* src/pic16/ralloc.c, sim/ucsim/pobj.cc, sim/ucsim/utils.cc,
18954	  sdas/linksrc/lkmain.c:
18955	  fixed bug #3444387: Minor spelling fix in binary files;
18956	  thanks to Gudjon I. Gudjonsson for the patch
18957
189582011-11-27 Borut Razem <borut.razem AT gmail.com>
18959
18960	* Small Device C Compiler 3.1.0 released
18961	* .version, doc/sdccman.lyx: changed sdcc version to 3.1.1
18962	* support/scripts/gen_known_bugs.pl: adopted to the new SF bug tracker
18963
189642011-11-21 Philipp Klaus Krause <pkk AT spth.de>
18965
18966	* src/z80/gen.c:
18967	  Fixed bug #3440327.
18968
189692011-11-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18970
18971	* src/SDCCsymt.h,
18972	  src/SDCCsymt.c,
18973	  src/SDCCast.c,
18974	  src/SDCCopt.c:
18975	  Error message for implicit casts between named address spaces, fix live-range analysis (regression tests passing now).
18976
189772011-11-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18978
18979	* src/SDCCsymt.c,
18980	  src/SDCCerr.h,
18981	  src/SDCCerr.c:
18982	  Error message for attemting to use named address spacces for auto variables.
18983
189842011-11-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18985
18986	* src/SDCCopt.c:
18987	  Fix broken control and data flow handling (regression tests passing now, exept for bug-895992.c).
18988
189892011-11-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18990
18991	* src/SDCCopt.c:
18992	  Improve handling of variables in named address space passed as parameters.
18993
189942011-11-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
18995
18996	* src/SDCCopt.c:
18997	  Avoid emitting some unecessary bank switching calls.
18998
189992011-11-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19000
19001	* src/SDCCast.c:
19002	  Keep global named address spaces alive over functions.
19003
190042011-11-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19005
19006	* src/SDCCicode.c,
19007	  src/SDCCopt.c:
19008	  Debug message cleanup, reenable address space splitting.
19009
190102011-11-14 Raphael Neider <rneider AT web.de>
19011
19012	* device/include/pic14/pic14devices.txt,
19013	* device/non-free/include/pic14/pic16f145[589].h,
19014	* device/non-free/include/pic14/pic16f178[23].h,
19015	* device/non-free/lib/pic14/libdev/Makefile.in,
19016	* device/non-free/lib/pic14/libdev/devices.txt,
19017	* device/non-free/lib/pic14/libdev/pic16f145[589].c,
19018	* device/non-free/lib/pic14/libdev/pic16f178[23].c:
19019	  add support for 16f145[589] and 16f178[23] devices
19020
19021	* device/non-free/include/pic14/pic12f683.h,
19022	* device/non-free/lib/pic14/libdev/pic12f683.c:
19023	  updated from new sources
19024
19025	* doc/sdccman.lyx:
19026	  update device list, clarify use of NO_LEGACY_NAMES
19027
190282011-11-13 Maarten Brock <sourceforge.brock AT dse.nl>
19029
19030	* doc/sdccman.lyx: added the boost dependency,
19031	  --peep-return, --no-peep-return, --fomit-frame-pointer,
19032	  the use of .omf extension,
19033	  single mnemonic per assembly line,
19034	  available peephole functions
19035
190362011-11-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19037
19038	* src/SDCCcse.c,
19039	  src/SDCCicode.c,
19040	  src/SDCCopt.c:
19041	  Basic support for pointers into named address spaces.
19042
190432011-11-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19044
19045	* src/SDCCicode.c,
19046	  src/SDCCsymt.c,
19047	  src/SDCCsymt.h,
19048	  src/SDCC.y,
19049	  src/SDCCopt.c,
19050	  src/SDCCast.c:
19051	  Debug messages related to pointers to named address spaces.
19052
190532011-11-12 Borut Razem <borut.razem AT gmail.com>
19054
19055	* added XXX_bits deprecation note in chapter
19056	  1.4 Compatibility with previous versions
19057
190582011-11-11 Raphael Neider <rneider AT web.de>
19059
19060	* device/non-free/lib/pic14/libdev/mkall.sh:
19061	  simplify device library update process further
19062
19063	* support/scripts/inc2h.pl:
19064	  avoid generating duplicate bit defines;
19065	  rename XXX_bits to XXXbits to be compatible with PIC16 and HiTech,
19066	  but retain XXX_bits symbols for compatibility (to prevent legacy
19067	  names from being visible, #define NO_LEGACY_NAMES before
19068	  #include'ing device headers
19069
19070	* device/include/pic14/pic14devices.txt,
19071	* device/non-free/lib/pic14/libdev/devices.txt:
19072	  updated device names: 16{f => lf}190x, 1{2 => 6}f1847,
19073	  no devices exist with the original names
19074
19075	* device/non-free/include/pic14/pic12f1840.h,
19076	* device/non-free/include/pic14/pic16f1507.h,
19077	* device/non-free/include/pic14/pic16f182[34589].h,
19078	* device/non-free/include/pic14/pic16f1847.h,
19079	* device/non-free/include/pic14/pic16f193[89].h,
19080	* device/non-free/include/pic14/pic16lf190[23467].h,
19081	* device/non-free/lib/pic14/libdev/Makefile.in,
19082	* device/non-free/lib/pic14/libdev/pic12f1840.c,
19083	* device/non-free/lib/pic14/libdev/pic16f1507.c,
19084	* device/non-free/lib/pic14/libdev/pic16f182[34589].c,
19085	* device/non-free/lib/pic14/libdev/pic16f1847.c,
19086	* device/non-free/lib/pic14/libdev/pic16f193[89].c,
19087	* device/non-free/lib/pic14/libdev/pic16lf190[23467].c:
19088	  add device libraries for more enhanced core devices,
19089	  no legacy names (XXX_bits) here!
19090
19091	* device/non-free/include/pic14/pic*.h,
19092	* device/non-free/lib/pic14/libdev/pic*.c:
19093	  regenerated from new sources using the new inc2h.pl
19094
19095	* doc/sdccman.lyx: updated list of supported devices,
19096	  documented change of naming schemes and the use of
19097	  #define NO_BIT_DEFINES and #define NO_LEGACY_NAMES
19098
190992011-11-11 Borut Razem <borut.razem AT gmail.com>
19100
19101	* src/SDCCsystem.c: removed wine bug workaround:
19102	  wine bug #25062 was fixed in wine 1.3.
19103
191042011-11-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19105
19106	* src/SDCCmem.h,
19107	  src/SDCCmem.c,
19108	  src/SDCCglue.c:
19109	  Use named address space as segment name for the linker.
19110
191112011-11-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19112
19113	* src/SDCCsymt.h,
19114	  src/SDCCsymt.c,
19115	  src/SDCC.y,
19116	  src/SDCCopt.c:
19117	  Basic compiler-side named address space support.
19118
191192011-11-09 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19120
19121	* src/SDCCsymt.h,
19122	  src/SDCC.y,
19123	  src/SDCCopt.c,
19124	  src/SDCCicode.c
19125	  src/z80/ralloc.c:
19126	  Preparations for named address space support.
19127
191282011-11-08 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19129
19130	* src/SDCCsymt.c,
19131	  src/SDCCsymt.h,
19132	  src/SDCC.y,
19133	  src/SDCC.lex,
19134	  src/SDCCast.c:
19135	  Preparations for named address space support.
19136
191372011-11-05 Borut Razem <borut.razem AT gmail.com>
19138
19139	* src/port.mk: fixed bug #3401455: Missing dependency
19140	* .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt:
19141	  changed sdcc version to 3.1.0
19142	* doc/README.txt, support/scripts/sdcc.nsi: updated, small textual fix
19143
191442011-11-05 Maarten Brock <sourceforge.brock AT dse.nl>
19145
19146	* device/include/mcs51/cc2430.h: applied patch 3114002, thanks to
19147	  George Oikonomou
19148
191492011-11-05 Raphael Neider <rneider AT web.de>
19150
19151	* device/include/pic14/pic14devices.txt: add descriptions for a number
19152	  of devices with enhanced cores; support for most of them remains
19153	  incomplete due to lacking support by gputils
19154	* device/non-free/include/pic14/pic16f1826.h,
19155	* device/non-free/include/pic14/pic16f1827.h,
19156	* device/non-free/include/pic14/pic16f1933.h,
19157	* device/non-free/lib/pic14/libdev/Makefile.in,
19158	* device/non-free/lib/pic14/libdev/devices.txt,
19159	* device/non-free/lib/pic14/libdev/pic16f1826.c,
19160	* device/non-free/lib/pic14/libdev/pic16f1827.c,
19161	* device/non-free/lib/pic14/libdev/pic16f1933.c: add support for some
19162	  of the newly described devices; 16f1826/7 libraries are disabled in
19163	  the Makefile due to lacking support from gputils
19164	* doc/sdccman.lyx: fix list of supported devices
19165
191662011-11-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19167
19168	* src/mcs51/ralloc.c (isFree),
19169	* src/ds390/ralloc.c (isFree): fixed bug #3400845
19170	* src/SDCCast.c (decorateTree),
19171	* src/mcs51/gen.c (assignResultValue): fixed bug #3419769
19172	* sdas/linksrc/lkmain.c (main): fixed bug #3362385
19173	* src/ds390/ralloc.c (packRegisters): fixed bug #3432159
19174	* support/regression/tests/condopptr.c: enable for all targets
19175
191762011-11-03 Borut Razem <borut.razem AT gmail.com>
19177
19178	* support/scripts/sdcc.nsi: updated to support pic14 enhanced devices
19179
191802011-11-02 Raphael Neider <rneider AT web.de>
19181
19182	* device/include/pic14/pic14devices.txt: prevent SDCC from assuming
19183	  a single data bank by specifying more memmap records (per device)
19184
191852011-11-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19186
19187	* src/SDCCast.c (decorateType): allow array/integral type
19188	  combination in conditional operator (will promote to pointer)
19189	* support/regression/tests/condopptr.c: new regression
19190	  test to check pointer operand cases in conditional operator
19191
191922011-11-01 Raphael Neider <rneider AT web.de>
19193
19194	* src/pic14/gen.c (inc_fsr): new code to handle FSR{,0} increments,
19195	  (emitPtrByteGet,emitPtrByteSet): fix pointer derefence,
19196	  (genNearPointerGet,genNearPointerSet): fixed for enhanced cores,
19197	  really closes #3431024
19198	* src/pic14/pcode.c (pCodeInitRegisters):
19199	  declare all "core registers" to reside in all banks to avoid
19200	  unnecessary BANKSELs
19201	* doc/sdccman.lyx: document definition of config words and the use
19202	  of libsdcce.lib and libme.lib for enhanced pic14 devices
19203
192042011-11-01 Raphael Neider <rneider AT web.de>
19205
19206	* src/pic14/main.c (_pic14_do_link):
19207	  link with libsdcce.lib for enhanced devices
19208
19209	* device/lib/Makefile.in:
19210	  find, copy, and rename enhanced core libraries as well
19211
19212	* device/lib/pic14/NEWS:
19213	  document structural changes and support for enhanced cores
19214
19215	* device/lib/pic14/Makefile.am,
19216	* device/lib/pic14/Makefile.common,
19217	* device/lib/pic14/Makefile.common.in (removed),
19218	* device/lib/pic14/Makefile.rules (removed),
19219	* device/lib/pic14/Makefile.subdir (removed),
19220	* device/lib/pic14/configure.in:
19221	  switch pic14 library to Autotools-based build system,
19222	  support --enable-new-pics
19223
19224	* device/lib/pic14/libm/Makefile.am,
19225	* device/lib/pic14/libsdcc/Makefile.in (removed),
19226	* device/lib/pic14/libsdcc/enhanced/Makefile.am,
19227	* device/lib/pic14/libsdcc/regular/Makefile.am:
19228	  build separate libm and libsdcc for regular and enhanced cores
19229
19230	* device/lib/pic14/libsdcc/{ => regular/,enhanced/}_gptrget{1,2,3,4}.S,
19231	* device/lib/pic14/libsdcc/{ => regular/,enhanced/}_gptrput{1,2,3,4}.S,
19232	* device/lib/pic14/libsdcc/{ => regular/,enhanced/}macros.inc:
19233	  separated implementation of generic pointer routines and
19234	  reimplemented for enhanced devices
19235
19236	* device/lib/pic14/libsdcc/{ => regular/}shadowregs.c:
19237	  moved to be included only in the non-enhanced devices' libsdcc.lib
19238
19239	* device/{ => non-free/}lib/pic14/libdev/devices.txt,
19240	* device/{ => non-free/}lib/pic14/libdev/pic14ports.txt:
19241	  make libdev/ more self-contained
19242
19243	* device/non-free/lib/pic14/libdev/mkall.sh:
19244	  interactively update device library files (.c and .h)
19245
19246	* device/non-free/include/pic14/pic12f635.h,
19247	* device/non-free/include/pic14/pic16f616.h,
19248	* device/non-free/include/pic14/pic16f688.h,
19249	* device/non-free/include/pic14/pic16f785.h,
19250	* device/non-free/include/pic14/pic16f913.h,
19251	* device/non-free/include/pic14/pic16f914.h,
19252	* device/non-free/include/pic14/pic16f916.h,
19253	* device/non-free/include/pic14/pic16f917.h,
19254	* device/non-free/include/pic14/pic16hv616.h,
19255	* device/non-free/lib/pic14/libdev/pic12f1822.c,
19256	* device/non-free/lib/pic14/libdev/pic16f616.c,
19257	* device/non-free/lib/pic14/libdev/pic16f688.c,
19258	* device/non-free/lib/pic14/libdev/pic16f785.c,
19259	* device/non-free/lib/pic14/libdev/pic16f886.c,
19260	* device/non-free/lib/pic14/libdev/pic16f887.c,
19261	* device/non-free/lib/pic14/libdev/pic16f913.c,
19262	* device/non-free/lib/pic14/libdev/pic16f914.c,
19263	* device/non-free/lib/pic14/libdev/pic16f916.c,
19264	* device/non-free/lib/pic14/libdev/pic16f917.c,
19265	* device/non-free/lib/pic14/libdev/pic16hv616.c:
19266	  updated from recent gputils' headers
19267
19268	* device/non-free/include/pic14/pic16f193{4,6,7}.h,
19269	* device/non-free/lib/pic14/libdev/Makefile.in,
19270	* device/non-free/lib/pic14/libdev/devices.txt,
19271	* device/non-free/lib/pic14/libdev/pic16f193{4,6,7}.c:
19272	  add support for 16f1934/16f1936/16f1937 devices
19273
19274	* device/lib/pic14/Makefile.in,
19275	* device/lib/pic14/aclocal.m4,
19276	* device/lib/pic14/config.h.in,
19277	* device/lib/pic14/configure,
19278	* device/lib/pic14/depcomp,
19279	* device/lib/pic14/install-sh,
19280	* device/lib/pic14/libm/Makefile.in,
19281	* device/lib/pic14/libsdcc/enhanced/Makefile.in,
19282	* device/lib/pic14/libsdcc/regular/Makefile.in,
19283	* device/lib/pic14/missing,
19284	* device/lib/pic16/configure,
19285	* device/non-free/lib/pic14/configure,
19286	* device/non-free/lib/pic16/configure:
19287	  automatically (re)generated files
19288
192892011-10-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19290
19291	* src/SDCCsymt.c (computeType): fixed bug #3431210
19292
192932011-10-31 Raphael Neider <rneider AT web.de>
19294
19295	* src/pic14/device.c (init_pic): reformatted,
19296	  fixup enhanced cores' name for INDF
19297	* src/pic14/pcode.c, src/pic14/pcode.h, src/pic14/ralloc.h:
19298	  provide indirect memory access registers for enhanced cores
19299	* src/pic14/gen.c (setup_fsr):
19300	  setup FSR0L and FSR0H on enhanced cores,
19301	  fix access to INDF vs. INDF0, closes #3431024
19302
193032011-10-30 Raphael Neider <rneider AT web.de>
19304
19305	* src/pic14/device.c, src/pic14/device.h,
19306	  device/include/pic14/pic14devices.txt:
19307	  declare enhanced cores as such
19308	* src/pic14/gen.c:
19309	  do not save/restore W, STATUS, BSR, FSRx, or PCLATH around
19310	  interrupts on enhanced devices, as these registers will be
19311	  saved automatically and FSR is not present on these devices
19312
193132011-10-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19314
19315	* src/SDCCast.c (processParams): fixed bug #3424385
19316
193172011-10-29 Maarten Brock <sourceforge.brock AT dse.nl>
19318
19319	* sdas/linksrc/lkmain.c (main): fixed banking, bug 3420365
19320	* src/SDCCast.c: cosmetics
19321
193222011-10-25 Borut Razem <borut.razem AT gmail.com>
19323
19324	* configure.in, configure, Makefile.in, device/lib/z180/Makefile.in,
19325	  device/lib/z180/Makefile, device/lib/z80/Makefile.in,
19326	  device/lib/gbz80/Makefile.in, device/lib/ds390/Makefile.in,
19327	  device/lib/Makefile.in, device/lib/ds400/Makefile.in,
19328	  device/lib/ds400/ds400rom.c, device/lib/mcs51/Makefile.in,
19329	  device/lib/r2k/Makefile.in, device/lib/hc08/Makefile.in,
19330	  device/non-free/lib/Makefile.in, all.vcxproj,
19331	  doc/sdccman.lyx, sdcc.sln, support/scripts/sdcc.nsi:
19332	  asranlib renamed to sdranlib
19333	* sdas/asranlib/*: sdas/asranlib moved to support/sdranlib
19334
193352011-10-23 Raphael Neider <rneider AT web.de>
19336
19337	* device/include/pic14/pic14devices.txt:
19338	  fix config word addresses for 12f1822/3, add 16f1934/6/7 family
19339
193402011-10-21 Raphael Neider <rneider AT web.de>
19341
19342	* src/pic14/device.c, src/pic14/device.h, src/pic14/ralloc.c:
19343	  rewrite config word handling to support locations other than
19344	  0x2007 and 0x2008 (16f1936 has config words at 0x8007, 0x8008)
19345	* device/include/pic14/pic14devices.txt:
19346	  replace confsiz directive with list of config word addresses
19347
193482011-10-20 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19349
19350	* device/include/string.h,
19351	  device/lib/_memcpy.c,
19352	  device/lib/_memset.c:
19353	  Reenable built-in memset() for z80, enable it and built-in memcpy() for z180 and r2k.
19354
193552011-10-20 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19356
19357	* Makefile.common.in:
19358	  Handle OPT_DISABLE_GBZ80.
19359
193602011-10-20 Philipp Klaus Krause <pkk AT spth.de>
19361
19362	* device/include/string.h:
19363	  Disable built-in memset until the library build problem is fixed.
19364
193652011-10-19 Philipp Klaus Krause <pkk AT spth.de>
19366
19367	* src/SDCCopt.c,
19368	  src/z80/gen.c,
19369	  src/z80/main.c,
19370	  device/include/string.h,
19371	  support/regression/tests/memory.c:
19372	  Built-in memset() for z80, z180 and r2k.
19373
193742011-10-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19375
19376	* src/z80/gen.c:
19377	  Use ld hl, n (sp) on the gbz80.
19378	* src/z80/ralloc2.cc:
19379	  When in doubt, try to honour register keyword.
19380
193812011-10-19 Borut Razem <borut.razem AT gmail.com>
19382
19383	* Makefile.common.in: added OPT_DISABLE_Z180, OPT_DISABLE_R2K
19384
193852011-10-18 Borut Razem <borut.razem AT gmail.com>
19386
19387	* doc/sdccman.lyx: changed MS Visual C++ 6.0 to MS Visual C++ 2010,
19388	  reverted to LyX version 1.6.7 format, as proposed by Robert Larice
19389	* support/cpp/sdcpp-opts.c: fixed bug #3388478:
19390	  Preprocessor Error when Invoking sdcc with -E/-M/-MM and -o
19391
193922011-10-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19393
19394	* Makefile.in:
19395	  Fixed bug #3424968.
19396
193972011-10-17 Philipp Klaus Krause <pkk AT spth.de>
19398
19399	* device/include/iso646.h,
19400	  support/regression/tests/iso646.c:
19401	  Added macros required by C99  (this header is now C99-compliant).
19402	* device/include/limits.h:
19403	  Removed UCHAR_MIN, added macros for long long (this header is now C99-compliant).
19404	* device/include/stdint.h:
19405	  Code cleanup, added macros for 64 bit integers, wchar_t and wint_t (this header is now C99-compliant except for intmax_t and uintmax_t having less than 64 bits).
19406	* device/include/string.h:
19407	  Renamed namespace-polluting _SIZE_T_DEFINED.
19408	* device/include/stddef.h:
19409	  Renamed namespace-polluting _SIZE_T_DEFINED, added ptrdiff_t and wchar_t (this header is now C99-compliant).
19410	* device/include/stdio.h:
19411	  Renamed namespace-polluting _SIZE_T_DEFINED.
19412	* device/include/stdarg.h,
19413	  support/regression/tests/vaargs.c:
19414	  Fixed va_end, added va_copy (this header is now C99-compliant).
19415
194162011-10-16 Borut Razem <borut.razem AT gmail.com>
19417
19418	* support/scripts/sdcc.nsi: added dedication to Dennis M. Ritchie
19419	* support/cpp/c-ppoutput.c:
19420	  fixed bug #3408654: SDCC shows wrong line number in warning 94:
19421	  disabled # LINE directive generation in __asm __endasm block
19422
194232011-10-16 Raphael Neider <rneider AT web.de>
19424
19425	* device/include/pic16/i2c.h,
19426	* device/lib/pic16/libio/i2c/i2cwritec.c:
19427	  addressed issues from #3413443
19428	* device/include/pic16/adc.h,
19429	* device/lib/pic16/libio/adc/adcopen.c:
19430	  addressed issues from #3409666
19431
194322011-10-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19433
19434	* support/regression/collate-results.py,
19435	  support/regression/compact-results.py: fixed bug #3413437
19436
194372011-10-15 Philipp Klaus Krause <pkk AT spth.de>
19438
19439	* src/z80/gen.c,
19440	  support/regression/tests/bug3424150.c:
19441	  Fixed bug #3424150.
19442
194432011-10-15 Philipp Klaus Krause <pkk AT spth.de>
19444
19445	* doc/sdccman.lyx:
19446	  Mentioned z180 and r2k ports and long long data type in manual.
19447
194482011-10-14 Borut Razem <borut.razem AT gmail.com>
19449
19450	* support/scripts/sdcc.nsi: remove include/asm/r2k directoriy
19451	  during uninstallation
19452	* */*.dsw, */*.dsw: removed obsolete VS6 project files
19453	* support/Util: renamed to support/util
19454
194552011-10-13 Borut Razem <borut.razem AT gmail.com>
19456
19457	* .version, doc/sdccman.lyx: bumped version to 3.0.6
19458	* src/SDCCicode.c:
19459	  disable -O2 optimization for i386 Linux and mingw platforms
19460	  (solaris i386 is OK);
19461	  see patch #3285611: Workaround gcc 4.6.0 bug with sdcc 3.0.0
19462	* src/SDCCval.c:
19463	  Microsoft C compiler doesn't support hexadecimal floating-point
19464	  literals
19465
194662011-10-12 Borut Razem <borut.razem AT gmail.com>
19467
19468	* device/include/Makefile.in:
19469	  fixed detection if files with the given extension exist;
19470	  specially treat z80 family: z180, r2k and gbz80 targets
19471	* support/scripts/sdcc.nsi: added Rabbit 2000 support
19472	* sdas/asrab/asrab.vcxproj, sdas/asrab/asrab.vcxproj.filters,
19473	  sdcc.sln, src/src.vcxproj, src/src.vcxproj.filters,
19474	  src/z80/z80.vcxproj, src/z80/z80.vcxproj.filters:
19475	  added sdasrab assembler to the project
19476	* debugger/mcs51/simi.c: cygwin doesn't support O_ASYNC
19477
194782011-10-11 Borut Razem <borut.razem AT gmail.com>
19479
19480	* device/include/Makefile.in: install/copy only existing files
19481	* src/SDCCicode.c: disable -O2 optimization for all i386 platforms;
19482	  see patch #3285611: Workaround gcc 4.6.0 bug with sdcc 3.0.0
19483
194842011-10-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19485
19486	* configure.in:
19487	  Fixed bug #3413688.
19488
194892011-10-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19490
19491	* sdas/asrab/rabbit.h,
19492	  sdas/asrab/rabbitadr.c,
19493	  sdas/asrab/rabbitmch.c:
19494	  Leland Morrison's fix for ld n (hl), hl and ld hl, n (hl).
19495	* src/z80/peeph-r2k.def:
19496	  Enable peepholes using ld hl, n (hl).
19497
194982011-10-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19499
19500	* src/z80/main.c,
19501	  src/z80/main.c,
19502	  src/z80/z80.h:
19503	  Fix code generation for handling of rematerialization by the new
19504	  register allocator, enable it for the ports with exact cost function
19505	  and remove the option.
19506
195072011-10-10 Borut Razem <borut.razem AT gmail.com>
19508
19509	* support/scripts/sdcc.nsi: removed include/z80 added include/z180
19510
195112011-10-09 Raphael Neider <rneider AT web.de>
19512
19513	* src/SDCCval.c (constVal): avoid compiler warning
19514	* src/pic16/gen.c (genPcall): do not clobber interrupt flags in
19515	  INTCON during indirect function call, closes #3420588
19516
195172011-10-09 Philipp Klaus Krause <pkk AT spth.de>
19518
19519	* Merge the Rabbit2000 branch.
19520
195212011-10-09 Philipp Klaus Krause <pkk AT spth.de>
19522
19523	* device/include/z80/z180.h,
19524	  device/include/z80/types.h,
19525	  device/include/z80/README,
19526	  device/include/z80/z180.h:
19527	  Move z180 include file.
19528
195292011-10-09 Philipp Klaus Krause <pkk AT spth.de>
19530
19531	* src/SDCCmain.c:
19532	  Cleanup z180 library handling.
19533
195342011-10-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19535
19536	* support/scripts/sdcc.nsi: add Z180 lib and include files to package
19537
195382011-10-07 Philipp Klaus Krause <pkk AT spth.de>
19539
19540	* src/z80/gen.c,
19541	  src/z80/peep.c:
19542	  Use r2k-specific ld n (sp), hl,  ld n (sp), iy, ld n (ix), ld iy, n (sp), ld hl, n (sp) and ld hl, n (ix).
19543
195442011-10-07 Philipp Klaus Krause <pkk AT spth.de>
19545
19546	* src/z80/gen.c,
19547	  src/z80/peep.c,
19548	  src/z80/peeph-r2k.def,
19549	  src/z80/peeph-z80.def:
19550	  Preparations for use of r2k-specific ld hl, n (sp) and ld hl, n (ix).
19551
195522011-10-07 Philipp Klaus Krause <pkk AT spth.de>
19553
19554	* src/z80/gen.c:
19555	  Preparations for use of r2k-specific ld iy,hl.
19556
195572011-10-07 Philipp Klaus Krause <pkk AT spth.de>
19558
19559	* src/z80/gen.c,
19560	  src/z80/peeph-r2k.def,
19561	  src/z80/peeph-z80.def:
19562	  Allow use of r2k-specific ld hl, (hl) instruction.
19563
195642011-10-07 Philipp Klaus Krause <pkk AT spth.de>
19565
19566	* src/z80/gen.c:
19567	  Make better use of the r2k-specific add sp, d instruction.
19568
195692011-10-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19570
19571	* src/z80/gen.c:
19572	  More flexible use of r2k-specific and hl, de instruction.
19573
195742011-10-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19575
19576	* src/z80/gen.c:
19577	  Allow use of r2k-specific instructions in right shift.
19578	* sim/ucsim/z80.src/inst.cc:
19579	  Fix flag handling in z80/z180/r2k rrca instruction.
19580	* sim/ucsim/z80.src/inst_r2k.cc:
19581	  Fix handling of carry bit in r2k 16-bit rr and rl instructions.
19582
195832011-10-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19584
19585	* src/z80/peeph-z80.def,
19586	  src/z80/peeph-r2k.def:
19587	  Minor peephole improvement.
19588
195892011-10-04 Philipp Klaus Krause <pkk AT spth.de>
19590
19591	* sim/ucsim/z80.src/inst_r2k.cc:
19592	  Fix signed multiplication to use two's complement instead of sign-magnitude, 3rd attempt.
19593
195942011-10-04 Philipp Klaus Krause <pkk AT spth.de>
19595
19596	* sim/ucsim/z80.src/inst_r2k.cc:
19597	  Fix signed multiplication to use two's complement instead of sign-magnitude, 2nd attempt.
19598
195992011-10-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19600
19601	* sim/ucsim/z80.src/inst_r2k.cc,
19602	  sim/ucsim/z80.src/r2k.cc,
19603	  sim/ucsim/z80.src/z80cl.h,
19604	  sim/ucsim/z80.src/inst_ed_r2k.cc,
19605	  sim/ucsim/z80.src/inst_xd.cc,
19606	  sim/ucsim/z80.src/r2kcl.h,
19607	  sim/ucsim/z80.src/glob.cc:
19608	  Leland Morrison's support for some more r2k-specific instructions.
19609
196102011-10-04 Philipp Klaus Krause <pkk AT spth.de>
19611
19612	* sim/ucsim/z80.src/inst_r2k.cc:
19613	  Fix signed multiplication to use two's complement instead of sign-magnitude.
19614
196152011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19616
19617	* sim/ucsim/z80.src/r2k.cc,
19618	  sim/ucsim/z80.src/r2kcl.h:
19619	  Forgotten files from Leland Morrison's Rabbit 2000 ucsim port.
19620
196212011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19622
19623	* src/z80/gen.c,
19624	  sim/ucsim/z80.src/inst_r2k.cc:
19625	  Fixed multiplication using r2k mul instruction.
19626
196272011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19628
19629	* sdas/asrab/rabbitmch.c:
19630	  Leland Morrison's support for ld iy, hl.
19631
196322011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19633
19634	* sim/ucsim/z80.src/inst_r2k.cc,
19635	  sim/ucsim/z80.src/glob_r2k.cc,
19636	  sim/ucsim/z80.src/inst_ed_r2k.cc:
19637	  Forgotten files from Leland Morrison's Rabbit 2000 ucsim port, support for r2k mul and ld iy, hl instructions in ucsim.
19638
196392011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19640
19641	* src/z80/peep.c:
19642	  Handle r2k mul instruction in code size calculation.
19643
196442011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19645
19646	* sim/ucsim/z80.src/Makefile.in,
19647	  sim/ucsim/z80.src/z80cl.h,
19648	  sim/ucsim/z80.src/regsz80.h,
19649	  sim/ucsim/z80.src/sz80.cc,
19650	  sim/ucsim/z80.src/z80mac.h,
19651	  sim/ucsim/z80.src/inst_xd.cc,
19652	  sim/ucsim/z80.src/z80.cc,
19653	  sim/ucsim/z80.src/glob.cc,
19654	  sim/ucsim/z80.src/inst_dd.cc,
19655	  sim/ucsim/z80.src/glob.h,
19656	  sim/ucsim/z80.src/inst_fd.cc,
19657	  sim/ucsim/z80.src/simz80.cc,
19658	  sim/ucsim/stypes.h,
19659	  sim/ucsim/sim.src/uc.cc,
19660	  sim/ucsim/globals.cc:
19661	  Leland Morrison's Rabbit 2000 ucsim port.
19662
196632011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19664
19665	* src/z80/gen.c:
19666	  Use add sp, #n in function entry in r2k port.
19667
196682011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19669
19670	* src/z80/gen.c:
19671	  Use Rabbit-specific instructions in and, multiplication and assignment for r2k port.
19672
196732011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19674
19675	* src/z80/gen.c,
19676	  src/z80/peep.c:
19677	  Preparations for use of add sp, #n in function entry in r2k port.
19678
196792011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19680
19681	* support/regression/tests/bug1115321.c
19682	  support/regression/Makefile.in
19683	  support/regression/fwk/include/testfwk.h
19684	  support/regression/ports/ucr2k
19685	  Leland Morrison's Rabbit 2000 regression test port.
19686
196872011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19688
19689	* src/SDCCmain.c:
19690	  Fix library path. r2k port works now.
19691
196922011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19693
19694	* device/include/stdint.h:
19695	  Enable 64 bit integer types for r2k port.
19696
196972011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19698
19699	* device/include/asm/r2k,
19700	  device/include/asm/r2k/features.h,
19701	  device/lib/r2k/Makefile.in,
19702	  Makefile.in,
19703	  src/SDCCmain.c,
19704	  src/z80/gen.c,
19705	  src/z80/main.c,
19706	  device/lib/Makefile.in,
19707	  configure.in,
19708	  device/lib/r2k/Makefile.in,
19709	  device/lib/r2k/strlen.s:
19710	  r2k library cleanup.
19711
197122011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19713
19714	* device/lib/r2k,
19715	  device/include/sdcc-lib.h,
19716	  device/include/math.h,
19717	  device/include/stdarg.h:
19718	  Leland Morrison's Rabbit 2000 library port.
19719
197202011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19721
19722	* configure.in:
19723	  Add r2k port.
19724	* src/port.h,
19725	  src/z80/gen.c
19726	  src/z80/main.c
19727	  src/z80/z80.h:
19728	  Code cleanup.
19729	* src/z80/peep.c:
19730	  Fix code size for ex (sp), hl in r2k port.
19731
197322011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19733
19734	* src/SDCCralloc.hpp,
19735	  src/SDCCmain.c,
19736	  src/SDCCglue.c,
19737	  src/port.h,
19738	  src/z80/peeph-r2k.def,
19739	  src/z80/gen.c,
19740	  src/z80/mappings.i,
19741	  src/z80/main.c,
19742	  src/z80/z80.h,
19743	  src/z80/peep.c:
19744	  Leland Morrison's Rabbit 2000 compiler port.
19745
197462011-10-03 Philipp Klaus Krause <pkk AT spth.de>
19747
19748	* sdas/asrab,
19749	  sdas/asrab/Makefile.in,
19750	  sdas/asrab/rabbitext.c,
19751	  sdas/asrab/clean.mk,
19752	  sdas/asrab/rabbit.h,
19753	  sdas/asrab/rabbitadr.c,
19754	  sdas/asrab/rabbitpst.c,
19755	  sdas/asrab/rabbitmch.c:
19756	  Leland Morrison's assembler for Rabbit 2000 and Rabbit 4000.
19757
197582011-10-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19759
19760	* sim/ucsim/hc08.src/glob.cc: add HCS08 instructions to disassembler
19761	* src/SDCCval.c: fixed constant to avoid unintended long long literal
19762
197632011-10-01 Philipp Klaus Krause <pkk AT spth.de>
19764
19765	* device/include/stdint.h:
19766	  Added typedefs for 64-bit integer types.
19767
197682011-10-01 Philipp Klaus Krause <pkk AT spth.de>
19769
19770	* src/SDCCerr.h,
19771	  src/SDCCerr.c,
19772	  src/SDCCval.c:
19773	  Error for invalid integer suffix, as in 1ullul.
19774
197752011-10-01 Raphael Neider <rneider AT web.de>
19776
19777	* device/non-free/include/pic14/pic12f1822.h,
19778	  device/non-free/lib/pic14/libdev/pic12f1822.c,
19779	  device/include/pic14/pic14devices.txt,
19780	  device/lib/pic14/libdev/devices.txt:
19781	  Add support for 12f1822 devices, requires --enable-new-pics to be
19782	  passed to configure, closes #3416092.
19783
19784	* device/non-free/lib/pic14/libdev/Makefile.in,
19785	  device/non-free/lib/pic14/configure.in:
19786	  Add --enable-new-pics switch to build device libs for devices added
19787	  to gputils only after the 0.13.7 release; by default, only libs for
19788	  devices that are supported in gputils 0.13.7 are built to avoid build
19789	  failures.
19790
19791	* device/non-free/lib/pic14/configure:
19792	  Regenerated.
19793
197942011-10-01 Philipp Klaus Krause <pkk AT spth.de>
19795
19796	* src/SDCCopt.c:
19797	  Slightly more informative error message when attempting to multiply, etc long long.
19798
197992011-10-01 Philipp Klaus Krause <pkk AT spth.de>
19800
19801	* src/z80/gen.c:
19802	  Reorganized pointer access functions, fixed the remaining warning in the z80 port.
19803
198042011-10-01 Borut Razem <borut.razem AT gmail.com>
19805
19806	* src/SDCCerr.c, src/SDCCerr.h, src/SDCC.lex:
19807	  SDCCerr code cleanup
19808
198092011-10-01 Philipp Klaus Krause <pkk AT spth.de>
19810
19811	* src/z80/gen.c:
19812	  Reorganized pointer access functions, fixed the remaining warning in the z80 port.
19813
198142011-10-01 Philipp Klaus Krause <pkk AT spth.de>
19815
19816	* src/SDCCsymt.c:
19817	  Enable long long for gbz80 and z180 ports.
19818	* src/pic14/gen.c:
19819	  Fixed use of pic16 functions in pic14 port.
19820
198212011-10-01 Philipp Klaus Krause <pkk AT spth.de>
19822
19823	* src/src/izt/tlcs900h.c,
19824	  src/izt/i186.c,
19825	  src/z80/main.c:
19826	  Added missing long long type size entries.
19827
198282011-10-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19829
19830	* src/ds390/main.c: added missing long long type size entries
19831
198322011-10-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19833
19834	* sim/ucsim/z80.src/sz80.cc: enable sz80 -H option
19835	* sim/ucsim/globals.cc,
19836	* sim/ucsim/globals.h,
19837	* sim/ucsim/stypes.h,
19838	* sim/ucsim/hc08.src/shc08.cc,
19839	* sim/ucsim/hc08.src/hc08.cc,
19840	* sim/ucsim/hc08.src/hc08cl.h,
19841	* sum/ucsim/hc08.src/inst.cc,
19842	* sum/ucsim/hc08.src/instcl.h,
19843	* sum/ucsim/hc08.src/hc08mac.h: Add support for HCS08 instructions
19844
198452011-09-30 Philipp Klaus Krause <pkk AT spth.de>
19846
19847	* src/xa51/main.c
19848	  src/mcs51/main.c
19849	  src/SDCCsymt.c
19850	  src/SDCCsymt.h
19851	  src/avr/main.c
19852	  src/port.h
19853	  src/pic14/main.c
19854	  src/z80/gen.c
19855	  src/z80/ralloc.c
19856	  src/z80/main.c
19857	  src/pic16/main.c
19858	  src/SDCCglobl.h
19859	  src/hc08/main.c
19860	  src/ds390/main.c:
19861	  Very basic (no multiplication/division/shift/return) support for long long for the Z80.
19862
198632011-09-30 Philipp Klaus Krause <pkk AT spth.de>
19864
19865	* src/SDCCerr.h,
19866	  src/SDCCerr.c,
19867	  src/SDCCsymt.c:
19868	  Drop support for declarations like "long short short long short int x;".
19869
198702011-09-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
19871
19872	* configure.in,
19873	  configure: create device/lib/z180/Makefile during configuration
19874
198752011-09-28 Philipp Klaus Krause <pkk AT spth.de>
19876
19877	* src/z80/ralloc2.cc,
19878	  src/z80/gen.c:
19879	  Handle the trivial casts more like assignments, allow hl in operands for unary minus.
19880
198812011-09-28 Philipp Klaus Krause <pkk AT spth.de>
19882
19883	* ChangeLog:
19884	  Reconstruct ChangeLog entries lost during the z180 branch merge.
19885
198862011-09-25 Philipp Klaus Krause <pkk AT spth.de>
19887
19888	* src/z80/main.c:
19889	  Always use native multiplication for Z80 and Z180 when the result is 8 bits.
19890
198912011-09-25 Philipp Klaus Krause <pkk AT spth.de>
19892
19893	* src/z80/gen.c:
19894	  Always use of Z180 mlt instruction for unsigned 8x8 multiplication,
19895	  fixed bug in register-to-register cast.
19896
198972011-09-24 Philipp Klaus Krause <pkk AT spth.de>
19898
19899	* src/z80/peep.c:
19900	  Handle Z180 mlt instruction in peephole optimizer.
19901
199022011-09-24 Philipp Klaus Krause <pkk AT spth.de>
19903
19904	* Merged z180 branch.
19905
199062011-09-24 Maarten Brock <sourceforge.brock AT dse.nl>
19907
19908	* device/lib/printf_large.c: accept int modifiers
19909
199102011-09-24 Philipp Klaus Krause <pkk AT spth.de>
19911
19912	* sim/ucsim/globals.cc,
19913	  sim/ucsim/z80.src/inst_ed.cc:
19914	  Report mlt instructions as invalid in simulator when running in Z80 mode.
19915
199162011-09-23 Philipp Klaus Krause <pkk AT spth.de>
19917
19918	* src/SDCCglue.c,
19919	  src/z80/gen.c,
19920	  src/z80/main.c,
19921	  sim/ucsim/z80.src/inst_ed.cc:
19922	  Enable use of Z180 multiplication instructions.
19923
199242011-09-23 Philipp Klaus Krause <pkk AT spth.de>
19925
19926	* support/regression/tests/bug1115321.c:
19927	  Fix last remaining ucz180 regression test failure.
19928
199292011-09-23 Philipp Klaus Krause <pkk AT spth.de>
19930
19931	* device/include/string.h,
19932	  device/include/sdcc-lib.h,
19933	  device/include/math.h,
19934	  device/include/stdarg.h,
19935	  device/lib/_malloc.c,
19936	  device/lib/_realloc.c,
19937	  device/lib/_free.c,
19938	  device/lib/Makefile.in,
19939	  sim/ucsim/z80.src/z80cl.h,
19940	  sim/ucsim/z80.src/z80.cc,
19941	  sim/ucsim/z80.src/simz80.cc,
19942	  sim/ucsim/stypes.h,
19943	  sim/ucsim/globals.cc,
19944	  sim/ucsim/globals.h,
19945	  sdas/linksrc/lkarea.c,
19946	  sdas/linksrc/sdld.c,
19947	  sdas/linksrc/sdld.h,
19948	  sdas/linksrc/lkrloc.c,
19949	  support/regression/Makefile.in,
19950	  support/regression/fwk/include/testfwk.h,
19951	  device/include/asm/z180,
19952	  device/include/asm/z180/features.h,
19953	  device/lib/z180,
19954	  device/lib/z180/divunsigned.s,
19955	  device/lib/z180/Makefile.in,
19956	  device/lib/z180/crtcall.s,
19957	  device/lib/z180/mulchar.s,
19958	  device/lib/z180/README,
19959	  device/lib/z180/mul.s,
19960	  device/lib/z180/stubs.s,
19961	  device/lib/z180/setjmp.s,
19962	  device/lib/z180/abs.s,
19963	  device/lib/z180/memmove.s,
19964	  device/lib/z180/fstubs.s,
19965	  device/lib/z180/modmixed.s,
19966	  device/lib/z180/putchar.s,
19967	  device/lib/z180/strlen.s,
19968	  device/lib/z180/crt0.s,
19969	  device/lib/z180/divmixed.s,
19970	  device/lib/z180/modsigned.s,
19971	  device/lib/z180/crt0_rle.s,
19972	  device/lib/z180/Makefile,
19973	  device/lib/z180/modunsigned.s,
19974	  device/lib/z180/divsigned.s,
19975	  device/lib/z180/heap.s,
19976	  device/lib/z180/shift.s,
19977	  support/regression/ports/ucz180,
19978	  support/regression/ports/ucz180/spec.mk,
19979	  support/regression/ports/ucz180/uCsim.cmd,
19980	  support/regression/ports/ucz180/support.asm:
19981	  Z180 port passes all regression tests except for one.
19982
199832011-09-23 Philipp Klaus Krause <pkk AT spth.de>
19984
19985	* src/SDCCicode.c,
19986	  support/regression/tests/bug2942247.c:
19987	  Fixed bug #2942247.
19988
199892011-09-22 Maarten Brock <sourceforge.brock AT dse.nl>
19990
19991	* src/SDCC.y (abstract_declarator2): fixed bug 3190029
19992	* support/regression/tests/bug3190029.c: new, added
19993
199942011-09-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
19995
19996	* src/pic16/gen.c,
19997	  src/pic14/gen.c,
19998	  device/include/stdbool.h,
19999	  support/regression/bool.c,
20000	  src/SDCCsymt.c,
20001	  src/SDCCast.c:
20002	  _Bool support for the pics.
20003
200042011-09-19 Raphael Neider <rneider AT web.de>
20005
20006	* device/lib/pic16/libio/adc/adcopen.c:
20007	  suppress 'pcfg unused' compiler warning
20008
20009	* device/lib/pic16/Makefile.common
20010	  device/non-free/lib/pic16/Makefile.common:
20011	  move -Ipath to AM_CPPFLAGS for use by depmod
20012
20013	* device/lib/pic16/configure.ac,
20014	  device/non-free/lib/pic16/configure.ac:
20015	  add --enable-new-pics switch to build support libs for devices added
20016	  to gputils only after the 0.13.7 release; by default, only libs for
20017	  devices that are supported in gputils 0.13.7 are built to avoid build
20018	  failures
20019
20020	* device/lib/pic16/libio/Makefile.am,
20021	  device/non-free/lib/pic16/libdev/Makefile.am:
20022	  honor --enable-new-pics switch to include/exclude certain devices
20023
20024	* doc/sdccman.lyx:
20025	  document the new configure switch
20026
20027	* device/lib/pic16/Makefile.in,
20028	* device/lib/pic16/aclocal.m4,
20029	* device/lib/pic16/configure,
20030	* device/lib/pic16/debug/Makefile.in,
20031	* device/lib/pic16/libc/Makefile.in,
20032	* device/lib/pic16/libio/Makefile.in,
20033	* device/lib/pic16/libm/Makefile.in,
20034	* device/lib/pic16/libsdcc/Makefile.in,
20035	* device/lib/pic16/startup/Makefile.in,
20036	* device/non-free/lib/pic16/Makefile.in,
20037	* device/non-free/lib/pic16/aclocal.m4,
20038	* device/non-free/lib/pic16/configure,
20039	* device/non-free/lib/pic16/libdev/Makefile.in:
20040	  regenerated
20041
200422011-09-18 Maarten Brock <sourceforge.brock AT dse.nl>
20043
20044	* src/ds390/gen.c (genFunction),
20045	* src/mcs51/gen.c (genFunction): handle function pointers, fixed bug 3410620
20046	* src/SDCCsymt.c (compareFuncType): check regbank for non-isr,
20047	  (dbuf_printTypeChain): print reentrancy, register bank & bankswitching
20048	* src/SDCCsymt.h: removed unused & buggy IFFUNC_RBANK
20049	* support/Util/dbuf.c (dbuf_set_length): auto-init dbuf
20050	* support/regression/tests/bug3410620.c: new, added
20051
200522011-09-18 Philipp Klaus Krause <pkk AT spth.de>
20053
20054	* src/SDCCralloc.hpp,
20055	  support/regression/tests/bug3410878.c:
20056	  Fixed bug #3410878.
20057
200582011-09-18 Maarten Brock <sourceforge.brock AT dse.nl>
20059
20060	* src/SDCCast.c (processParms): fixed bugs 3166064 and 3394118
20061	* support/regression/tests/bug3166064.c: new, added
20062	* .version,
20063	* doc/sdccman.lyx: bumped version to 3.0.5
20064
200652011-09-15 Maarten Brock <sourceforge.brock AT dse.nl>
20066
20067	* src/SDCCval.c (getNelements): fixed bug 3135551
20068	* support/regression/tests/bug3135551.c: new, added
20069	* src/ds390/gen.c (genInline),
20070	* src/hc08/gen.c (genInline),
20071	* src/mcs51/gen.c (genInline),
20072	* src/pic14/gen.c (genInline),
20073	* src/pic16/gen.c (genInline),
20074	* src/z80/gen.c (genInline),
20075	* support/cpp/c-ppoutput.c (scan_translation_unit),
20076	* support/cpp/libcpp/lex.c (cpp_output_line): replaced character by '\x87'
20077
200782011-09-14 Maarten Brock <sourceforge.brock AT dse.nl>
20079
20080	* src/ds390/gen.c (genInline),
20081	* src/hc08/gen.c (genInline),
20082	* src/mcs51/gen.c (genInline),
20083	* src/pic14/gen.c (genInline),
20084	* src/pic16/gen.c (genInline),
20085	* src/z80/gen.c (genInline): convert (0x87) to newline
20086	* support/cpp/libcpp/include/cpplib.h: removed IN_ASM, added ENTER_ASM and
20087	  EXIT_ASM
20088	* support/cpp/c-ppoutput.c (scan_translation_unit),
20089	* support/cpp/libcpp/lex.c (_cpp_process_line_notes, _cpp_lex_direct,
20090	  cpp_output_token, cpp_output_line): fixed bugs 3407198 and 3407279 by
20091	  inserting (0x87) for newlines
20092	* support/regression/tests/bug1505956.c: added tests
20093
200942011-09-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20095
20096	* src/z80/gen.c,
20097	  support/regression/tests/bug3401973.c:
20098	  Fixed bug #3401973.
20099
201002011-09-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20101
20102	* src/SDCCopt.c,
20103	  support/regression/bug3407632.c:
20104	  Fixed bug #3407632.
20105
201062011-09-10 Maarten Brock <sourceforge.brock AT dse.nl>
20107
20108	* sdas/linksrc/aslink.h: added pcb & rterr, modified lkglist
20109	* sdas/linksrc/lkarea.c (find_empty_space, allocate_space): changed warnings
20110	* sdas/linksrc/lkdata.c: added pcb & rterr
20111	* sdas/linksrc/lkeval.c (eval, expr, term): no signed arithmetic,
20112	  (term): accept closing quotes
20113	* sdas/linksrc/lklist.c: sync with ASxxxx 5
20114	* sdas/linksrc/lkmain.c (link_main): reset a_bytes and hilo to defaults 2,0
20115	  fixes bug 3305824
20116	* sdas/linksrc/lkrloc.c (relr): set default pcb
20117
201182011-09-09 Borut Razem <borut.razem AT gmail.com>
20119
20120	* support/cpp/md5.h:
20121	  included stdint.h for uintptr_t declaration
20122
201232011-09-08 Borut Razem <borut.razem AT gmail.com>
20124
20125	* support/cpp/md5.h:
20126	  fixed WIN64 warning: cast from pointer to integer of different size
20127
201282011-09-07 Borut Razem <borut.razem AT gmail.com>
20129
20130	* support/cpp/version.c: updated version to 4.6.1
20131
201322011-09-06 Borut Razem <borut.razem AT gmail.com>
20133
20134	* debugger/mcs51/sdcdb.h, src/SDCCsystem.c, src/pic14/glue.c:
20135	  fixed WIN64 warnings: cast from pointer to integer of different size
20136	* src/SDCCsystem.c: fixed WIN64 TRUE and FALSE redefinition
20137	* src/SDCCglobal.c: fixed stack overflow
20138
201392011-09-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20140
20141	* src/SDCCralloc.hpp:
20142	  Connect unconnected live-ranges instead of just spilling.
20143
201442011-09-06 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20145
20146	* src/z80/gen.c:
20147	  Minor cleanup from the stack-compact branch.
20148
201492011-09-05 Maarten Brock <sourceforge.brock AT dse.nl>
20150
20151	* device/lib/sincoshf.c: fixed bug 3326853
20152
201532011-09-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
20154
20155	* support/regression/tests/bug1723128.c: fixed bug 3403038
20156
201572011-09-04 Philipp Klaus Krause <pkk AT spth.de>
20158
20159	* src/SDCCsymt.h,
20160	  support/regression/tests/bug3404101.c:
20161	  Fixed bug #3404101.
20162
201632011-09-04 Maarten Brock <sourceforge.brock AT dse.nl>
20164
20165	* Makefile.in: added some dependencies to fix bug 3148465
20166	* src/mcs51/gen.c (gencjneshort,genOr): small optimizations
20167	* src/SDCCicode.h,
20168	* src/SDCCicode.c (operandType): fixed warning
20169	* src/SDCCsymt.h: cosmetics
20170	* src/z80/gen.c: fixed warnings
20171	* support/cpp/sdcpp-opts.c (sdcpp_common_init): return true on success
20172
201732011-09-04 Borut Razem <borut.razem AT gmail.com>
20174
20175	* support/scripts/sdcc.nsi: include readline5.dll in 64bit package
20176
201772011-09-03 Maarten Brock <sourceforge.brock AT dse.nl>
20178
20179	* support/regression/tests/bug3368945.c,
20180	* support/regression/tests/bug3381400.c,
20181	* support/regression/tests/bug3397636.c: fixed line endings and svn props
20182	* support/regression/tests/bug3401973.c: put large struct in large memory
20183	* support/regression/tests/bug3403429.c: fixed warnings, explained bug
20184
201852011-09-03 Philipp Klaus Krause <pkk AT spth.de>
20186
20187	* src/SDCCmain.c:
20188	  Basic working z180 port.
20189
201902011-09-03 Philipp Klaus Krause <pkk AT spth.de>
20191
20192	* configure.in,
20193	  configure,
20194	  sdccconf_in.h,
20195	  src/SDCCmain.c,
20196	  src/SDCCglue.c,
20197	  src/SDCCopt.c,
20198	  src/port.h,
20199	  src/SDCCopt.c,
20200	  src/SDCCralloc.hpp,
20201	  src/z80/z80.h,
20202	  src/z80/main.c,
20203	  src/z80/gen.c,
20204	  src/z80/ralloc.c:
20205	  Basic infrastructure for z180 port.
20206
202072011-09-02 Philipp Klaus Krause <pkk AT spth.de>
20208
20209	* tests/bug3403429.c:
20210	  Regression test for bug 3403429.
20211
202122011-09-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20213
20214	* src/z80/gen.c:
20215	  Use res instead of and to clear sign bit.
20216
202172011-09-02 Maarten Brock <sourceforge.brock AT dse.nl>
20218
20219	* device/lib/_fsgt.c,
20220	* device/lib/_fslt.c: test for -0.0
20221	* src/ds390/gen.c (toBoolean),
20222	* src/hc08/gen.c (asmopToBool),
20223	* src/mcs51/gen.c (toBoolean),
20224	* src/z80/gen.c (_toBoolean): ignore sign of float,
20225	  (aopDump): disabled unused code
20226	* support/regression/tests/float_single.c: enabled floorf(1.0-0.000001),
20227	  added NEG
20228	* support/regression/tests/bug3183823.c: new, added
20229
202302011-09-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20231
20232	* support/regression/tests/bug3401973.c:
20233	  Regression test for bug 3401973.
20234
202352011-09-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20236
20237	* support/regression/tests/bug1723128.c:
20238	  Disable failing regression test for hc08.
20239
202402011-09-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20241
20242	* src/SDCCsymt.c,
20243	  src/hc08/gen.c,
20244	  src/SDCCast.c,
20245	  device/include/stdbool.h:
20246	  _Bool / bool for hc08.
20247
202482011-09-01 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20249
20250	* src/SDCCsymt.c,
20251	  src/SDCCpeeph.c:
20252	  Minor code cleanup.
20253
202542011-09-01 Borut Razem <borut.razem AT gmail.com>
20255
20256	* support/scripts/sdcc.nsi:
20257	  don't include readline5.dll in 64bit package;
20258	  remove libgcc_s_sjlj-1.dll and libstdc++-6.dll on uninstallation;
20259	  don't install 64 bit version on 32 bit Windows;
20260	  use proper Program Files and registry for 64 bit installation
20261	* support/regression/ports/pic14/spec.mk,
20262	  support/regression/ports/pic16/spec.mk,
20263	  support/regression/ports/hc08/spec.mk,
20264	  support/regression/ports/ds390/spec.mk,
20265	  support/regression/ports/ucz80/spec.mk,
20266	  support/regression/ports/mcs51-common/spec.mk:
20267	  configurable $(WINE)
20268
202692011-08-31 Borut Razem <borut.razem AT gmail.com>
20270
20271	* support/scripts/sdcc.nsi: introduced WIN64 for 64bit dlls inclusion
20272
202732011-08-30 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20274
20275	* src/SDCCralloc.hpp:
20276	  Construct conflict graph again instead of trusting the one from sdcc.
20277
202782011-08-30 Philipp Klaus Krause <pkk AT spth.de>
20279
20280	* device/lib/tancotf.c,
20281	  device/lib/acosf.c,
20282	  device/lib/sinf.c,
20283	  device/lib/asincosf.c,
20284	  device/lib/_fsadd.c,
20285	  device/lib/asinf.c,
20286	  device/lib/printf_large.c,
20287	  device/lib/_divulong.c,
20288	  device/lib/_atof.c,
20289	  device/lib/cotf.c,
20290	  device/lib/expf.c,
20291	  device/lib/sincosf.c,
20292	  device/lib/tanf.c,
20293	  device/lib/sincoshf.c,
20294	  device/lib/cosf.c:
20295	  Use BOOL or _Bool.
20296
202972011-08-30 Borut Razem <borut.razem AT gmail.com>
20298
20299	* support/cpp/libcpp/lex.c:
20300	  reverted to revision r6084 (before sdcpp 4.6.1 synchronization),
20301	  partialy re-synchronized with sdcpp 4.6.1
20302	* support/cpp/libcpp/macro.c: fixed naked hash handling
20303	* support/regression/test/bitfields.c:
20304	  fixed a regtest failure on i386 and x86_64 host architectures with
20305	  gcc 4.6 by turning off the -O2 optimization
20306
203072011-08-29 Borut Razem <borut.razem AT gmail.com>
20308
20309	* support/cpp/libiberty/getpwd.c: reverted; it was committed by mistake
20310	* support/cpp/libcpp/lex.c: disable fast scanner using SSE due to
20311	  bug #3400132: fatal error: ../gcc/config/i386/cpuid.h
20312
203132011-08-29 Maarten Brock <sourceforge.brock AT dse.nl>
20314
20315	* device/lib/ds390/Makefile.in: added gptr_cmp.rel
20316
203172011-08-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20318
20319	* device/include/stdbool.h,
20320	  support/regression/tests/bool.c:
20321	  Fixed bug #2939485.
20322
203232011-08-28 Maarten Brock <sourceforge.brock AT dse.nl>
20324
20325	* device/lib/ds390/gptr_cmp.c: new, added
20326	* src/ds390/gen.c (loadDptrFromOperand): factored out,
20327	  (genFarPointerGet, genCodePointerGet, genGenPointerGet, genFarPointerSet,
20328	   genGenPointerSet): use loadDptrFromOperand
20329	  (genCmp, gencjneshort): fixed generic pointer comparison
20330	* support/regression/tests/genptrs.c: expanded and enabled tests for ds390
20331
203322011-08-28 Borut Razem <borut.razem AT gmail.com>
20333
20334	* src/SDCCicode.c:
20335	  applied patch #3285611: Workaround gcc 4.6.0 bug with sdcc 3.0.0,
20336	  thanks Roy Rankin
20337	* support/cpp/libiberty/concat.c, support/cpp/libiberty/filenames.h,
20338	  support/cpp/libiberty/hashtab.c, support/cpp/libiberty/vasprintf.c,
20339	  support/cpp/libiberty/xmemdup.c, support/cpp/libiberty/hashtab.h,
20340	  support/cpp/libiberty/splay-tree.c, support/cpp/libiberty/lbasename.c,
20341	  support/cpp/libiberty/splay-tree.h, support/cpp/libiberty/getpwd.c,
20342	  support/cpp/libiberty/fopen_unlocked.c, support/cpp/libcpp/directives.c,
20343	  support/cpp/libcpp/macro.c, support/cpp/libcpp/files.c,
20344	  support/cpp/libcpp/include/cpplib.h, support/cpp/libcpp/include/symtab.h,
20345	  support/cpp/libcpp/include/line-map.h, support/cpp/libcpp/init.c,
20346	  support/cpp/libcpp/errors.c, support/cpp/libcpp/expr.c,
20347	  support/cpp/libcpp/internal.h, support/cpp/libcpp/lex.c,
20348	  support/cpp/libcpp/system.h, support/cpp/libcpp/charset.c,
20349	  support/cpp/sdcpp-diagnostic.c, support/cpp/sdcpp.h,
20350	  support/cpp/sdcpp-opts.c:
20351	  SDCPP synchronized with GCC CPP release version 4.6.1
20352
203532011-08-27 Philipp Klaus Krause <pkk AT spth.de>
20354
20355	* src/SDCCsymt.h,
20356	  src/SDCCsymt.c,
20357	  src/SDCCicode.c,
20358	  src/SDCCopt.c,
20359	  support/regression/tests/bool.c:
20360	  Fixed bug #3031197.
20361
203622011-08-27 Maarten Brock <sourceforge.brock AT dse.nl>
20363
20364	* src/mcs51/gen.c,
20365	* src/ds390/gen.c: synced all shift functions
20366
203672011-08-26 Maarten Brock <sourceforge.brock AT dse.nl>
20368
20369	* src/mcs51/gen.c: use !tlabeldef and #!constbyte,
20370	  merged Push into emitpush,
20371	  changed many aopGet(dname=TRUE) to FALSE
20372	  (aopForRemat): do not warn for intermediate generic pointers,
20373	  (aopPut): use static dbuf_s,
20374	  (loadDptrFromOperand): optimized for AOP_DPTR,
20375	  (pointToEnd, findLabelBackwards, old adjustArithmeticResult): removed,
20376	* src/mcs51/gen.h: cosmetics
20377	* src/ds390/gen.c: synchronized with mcs51, removed genArrayInit
20378	* src/ds390/gen.h: cosmetics
20379	* src/SDCCcse.c (algebraicOpts CAST): handle generic pointers
20380	* src/SDCCglue.c (aopLiteralLong): handle size=3 for ds390 dptr,
20381	  (initPointer): no warning for castable pointers
20382	* src/SDCCicode.c (operandOperation EQ_OP): handle literal pointers,
20383	  (getPtrType): removed
20384	  (geniCodeCast): removed strange hidden cast after cse fix
20385	  (geniCodeAddressOf): removed op->isaddr check for operandFromOperand
20386	* src/z80/gen.c (aopForRemat): synced with mcs51 for CAST,
20387	  (regMove): fixed warnings
20388	* support/regression/tests/bug3389647.c: new, added
20389
203902011-08-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20391
20392	* src/z80/ralloc2.cc,
20393	  support/regression/tests/bug3397636.c:
20394	  Fixed bug #3397636.
20395
203962011-08-25 Borut Razem <borut.razem AT gmail.com>
20397
20398	* src/pic14/pcodepeep.c, src/pic16/pcodepeep.c:
20399	  fixed name clash with mingw_w64: _DLL renamed to DLList
20400	* src/SDCCutil.c: added MINGW64 build environment detection
20401	* debugger/mcs51/simi.c, debugger/mcs51/cmd.c, debugger/mcs51/sdcdb.c,
20402	  debugger/mcs51/break.c:
20403	  fixed name clash with mingw_w64 objidl.h: undefine DATADIR
20404	* debugger/mcs51/sdcdb.c(escapeQuotes): expand buffer if necessary
20405
204062011-08-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20407
20408	* src/z80/gen.c:
20409	  Fixed bug #3396441.
20410
204112011-08-17 Borut Razem <borut.razem AT gmail.com>
20412
20413	* device/non-free/lib/pic16/libdev/Makefile.in:
20414	  regenerated to include support for pic18f2xk22/pic18f4xk22 family
20415
204162011-08-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20417
20418	* doc/sdccman.lyx:
20419	  Redid documentation change, in LyX 1.6 format this time.
20420
204212011-08-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20422
20423	* doc/sdccman.lyx:
20424	  Reverted documentation change, to avoid LyX version incompability.
20425
204262011-08-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20427
20428	* doc/sdccman.lyx:
20429	  Document --reserve-regs-iy option and __smallc calling convention.
20430
204312011-08-15 Maarten Brock <sourceforge.brock AT dse.nl>
20432
20433	* src/SDCCast.c(decorateType, EQ_OP NE_OP): fixed floatFromVal bug on big
20434	  endian host for pointers
20435
204362011-08-14 Borut Razem <borut.razem AT gmail.com>
20437
20438	* src/SDCC.y, src/SDCC.lex, src/pic14/ralloc.c, src/pic16/ralloc.c:
20439	  fixed clash with i586-mingw32msvc/include/windef.h
20440
204412011-08-12 Maarten Brock <sourceforge.brock AT dse.nl>
20442
20443	* device/lib/mcs51/gptr_cmp.asm: new, added
20444	* device/lib/mcs51/Makefile.in: added gptr_cmp.rel
20445	* src/mcs51/gen.c(aopGet AOP_LIT): fixed generic pointer type
20446	  (toBoolean, genCmp, gencjneshort): fixed generic pointer comparison
20447	* src/SDCCast.c(checkPtrCast): no warning for banked function pointers,
20448	  (decorateType, EQ_OP NE_OP): optimize ifx(0==op) and null pointers
20449	* src/SDCCglue.c(aopLiteralGptr): added,
20450	  (printIvalCharPtr): fixed generic pointers
20451	* support/regression/tests/genptrs.c: new, added
20452	* support/regression/tests/bug3366711.c: fixed warning
20453	* support/regression/tests/inline.c: split #ifdef for readability
20454
204552011-08-09 Borut Razem <borut.razem AT gmail.com>
20456
20457	* support/regression/Makefile.in: fixed dependency checking using vpath
20458
204592011-08-07 Borut Razem <borut.razem AT gmail.com>
20460
20461	* src/SDCCopt.c: fixed bug #3387421: Incorrect code in revision 6723,
20462	  optimize '>' and '>=' also in case when the following instruction
20463	  is not IFX
20464	* support/regression/test/compare_2_n.c:
20465	  added test cases for bug #3387421 and for 0x0000 and 0xffff
20466
204672011-08-06 Borut Razem <borut.razem AT gmail.com>
20468
20469	* doc/Makefile.in: applied patch #3387171:
20470	  Binary build fails due to documentation cleanup,
20471	  thanks Strobl Anton
20472	* src/SDCCopt.c: further enhancements & fixes of patch #2702889:
20473	  added <= and >= optimizations, optimize > only if IFX
20474	* support/regression/test/compare_2_n.c: added test cases without IFX
20475
204762011-08-05 Philipp Klaus Krause <pkk AT spth.de>
20477
20478	* src/z80/gen.c,
20479	  support/regression/tests/bug3368945.c:
20480	  Fixed bug #3386945.
20481
204822011-08-05 Philipp Klaus Krause <pkk AT spth.de>
20483
20484	* src/z80/gen.c:
20485	  Fixed bitfield unpacking bug #3386784.
20486
204872011-08-05 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20488
20489	* src/z80/peeph-z80.def:
20490	  Minor peephole improvements.
20491	* src/z80/gen.c:
20492	  Removed incorrect comment regarding arithmetic right shift.
20493
204942011-08-04 Philipp Klaus Krause <pkk AT spth.de>
20495
20496	* src/z80/peep.c:
20497	  Handle cp, improve accuracy of checking for hl reads in notUsed().
20498	* src/z80/peeph-z80.def:
20499	  Minor peephole improvements.
20500	* src/z80/ralloc2.c:
20501	  Allow accumulator arguments in bitwise complement.
20502
205032011-08-04 Philipp Klaus Krause <pkk AT spth.de>
20504
20505	* src/z80/ralloc2.cc:
20506	  Fixed bug #3385978.
20507
205082011-08-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20509
20510	* support/regression/tests/bug3381400.c:
20511	  Don't try to compile the sfr stuff on host.
20512
205132011-08-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20514
20515	* src/z80/gen.c:
20516	  Minor improvement in 8-bit by literal multiplication.
20517
205182011-08-03 Borut Razem <borut.razem AT gmail.com>
20519
20520	* sdcc development documentation moved from doc to sdcc wiki:
20521	* doc/builtins.txt: removed,
20522	  published as Developer Documentation on SDCC wiki at
20523	  http://sourceforge.net/apps/trac/sdcc/wiki/Builtins
20524	* doc/macro-sys-design.txt: removed,
20525	  published as Developer Documentation on SDCC wiki at
20526	  http://sourceforge.net/apps/trac/sdcc/wiki/Macro%20system%20design
20527	* doc/random-notes.txt: removed,
20528	  published as Developer Documentation on SDCC wiki at
20529	  http://sourceforge.net/apps/trac/sdcc/wiki/Random%20notes%20about%20sdcc%20and%20how%20it%20works
20530	* doc/cdbfileformat.lyx: removed,
20531	  published as Developer Documentation on SDCC wiki at
20532	  https://sourceforge.net/apps/trac/sdcc/wiki/CDB%20File%20Format
20533	* doc/test_suite_spec.lyx: removed,
20534	  published as an Obsolete document on SDCC wiki at
20535	  http://sourceforge.net/apps/trac/sdcc/wiki/Proposed%20Test%20Suite%20Design
20536	* doc/avr/avr_design.txt: removed,
20537	  published as an Obsolete document on SDCC wiki at
20538	  http://sourceforge.net/apps/trac/sdcc/wiki/Design%20Document%20for%20AVR%20Port
20539	* doc/z80/combined_i186_z80_design.tex, doc/z80/*: removed,
20540	  published as an Obsolete document on SDCC wiki at
20541	  http://sourceforge.net/apps/trac/sdcc/wiki/Combined%20i186/Z80%20backend%20design
20542	* doc/choices.txt: removed,
20543	  published as an Obsolete document on SDCC wiki at
20544	  http://sourceforge.net/apps/trac/sdcc/wiki/Some%20of%20the%20implementation%20choices
20545	* doc/libdoc.txt: removed,
20546	  published as an Obsolete document on SDCC wiki at
20547	  http://sourceforge.net/apps/trac/sdcc/wiki/List%20of%20the%20SDCC%20library
20548	* doc/figures/ddd_example.png, doc/figures/ddd_example.eps: removed,
20549	  pucure inserted into page "Visually debug for 8051 under Windows using DDD/SDCDB/S51" at
20550	  http://sourceforge.net/apps/trac/sdcc/wiki/Visually%20debug%20for%208051%20under%20Windows%20using%20DDD/SDCDB/S51
20551
205522011-08-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20553
20554	* src/z80/gen.c,
20555	  src/z80/peeph-z80.def:
20556	  Fixed code generation bug in 8-bit multiplication with operands and e (hl).
20557
205582011-08-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20559
20560	* src/z80/peeph-z80.def:
20561	  Minor peephole improvement.
20562
205632011-08-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20564
20565	* src/SDCCralloc.hpp:
20566	  Fixed SIGSEGV that occured for extremly low values of --max-allocs-per-node.
20567
205682011-08-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20569
20570	* src/z80/gen.c,
20571	  support/regression/tests/bug3381400.c:
20572	  Fixed bug #3381400.
20573
205742011-08-03 Borut Razem <borut.razem AT gmail.com>
20575
20576	* support/regression/Makefile.in,
20577	  support/regression/ports/ds390/spec.mk:
20578	  added m4 preprocessing of .m4 regtest files
20579	* support/regression/tests/compare_2_n.m4:
20580	  adopted for m4 preprocessing, renamed to .m4
20581	* support/regression/m4include/*: added
20582
205832011-08-01 Borut Razem <borut.razem AT gmail.com>
20584
20585	* support/regression/tests/inline.c:
20586	  excluded failing regression test case on Mac OS X GCC 4.0.1
20587
205882011-07-31 Maarten Brock <sourceforge.brock AT dse.nl>
20589
20590	* src/mcs51/gen.c(genEndFunction): added mov PSW removal based on patch
20591	  2702889 by Hubert Sack
20592	* src/mcs51/ralloc.c: added findAllBankregs, mcs51_allBankregs
20593	* src/mcs51/ralloc.h: added mcs51_allBankregs
20594
205952011-07-30 Maarten Brock <sourceforge.brock AT dse.nl>
20596
20597	* device/lib/_setjmp.c: fixed mcs51 stack-auto and xstack implementations
20598	* src/SDCCopt.c(miscOpt): added my doubts
20599	* support/regression/tests/bug3379723.c: disabled for hc08 which has no sfr
20600	* support/regression/tests/setjmp.c: test only on supported targets
20601	* support/regression/tests/bug3361290.c,
20602	* support/regression/tests/bug3366711.c,
20603	* support/regression/tests/bug3379723.c: set native eolstyle property
20604
206052011-07-28 Philipp Klaus Krause <pkk AT spth.de>
20606
20607	* device/include/setjmp.h,
20608	  device/lib/z80/Makefile.in,
20609	  device/lib/z80/setjmp.s,
20610	  support/regression/tests/setjmp.c:
20611	  setjmp() and longjmp() for the Z80.
20612
206132011-07-28 Philipp Klaus Krause <pkk AT spth.de>
20614
20615	* device/include/setjmp.h,
20616	  device/lib/_setjmp.c,
20617	  support/regression/tests/setjmp.c:
20618	  Fixed some setjmp() / longjmp() bugs.
20619	* support/regression/tests/bug3379723.c:
20620	  Do not compile on host.
20621
206222011-07-27 Borut Razem <borut.razem AT gmail.com>
20623
20624	* src/SDCCopt.c: fixed bug
20625	  #3378933: Regression test compare_2_n.c fails on sparc machines
20626	* support/regression/test/compare_2_n.c:
20627	  reenabled bug #3378933 test case
20628
206292011-07-27 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20630
20631	* src/z80/gen.c,
20632	  support/regression/tests/bug3379732.c:
20633	  Bitwise-op cleanup, fixed bug #3379732.
20634
206352011-07-26 Borut Razem <borut.razem AT gmail.com>
20636
20637	* support/regression/test/literalop.c:
20638	  disabled failing test on i386 and sparc64 NetBSD gcc 4.1
20639	* support/regression/test/compare_2_n.c:
20640	  excluded failing test on NetBSD sparc64 and Solaris sparc machines
20641	  for all targets;
20642	  see bug #3378933: Regression test compare_2_n.c fails on sparc machines
20643
206442011-07-24 Borut Razem <borut.razem AT gmail.com>
20645
20646	* support/regression/test/bitfields.c:
20647	  fixed a regtest failure on Solaris i386 host with gcc 4.6
20648	  by turning off the -O2 optimization
20649	* support/regression/tests/compare_2_n.c:
20650	  added test for unsigned long type
20651
206522011-07-23 Borut Razem <borut.razem AT gmail.com>
20653
20654	* debugger/mcs51/acinclude.m4, debugger/mcs51/configure: fix for solaris
20655	* support/regression/test/bitfields.c:
20656	  fixed a strange failure on Solaris i386 host with gcc 4.6
20657
206582011-07-22 Borut Razem <borut.razem AT gmail.com>
20659
20660	* src/SDCCmem.c, src/SDCCopt.c: applied 2nd and 3rd part of patch
20661	  #2702889 - Summary of all uncommitted changes I applied on "my" SDCC
20662	  thanks Hubert Sack
20663	* support/regression/tests/compare_2_n.c: added
20664
206652011-07-21 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20666
20667	* src/SDCCmain.c:
20668	  Reduce default value for --max-allocs-per-node to reduce compiler runtime.
20669
206702011-07-19 Borut Razem <borut.razem AT gmail.com>
20671
20672	* src/z80/gen.c: fixed MSVC 2010 compilation
20673
206742011-07-16 Borut Razem <borut.razem AT gmail.com>
20675
20676	* debugger/mcs51/simi.c:
20677	  define BSD_COMP on Solaris so that gcc includes <sys/filio.h>
20678	  which defines FIONBIO
20679
206802011-07-15 Borut Razem <borut.razem AT gmail.com>
20681
20682	* support/regression/tests/bug1665511.c:
20683	  fixed host regression test bus error crash on sparc Solaris
20684
206852011-07-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20686
20687	* src/z80/gen.c,
20688	  src/z80/peeph-z80.def:
20689	  Optimized jumptable generation.
20690
206912011-07-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20692
20693	* src/SDCCpeep.c:
20694	  labelJTInRange() fix, to ensure that jp by jr replacement is correct in jumptables.
20695
206962011-07-14 Borut Razem <borut.razem AT gmail.com>
20697
20698	* device/include/pic16/pic18fregs.h,
20699	  device/include/pic16/pic16devices.txt,
20700	  device/include/pic16/adc.h,
20701	  device/lib/pic16/libio/adc/adcsetch.c,
20702	  device/lib/pic16/libio/adc/adcopen.c,
20703	  device/lib/pic16/libio/adc/adcbusy.c,
20704	  device/lib/pic16/libio/Makefile.am,
20705	  device/non-free/include/pic16/pic18fam.h,
20706	  device/non-free/lib/pic16/libdev/Makefile.am,
20707	  device/non-free/lib/pic16/pics.all,
20708	  support/scripts/pic18fam-h-gen.pl,
20709	  device/non-free/include/pic16/pic18f26k22.h,
20710	  device/non-free/include/pic16/pic18f46k22.h,
20711	  device/non-free/include/pic16/pic18f23k22.h,
20712	  device/non-free/include/pic16/pic18f43k22.h,
20713	  device/non-free/include/pic16/pic18f24k22.h,
20714	  device/non-free/include/pic16/pic18f44k22.h,
20715	  device/non-free/include/pic16/pic18f25k22.h,
20716	  device/non-free/include/pic16/pic18f45k22.h,
20717	  device/non-free/lib/pic16/libdev/pic18f26k22.c,
20718	  device/non-free/lib/pic16/libdev/pic18f46k22.c,
20719	  device/non-free/lib/pic16/libdev/pic18f23k22.c,
20720	  device/non-free/lib/pic16/libdev/pic18f43k22.c,
20721	  device/non-free/lib/pic16/libdev/pic18f24k22.c,
20722	  device/non-free/lib/pic16/libdev/pic18f44k22.c,
20723	  device/non-free/lib/pic16/libdev/pic18f25k22.c,
20724	  device/non-free/lib/pic16/libdev/pic18f45k22.c:
20725	  applied patch #3311538 - Add new pic18f2xk22/pic18f4xk22 family,
20726	  thanks Strobl Anton
20727	* doc/sdccman.lyx: added support for pic18f2xk22/pic18f4xk22 family
20728
207292011-07-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20730
20731	* src/z80/ralloc.c,
20732	  support/regression/tests/bug3366711.c:
20733	  Fixed bug #3366711.
20734
207352011-07-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20736
20737	* src/z80/gen.c:
20738	  Refactored register shuffling code, fixing a memcpy() bug.
20739
207402011-07-09 Philipp Klaus Krause <pkk@spth.de>
20741
20742	* src/SDCCpeeph.c,
20743	  support/regression/tests/bug3361290.c:
20744	  Fixed bug #3361290.
20745
207462011-07-09 Philipp Klaus Krause <pkk@spth.de>
20747
20748	* src/z80/gen.c:
20749	  Fixed bug #3361280.
20750
207512011-07-09 Philipp Klaus Krause <pkk@spth.de>
20752
20753	* device/include/string.h,
20754	  device/lib/strxfrm.c,
20755	  device/lib/incl.mk:
20756	  Added missing strxfrm() and strcoll() functions.
20757
207582011-07-09 Philipp Klaus Krause <pkk@spth.de>
20759
20760	* src/SDCCast.c:
20761	  Fixed bug #3107180.
20762
207632011-06-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20764
20765	* src/z80/peeph-z80.def:
20766	  Peephole typo.
20767
207682011-06-29 Philipp Klaus Krause <pkk@spth.de>
20769
20770	* src/SDCCpeeph.c:
20771	  Character and string handling in C sucks.
20772
207732011-06-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20774
20775	* src/z80/peeph-z80.def:
20776	  Minor peephole improvement.
20777
207782011-06-29 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20779
20780	* src/SDCCpeeph.c:
20781	  Improve accuracy of label reference counting.
20782
207832011-06-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20784
20785	* src/SDCCpeeph.c,
20786	  src/z80/peeph-z80.def:
20787	  Fixed #2970351, reenabling basic tail-call optimization.
20788
207892011-06-28 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20790
20791	* src/z80/mappings.i,
20792	  src/z80/main.c,
20793	  src/z80/gen.c,
20794	  src/z80/ralloc2.cc:
20795	  Fix --fomit-frame-pointer for z80.
20796
207972011-06-25 Philipp Klaus Krause <pkk AT spth.de>
20798
20799	* src/z80/peeph-z80.def:
20800	  Minor peephole improvement.
20801
208022011-06-25 Philipp Klaus Krause <pkk AT spth.de>
20803
20804	* src/z80/peeph-z80.def:
20805	  Peephole renumbering.
20806
208072011-06-25 Philipp Klaus Krause <pkk AT spth.de>
20808
20809	* src/z80/peeph-z80.def:
20810	  Remove unused (sdcc lib, regr. tests, contiki OS, libcv, my own programs) peepholes.
20811
208122011-06-25 Philipp Klaus Krause <pkk AT spth.de>
20813
20814	* src/SDCCmain.c:
20815	  Fixed #3324913.
20816
208172011-06-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20818
20819	* src/z80/gen.c:
20820	  Fixed broken use of large return values.
20821
208222011-06-23 Philipp Klaus Krause <pkk AT spth.de>
20823
20824	* src/z80/gen.c:
20825	  Restore RFE #3284870, which was lost during the optralloc merge.
20826
208272011-06-23 Philipp Klaus Krause <pkk AT spth.de>
20828
20829	* src/z80/ralloc2.cc:
20830	  Disallow use of h or l operand in addition when result in true symop.
20831
208322011-06-23 Philipp Klaus Krause <pkk AT spth.de>
20833
20834	* src/z80/ralloc.h,
20835	  src/z80/ralloc.c,
20836	  src/z80/ralloc2.cc,
20837	  src/SDCCralloc.hpp,
20838	  src/SDCClabel.c:
20839	  Fixed bug #3325223.
20840
208412011-06-23 Philipp Klaus Krause <pkk AT spth.de>
20842
20843	* src/SDCCMain.c:
20844	  Disable labelIfx() optimization when using --nolabelopt.
20845
208462011-06-22 Maarten Brock <sourceforge.brock AT dse.nl>
20847
20848	* src/ds390/ralloc.c(packRegsDPTRnuse): fixed bug 1665511
20849	* support/regression/tests/bug1665511.c: new, added
20850
208512011-06-19 Borut Razem <borut.razem AT gmail.com>
20852
20853	* doc/sdccman.lyx: fixed bug #3322383 - Spelling mistakes
20854	* .version, doc/sdccman.lyx: changed sdcc version to 3.0.4
20855
208562011-06-16 Maarten Brock <sourceforge.brock AT dse.nl>
20857
20858	* support/regression/tests/bug1962613.c: fixed clash with Bessel functions
20859	* support/regression/tests/strtok.c: disabled test for GCC on Solaris
20860
208612011-06-15 Philipp Klaus Krause <pkk AT spth.de>
20862
20863	* sim/ucsim/z80.src/inst_xd.cc:
20864	  Fixed bug #3315215.
20865
208662011-06-11 Philipp Klaus Krause <pkk AT spth.de>
20867
20868	* src/SDCCmain.c,
20869	  src/z80/gen.c:
20870	  Fixed bug #3315124.
20871
208722011-06-11 Maarten Brock <sourceforge.brock AT dse.nl>
20873
20874	* support/regression/tests/bug3299577.c: fixed warnings
20875	* support/regression/tests/abs.c,
20876	  support/regression/tests/bool.c,
20877	  support/regression/tests/bug-1292721.c,
20878	  support/regression/tests/bug-2646174.c,
20879	  support/regression/tests/bug-2890326.c,
20880	  support/regression/tests/bug-2982135.c,
20881	  support/regression/tests/bug-3034585.c,
20882	  support/regression/tests/bug-3117729.c,
20883	  support/regression/tests/bug-3184920.c,
20884	  support/regression/tests/bug1477149.c,
20885	  support/regression/tests/bug1536762.c,
20886	  support/regression/tests/bug1838000.c,
20887	  support/regression/tests/bug2084206.c,
20888	  support/regression/tests/bug2729218.c,
20889	  support/regression/tests/bug2862650.c,
20890	  support/regression/tests/bug3029630.c,
20891	  support/regression/tests/bug3130806.c,
20892	  support/regression/tests/bug3166208.c,
20893	  support/regression/tests/bug3303325.c,
20894	  support/regression/tests/bugs-1596270-1736867.c,
20895	  support/regression/tests/interrupt.c,
20896	  support/regression/tests/memory.c,
20897	  support/regression/tests/strcmp.c,
20898	  support/regression/tests/strcpy.c,
20899	  support/regression/tests/strncmp.c,
20900	  support/regression/tests/strpbrk.c,
20901	  support/regression/tests/strspn.c: changed svn eol-style
20902
209032011-06-10 Philipp Klaus Krause <pkk AT spth.de>
20904
20905	* Merge the optralloc branch.
20906
209072011-06-10 Philipp Klaus Krause <pkk AT spth.de>
20908
20909	* src/z80/gen.c:
20910	  Fixed register-assignment-related multiplication bug.
20911
209122011-06-09 Maarten Brock <sourceforge.brock AT dse.nl>
20913
20914	* src/SDCCcse.c(cseBBlock): fixed the fix
20915
209162011-06-09 Philipp Klaus Krause <pkk AT spth.de>
20917
20918	* src/SDCC.lex,
20919	  src/SDCC.y,
20920	  src/SDCCsymt.h,
20921	  src/SDCCopt.c:
20922	  Rename __optlink to __smallc.
20923
209242011-06-09 Maarten Brock <sourceforge.brock AT dse.nl>
20925
20926	* src/SDCCcse.c(cseBBlock): fixed cse bug 2729218 reading pointer for result
20927	* src/SDCCdflow.c: cosmetics
20928	* src/SDCCicode.c(operandOperation): fixed fatal error for literal pointer
20929	* src/SDCCmain.c(linkEdit): only use -M for mcs51 and ds390
20930	* src/SDCCopt.c: fixed warnings
20931	* src/SDCCval.c(floatFromVal, ulFromVal): handle structs
20932	* support/regression/tests/bug2729218.c: new, added
20933	* src/SDCCcse.c(cseBBlock): fixed the fix
20934
209352011-06-08 Philipp Klaus Krause <pkk AT spth.de>
20936
20937	* Merge from trunk.
20938
209392011-06-05 Philipp Klaus Krause <pkk AT spth.de>
20940
20941	* src/SDCCralloc.hpp,
20942	  src/z80/gen.c:
20943	  Ensure that SEND iCodes, except for the first in each chain are deactivated for cost function calculation.
20944
209452011-06-05 Philipp Klaus Krause <pkk AT spth.de>
20946
20947	* src/z80/gen.c:
20948	  Fixed use of arbitrary register combinations as return value.
20949
209502011-06-01 Philipp Klaus Krause <pkk AT spth.de>
20951
20952	* src/z80/ralloc2.cc,
20953	  src/z80/gen.c,
20954	  src/z80/gen.h:
20955	  Emit info about the register assignment being optimal when using --fverbose-asm.
20956
209572011-05-27 Philipp Klaus Krause <pkk AT spth.de>
20958
20959	* Merge from trunk.
20960
209612011-05-27 Philipp Klaus Krause <pkk AT spth.de>
20962
20963	* src/SDCCtree_dec.hpp,
20964	  src/z80/ralloc2.cc:
20965	  Workarounds for compiler warnings.
20966
209672011-05-26 Maarten Brock <sourceforge.brock AT dse.nl>
20968
20969	* src/hc08/main.c(hc08_dwarfRegNum): fixed interface
20970	* src/mcs51/gen.c: fixed MSVC errors by changing snprintf to SNPRINTF
20971	* src/port.h: fixed regNum and getRegName function pointer definitions
20972	* src/z80/gen.c(genJumpTab): fixed warning
20973
209742011-05-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20975
20976	* src/z80/gen.c:
20977	  Workarounds for compiler warnings.
20978
209792011-05-26 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20980
20981	* Merge from trunk.
20982
209832011-05-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20984
20985	* src/SDCCicode.c,
20986	  src/z80/gen.c,
20987	  src/z80/ralloc2.cc:
20988	  Exact cost for builtin function calls.
20989
209902011-05-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
20991
20992	* src/SDCCtree_dec.hpp,
20993	  src/SDCCralloc.hpp,
20994	  src/z80/ralloc2.cc:
20995	  Fixed bug in Thorup heuristic, that resulted in much higher width of tree-decomposition.
20996
209972011-05-21 Philipp Klaus Krause <pkk AT spth.de>
20998
20999	* Merge from trunk.
21000
210012011-05-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21002
21003	* src/z80/gen.c:
21004	  Remove unnecessary statement, debug message cleanup.
21005
210062011-05-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21007
21008	* src/SDCCtree_dec.hpp,
21009	  src/SDCCralloc.hpp,
21010	  src/z80/rallo2.cc:
21011	  Debug message cleanup.
21012
210132011-05-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21014
21015	* src/z80/gen.c:
21016	  Ported reorganization of cast to bool from trunk.
21017
210182011-05-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21019
21020	* Merge from trunk.
21021
210222011-05-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21023
21024	* src/z80/gen.c,
21025	  support/regression/tests/bug3303325.c:
21026	  Merge from trunk: Fixed bug #3303325.
21027
210282011-05-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21029
21030	* src/z80/gen.c:
21031	  Code cleanup wrt. temporary labels.
21032
210332011-05-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21034
21035	* configure.in:
21036	  Give an error when boost is not detected.
21037
210382011-05-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21039
21040	* Merge from trunk.
21041
210422011-05-16 Philipp Klaus Krause <pkk@spth.de>
21043
21044	* src/z80/gen.c:
21045	  Fixed crash when running on cygwin.
21046
210472011-05-15 Philipp Klaus Krause <pkk@spth.de>
21048
21049	* Merge from trunk.
21050
210512011-05-13 Maarten Brock <sourceforge.brock AT dse.nl>
21052
21053	* sdas/linksrc/aslink.vcxproj,
21054	* sdas/linksrc/aslink.vcxproj.filters: added lkbank.c
21055	* src/z80/ralloc.c: moved z80_init_asmops prototype
21056
210572011-05-13 Philipp Klaus Krause <pkk@spth.de>
21058
21059	* Merge from trunk.
21060
210612011-05-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21062
21063	* src/SDCCralloc.hpp,
21064	  configure.in:
21065	  Make STX library optional and detect it in configure script.
21066
210672011-05-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21068
21069	* src/z80/gen.c:
21070	  Minor code cleanup and cost function accuracy improvement.
21071
210722011-05-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21073
21074	* Merge from trunk.
21075
210762011-05-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21077
21078	* src/z80/peeph-z80.def:
21079	  Fixed some bit-manipulation peepholes for immediate operands.
21080	* src/z80/gen.c:
21081	  Fixed operand loading in complement.
21082
210832011-05-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21084
21085	* Merge from trunk.
21086
210872011-05-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21088
21089	* src/z80/z80.h,
21090	  src/z80/main.c,
21091	  src/z80/ralloc.c:
21092	  Reintegrated old register allocator (option --oldralloc).
21093
210942011-05-09 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21095
21096	* src/SDCCralloc.hpp,
21097	  src/z80/ralloc2.cc:
21098	  Handle the check for result bytes overwriting operand bytes in the conflict graph instead of the cost function.
21099
211002011-05-08 Philipp Klaus Krause <pkk@spth.de>
21101
21102	* src/z80/ralloc2.cc
21103	  Fixed over-eager early HLinst_OK() use.
21104
211052011-05-08 Philipp Klaus Krause <pkk@spth.de>
21106
21107	* Merge from trunk.
21108
211092011-05-06 Philipp Klaus Krause <pkk@spth.de>
21110
21111	* src/z80/gen.c:
21112	  Remove some leftover debug stuff.
21113	* src/z80/peeph-z80.def:
21114	  Generalize optimization of bit setting and resetting.
21115
211162011-05-06 Philipp Klaus Krause <pkk@spth.de>
21117
21118	* Merge everything except src/z80/gen.c from trunk,
21119	  but mark gen.c as merged, so that further changes in gen.c
21120	  will be merged.
21121
211222011-05-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21123
21124	* src/SDCCralloc.hpp,
21125	  src/z80/ralloc2.cc
21126	  Improved performance, reduced memory usage.
21127
211282011-05-02 Borut Razem <borut.razem AT gmail.com>
21129
21130	* configure.in, configure:
21131	  don't use "-pipe" on x86 Solaris g++, since src/z80/ralloc2.cc dies
21132
211332011-04-29 Philipp Klaus Krause <pkk@spth.de>
21134
21135	* Merge everything except src/z80/gen.c from trunk.
21136
211372011-04-29 Philipp Klaus Krause <pkk@spth.de>
21138
21139	* src/SDCCralloc.hpp,
21140	  src/z80/ralloc2.cc
21141	  Some performance improvements.
21142
211432011-04-25 Philipp Klaus Krause <pkk@spth.de>
21144
21145	* Merge everything except src/z80/gen.c from trunk.
21146
211472011-04-25 Maarten Brock <sourceforge.brock AT dse.nl>
21148
21149	* debugger/mcs51/cmd.c,
21150	* debugger/mcs51/symtab.c,
21151	* src/z80/ralloc2.cc: fixed some warnings
21152	* sdas/linksrc/aslink.vcxproj,
21153	* sdas/linksrc/aslink.vcxproj.filters: added lksdcdb.c
21154	* src/src.vcxproj,
21155	* src/src.vcxproj.filters,
21156	* sdcc.sln: added dependencies on config, removed avr & xa51
21157	* sdcc_vc_in.h: set OPT_DISABLE_AVR & OPT_DISABLE_XA51
21158	* src/pic14/ralloc.h: fixed rename of struct regs to reg_info
21159	* src/z80/gen.c: replaced true/false with TRUE/FALSE
21160
211612011-04-21 Philipp Klaus Krause <pkk@spth.de>
21162
21163	* src/SDCCdebug.h,
21164	  src/mcs51/gen.c,
21165	  src/mcs51/ralloc.c,
21166	  src/mcs51/gen.h,
21167	  src/mcs51/ralloc.h,
21168	  src/mcs51/main.c,
21169	  src/mcs51/rtrack.c,
21170	  src/SDCCsymt.h,
21171	  src/SDCCdwarf2.c,
21172	  src/port.h,
21173	  src/pic14/pcode.h,
21174	  src/pic14/pcodepeep.c,
21175	  src/pic14/pcoderegs.c,
21176	  src/pic14/ralloc.c,
21177	  src/pic14/gen.h,
21178	  src/pic14/ralloc.h,
21179	  src/pic14/main.c,
21180	  src/pic14/pcode.c,
21181	  src/pic14/glue.c,
21182	  src/z80/ralloc.c,
21183	  src/z80/gen.h,
21184	  src/z80/ralloc.h,
21185	  src/z80/main.c,
21186	  src/pic16/pcode.h,
21187	  src/pic16/device.c,
21188	  src/pic16/device.h,
21189	  src/pic16/gen.c,
21190	  src/pic16/pcoderegs.c,
21191	  src/pic16/ralloc.c,
21192	  src/pic16/gen.h,
21193	  src/pic16/ralloc.h,
21194	  src/pic16/main.c,
21195	  src/pic16/main.h,
21196	  src/pic16/pcode.c,
21197	  src/pic16/glue.c,
21198	  src/hc08/gen.h,
21199	  src/hc08/ralloc.h,
21200	  src/hc08/main.c,
21201	  src/hc08/gen.c,
21202	  src/hc08/ralloc.c,
21203	  src/ds390/gen.h,
21204	  src/ds390/ralloc.h,
21205	  src/ds390/main.c,
21206	  src/ds390/gen.c,
21207	  src/ds390/ralloc.c,
21208	  src/cdbFile.c:
21209	  Renamed regs struct to reg_info, since g++ pollutes the global namespace with "regs" on OpenSolaris, even when using --std=c++98.
21210
212112011-04-21 Philipp Klaus Krause <pkk@spth.de>
21212
21213	* Merge everything except src/z80/gen.c from trunk.
21214
212152011-04-20 Philipp Klaus Krause <pkk@spth.de>
21216
21217	* src/z80/gen.c:
21218	  Fixed bug in assignments to bitfields of size < 8.
21219
212202011-04-20 Philipp Klaus Krause <pkk@spth.de>
21221
21222	* src/SDCCralloc.hpp:
21223	  Allow extremly low values of --max-allocs-per-node.
21224
212252011-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21226
21227	* src/z80/gen.c:
21228	  Make some cheapMove()s for more optimization potential (moving some optimizations from the peephole optimizer to code generation, where they can be seen by the cost function).
21229
212302011-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21231
21232	* src/z80/peeph-z80.def:
21233	  Added some peephole rules to better optimize shifting and dead loads.
21234
212352011-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21236
21237	* Merge everything except src/z80/gen.c from trunk.
21238
212392011-04-19 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21240
21241	* src/z80/gen.c:
21242	  Fixed result assignment bug in addition.
21243
212442011-04-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21245
21246	* src/z80/gen.c,
21247	  src/z80/ralloc.c,
21248	  src/z80/main.c,
21249	  src/z80/z80.h:
21250	  Added --optralloc-remat option for handling rematerialization in the new allocator,
21251	  fixed cost function bug when reading beyond the size of operands,
21252	  removed option for the use of an exact cost function and made the exact cost function the default,
21253	  improved code generation for addition.
21254
212552011-04-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21256
21257	* src/z80/gen.c:
21258	  Fixed a bug triggered by assigning rematerializeable variables to register A or IY.
21259
212602011-04-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21261
21262	* Merge everything except src/z80/gen.c from trunk.
21263
212642011-04-17 Philipp Klaus Krause <pkk AT spth.de>
21265
21266	* src/z80/gen.c:
21267	  Fixed bug in bitfield reading that occoured when reading from (HL) and writing the result to L.
21268
212692011-04-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21270
21271	* Merge everything except src/z80/gen.c from trunk.
21272
212732011-04-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21274
21275	* Merge everything except src/z80/gen.c from trunk.
21276
212772011-04-13 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21278
21279	* src/z80/gen.c:
21280	  Some optimizations for using a pointer to a bitfield in iy,
21281	  improve pushing of 4-byte parameters.
21282
212832011-04-12 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21284
21285	* src/z80/gen.c:
21286	  Fixed genAssign to be able to handle arbitrary register-to-register assignments.
21287
212882011-04-11 Philipp Klaus Krause <pkk AT spth.de>
21289
21290	* src/z80/gen.c:
21291	  Fixed another genPointerGet() bug.
21292
212932011-04-10 Borut Razem <borut.razem AT gmail.com>
21294
21295	* src/z80/gen.c: dbuf-ized
21296	* src/SDCCglobl.h: sync with trunk
21297
212982011-04-10 Philipp Klaus Krause <pkk AT spth.de>
21299
21300	* src/z80/gen.c:
21301	  Cleaned up some leftover debug messages,
21302	  fixed assignment of lh to hl,
21303	  implemented exact cost for EXSTK to SFR assignment,
21304	  fixed genPointerGet() bug that made simplefloat regression tests fail.
21305
213062011-04-09 Philipp Klaus Krause <pkk AT spth.de>
21307
21308	* src/z80/gen.c:
21309	  Added warning in commitPair() for lh to hl assignment.
21310
213112011-04-09 Philipp Klaus Krause <pkk AT spth.de>
21312
21313	* src/z80/gen.c:
21314	  Fixed bug that could result in slightly wrong cost function.
21315
213162011-04-09 Borut Razem <borut.razem AT gmail.com>
21317
21318	* Merge from trunk
21319	* support/regression/tests/bug3166208.c: sync with trunk
21320
213212011-04-09 Borut Razem <borut.razem AT gmail.com>
21322
21323	* src/z80/gen.c, src/z80/ralloc2.cc:
21324	  changed with the Philipp's version from his private
21325	  sdcc-or-2011-4-8 branch; fixed MSVC 2010 compilation
21326	* src/SDCCicode.c: dbuf_detach() replaced with dbuf_destroy()
21327	* support/regression/ports/ucz80/spec.mk:
21328	  added --optralloc-exact-cost to SDCCFLAGS
21329
213302011-04-09 Borut Razem <borut.razem AT gmail.com>
21331
21332	* sim/ucsim/cmd.src/cmdpars.y: removed warnings
21333	* support/regression/tests/logic.c, src/SDCCpeeph.c, src/SDCCasm.c,
21334	  src/SDCCicode.c, src/SDCCglobl.h, src/SDCCsystem.c:
21335	  sync with optralloc branch
21336
213372011-04-08 Philipp Klaus Krause <pkk AT spth.de>
21338
21339	* src/z80/ralloc.c:
21340	  Fixed bug that allowed old register allocator to use IY even when the new one does, too,
21341	  which led to conflicts in the assignment.
21342
213432011-04-07 Philipp Klaus Krause <pkk AT spth.de>
21344
21345	* src/port.h,
21346	  src/SDCCpeeph.c,
21347	  src/z80/main.c,
21348	  src/z80/peep.h,
21349	  src/z80/peep.c,
21350	  src/z80/peeph-z80.def:
21351	  Added new peephole function notUsedFrom() to check for variable uses starting from label,
21352	  added it as condition in peepholes where appropriate, modified notUsed()
21353	  peephole function to not rely on first argument being constant or %1.
21354
213552011-04-07 Philipp Klaus Krause <pkk AT spth.de>
21356
21357	* src/z80/gen.c:
21358	  Fixed SIGSEGV crash due to incorrect register pair cache spilling.
21359
213602011-04-07 Maarten Brock <sourceforge.brock AT dse.nl>
21361
21362	* device/lib/mcs51/Makefile.in,
21363	* device/lib/mcs51/crtxpopbits.asm, device/lib/mcs51/crtxpopr0.asm: renamed
21364	* device/lib/mcs51/crtxpop.asm,
21365	* device/lib/mcs51/crtxpush.asm,
21366	* device/lib/mcs51/crtxpushr0.asm,
21367	* src/mcs51/gen.c (xstackRegisters, saveRegisters, unsaveRegisters,
21368	  genSend): fixed for new register order
21369
213702011-04-06 Philipp Klaus Krause <pkk AT spth.de>
21371
21372	* src/z80/peep.c:
21373	  Give warning instead of crashing when failing to parse ex line node.
21374
213752011-04-05 Borut Razem <borut.razem AT gmail.com>
21376
21377	* src/src.vcxproj, src/src.vcxproj.filters, src/z80/gen.c:
21378	  fixed MSVC 2010 compilation
21379	* src/SDCCasm.c, src/SDCCasm.h:
21380	  removed tsprintf(), dbuf_tprintf() is used instead
21381	* src/z80/gen.c: fixed bug in fetchLitPair()
21382
213832011-04-05 Philipp Klaus Krause <pkk AT spth.de>
21384
21385	* src/z80/ralloc2.cc:
21386	  Avoid assignments where the result overwrites operands in some unary operations.
21387	* src/z80/gen.c:
21388	  Avoid unnecessary saving of iy in builtin memcpy().
21389
213902011-04-05 Philipp Klaus Krause <pkk AT spth.de>
21391
21392	* src/z80/ralloc2.cc:
21393	  Avoid assignments where the result overwrites operands in subtraction, addition, bitwise and, xor;
21394	  get correct cost for bitwise or.
21395	* src/z80/gen.c:
21396	  Remove workaround for result overwritings operands in addition; fixed commitPair() for swapped bytes in target.
21397
213982011-04-04 Philipp Klaus Krause <pkk AT spth.de>
21399
21400	* src/z80/gen.c:
21401	  Fixed broken or when result is sfr.
21402	* src/z80/peeph-z80.def:
21403	  Fixed broken peephole for combining additions next to pushes.
21404
214052011-04-04 Philipp Klaus Krause <pkk AT spth.de>
21406
21407	* src/z80/ralloc2.cc,
21408	  src/z80/gen.c:
21409	  Allow iy as operand to left shift and decrement.
21410
214112011-04-04 Philipp Klaus Krause <pkk AT spth.de>
21412
21413	* src/z80/ralloc2.cc:
21414	  Fixed broken caching of values in hl during pointer assignment.
21415
214162011-04-04 Philipp Klaus Krause <pkk AT spth.de>
21417
21418	* src/z80/ralloc2.cc:
21419	  Do not allocate operands to hl when the code generator will use (hl) for the result in addition.
21420
214212011-04-04 Philipp Klaus Krause <pkk AT spth.de>
21422
21423	* src/z80/gen.c:
21424	  Fix for restoring of register iy when other register pairs are restored as well.
21425
214262011-03-31 Philipp Klaus Krause <pkk AT spth.de>
21427
21428	* src/z80/peeph-z80.def:
21429	  Fix peephole 76' so it doesn't overwrite accumulator during multibyte addition.
21430
214312011-03-31 Philipp Klaus Krause <pkk AT spth.de>
21432
21433	* src/z80/gen.c:
21434	  Fix for genPointerGet when result is lh.
21435
214362011-03-31 Philipp Klaus Krause <pkk AT spth.de>
21437
21438	* src/z80/gen.c:
21439	  Fix for addition with literal when right operand is partially in hl.
21440
214412011-03-31 Maarten Brock <sourceforge.brock AT dse.nl>
21442
21443	* src/mcs51/ralloc.c (regs8051, serialRegAssign),
21444	* src/mcs51/ralloc.h: prefer to use adjacent ascending registers
21445
214462011-03-30 Maarten Brock <sourceforge.brock AT dse.nl>
21447
21448	* sdas/linksrc/lklex.c,
21449	* src/SDCCast.c: small fixes
21450
214512011-03-29 Borut Razem <borut.razem AT gmail.com>
21452
21453	* Partially merge from trunk
21454
214552011-03-29 Philipp Klaus Krause <pkk AT spth.de>
21456
21457	* src/z80/z80.h,
21458	  src/z80/gen.c,
21459	  src/z80/ralloc2.cc,
21460	  src/z80/peeph-z80.def:
21461	  Handle IY in the new allocator.
21462
214632011-03-28 Philipp Klaus Krause <pkk AT spth.de>
21464
21465	* src/SDCCralloc.hpp,
21466	  src/z80/ralloc2.cc,
21467	  src/z80/gen.c,
21468	  src/z80/ralloc.c,
21469	  src/z80/z80.h:
21470	  Preparations for handling IY in the new allocator.
21471
214722011-03-28 Philipp Klaus Krause <pkk AT spth.de>
21473
21474	* src/z80/ralloc2.cc,
21475	  src/z80/gen.c,
21476	  src/z80/ralloc.c,
21477	  Fixes for the exact cost function.
21478
214792011-03-28 Maarten Brock <sourceforge.brock AT dse.nl>
21480
21481	* sdas/linksrc/lklex.c,
21482	* src/SDCCast.c: small fixes
21483
214842011-03-28 Borut Razem <borut.razem AT gmail.com>
21485
21486	* src/z80/gen.c: fixed bug, introduced during code cleaning
21487
214882011-03-28 Philipp Klaus Krause <pkk AT spth.de>
21489
21490	* src/SDCCerr.c,
21491	  src/SDCCerr.h,
21492	  src/SDCCval.c,
21493	  src/SDCCval.h,
21494	  src/SDCC.y,
21495	  src/SDCCglue.c,
21496	  src/pic14/glue.c,
21497	  src/pic16/glue.c,
21498	  src/SDCCast.c:
21499	  Support for designated initializers, thanks C. Scott and R. Quattlebaum.
21500
215012011-03-27 Maarten Brock <sourceforge.brock AT dse.nl>
21502
21503	* sdas/as6808/m08mch.c,  sdas/as6808/m08pst.c,
21504	* sdas/as8051/i51mch.c,  sdas/as8051/i51pst.c,
21505	* sdas/asgb/gbmch.c,     sdas/asgb/gbpst.c,
21506	* sdas/asz80/z80mch.c,   sdas/asz80/z80pst.c,
21507	* sdas/asxxsrc/asdata.c, sdas/asxxsrc/asexpr.c,
21508	* sdas/asxxsrc/aslist.c, sdas/asxxsrc/asmain.c,
21509	* sdas/asxxsrc/asout.c,  sdas/asxxsrc/asxxxx.h,
21510	* sdas/linksrc/aslink.h, sdas/linksrc/lkaomf51.c,
21511	* sdas/linksrc/lkar.c,   sdas/linksrc/lkarea.c,
21512	* sdas/linksrc/lkdata.c, sdas/linksrc/lkelf.c,
21513	* sdas/linksrc/lkeval.c, sdas/linksrc/lkhead.c,
21514	* sdas/linksrc/lkihx.c,  sdas/linksrc/lklex.c,
21515	* sdas/linksrc/lklib.c,  sdas/linksrc/lklibr.c,
21516	* sdas/linksrc/lklist.c, sdas/linksrc/lkmain.c,
21517	* sdas/linksrc/lkmem.c,  sdas/linksrc/lkrloc.c,
21518	* sdas/linksrc/lksym.c,  sdas/linksrc/lksdcclib.c: first steps towards ASxxxx 5
21519
215202011-03-27 Borut Razem <borut.razem AT gmail.com>
21521
21522	* src/z80/main.c, src/z80/gen.c, src/z80/gen.h,
21523	  src/z80/ralloc.c, src/z80/ralloc.h,
21524	  src/mcs51/gen.c, src/ds390/gen.c:
21525	  dbuf-ized, get rid of global buffer, code cleaning
21526	* src/SDCCasm.c, src/SDCCasm.h:
21527	  removed tsprintf()
21528	* support/Util/dbuf.c, support/Util/dbuf.h:
21529	  added dbuf_is_initialized()
21530
215312011-03-26 Borut Razem <borut.razem AT gmail.com>
21532
21533	* src/mcs51/gen.c, src/mcs51/gen.h,
21534	  src/mcs51/ralloc.c, src/mcs51/ralloc.h,
21535	  src/ds390/gen.c, src/ds390/ralloc.c:
21536	  dbuf-ized, get rid of global buffer, code cleaning
21537
215382011-05-26 Philipp Klaus Krause <pkk AT spth.de>
21539
21540	* src/SDCCcse.c (boolCast):
21541	  Fully reenabled boolCast, and fixed my stupid typo that triggered bug 3223041.
21542
215432011-03-25 Maarten Brock <sourceforge.brock AT dse.nl>
21544
21545	* src/hc08/gen.c: cosmetics
21546	* src/hc08/ralloc.c (packRegsForAssign): fixed bug 1477149 & SINHF,
21547	  throughout synced with mcs51/ralloc.c
21548	* support/regression/tests/float_single.c: enabled SINHF
21549
215502011-03-25 Philipp Klaus Krause <pkk AT spth.de>
21551
21552	* src/SDCCcse.c (boolCast, cseBBlock):
21553	  Reenabled boolCast except for the one case that triggers bug 3223041.
21554
215552011-03-24 Philipp Klaus Krause <pkk AT spth.de>
21556
21557	* src/z80/ralloc.c,
21558	  src/z80/gen.c,
21559	  src/z80/ralloc2.cc:
21560	  gbz80 fixes.
21561
215622011-03-24 Maarten Brock <sourceforge.brock AT dse.nl>
21563
21564	* src/SDCCsymt.h: added IS_BOOLEAN
21565	* src/SDCCast.c (getResultTypeFromType),
21566	* src/SDCCicode.c (geniCodeLogic, geniCodeLogicAndOr, ast2iCode),
21567	* src/SDCCsymt.c (computeTypeOr, computeType, compareType),
21568	* src/SDCCval.c (checkConstantRange): use IS_BOOLEAN
21569	* src/SDCCcse.c (boolCast, cseBBlock): disabled boolCast fixed bug 3223041
21570	* src/z80/gen.c (_toBoolean): added parameter needflag,
21571	  (_castBoolean, genCast): castBoolean factored out of genCast
21572	* support/regression/tests/bug3223041.c: modified for hc08 without _Bool
21573
215742011-03-24 Borut Razem <borut.razem AT gmail.com>
21575
21576	* src/SDCCglue.c, src/ds390/gen.c, src/ds390/gen.h,
21577	  src/ds390/ralloc.c, src/ds390/ralloc.h, src/SDCCptropt.c,
21578	  src/SDCCptropt.h, src/SDCCicode.c, src/SDCCicode.h:
21579	  dbuf-ized, get rid of global buffer, code cleaning,
21580	  use dbuf_tprintf() instead of tsprintf()
21581
215822011-03-23 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21583
21584	* src/SDCCralloc.hpp,
21585	  src/SDCCicode.h,
21586	  src/z80/ralloc2.cc:
21587	  Make sdcc the best compiler for the Z80.
21588
215892011-03-22 Philipp Klaus Krause <pkk AT spth.de>
21590
21591	* src/z80/gen.c:
21592	  sfr fixes for accurate cost function.
21593
215942011-03-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21595
21596	* src/z80/gen.c,
21597	  src/SDCCralloc.hpp,
21598	  src/z80/ralloc2.cc:
21599	  Code reorganization for a more accurate cost function.
21600
21601
216022011-03-22 Maarten Brock <sourceforge.brock AT dse.nl>
21603
21604	* support/regression/ports/ds390/spec.mk,
21605	* support/regression/ports/hc08/spec.mk,
21606	* support/regression/ports/ucz80/spec.mk: fixed output
21607
216082011-03-21 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21609
21610	* src/z80/ralloc2.cc,
21611	  src/z80/gen.c:
21612	  Code reorganization for a more accurate cost function.
21613
216142011-03-21 Borut Razem <borut.razem AT gmail.com>
21615
21616	* src/SDCCmacro.c: fixed bug, introduced 2011-03-20:
21617	  call dbuf_vprintf() instead dbuf_printf() in mvsprintf()
21618
216192011-03-21 Maarten Brock <sourceforge.brock AT dse.nl>
21620
21621	* src/ds390/gen.c (genRet): forgot the _endLazyDPSEvaluation
21622	* support/regression/compact-results.py: new, added
21623	* support/regression/Makefile.in: print test name and compact results after
21624	  running the test for better progress insight with make -j
21625
216262011-03-21 Borut Razem <borut.razem AT gmail.com>
21627
21628	* src/SDCCval.c, src/SDCCval.h, src/SDCCast.c: dbuf-ized
21629
216302011-03-20 Philipp Klaus Krause <pkk AT spth.de>
21631
21632	* src/SDCCralloc.hpp,
21633	  src/z80/z80.h,
21634	  src/z80/ralloc2.cc,
21635	  src/z80/gen.c:
21636	  Code reorganization for a more accurate cost function.
21637
216382011-03-20 Philipp Klaus Krause <pkk AT spth.de>
21639
21640	* src/z80/z80.h,
21641	  src/z80/main.c:
21642	  Register allocator option cleanup.
21643
216442011-03-20 Borut Razem <borut.razem AT gmail.com>
21645
21646	* src/SDCCicode.c, src/SDCCicode.h, src/SDCCsymt.c, src/SDCCsymt.h,
21647	  src/port.h, src/SDCCast.c, src/SDCCast.h, src/SDCCBBlock.c,
21648	  src/SDCCBBlock.h, src/z80/main.c, src/pic16/main.c:
21649	  dbuf-ized, get rid of global buffer, code cleaning
21650	* src/SDCCmacro.c, src/SDCCmain.c, support/Util/NewAlloc.c,
21651	  support/Util/newalloc.h: introduced Safe_strndup()
21652
216532011-03-20 Maarten Brock <sourceforge.brock AT dse.nl>
21654
21655	* src/ds390/gen.c (movc, toCarry): replaced movc with toCarry,
21656	  (genNot, genSend, genRet): used toCarry,
21657	  (genAnd, genOr, genXor): fixed bug 3223041
21658	* src/mcs51/gen.c (toCarry): handle IS_OP_ACCUSE,
21659	  (genCmpEq, genAnd, genOr, genXor): fixed bug 3223041
21660	* support/regression/tests/bug3223041.c: new, added
21661
216622011-03-20 Borut Razem <borut.razem AT gmail.com>
21663
21664	* src/SDCCmain.c, src/SDCCmacro.c, src/SDCCmacro.h, src/SDCCutil.c,
21665	  src/SDCCutil.h: dbuf-ized SDCCmacro.c
21666	* src/SDCCutil.c, src/SDCCutil.h, src/SDCCmain.c, src/ds390/main.c, src/z80/main.c:
21667	  dbuf-ized buildCmdLine(), moved to SDCCutil
21668	* src/SDCCbuild_cmd.[ch]: deleted
21669
216702011-03-20 Borut Razem <borut.razem AT gmail.com>
21671
21672	* src/SDCCmain.c, src/SDCCmacro.c, src/SDCCmacro.h, src/SDCCutil.c,
21673	  src/SDCCutil.h: dbuf-ized SDCCmacro.c
21674	* src/SDCCutil.c, src/SDCCutil.h, src/SDCCmain.c, src/ds390/main.c, src/z80/main.c:
21675	  dbuf-ized buildCmdLine(), moved to SDCCutil
21676	* src/SDCCbuild_cmd.[ch]: deleted
21677
216782011-03-19 Borut Razem <borut.razem AT gmail.com>
21679
21680	* src/SDCCmain.c, src/SDCCutil.c, src/SDCCutil.h, src/SDCCmacro.c,
21681	  src/SDCCmacro.h:
21682	  fixed bug #3152525:
21683	  sdcc doesn't pass double-quotes from -D option to sdcpp
21684	* debugger/mcs51/simi.c:
21685	  call ioctl(sock, FIONBIO, &iMode)
21686	  replaced with fcntl(sock, F_SETFL, FNONBLOCK | FASYNC) on *nix
21687
216882011-03-19 Maarten Brock <sourceforge.brock AT dse.nl>
21689
21690	* sdas/asxxsrc/asmain.c (main): fixed warning
21691	* sdas/linksrc/lkaomf51.c (OutputAOEMF51): fixed bug 1630751
21692	  (ParseRegisters, CollectInfoFromCDB): get address for ascending registers
21693	* src/cdbFile.c: cosmetics
21694	* support/regression/fwk/lib/statics.c,
21695	* support/regression/tests/bug1477149.c: fixed for type float
21696	* sdas/linksrc/lkaomf51.c: disabled DODUMP
21697
216982011-03-18 Borut Razem <borut.razem AT gmail.com>
21699
21700	* sdas/asxxsrc/asmain.c:
21701	  reverted incorrect fix for bug #3195019:
21702	  option -o just instructs sdas to generate an object file,
21703	  it doesn't take an object output file name as argument
21704	* sdas/asxxsrc/asmain.c:
21705	  hopefully properly fixed bug #3195019
21706
217072011-03-18 Maarten Brock <sourceforge.brock AT dse.nl>
21708
21709	* src/cdbFile.c (cdbWriteBasicSymbol),
21710	* src/SDCCglue.c (emitDebugSym),
21711	* debugger/mcs51/symtab.c (gc_strcat, symLookup): concatenate module and
21712	  function name seperated by . for locals to fix bug 1477149 with --debug
21713	* sdas/linksrc/lkaomf51.c (CollectInfoFromCDB): split S:L and L:L locals,
21714	  F:F are static, check modules for L:F and L:X
21715	* src/SDCCdebug.c: cosmetics
21716	* src/SDCCglue.c (emitOverlay): fixed bug 1477149
21717	* support/regression/fwk/lib/statics.c,
21718	* support/regression/ports/ds390/fwk.lib,
21719	* support/regression/ports/gbz80/fwk.lib,
21720	* support/regression/ports/hc08/fwk.lib,
21721	* support/regression/ports/ucz80/fwk.lib,
21722	* support/regression/tests/bug1477149.c: new, added
21723	* support/regression/ports/ds390/spec.mk,
21724	* support/regression/ports/hc08/spec.mk,
21725	* support/regression/ports/mcs51-common/spec.mk
21726	* support/regression/ports/ucz80/spec.mk: added FWKLIB and statics.rel
21727	* support/regression/ports/host/spec.mk.in: added statics.o
21728	* support/regression/ports/mcs51-common/fwk.lib: added statics.rel
21729	* .version: bumped to 3.0.2
21730	* src/cdbFile.c (cdbWriteBasicSymbol): applied patch from bug 1627975,
21731	  thanks sandra-l
21732
217332011-03-17 Borut Razem <borut.razem AT gmail.com>
21734
21735	* src/SDCCloop.c, src/SDCCsymt.c, src/SDCCast.c:
21736	  fixed empty statement warnings
21737	* sdas/asxxsrc/asmain.c:
21738	  fixed bug #3195019: sdcc generates .rel instead of .o
21739	* src/Makefile.in:
21740	  removed -O2 from CPPFLAFS
21741
217422011-03-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21743
21744	* src/z80/ralloc2.cc,
21745	  src/z80/gen.c,
21746	  src/z80/ralloc.c,
21747	  src/z80/main.c:
21748	  Code reorganization for a more accurate cost function.
21749
217502011-03-16 Philipp Klaus Krause <pkk AT spth.de>
21751
21752	* src/SDCCralloc.hpp,
21753	  src/z80/z80.h:
21754	  Solaris fix.
21755
217562011-03-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21757
21758	* src/z80/ralloc2.cc,
21759	  src/z80/gen.c,
21760	  src/z80/gen.h,
21761	  src/z80/z80.h:
21762	  Code reorganization for a more accurate cost function.
21763
217642011-03-15 Borut Razem <borut.razem AT gmail.com>
21765
21766	* debugger/mcs51/configure.in, debugger/mcs51/configure:
21767	  added C99_FLAG to CFLAGS and MAKEDEP for SunPro C compiler
21768	* debugger/mcs51/simi.c: include <sys/filio.h> in Solaris
21769
217702011-03-15 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21771
21772	* src/z80/main.c,
21773	  src/z80/gen.h,
21774	  src/z80/ralloc2.cc,
21775	  src/z80/gen.c:
21776	  Code reorganization for a more accurate cost function.
21777
217782011-03-14 Maarten Brock <sourceforge.brock AT dse.nl>
21779
21780	* src/SDCCglue.c (pointerTypeToGPByte),
21781	* src/ds390/gen.c (genCast): ds390 function pointer is no CPOINTER
21782
217832011-03-14 Borut Razem <borut.razem AT gmail.com>
21784
21785	* configure, configure.in: don't use C99_FLAG in CXXFLAGS
21786	  for SunPro C++ compiler
21787
217882011-03-13 Maarten Brock <sourceforge.brock AT dse.nl>
21789
21790	* src/SDCCast.c (processParms): fixed bug 2084206,
21791	  (getLeftResultType): return RESULT_TYPE_GPTR for generic pointers,
21792	  (decorateType, CAST): don't change function pointer to CPOINTER
21793	  when resulttype is generic pointer, necessary for varargs
21794	* support/regression/tests/bug2084206.c: new, added
21795
217962011-03-13 Borut Razem <borut.razem AT gmail.com>
21797
21798	* src/SDCCglobl.h: don't incude stdbool.h if compiled with c++
21799
218002011-03-13 Philipp Klaus Krause <pkk AT spth.de>
21801
21802	* src/z80/ralloc2.cc:
21803	  Preparations for rematerialization support in new allocator.
21804	* src/z80/ralloc.c:
21805	  Old register allocator cleanup.
21806	* src/z80/gen.c:
21807	  Code reorganization for a more accurate cost function.
21808
218092011-03-09 Philipp Klaus Krause <pkk AT spth.de>
21810
21811	* src/SDCCopt.c,
21812	  support/regression/tests/memory.c:
21813	  Completed fix for #3188357.
21814
218152011-03-07 Borut Razem <borut.razem AT gmail.com>
21816
21817	* configure, configure.in, src/Makefile.in: CXXFLAGS fixes
21818
218192011-03-06 Borut Razem <borut.razem AT gmail.com>
21820
21821	* sim/ucsim/cmd.src/Makefile.in:
21822	  fixed for bison, byacc and flex version 2.5.4
21823
218242011-03-05 Philipp Klaus Krause <pkk AT spth.de>
21825
21826	* src/SDCCopt.c:
21827	  Partial fix for #3188357.
21828
218292011-03-05 Borut Razem <borut.razem AT gmail.com>
21830
21831	* sim/ucsim/configure, sim/ucsim/cmd.src/cmdlexcl.h,
21832	  sim/ucsim/cmd.src/Makefile.in, sim/ucsim/cmd.src/newcmd.cc,
21833	  sim/ucsim/cmd.src/cmdset.cc, sim/ucsim/cmd.src/cmdlex.l,
21834	  sim/ucsim/cmd.src/newcmdposix.cc, sim/ucsim/cmd.src/newcmdwin32.cc,
21835	  sim/ucsim/cmd.src/cmdpars.y, sim/ucsim/configure.in:
21836	  use bison instead of unsupported bison++
21837	* sim/ucsim/cmd.src/flex_lexer.h, sim/ucsim/cmd.src/cmdpars.cc,
21838	  sim/ucsim/cmd.src/cmdpars.h, sim/ucsim/cmd.src/FlexLexer.h,
21839	  sim/ucsim/cmd.src/cmdlex.cc: deleted
21840
218412011-03-03 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21842
21843	* sim/ucsim/z80.src/inst_cb.cc:
21844	  Fixed broken res b, a instruction.
21845
218462011-03-02 Borut Razem <borut.razem AT gmail.com>
21847
21848	* src/SDCCmain.c, doc/sdccman.lyx:
21849	  fixed use of SDCC_LIB environment variable:
21850	  first search in $SDCC_LIB/<model>
21851	  then search in $SDCC_LIB
21852
218532011-03-02 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21854
21855	* src/z80/ralloc2.cc:
21856	  Improved coalescing.
21857	* src/z80/gen.c,
21858	  src/z80/peeph-z80.def:
21859	  Minor improvements.
21860
218612011-02-27 Philipp Klaus Krause <pkk AT spth.de>
21862
21863	* src/z80/ralloc2.cc,
21864	  src/z80/gen.c,
21865	  src/z80/main.c,
21866	  src/z80/peep.c,
21867	  src/z80/peeph-z80.def:
21868	  Various minor improvements.
21869
218702011-02-26 Philipp Klaus Krause <pkk AT spth.de>
21871
21872	* src/z80/peeph-z80.def
21873	  Minor peephole improvements.
21874
218752011-02-24 Borut Razem <borut.razem AT gmail.com>
21876
21877	* doc/sdccman.lyx: fixed bug #3191324: PIC instructions in documentation
21878
218792011-02-23 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21880
21881	* src/mcs51/gen.c,
21882	  src/z80/peeph-z80.def:
21883	  Merge from trunk.
21884
218852011-02-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21886
21887	* src/z80/ralloc2.cc,
21888	  src/z80/gen.c,
21889	  src/z80/peeph-z80.def:
21890	  Improvements for --optralloc-all.
21891
218922011-02-20 Philipp Klaus Krause <pkk AT spth.de>
21893
21894	* src/z80/main.c,
21895	  src/z80/gen.c,
21896	  src/z80/ralloc2.cc:
21897	  Fixes for --fomit-frame-pointer.
21898	* src/mcs51/gen.c:
21899	  Merge from trunk.
21900
219012011-02-19 Philipp Klaus Krause <pkk AT spth.de>
21902
21903	* src/SDCCralloc.hpp,
21904	  src/z80/ralloc2.cc:
21905	  Liverange fix.
21906	* src/z80/peep.c,
21907	  src/z80/gen.c:
21908	  Fixes for --reserve-regs-iy.
21909	* support/regression/tests/bug-3184920.c:
21910	  Merge from trunk.
21911
219122011-02-19 Maarten Brock <sourceforge.brock AT dse.nl>
21913
21914	* debugger/mcs51/cmd.c,
21915	* debugger/mcs51/sdcdb.c,
21916	* debugger/mcs51/simi.c,
21917	* debugger/mcs51/symtab.c,
21918	* src/SDCCargs.h,
21919	* src/version.awk: cosmetic changes
21920	* src/pic14/gen.c (genDataPointerSet),
21921	* src/pic14/glue.c (emitIvals),
21922	* src/SDCCsystem.c: fixed warnings
21923	* src/SDCCerr.c (setWarningDisabled): check errNum
21924	* src/SDCCpeeph.c: added optimizeReturn
21925	* src/mcs51/peeph.def: disabled 237.x, fixed bug 1653651
21926	* src/SDCCglobl.h: added options.peepReturn
21927	* src/SDCCmain.c (parseCmdLine): added --peep-return & --no-peep-return
21928	* support/scripts/resource.rc: replaced include "winres.h" with "winresrc.h"
21929	* support/scripts/winres.h: deleted
21930
219312011-01-18 Philipp Klaus Krause <pkk AT spth.de>
21932
21933	* src/z80/peeph-z80.def,
21934	  support/regression/tests/bug-3184920.c:
21935	  Fix for #3184920 from trunk.
21936
219372011-02-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21938
21939	* support/scripts/sdcc.nsi:
21940	  Merge from trunk.
21941	* src/z80/ralloc2.cc:
21942	  Fix for --optralloc-all.
21943	* src/z80/gen.c:
21944	  Fix for --reserve-regs-iy.
21945
219462011-02-16 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21947
21948	* src/SDCCralloc.hpp,
21949	  src/z80/ralloc2.cc:
21950	  Improved heuristics wrt. junction nodes.
21951	* src/version.awk,
21952	  src/src.dsp,
21953	  support/scripts/resource.rc:
21954	  Merge from trunk.
21955	* src/z80/gen.c:
21956	  Improved addition by increment.
21957
219582011-02-10 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21959
21960	* src/SDCCralloc.hpp,
21961	  src/z80/ralloc2.cc:
21962	  Early elimination of some impossible assignments.
21963
219642011-02-07 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21965
21966	* src/z80/ralloc2.cc,
21967	  src/z80/gen.c:
21968	  Avoid result overwriting operand bug in |.
21969
219702011-02-07 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21971
21972	* src/SDCCtree_dec.hpp,
21973	  src/SDCCralloc.hpp,
21974	  src/z80/ralloc2.cc:
21975	  Changed style from Allman to GNU.
21976
219772011-02-07 Borut Razem <borut.razem AT gmail.com>
21978
21979	* Merged from trunk
21980
219812011-02-06 Maarten Brock <sourceforge.brock AT dse.nl>
21982
21983	* all.vcxproj: fixed missing ;'s
21984	* all.vcxproj.filters: added sdld6808, sdldgb, sdldz80
21985
219862011-02-05 Philipp Klaus Krause <pkk AT spth.de>
21987
21988	* src/SDCCicode.c (setOperandType),
21989	  support/regression/tests/bug-221168.c,
21990	  support/regression/tests/bug3166208.c:
21991	  Maarten's fix of #3166208 from trunk.
21992
219932011-02-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
21994
21995	* src/mcs51/gen.h,
21996	  src/mcs51/gen.c,
21997	  sdas/linksrc/Makefile.in,
21998	  support/makebin/makebin.c,
21999	  support/regression/tests/bug3130806.c:
22000	  Fixes from trunk.
22001
220022011-02-04 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22003
22004	* sim/ucsim/z80.src/inst_cb.cc:
22005	  Fixed #3166058.
22006
220072011-01-27 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22008
22009	* src/z80/ralloc2.cc:
22010	  Improved handling of HL.
22011
220122011-01-26 Philipp Klaus Krause <pkk AT spth.de>
22013
22014	* src/z80/ralloc2.cc:
22015	  Improved handling of HL.
22016
220172011-01-26 Philipp Klaus Krause <pkk AT spth.de>
22018
22019	* src/z80/ralloc2.cc,
22020	  src/z80/peeph-z80.def:
22021	  Improved handling of A and HL.
22022
220232011-01-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22024
22025	* Makefile.common.in,
22026	  src/z80/ralloc2.cc,
22027	  src/z80/gen.c,
22028	  src/z80/peeph-z80.def:
22029	  Improved handling of A and HL.
22030
220312011-01-25 Borut Razem <borut.razem AT gmail.com>
22032
22033	* src/z80/gen.c:
22034	  removed MSCV 2010 warning C4018: '<' : signed/unsigned mismatch
22035	* src/SDCCsysytem.c, src/SDCCutil.c: removed MSCV 2010 warnings
22036
220372011-01-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22038
22039	* src/SDCCralloc.hpp,
22040	  src/z80/ralloc2.cc:
22041	  Improved handling of A and HL.
22042
220432011-01-25 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22044
22045	* src/SDCCglobl.h,
22046	  src/SDCCralloc.hpp,
22047	  std/SDCCmain.c,
22048	  src/z80/z80.h,
22049	  src/z80/main.c:
22050	  Modified fix for MSVC 2010 warnings, changed handling of --max-allocs-per-node option.
22051
220522011-01-24 Borut Razem <borut.razem AT gmail.com>
22053
22054	* src/SDCCralloc.hpp, src/z80/main.c, src/z80/ralloc2.cc,
22055	  src/z80/z80.h, src/z80/z80.vcxproj: fixed msvc 2010 warnings
22056
220572011-01-24 Philipp Klaus Krause <pkk AT spth.de>
22058
22059	* src/z80/ralloc2.cc,
22060	  src/z80/gen.c:
22061	  Improved handling of HL in the new allocator.
22062
220632011-01-24 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22064
22065	* src/z80/ralloc2.cc:
22066	  Fixed bug in handling of register A.
22067
220682011-01-24 Philipp Klaus Krause <pkk AT spth.de>
22069
22070	* src/SDCCralloc.hpp,
22071	  src/z80/ralloc2.cc,
22072	  src/z80/z80.h,
22073	  src/z80/main.c,
22074	  src/z80/gen.c:
22075	  Improved handling of A in the new register allocator and made it the default.
22076
220772011-01-23 Philipp Klaus Krause <pkk AT spth.de>
22078
22079	* src/z80/z80.h,
22080	  src/z80/main.c,
22081	  src/z80/ralloc.c:
22082	  Added option to handle hl, but not a (or iy) by new allocator.
22083
220842011-01-23 Philipp Klaus Krause <pkk AT spth.de>
22085
22086	* src/z80/z80.h,
22087	  src/SDCCtree_dec.hpp,
22088	  src/z80/ralloc.c,
22089	  src/z80/ralloc2.cc:
22090	  Feature enable macro cleanup.
22091
220922011-01-23 Borut Razem <borut.razem AT gmail.com>
22093
22094	* sdcc.sln, */*.vcxproj: MSVC 2010 project files cleaning
22095	* */*.vcxproj.filters: added to svn
22096	* debugger/mcs51/simi.c:
22097	  fixed warning C4273: '_environ' : inconsistent dll linkage
22098	* Merged from trunk
22099
221002011-01-23 Philipp Klaus Krause <pkk AT spth.de>
22101
22102	* src/SDCCtree_dec.hpp,
22103	  src/SDCCralloc.hpp,
22104	  src/z80/ralloc2.cc:
22105	  Re-rooting of the tree-decomposition.
22106
221072011-01-23 Philipp Klaus Krause <pkk AT spth.de>
22108
22109	* src/SDCCtree_dec.hpp,
22110	  src/SDCCralloc.hpp,
22111	  src/z80/ralloc2.cc:
22112	  Fixed MSVC++ compilation problem, preparations for re-rooting the tree decomposition.
22113
221142011-01-23 Borut Razem <borut.razem AT gmail.com>
22115
22116	* src/avr/avr.vcxproj, src/ds390/ds390.vcxproj, src/hc08/hc08.vcxproj,
22117	  src/mcs51/mcs51.vcxproj, src/pic14/pic14.vcxproj,
22118	  src/pic16/pic16.vcxproj, src/xa51/xa51.vcxproj, src/z80/z80.vcxproj:
22119	  remove /Zm1000 command line option from all projects
22120
221212011-01-22 Borut Razem <borut.razem AT gmail.com>
22122
22123	* all.vcxproj, config.vcxproj, sdas/linksrc/sdld_all.vcxproj,
22124	  src/avr/avra.vcxproj, src/ds390/ds390a.vcxproj,
22125	  src/hc08/hc08a.vcxproj, src/mcs51/mcs51a.vcxproj,
22126	  src/pic14/pic14a.vcxproj, src/pic16/pic16a.vcxproj,
22127	  src/src.vcxproj, src/xa51/xa51a.vcxproj, src/yacc.vcxproj,
22128	  src/z80/z80a.vcxproj, support/cpp/sdcppa.vcxproj:
22129	  fixed Custom Builds
22130
221312011-01-22 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22132
22133	* src/SDCCtree_dec.hpp,
22134	  src/SDCCralloc.hpp,
22135	  src/z80/ralloc2.cc:
22136	  Simplified allocation algorithm by requiring leafs of the tree decomposition to be empty.
22137
221382011-01-22 Borut Razem <borut.razem AT gmail.com>
22139
22140	* src/z80/main.c(598):
22141	  fixed error C2065: 'false' : undeclared identifier
22142
221432011-01-22 Philipp Klaus Krause <pkk AT spth.de>
22144
22145	* src/SDCCtree_dec.hpp:
22146	  Fixed vertex iterator / descriptor problem that caused errors in MSVC++.
22147
221482011-01-22 Philipp Klaus Krause <pkk AT spth.de>
22149
22150	* src/SDCCralloc.hpp,
22151	  src/z80/main.c:
22152	  Disabled forgotten debug message.
22153
221542011-01-22 Philipp Klaus Krause <pkk AT spth.de>
22155
22156	* src/Makefile.in,
22157	  src/SDCCralloc.hpp,
22158	  src/z80/z80.h,
22159	  src/z80/main.c,
22160	  src/z80/ralloc.c,
22161	  src/z80/ralloc2.cc:
22162	  Added option to enable experimental support for A and HL.
22163
221642011-01-21 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22165
22166	* src/SDCCtree_dec.hpp:
22167	  Added missing boost:: prefix.
22168
221692011-01-21 Maarten Brock <sourceforge.brock AT dse.nl>
22170
22171	* sdcc.sln,
22172	* [*].vcxproj: added project files for Microsoft Visual C++ Express 2010
22173
221742011-01-21 Maarten Brock <sourceforge.brock AT dse.nl>
22175
22176	* sdas/linksrc/sdld_all.dsp: renamed dldgb.exe to sdldgb.exe
22177	* src/avr/gen.c,
22178	* src/ds390/gen.c,
22179	* src/ds390/ralloc.c,
22180	* src/hc08/gen.c,
22181	* src/mcs51/gen.c,
22182	* src/pic14/gen.c,
22183	* src/pic14/ralloc.c,
22184	* src/pic16/gen.c,
22185	* src/pic16/genutils.c,
22186	* src/SDCCicode.c,
22187	* src/SDCCicode.h,
22188	* src/SDCClrange.c,
22189	* src/xa51/ralloc.c,
22190	* src/z80/gen.c,
22191	* src/z80/ralloc.c,
22192	* src/z80/ralloc2.cc: renamed union operand to union svt,
22193	  added OP_KEY and OP_TYPE, use OP_xxx macros more often
22194
221952011-01-20 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22196
22197	* src/SDCCralloc.hpp,
22198	  src/z80/ralloc.h,
22199	  src/z80/ralloc.c,
22200	  src/z80/ralloc2.cc:
22201	  Handle A in new register allocator.
22202
222032011-01-18 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22204
22205	* src/z80ralloc2.cc:
22206	  Reg name cleanup.
22207
222082011-01-18 Philipp Klaus Krause <pkk AT spth.de>
22209
22210	* src/z80ralloc2.cc:
22211	  Preparaton for use of a and hl in the new allocator.
22212
222132011-01-17 Philipp Klaus Krause <pkk AT spth.de>
22214
22215	* src/SDCCtree_dec.hpp:
22216	  Fixed const-correctness of iterators.
22217
222182011-01-17 Philipp Klaus Krause <pkk AT spth.de>
22219
22220	* src/ralloc2.cc:
22221	  Fixed confusion of std::map/std::multimap iterators.
22222
222232011-01-17 Philipp Klaus Krause <pkk AT spth.de>
22224
22225	* src/SDCCtree_dec.hpp
22226	  Fixed std::vector<bool> active initalization in tree_decomposition_from_elimination_ordering()
22227
222282011-01-17 Philipp Klaus Krause <pkk AT spth.de>
22229
22230	* src/SDCCralloc.hpp,
22231	  src/z80/ralloc2.cc:
22232	  Made operands in assign_cost() const.
22233
222342011-01-17 Maarten Brock <sourceforge.brock AT dse.nl>
22235
22236	* src/SDCCralloc.hpp: do not include "sdccconf.h" directly, it does not
22237	  exist when building with MSVC. Let it come through SDCCglobl.h
22238
222392011-01-17 Borut Razem <borut.razem AT gmail.com>
22240
22241	* Merged from trunk
22242
222432011-01-17 Philipp Klaus Krause <pkk AT spth.de>
22244
22245	* src/SDCCicode.h,
22246	  src/SDCCicode.c,
22247	  src/SDCCralloc.hpp,
22248	  src/z80/ralloc2.cc:
22249	  Split validateOpType() into const and non-const version.
22250
222512011-01-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22252
22253	* src/SDCCralloc.hpp:
22254	  Some documenting comments.
22255
222562011-01-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22257
22258	* src/z80/ralloc2.cc:
22259	  Fixed some forgotten debug statements.
22260
222612011-01-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22262
22263	* src/SDCCralloc.hpp,
22264	  src/z80/ralloc2.cc:
22265	  Fixed the allocator for gbz80.
22266
222672011-01-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22268
22269	* src/SDCCtree_dec.hpp,
22270	  src/z80/tree_dec.hh,
22271	  src/SDCCralloc.hpp,
22272	  src/z80/ralloc2.cc:
22273	  Moved some generic parts of the new allocator out of the z80 directory.
22274
222752011-01-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22276
22277	* src/z80/ralloc2.cc:
22278	  Type fixes.
22279
222802011-01-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22281
22282	* src/z80/ralloc2.cc:
22283	  Preparations for the use of a better cost function and handling a, hl and iy in the new allocator.
22284
222852011-01-17 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22286
22287	* src/SDCCsymt.h,
22288	  src/z80/ralloc.c,
22289	  src/z80/ralloc2.cc:
22290	  Improved variable handling and C++ standard conformance.
22291
222922011-01-16 Philipp Klaus Krause <pkk AT spth.de>
22293
22294	* src/z80/ralloc2.cc:
22295	  Removed local assignment map.
22296
222972011-01-16 Philipp Klaus Krause <pkk AT spth.de>
22298
22299	* configure.in,
22300	  configure,
22301	  Makefile.common.in,
22302	  src/Makefile.in,
22303	  src/port.mk,
22304	  src/SDCCsymt.h,
22305	  src/SDCCsymt.c,
22306	  src/z80/z80.h,
22307	  src/z80/main.c,
22308	  src/z80/ralloc.h,
22309	  src/z80/ralloc.c,
22310	  src/z80/tree_dec.hh,
22311	  src/z80/ralloc2.cc:
22312	  Initial import of the new register allocator.
22313
223142011-01-16 Borut Razem <borut.razem AT gmail.com>
22315
22316	* Created Optimal Register allocator (optralloc) branch
22317
223182011-01-16 Philipp Klaus Krause <pkk AT spth.de>
22319
22320	* SDCClrange.h,
22321	  SDCClrange.c:
22322	  Comment on the effects of dead code on live ranges.
22323
223242011-01-16 Philipp Klaus Krause <pkk AT spth.de>
22325
22326	* src/SDCCicode.h,
22327	  src/SDCCicode.c:
22328	  Make argument to validateOpType const.
22329
223302011-01-16 Philipp Klaus Krause <pkk AT spth.de>
22331
22332	* src/z80/peeph-z80.def:
22333	  Two new peephole rules, optimizing code frequently generated by the new allocator.
22334
223352011-01-16 Borut Razem <borut.razem AT gmail.com>
22336
22337	* support/regression/collate-results.py: count invalid instructions
22338	* sim/ucsim/z80.src/inst_xxcb.cc (inst_XXcb_set): fixed SET and RES handling
22339
223402011-01-15 Borut Razem <borut.razem AT gmail.com>
22341
22342	* src/SDCCmain.c, src/SDCCdwarf2.c, src/SDCCdwarf2.h, src/z80/gen.c,
22343	  src/SDCCglobl.h, src/pic16/pcode.h, src/pic16/pcode.c,
22344	  src/SDCCsystem.c, src/SDCC.lex:
22345	  code cleaning: removed warnings, use const char *
22346	* src/pic14/glue.c (emitIvals): removed empty line generation
22347
223482011-01-15 Philipp Klaus Krause <pkk AT spth.de>
22349
22350	* SDCCglobl.h:
22351	  Use Maarten's better bool scheme.
22352
223532011-01-15 Philipp Klaus Krause <pkk AT spth.de>
22354
22355	* configure,
22356	  configure.in,
22357	  src/Makefile.in,
22358	  Makefile.common.in,
22359	  src/port.mk,
22360	  src/SDCCsymt.h,
22361	  src/SDCCsymt.c,
22362	  src/SDCClrange.c,
22363	  src/z80/z80.h,
22364	  src/z80/main.c,
22365	  src/z80/ralloc.h,
22366	  src/z80/ralloc.c,
22367	  src/z80/tree_dec.hh,
22368	  src/z80/ralloc2.cc,
22369	  src/z80/peeph-z80.def:
22370	  Reverted to old register allocator.
22371
223722011-01-15 Philipp Klaus Krause <pkk AT spth.de>
22373
22374	* src/z80/ralloc2.cc:
22375	  Small change for MSVC compability:
22376
223772011-01-14 Philipp Klaus Krause <pkk AT spth.de>
22378
22379	* src/z80/tree_dec.hh,
22380	  src/z80/ralloc2.cc:
22381	  Added GPLv2 or later license text.
22382
223832011-01-14 Philipp Klaus Krause <pkk AT spth.de>
22384
22385	* src/z80/ralloc.c:
22386	  Remove some no longer used remains of the old register allocator.
22387
223882011-01-14 Philipp Klaus Krause <pkk AT spth.de>
22389
22390	* src/z80/main.c:
22391	  Enable new register allocator options for the GBZ80.
22392
223932011-01-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22394
22395	* src/z80/ralloc.c,
22396	  src/z80/ralloc2.cc:
22397	  Use new register allocator for the GBZ80.
22398
223992011-01-14 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22400
22401	* configure,
22402	  configure.in,
22403	  src/Makefile.in,
22404	  Makefile.common.in,
22405	  src/port.mk,
22406	  src/SDCCsymt.h,
22407	  src/SDCCsymt.c,
22408	  src/SDCClrange.c,
22409	  src/z80/z80.h,
22410	  src/z80/main.c,
22411	  src/z80/ralloc.h,
22412	  src/z80/ralloc.c,
22413	  src/z80/tree_dec.hh,
22414	  src/z80/ralloc2.cc,
22415	  src/z80/peeph-z80.def:
22416	  New register allocator for the Z80.
22417
224182011-01-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22419
22420	* src/SDCCglobl.h:
22421	  Use bool from stdbool.h, except for MSVC, where unsigned char is used. For #3150686.
22422
224232011-01-11 Philipp Klaus Krause <philipp AT informatik.uni-frankfurt.de>
22424
22425	* src/SDCCsymt.h,
22426	  src/SDCCval.c,
22427	  src/SDCCsymt.c:
22428	  Changed class to xclass in sym_link for C++ compability, for #3150686.
22429
224302011-01-11 Maarten Brock <sourceforge.brock AT dse.nl>
22431
22432	* src/SDCCicode.c (geniCodeAdd): fixed bug 3153956
22433	* support/regression/tests/bug3037889.c: added test for bug 3153956
22434
224352010-12-20 Maarten Brock <sourceforge.brock AT dse.nl>
22436
22437	* debugger/mcs51/simi.c (waitForSim): implemented timeout,
22438	  (openSimulator): use non-blocking socket mode
22439
224402010-12-20 Maarten Brock <sourceforge.brock AT dse.nl>
22441
22442	* debugger/mcs51/cmd.c (commonSetUserBp): fixed bug 1185014
22443
224442010-12-19 Borut Razem <borut.razem AT siol.net>
22445
22446	* src/ds390/main.c, src/Makefile.in, src/SDCCbuild_cmd.c,
22447	  src/SDCCbuild_cmd.h, src/SDCCmain.c, src/src.dsp, src/z80/main.c:
22448	  support/Util/BuildCmd.[ch] moved / renamed to src/SDCCbuild_cmd.[ch]
22449
224502010-12-19 Maarten Brock <sourceforge.brock AT dse.nl>
22451
22452	* debugger/mcs51/cmd.c (printOrSetSymValue),
22453	* debugger/mcs51/simi.h (memcache_t),
22454	* debugger/mcs51/simi.c (getMemCache, getMemString, simSetValue,
22455	  simGetValue): made size unsigned
22456	  (init_winsock): fixed uninitialized iResult,
22457	  (openSimulator): removed intptr_t cast
22458	* debugger/mcs51/sdcdb.c: include <direct.h> for chdir(),
22459	  (parseCmdLine): access() is not portable, replaced with fopen/fclose,
22460	  (main): fixed bug 3137466
22461	* debugger/mcs51/sdcdb.h: include sdcc_vc.h or sdcccon.h
22462	* debugger/mcs51/sdcdb.dsp: new, added
22463	* sdcc.dsw: added sdcdb.dsp
22464	* sdas/asxxsrc/asmain.c (asmbl): error only if is_sdas()
22465	* debugger/mcs51/sdcdb.c (searchDirsFname): retry with '_' replaced
22466	  with '.'
22467
224682010-12-18 Maarten Brock <sourceforge.brock AT dse.nl>
22469
22470	* sdas/as8051/i51adr.c,
22471	* sdas/as8051/i51ext.c,
22472	* sdas/as8051/i51mch.c,
22473	* sdas/as8051/i51pst.c,
22474	* sdas/as8051/i8051.h,
22475	* sdas/asxxsrc/asdata.c,
22476	* sdas/asxxsrc/asdbg.c,
22477	* sdas/asxxsrc/aslex.c,
22478	* sdas/asxxsrc/aslist.c,
22479	* sdas/asxxsrc/asout.c,
22480	* sdas/asxxsrc/assubr.c,
22481	* sdas/asxxsrc/assym.c,
22482	* sdas/asxxsrc/asxxxx.h,
22483	* sdas/asxxsrc/sdas.c,
22484	* sdas/asxxsrc/strcmpi.c: cosmetic, replaced tabs with spaces
22485	* sdas/asxxsrc/asmain.c (asmbl): error on multiple mnemonics on one line
22486	* support/cpp/libcpp/include/cpplib.h: added PREV_NL
22487	* support/cpp/libcpp/lex.c (_cpp_process_line_notes, cpp_output_line),
22488	* support/cpp/c-ppoutput.c (scan_translation_unit): fix macros w/o __asm
22489	* support/regression/tests/bug1505956.c: new, added
22490
224912010-12-16 Maarten Brock <sourceforge.brock AT dse.nl>
22492
22493	* support/cpp/c-ppoutput.c (scan_translation_unit): fix bug 1505956/1406219
22494	* support/cpp/libcpp/include/cpplib.h: added IN_ASM
22495	* support/cpp/libcpp/internal.h: added n__endasm to spec_nodes
22496	* support/cpp/libcpp/lex.c (_cpp_process_line_notes): return int in_asm on
22497	  continued inline asm lines,
22498	  (_cpp_lex_direct): set/reset in_asm flag,
22499	  (cpp_output_line): insert __endasm; __asm to fix bug 1505956/1406219
22500	* support/cpp/libcpp/macro.c (macro_real_token_count): fixed warning
22501	* support/cpp/sdcpp.c (sdcpp_init_options): init n__endasm
22502
225032010-12-14 Borut Razem <borut.razem AT siol.net>
22504
22505	* src/SDCCdwarf2.c, src/SDCCset.c, src/pic16/pcode.c:
22506	  fixed some defects, reported by Wipro DeepCheck static analysis tool
22507
225082010-12-13 Borut Razem <borut.razem AT siol.net>
22509
22510	* src/pic14/main.c, src/pic16/main.c:
22511	  fixed bug #3113082: Filenames with spaces fail on pic backend
22512
225132010-12-11 Borut Razem <borut.razem AT siol.net>
22514
22515	* src/pic14/main.c:
22516	  fixed bug #3135245: --use-non-free set the wrong dir for the lib
22517
225182010-12-10 Philipp Klaus Krause <pkk AT spth.de>
22519
22520	* src/z80/gen.c:
22521	  Fixed signed comparison for gbz80.
22522
225232010-12-06 Philipp Klaus Krause <pkk AT spth.de>
22524
22525	* src/SDCCsymt.c:
22526	  Optimized boolean ternary operator.
22527
225282010-12-06 Borut Razem <borut.razem AT siol.net>
22529
22530	* src/Makefile.in, src/SDCCmain.c, src/src.dsp,
22531	  src/pic14/main.c, src/z80/main.c, src/pic16/main.c,
22532	  src/ds390/main.c, src/SDCCsystem.c, src/SDCCsystem.h:
22533	  support/Util/MySystem.[ch] moved / renamed src/SDCCsystem.[ch]
22534	* src/SDCCargs.h, src/SDCCasm.h, src/SDCCast.h:
22535	  cosmetic changes
22536
225372010-12-06 Maarten Brock <sourceforge.brock AT dse.nl>
22538
22539	* device/include/stdio.h,
22540	* device/lib/printf_fast.c,
22541	* device/lib/printf_tiny.c: fixed bug 3108582
22542
225432010-12-05 Maarten Brock <sourceforge.brock AT dse.nl>
22544
22545	* src/z80/peep.c (z80instructionSize): fixed warning
22546	* support/regression/tests/bug-3117729.c: fixed and enabled for mcs51
22547
225482010-12-05 Borut Razem <borut.razem AT siol.net>
22549
22550	* Makefile.in:
22551	  fixed bug #312815: Top level Makefile variable is mis-spelled
22552
225532010-12-02 Philipp Klaus Krause <pkk AT spth.de>
22554
22555	* support/regression/tests/bug-3117729.c:
22556	  Disabled test for mcs51.
22557
225582010-11-29 Philipp Klaus Krause <pkk AT spth.de>
22559
22560	* support/regression/tests/bug-3117729.c:
22561	  Added bug description.
22562
225632010-11-28 Philipp Klaus Krause <pkk AT spth.de>
22564
22565	* src/z80/peeph-z80.def,
22566	  support/regression/tests/bug-3117729.c:
22567	  Fixed #3117729, minor peephole improvements.
22568
225692010-11-28 Philipp Klaus Krause <pkk AT spth.de>
22570
22571	* src/SDCCpeeph.c,
22572	  src/z80/peep.c:
22573	  Fixed #3117748, improved fix for #3109557.
22574
225752010-11-26 Raphael Neider <rneider AT web.de>
22576
22577	* src/pic14/glue.c (emitIvals): end retlw instruction with newline,
22578	  fixes #3119071.
22579
225802010-11-21 Philipp Klaus Krause <pkk AT spth.de>
22581
22582	* src/z80/peep.c,
22583	  src/SDCCpeeph.c:
22584	  Fixed #3109557.
22585
225862010-11-21 Philipp Klaus Krause <pkk AT spth.de>
22587
22588	* src/z80/peeph-z80.def:
22589	  Minor peephole fix.
22590
225912010-11-15 Maarten Brock <sourceforge.brock AT dse.nl>
22592
22593	* src/ds390/main.c (_ds390_genIVT, _ds390_genInitStartup): keep flat24 mode
22594	  off before _sdcc_external_startup is called
22595	* device/lib/ds390/tinibios.c (_sdcc_external_startup): pop 16 bit address,
22596	  push 24 bit, don't call anything before the changeover to flat24 mode
22597	* support/regression/ports/ds390/spec.mk: start uCsim in 16 bit mode
22598
225992010-11-07 Borut Razem <borut.razem AT siol.net>
22600
22601	* Makefile.common.in, sdcc_vc_in.h, sdccconf_in.h, src/pic14/main.c,
22602	  src/port.h, src/SDCCast.c, src/SDCCmain.c, src/SDCCopt.c,
22603	  src/SDCCpeeph.c, src/SDCCsymt.c:
22604	  TARGET_ID_PIC1 renamed to TARGET_ID_PIC14,
22605	  TARGET_IS_PIC renamed to TARGET_IS_PIC14
22606	  OPT_DISABLE_PIC renamed to OPT_DISABLE_PIC14
22607	* support/Util/dbuf.c, support/Util/dbuf.h: added function dbuf_detach_c_str()
22608
226092010-11-06 Borut Razem <borut.razem AT siol.net>
22610
22611	* support/Util/MySystem.c: use native WIN32 API calls in sdcc_pclose()
22612
226132010-11-05 Borut Razem <borut.razem AT siol.net>
22614
22615	* support/Util/MySystem.c: use native WIN32 sdcc_popen and sdcc_pclose
22616	  solution due to a bug in wine msvrct.dll popen implementation
22617	* support/Util/MySystem.c, support/Util/MySystem.h,  src/SDCCmain.c,
22618	  src/ds390/main.c, src/pic14/main.c, src/pic16/main.c, src/z80/main.c:
22619	  my_xxxx() renamed to sdcc_xxxx()
22620
226212010-11-05 Philipp Klaus Krause <pkk AT spth.de>
22622
22623	* src/SDCCcse.c:
22624	  Optimization for & on booleans.
22625	* src/z80/gen.c,
22626	  src/z80/peeph-z80.def,
22627	  support/regression/tests/bitopcse.c:
22628	  Fixes for z80 using --reserve-regs-iy and gbz80.
22629
226302010-11-05 Raphael Neider <rneider AT web.de>
22631
22632	* sdas/as8051/Makefile.in,
22633	  sdas/asz80/Makefile.in,
22634	  sdas/as6808/Makefile.in,
22635	  sdas/asgb/Makefile.in: fix order of linking with -lm
22636
226372010-11-03 Philipp Klaus Krause <pkk AT spth.de>
22638
22639	* src/z80/gen.c,
22640	  src/z80/peep.c:
22641	  Improvements relating to the use of hl as an alternative to iy.
22642
226432010-11-03 Philipp Klaus Krause <pkk AT spth.de>
22644
22645	* src/SDCCpeeph.h,
22646	  src/z80/gen.c,
22647	  src/z80/ralloc.c,
22648	  src/z80/main.c,
22649	  src/z80/z80.h,
22650	  src/z80/peeph-z80.def:
22651	  Some steps towards implementing #3074318, and minor gbz80 fixes.
22652
226532010-11-03 Philipp Klaus Krause <pkk AT spth.de>
22654
22655	* src/z80/gen.c,
22656	  src/z80/peep.c:
22657	  Fixed #3093447.
22658
226592010-11-03 Maarten Brock <sourceforge.brock AT dse.nl>
22660
22661	* src/SDCCmain.c (setIncludePath): fixed uninitialized target
22662
226632010-11-03 Borut Razem <borut.razem AT siol.net>
22664
22665	* device/include/pic14/sdcc-lib.h:
22666	  directories */pic renamed to */pic14
22667
226682010-11-02 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
22669
22670	* src/mcs51/peeph.def: added peepholes 248.n to 248.p
22671	  optimizing and/or/xor to xdata arrays
22672
226732010-11-02 Borut Razem <borut.razem AT siol.net>
22674
22675	* device/include/Makefile.in, device/non-free/include/Makefile.in,
22676	  device/lib/Makefile.in, device/lib/pic14/configure,
22677	  device/lib/pic14/configure.in, device/lib/pic14/Makefile.common.in,
22678	  device/lib/pic16/aclocal.m4, device/lib/pic16/configure,
22679	  device/lib/pic16/configure.ac, device/non-free/lib/Makefile.in,
22680	  device/non-free/lib/pic14/configure,
22681	  device/non-free/lib/pic14/configure.in,
22682	  device/non-free/lib/pic14/libdev/Makefile.in,
22683	  device/non-free/lib/pic14/libdev/mkall.sh,
22684	  device/non-free/lib/pic14/Makefile.common.in,
22685	  device/non-free/lib/pic16/configure,
22686	  device/non-free/lib/pic16/configure.ac:
22687	  directories */pic renamed to */pic14
22688
226892010-11-01 Borut Razem <borut.razem AT siol.net>
22690
22691	* Small Device C Compiler 3.0.0 released
22692	* .version, doc/sdccman.lyx: changed sdcc version to 3.0.1
22693	* device/include/pic, device/include/asm/pic, device/lib/pic,
22694	  device/non-free/include/pic, device/non-free/lib/pic,
22695	  sdcc/src/pic: renamed to */pic14
22696	* configure, configure.in, regression/Makefile, src/SDCCmain.c,
22697	  device/include/Makefile.in, device/non-free/include/Makefile.in,
22698	  support/regression/ports/pic14/spec.mk, support/scripts/sdcc.nsi,
22699	  device/non-free/lib/Makefile.in, device/lib/Makefile.in,
22700	  sdcc.dsw, src/pic14/pic14.dsp, src/pic14/pic14a.dsp, src/src.dsp:
22701	  directories */pic renamed to */pic14
22702	* src/pic16/gen.c: _naked renamed to __naked
22703	* support/scripts/repack_release.sh:
22704	  fix if the packages are not in current directory
22705
227062010-10-23 Borut Razem <borut.razem AT siol.net>
22707
22708	* device/lib/pic/libsdcc/fs2ulong.c, device/lib/pic/libsdcc/fslt.c,
22709	  device/lib/pic/libsdcc/fseq.c, device/lib/pic/libsdcc/ulong2fs.c,
22710	  device/lib/pic/libsdcc/fsgt.c, device/lib/pic/libsdcc/fsdiv.c,
22711	  device/lib/pic/libsdcc/fsneq.c, device/lib/pic/libsdcc/fsadd.c,
22712	  device/lib/pic/libsdcc/fssub.c, device/lib/pic/libsdcc/fsmul.c,
22713	  device/lib/ds400/ds400rom.c:
22714	  sdcc library license changed to GPL+LE
22715	* support/scripts/sdcc.nsi:
22716	  no need to copy readline5.dll
22717
227182010-10-19 Maarten Brock <sourceforge.brock AT dse.nl>
22719
22720	* doc/sdccman.lyx: documented --model-huge and other small updates
22721
227222010-10-17 Borut Razem <borut.razem AT siol.net>
22723
22724	* support/cpp/sdcpp-opts.c:
22725	  fixed bug #3088672: -M (& -MM) not suppressing warnings
22726	* doc/sdccman.lyx: small cosmetic changes
22727
227282010-10-16 Maarten Brock <sourceforge.brock AT dse.nl>
22729
22730	* device/include/mcs51/C8051F920.h: patch 3088689, thanks Steven Borley
22731
227322010-10-16 Raphael Neider <rneider AT web.de>
22733
22734	* device/lib/Makefile.in, device/non-free/lib/Makefile.in:
22735	  fix parallel make on cygwin by preventing multiple rules
22736	  from generating the same library files
22737
227382010-10-14 Raphael Neider <rneider AT web.de>
22739
22740	* device/lib/pic/configure.in,
22741	  device/lib/pic16/configure.ac,
22742	  device/non-free/lib/pic/configure.in,
22743	  device/non-free/lib/pic16/configure.ac: abort configure if gputils
22744	  are unavailable while the pic14 or pic16 port is enabled
22745	* device/lib/pic/configure,
22746	  device/lib/pic16/configure,
22747	  device/non-free/lib/pic/configure,
22748	  device/non-free/lib/pic16/configure: regenerated
22749	* device/non-free/lib/Makefile.in: avoid trying to install from
22750	  non-existing BUILDDIR (if both pic ports are disabled)
22751	* doc/sdccman.lyx: fix supported pic14 devices (16hv616 and 16hv785)
22752	* src/SDCCmain.c (setIncludePath): do not use 'target' uninitialized
22753
227542010-10-12 Raphael Neider <rneider AT web.de>
22755
22756	* src/SDCCmain.c (setIncludePath): handle special case of pic14 paths
22757	* src/pic/main.c (__pic14_initPaths): removed, handled in SDCCmain.c
22758
227592010-10-12 Borut Razem <borut.razem AT siol.net>
22760
22761	* device/lib/pic/Makefile.in, device/non-free/lib/pic/Makefile.in:
22762	  fixed target "all" if gputils not found
22763
227642010-10-11 Borut Razem <borut.razem AT siol.net>
22765
22766	* doc/sdccman.lyx: fixes proposed by Sebastien Lorquet
22767
227682010-10-10 Borut Razem <borut.razem AT siol.net>
22769
22770	* support/cpp/sdcpp-diagnostic.c, support/cpp/sdcpp.h:
22771	  define inhibit_warnings
22772	* src/SDCCmain.c: removed readCfgFile() call
22773	* support/scripts/sdcc.nsi:
22774	  added include/ds390/*.h and include/ds400/*.h to the package
22775	* src/regression/Makefile, src/regression/inline.c,
22776	  src/regression/string1.c: added non-free search path,
22777	  fixed deprecated keyword warnings
22778	* device/lib/Makefile.in device/non-free/lib/Makefile.in:
22779	  fixed bug #3084827:
22780	  Building fails at non-free when disabling PIC/PIC16
22781
227822010-10-09 Borut Razem <borut.razem AT siol.net>
22783
22784	* support/cpp/auto-host_vc_in.h, support/cpp/libcpp/include/cpplib.h,
22785	  support/cpp/sdcpp-diagnostic.c:
22786	  fixed bug #3080422: #error not working as expected
22787	* src/SDCCmain.c, src/SDCCglobl.h:
22788	  --non-free and SDCC_NON_FREE changed to --use-non-free and
22789	  SDCC_USE_NON_FREE
22790	* doc/sdccman.lyx: documented --non-free
22791	* .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt:
22792	  changed sdcc version to 3.0.0
22793	* src/SDCCmain.c: removed function readCfgFile()
22794	* support/scripts/repack_release.sh:
22795	  fixed typo
22796
227972010-10-08 Borut Razem <borut.razem AT siol.net>
22798
22799	* sim/ucsim/s51.src/Makefile.in:
22800	  fixed bug 3082829: S51 is not installed in recent SDCC versions
22801
228022010-10-06 Borut Razem <borut.razem AT siol.net>
22803
22804	* sdcc/configure, sdcc/configure.in:
22805	  show non-free search paths
22806	* support/scripts/sdcc_mingw32, support/scripts/sdcc_cygwin_mingw32:
22807	  define non_free_include_dir_suffix and non_free_lib_dir_suffix
22808	* support/scripts/sdcc.nsi:
22809	  remove non-free directory on uninstall
22810	* support/regression/ports/pic14/spec.mk,
22811	  support/regression/ports/pic16/spec.mk:
22812	  add --non-free option for pic* regression tests
22813
228142010-10-05 Borut Razem <borut.razem AT siol.net>
22815
22816	* support/scripts/sdcc.nsi:
22817	  added non-free/lib/pic*/*.lib files to the win32 setup package,
22818	  remove non-free directory on uninstall
22819
228202010-10-04 Borut Razem <borut.razem AT siol.net>
22821
22822	* src/SDCCmain.c: defined symbol SDCC_NON_FREE when --non-free command
22823	  line option is used
22824	* configure.in, configure, Makefile.in, device/lib/pic/configure.in,
22825	  device/lib/pic/configure, device/lib/pic/Makefile.in,
22826	  device/lib/pic/Makefile.common.in, device/lib/pic16/configure.ac,
22827	  device/lib/pic16/configure, device/lib/pic16/Makefile.am,
22828	  device/lib/pic16/Makefile.in,
22829	  device/lib/pic16/Makefile.common,
22830	  device/lib/pic16/libm/Makefile.in,
22831	  device/lib/pic16/debug/Makefile.in,
22832	  device/lib/pic16/libio/Makefile.in,
22833	  device/lib/pic16/startup/Makefile.in,
22834	  device/lib/pic16/libsdcc/Makefile.in,
22835	  device/lib/pic16/libc/Makefile.in,
22836	  support/scripts/sdcc.nsi:
22837	  pic* device files moved to non-free
22838	* device/include/pic/*.h: moved to device/non-free/include/pic
22839	* device/include/pic16/*.h: moved to device/non-free/include/pic16
22840	* device/lib/pic/libdev/*.c, device/lib/pic/libdev/mkall.sh:
22841	  moved to device/non-freelib/pic/libdev
22842	* device/lib/pic16/libdev/*.c, device/lib/pic16/libdev/mkmk.sh,
22843	  device/lib/pic16/libdev/Makefile.am,
22844	  device/lib/pic16/libdev/Makefile.in:
22845	  moved to device/non-free/lib/pic16/libdev
22846	* device/lib/pic16/pics.all: moved to device/non-free/lib/pic16
22847	* device/non-free/include/Makefile.in,
22848	  device/non-free/include/clean.mk,
22849	  device/non-free/lib/pic16/config.h.in,
22850	  device/non-free/lib/pic16/configure,
22851	  device/non-free/lib/pic16/Makefile.in,
22852	  device/non-free/lib/pic16/configure.ac,
22853	  device/non-free/lib/pic16/Makefile.common,
22854	  device/non-free/lib/pic16/bootstrap.sh,
22855	  device/non-free/lib/pic16/depcomp,
22856	  device/non-free/lib/pic16/Makefile.am,
22857	  device/non-free/lib/pic16/missing,
22858	  device/non-free/lib/pic16/aclocal.m4,
22859	  device/non-free/lib/pic16/install-sh,
22860	  device/non-free/lib/Makefile.in,
22861	  device/non-free/lib/clean.mk,
22862	  device/non-free/lib/pic/configure,
22863	  device/non-free/lib/pic/Makefile.in,
22864	  device/non-free/lib/pic/Makefile.subdir,
22865	  device/non-free/lib/pic/configure.in,
22866	  device/non-free/lib/pic/Makefile.rules,
22867	  device/non-free/lib/pic/Makefile.common.in,
22868	  device/non-free/lib/incl.mk: added
22869
228702010-10-03 Borut Razem <borut.razem AT siol.net>
22871
22872	* device/include/mcs51/ser_ir.h, device/lib/ser_ir_cts_rts.c,
22873	  device/lib/ser_ir.c, device/include/pic16/pic18fregs.h:
22874	  sdcc library license changed to GPL+LE
22875	* configure.in, configure, sdccconf_in.h, sdcc_vc_in.h:
22876	  introduced NON_FREE_INCLUDE_DIR_SUFFIX and NON_FREE_LIB_DIR_SUFFIX
22877	* src/SDCCmain.c, src/SDCCglobl.h:
22878	  search / include non-free libraries and header files
22879	* .version, doc/sdccman.lyx: bumped version to 2.9.8
22880
228812010-10-02 Maarten Brock <sourceforge.brock AT dse.nl>
22882
22883	* device/include/stdlib.h,
22884	* device/lib/_atof.c,
22885	* device/lib/_atoi.c,
22886	* device/lib/_atol.c: fixed const in prototypes
22887
228882010-09-28 Philipp Klaus Krause <pkk AT spth.de>
22889
22890	* src/SDCCsymt.c,
22891	  support/regression/tests/bug-3034585.c:
22892	  Fixed #3034585.
22893
228942010-09-27 Maarten Brock <sourceforge.brock AT dse.nl>
22895
22896	* src/SDCCerr.c,
22897	* src/SDCCerr.h: added W_DEPRECATED_OPTION
22898	* src/ds390/main.c,
22899	* src/mcs51/main.c,
22900	* src/SDCCmain.c (linkEdit): deprecated --no-pack-iram
22901
229022010-09-26 Philipp Klaus Krause <pkk AT spth.de>
22903
22904	* src/hc08/peeph.def:
22905	  Fixed #1715020.
22906	* src/SDCCerr.h,
22907	  src/z80/gen.c,
22908	  src/SDCCast.c:
22909	  Minor spelling corrections in comments.
22910
229112010-09-26 Maarten Brock <sourceforge.brock AT dse.nl>
22912
22913	* src/SDCCicode.c (geniCodeStruct): fixed bug 3029630
22914	* support/regression/tests/bug3029630.c: new, added
22915
229162010-09-24 Borut Razem <borut.razem AT siol.net>
22917
22918	* device/include/mcs51/XC866.h: fixed copy & paste error in the comment
22919
229202010-09-22 Borut Razem <borut.razem AT siol.net>
22921
22922	* device/include/mcs51/XC866.h, device/include/mcs51/reg764.h,
22923	  device/include/mcs51/at89s8253.h:
22924	  sdcc library license changed to GPL+LE
22925
229262010-09-20 Philipp Klaus Krause <pkk AT spth.de>
22927
22928	* src/doc/sdccman.lyx:
22929	  Fixed #3071726.
22930
229312010-09-19 Borut Razem <borut.razem AT siol.net>
22932
22933	* support/regression/ports/pic14/spec.mk,
22934	  support/regression/ports/pic16/spec.mk,
22935	  support/regression/ports/ds390/spec.mk,
22936	  support/regression/ports/hc08/spec.mk,
22937	  support/regression/ports/ucz80/spec.mk,
22938	  support/regression/ports/mcs51-common/spec.mk:
22939	  fixed mingw32 cross compiled regression tests:
22940	  include top source directory when cross compiling,
22941	  launch win32 native simulator with wine,
22942	  removed wrong quotes, call build machine native timeout utility
22943	* src/SDCCmain.c, src/ds390/main.c:
22944	  ds390 default library path was wrong
22945	* src/SDCC.lex: implemented punctuators, as defined in
22946	  ISO/IEC 9899:1999, chapter 6.4.6#3
22947	  support/regression/tests/preproc.c: punctuators regression test
22948
229492010-09-19 Maarten Brock <sourceforge.brock AT dse.nl>
22950
22951	* src/SDCCicode.c (geniCodeJumpTable): fixed bug 3069862
22952	* support/regression/tests/bug2947189.c: new, added
22953
229542010-09-18 Borut Razem <borut.razem AT siol.net>
22955
22956	* debugger/mcs51/cmd.c:
22957	  fixed warning: suggest explicit braces to avoid ambiguous 'else'
22958
229592010-09-18 Philipp Klaus Krause <pkk AT spth.de>
22960
22961	* src/doc/sdccman.lyx:
22962	  Minor update in ANSI conformance section.
22963
229642010-09-17 Maarten Brock <sourceforge.brock AT dse.nl>
22965
22966	* src/SDCCast.c (ast_print): fixed for MSVC
22967	* src/SDCCicode.c (geniCodeJumpTable): fixed bug 2947189
22968	* support/librarian/sdcclib.c: test return values of system and fgets
22969
229702010-09-13 Borut Razem <borut.razem AT siol.net>
22971
22972	* device/lib/_divulong.c, device/lib/_decdptr.c, device/lib/_divuint.c,
22973	  device/lib/pic16/libsdcc/long/divulong.c,
22974	  device/lib/pic16/libsdcc/int/divuint.c,
22975	  device/lib/pic16/libsdcc/char/divuchar.c,
22976	  device/lib/hc08/_divuint.c, device/lib/hc08/_divulong.c,
22977	  device/lib/hc08/_mullong.c:
22978	  sdcc library license changed to GPL+LE
22979
229802010-09-13 Raphael Neider <rneider AT web.de>
22981
22982	* configure.in, custom_in.h:
22983	  revive support for big-endian machines, broken since r5954
22984	* sim/ucsim/configure.in, sim/ucsim/custom.h, sim/ucsim/custom_in.h:
22985	  have configure create custom.h next to ddconfig.h in the build tree
22986	  so that CPP will find it
22987	* configure, sdccconf_in.h, sim/ucsim/configure,
22988	  sim/ucsim/ddconfig_in.h: regenerated
22989
229902010-09-13 Borut Razem <borut.razem AT siol.net>
22991
22992	* device/lib/pic16/libc/utils/cvtdec.S,
22993	  device/lib/pic16/libc/stdlib/g_ftoa.S:
22994	  sdcc library license changed to GPL+LE
22995
229962010-09-12 Borut Razem <borut.razem AT siol.net>
22997
22998	* debugger/mcs51/cmd.c, src/SDCCpeeph.c, src/SDCChasht.c,
22999	  src/SDCCval.c, src/SDCCicode.c, src/SDCCset.c, src/SDCCglue.c,
23000	  src/z80/gen.c, src/pic16/pcodepeep.c, src/pic16/pcoderegs.c,
23001	  src/pic16/pcode.c, src/SDCCast.c, sdas/asranlib/asranlib.c,
23002	  support/makebin/makebin.c, support/Util/findme.c:
23003	  fixed defects, reported by Wipro DeepCheck static analysis tool
23004	  src/SDCCerr.h, src/SDCCglobl.h, src/common.h:
23005	  introduced sdcc style assert
23006	* ../asxxxx: removed copy of asxxxx v2.0 sources from sdcc source tree:
23007	  asxxxx v3.0 sources are availeble at
23008	  http://shop-pdp.kent.edu/ashtml/asxarc.htm
23009
230102010-09-11 Borut Razem <borut.razem AT siol.net>
23011
23012	* debugger/mcs51/cmd.c, src/SDCCbitv.c, sdas/asranlib/asranlib.c:
23013	  fixed defects, reported by Wipro Static Analysis Report On SDCC
23014	* src/SDCCsymt.c: fixed redundant variable in SDCCsymt.c: getSpec(),
23015	  thanks to Jan Waclawek
23016
230172010-09-11 Maarten Brock <sourceforge.brock AT dse.nl>
23018
23019	* src/mcs51/gen.c (genFunction, genEndFunction): use bitVectIsZero,
23020	 (genLiteralAssign): factored out of genAssign,
23021	 (litPut): new helper function for genDataPointerSet,
23022	 (genDataPointerSet, genAssign): use genLiteralAssign instead of patch
23023	  1490145 for consistency
23024
230252010-09-07 Philipp Klaus Krause <pkk AT spth.de>
23026
23027	* src/z80/gen.c,
23028	  src/z80/peeph-z80.def:
23029	  Minor comments.
23030	* sim/ucsim/z80.src/inst.cc:
23031	  Fixed #3061455.
23032
230332010-09-06 Raphael Neider <rneider AT web.de>
23034
23035	* configure.in, debugger/mcs51/configure.in,
23036	  device/lib/pic/configure.in, device/lib/pic16/configure.ac,
23037	  sim/ucsim/configure.in, sim/ucsim/custom.h,
23038	  sim/ucsim/ddconfig_in.h, support/packihx/configure.in:
23039	  updated build system to allow autoreconf -fi to set up the project,
23040	  regenerated files
23041
230422010-09-04 Maarten Brock <sourceforge.brock AT dse.nl>
23043
23044	* device/include/mcs51/AT89C513xA.h: new, added, thanks Anirban Brahmachari
23045
230462010-08-26 Philipp Klaus Krause <pkk AT spth.de>
23047
23048	* src/z80/peeph-z80.def:
23049	  Fixed #3052514.
23050
230512010-08-26 Maarten Brock <sourceforge.brock AT dse.nl>
23052
23053	* src/ds390/gen.c (genCast): fixed bug with ruonly src and dest downcast,
23054	  (AOP_IS_STR): replaced thoughout with IS_OP_RUONLY,
23055	  synced with mcs51,
23056	  (genDjnz): fixed bug 2995824
23057	* src/mcs51/gen.c (continueIfTrue, jumpIfTrue, jmpTrueOrFalse, genAnd,
23058	  genOr, genXor, genDjnz): fixed bugs 2989562 and 2995824
23059	* src/ds390/ralloc.c,
23060	* src/SDCC.lex: cosmetic changes
23061	* support/regression/tests/bug2686159.c: disabled segfaulting test on host
23062	* support/regression/tests/bug2989562.c: new, added
23063
230642010-08-24 Maarten Brock <sourceforge.brock AT dse.nl>
23065
23066	* src/SDCCcse.c (cseBBlock): fixed bug 2686159 with part of patch by Robert
23067	  Larice, thanks
23068	* src/SDCCBBlock.c,
23069	* src/SDCCglobl.h: cosmetic changes
23070	* support/regression/tests/bug2686159.c: new, added
23071
230722010-08-23 Maarten Brock <sourceforge.brock AT dse.nl>
23073
23074	* src/mcs51/gen.c (genAnd, genOr, genXor): fixed bug 2944399
23075	* src/mcs51/ralloc.c (packRegsForAccUse): disabled strange exception
23076	* support/regression/tests/bug2944399.c: new, added
23077
230782010-08-22 Borut Razem <borut.razem AT siol.net>
23079
23080	* device/include/mcs51/msc1210.h:
23081	  sdcc library license changed to GPL+LE
23082
230832010-08-20 Raphael Neider <rneider AT web.de>
23084
23085	* device/include/pic16/adc.h,
23086	* device/include/pic16/pic18fam.h,
23087	* device/include/pic16/usart.h,
23088	* device/lib/pic16/libio/adc/*.c,
23089	* device/lib/pic16/libio/usart/*.c
23090	* doc/sdccman.lyx,
23091	* support/scripts/inc2h-pic16.pl,
23092	* support/scripts/pic18fam-h-gen.pl: automatized device I/O style
23093	  classification, provide USART initialization for more devices,
23094	  addresses item 2 from #1631532.
23095
230962010-08-18 Borut Razem <borut.razem AT siol.net>
23097
23098	* sdas/asxxsrc/asdbg.c:
23099	  cosmetic change
23100	* device/include/malloc.h, device/include/mcs51/serial.h,
23101	  device/lib/serial.c: sdcc library license changed to GPL+LE
23102
231032010-08-17 Maarten Brock <sourceforge.brock AT dse.nl>
23104
23105	* sdas/as6808/as_hc08.dsp,
23106	* sdas/as8051/asx8051.dsp,
23107	* sdas/asgb/asgb.dsp,
23108	* sdas/asz80/as_z80.dsp: asnoice.c renamed to asdbg.c (sync with asxxxx)
23109
231102010-08-17 Borut Razem <borut.razem AT siol.net>
23111
23112	* sdas/as8051/Makefile.in, sdas/asz80/Makefile.in,
23113	  sdas/as6808/Makefile.in, sdas/asgb/Makefile.in:
23114	  asnoice.c renamed to asdbg.c (sync with asxxxx)
23115	* sdas/asxxsrc/asxxxx.h:
23116	  reverted fix for bug 3041470,
23117	  DefineCDB_Line() renamed to DefineSDCC_Line() (sync with asxxxx)
23118	* sdas/asxxsrc/asmain.c:
23119	  DefineCDB_Line() renamed to DefineSDCC_Line() (sync with asxxxx)
23120	* sdas/asxxsrc/asdbg.c: renamed from asxxsrc/asnoice.c,
23121	  use dbuf to dynamically allocate debug symbol
23122	* sdas/linksrc/aslink.h:
23123	  changed NCPS to PATH_MAX - quick & dirty fix for asld part of
23124	  bug 3041470; proper solution would be support of arbitrary identifier
23125	  lenght using dynamic buffers
23126
231272010-08-16 Raphael Neider <rneider AT web.de>
23128
23129	* src/pic16/glue.c (pic16emitStaticSeg): allow extern declarations with
23130	  incomplete types, fixes #3041150
23131
231322010-08-15 Maarten Brock <sourceforge.brock AT dse.nl>
23133
23134	* sdas/asxxsrc/asxxxx.h: changed NCPS to PATH_MAX to fix bug 3041470
23135
231362010-08-15 Borut Razem <borut.razem AT siol.net>
23137
23138	* support/regression/tests/bug3037889.c:
23139	  testBug3037889() renamed to Bug3037889()
23140	  so that the function is compiled but not executed
23141	* src/pic/ralloc.c:
23142	  fixed bug #3038483: running make of revision 5905 produces warnings
23143
231442010-08-13 Borut Razem <borut.razem AT siol.net>
23145
23146	* device/lib/pic16/libc/stdio/fprintf.c,
23147	  device/lib/pic16/libc/stdio/printf.c,
23148	  device/lib/pic16/libc/stdio/printf_small.c,
23149	  device/lib/pic16/libc/stdio/printf_tiny.c,
23150	  device/lib/pic16/libc/stdio/putchar.c,
23151	  device/lib/pic16/libc/stdio/sprintf.c,
23152	  device/lib/pic16/libc/stdio/streams.c,
23153	  device/lib/pic16/libc/stdio/strmgpsim.c,
23154	  device/lib/pic16/libc/stdio/strmmssp.c,
23155	  device/lib/pic16/libc/stdio/strmputchar.c,
23156	  device/lib/pic16/libc/stdio/strmusart.c,
23157	  device/lib/pic16/libc/stdio/vfprintf.c,
23158	  device/lib/pic16/libc/stdio/vprintf.c,
23159	  device/lib/pic16/libc/stdio/vsprintf.c:
23160	  sdcc library license changed to GPL+LE
23161
231622010-08-12 Maarten Brock <sourceforge.brock AT dse.nl>
23163
23164	* src/SDCCloop.c (basicInduction): fixed bug 3034976 with patch 3043854,
23165	  thanks Ruud van Silfhout
23166	* support/regression/tests/bug3037889.c: added test for bug 3034976
23167
231682010-08-10 Maarten Brock <sourceforge.brock AT dse.nl>
23169
23170	* src/ds390/gen.c: fixed by applying patch from bug 3037889, thanks Patrik
23171	  Persson
23172	* src/SDCCerr.h,
23173	* src/SDCCerr.c (vwerror, werror, werrorfl): return if warning was printed
23174	* src/SDCCast.c (checkPtrCast): only print from and to types when warning
23175	  or error was printed
23176	* support/regression/tests/bug3037889.c: new, added
23177
231782010-08-09 Maarten Brock <sourceforge.brock AT dse.nl>
23179
23180	* support/regression/tests/bug1757671.c: fixed for 64 bit arch
23181	* src/SDCCval.c (valMinus): applied new patch from bug 3037889,
23182	  thanks Patrik Persson
23183
231842010-08-08 Maarten Brock <sourceforge.brock AT dse.nl>
23185
23186	* src/SDCCval.c (valMinus): applied patch from bug 3037889 though not fixed,
23187	  thanks Patrik Persson
23188	* src/z80/gen.c (genCmp): fixed bug 3041519
23189
231902010-08-08 Maarten Brock <sourceforge.brock AT dse.nl>
23191
23192	* sim/ucsim/z80.src/inst.cc (inst_add): moved add_HL_Word to z80mac.h,
23193	  (inst_daa, inst_scf, inst_ccf, inst_sub): fixed flags
23194	  (inst_jp): fixed JP PO/PE
23195	* sim/ucsim/z80.src/inst_ed.cc (inst_ed): fixed flags
23196	* sim/ucsim/z80.src/inst_xd.cc (inst_Xd_add): moved add_IX_Word to z80mac.h
23197	* sim/ucsim/z80.src/instcl.h: cosmetics
23198	* sim/ucsim/z80.src/z80.cc (print_regs): print N flag
23199	* sim/ucsim/z80.src/z80mac.h: fixed flags
23200	* src/z80/gen.c (genIfxJump): simplified
23201	  (genCmp): fixed bug 1757671
23202	* device/include/stdbool.h: __SDCC_WEIRD_BOOL==2 for hc08/pic14/pic16
23203	* support/regression/tests/bool.c: run test only once,
23204	  run half the cases for __bit
23205	* support/regression/tests/bug1757671.c: new, added
23206
232072010-08-07 Philipp Klaus Krause <pkk AT spth.de>
23208
23209	* src/SDCCicode.c,
23210	  support/regression/tests/bool.c:
23211	  Fixed #3040914.
23212
232132010-08-05 Maarten Brock <sourceforge.brock AT dse.nl>
23214
23215	* src/SDCCerr.c,
23216	* src/SDCCerr.h: added E_INCOMPLETE_FIELD
23217	* src/SDCCsymt.c (checkStructFlexArray, compStructSize): fixed bug 1518279
23218
232192010-08-05 Borut Razem <borut.razem AT siol.net>
23220
23221	* device/include/mcs51at89S8252.h, device/include/mcs51/at89c55.h,
23222	  device/include/mcs51/at89x51.h, sdcc/device/include/mcs51/at89x52.h,
23223	  device/include/mcs51/ser.h, device/lib/_ser.c:
23224	  sdcc library license changed to GPL+LE
23225
232262010-08-04 Borut Razem <borut.razem AT siol.net>
23227
23228	* sim/ucsim/cmd.src/cmdlex.cc: regenerated,
23229	  fix for patch #3038644: Fix for GCC-4.4 compile error
23230	* device/include/z80/z180.h, device/include/hc08/mc68hc908apxx.h,
23231	  sdcc/device/include/hc08/mc68hc908jkjl.h:
23232	  sdcc library license changed to GPL+LE
23233
232342010-08-04 Maarten Brock <sourceforge.brock AT dse.nl>
23235
23236	* src/ds390/gen.c (genCmpGt, genCmpLt),
23237	* src/mcs51/gen.c (genCmpGt, genCmpLt): fixed bug 1994062 part 1
23238	  (genCmp): use optimization from bug 1994062
23239	* src/SDCCast.c (decorateType '['):  fixed bug 1994062 part 2
23240	* src/SDCCset.c: cosmetic changes
23241	* support/regression/tests/bug1994062.c: new, added
23242
232432010-08-03 Raphael Neider <rneider AT web.de>
23244
23245	* device/include/pic16/stdio.h,
23246	* device/lib/pic16/libc/stdio/putchar.c: resurrect PUTCHAR macro,
23247	  fixes #3038656
23248
232492010-08-03 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
23250
23251	* src/mcs51/peeph.def: fixed bug #3038728 (consecutive &=
23252	  on volatile variable)
23253
232542010-08-03 Raphael Neider <rneider AT web.de>
23255
23256	* src/pic/gen.c (genDataPointerSet): properly determine operand size,
23257	  fixes #3038372
23258
232592010-08-02 Maarten Brock <sourceforge.brock AT dse.nl>
23260
23261	* src/ds390/gen.c (genCast),
23262	* src/mcs51/gen.c (genCast): always copy the pointer
23263	* src/hc08/gen.c: cosmetic changes
23264	* src/SDCCast.h: added checkPtrCast
23265	* src/SDCCicode.c (geniCodeCast),
23266	* src/SDCCast.c (checkPtrCast): factored out of geniCodeCast,
23267	  (decorateType CAST): check pointer casts
23268	* src/SDCCerr.c,
23269	* src/SDCCerr.h: changed error E_CANNOT_USE_GENERIC_POINTER to warning
23270	  W_USING_GENERIC_POINTER
23271	* src/SDCCglue.c (aopLiteralLong): moved check to decorateType,
23272	  (pointerTypeToGPByte): exit on internal error, return -1 for GPTR warning
23273	  (_printPointerType): handle 4 byte pointers,
23274	  (printGPointerType): copy whole generic pointer when warned
23275	* support/regression/tests/bug3027957.c (correct): added for bug 3034400
23276
232772010-08-02 Philipp Klaus Krause <pkk AT spth.de>
23278
23279	* sim/ucsim/z80.src/inst.cc:
23280	  Fixed #2801879.
23281	* support/regression/tests/bug2862650.c:
23282	  Improved redundancy.
23283
232842010-08-02 Maarten Brock <sourceforge.brock AT dse.nl>
23285
23286	* src/SDCCicode.c (ast2iCode): fixed bug 1962613
23287	* support/regression/tests/bug1962613.c: new, added
23288	* src/SDCCsymt.c (compareTypeExact): fixed the fix for bug 1929140
23289	* support/regression/tests/bug1115321.c: fixed next problem on solaris
23290
232912010-08-01 Philipp Klaus Krause <pkk AT spth.de>
23292
23293	* support/regression/tests/bug2862650.c:
23294	  Redundant regression test for #2862650.
23295
232962010-08-01 Borut Razem <borut.razem AT siol.net>
23297
23298	* device/include/ds80c390.h, device/include/tinibios.h,
23299	  device/include/time.h, device/include/ds390/serial390.h,
23300	  device/lib/time.c, device/lib/gets.c, device/lib/ds390/lcd390.c,
23301	  device/lib/ds390/tinibios.c, device/lib/ds390/rtc390.c,
23302	  device/lib/ds390/i2c390.c, device/lib/ds400/tinibios.c:
23303	  sdcc library license changed to GPL+LE
23304
233052010-07-30 Borut Razem <borut.razem AT siol.net>
23306
23307	* device/lib/printf_large.c, device/lib/sprintf.c,
23308	  device/lib/vprintf.c:
23309	  sdcc library license changed to GPL+LE
23310
233112010-07-30 Maarten Brock <sourceforge.brock AT dse.nl>
23312
23313	* src/SDCC.y: fixed bug 1579664
23314	* support/regression/tests/bug1579664.c: new, added
23315	* src/SDCCsymt.c (compareTypeExact): fixed bug 1929140
23316	* support/regression/tests/bug1929140.c: new, added
23317
233182010-07-29 Maarten Brock <sourceforge.brock AT dse.nl>
23319
23320	* src/SDCCerr.c,
23321	* src/SDCCerr.h
23322	* src/SDCCglue.c (printIvalCharPtr),
23323	* src/SDCCicode.c (geniCodeCast): changed E_LITERAL_GENERIC and
23324	  E_NONPTR2_GENPTR to warnings
23325	* support/regression/tests/bug1115321.c: fixed problem on solaris
23326	* support/regression/tests/literalop.c: only test char overflow on SDCC
23327
233282010-07-29 Borut Razem <borut.razem AT siol.net>
23329
23330	* support/regression/tests/literalop.c:
23331	  fixed regresssion test failure on host target (gcc -O2):
23332	  the test result was udefined according to C standard 6.5 #5 and
23333	  implementation dependent, so it was removed.
23334	  Thanks to Jan Waclawek for the explanation that it is not a gcc bug.
23335
233362010-07-28 Maarten Brock <sourceforge.brock AT dse.nl>
23337
23338	* device/lib/printf_large.c: small optimization
23339	* src/hc08/gen.c (transferRegReg, genPointerGet): fixed bug 1115321
23340	* src/hc08/ralloc.c: cosmetic changes
23341	* src/pic16/glue.c (pic16emitStaticSeg),
23342	* src/SDCCglue.c (emitStaticSeg): fixed bug 1474589
23343	* src/z80/gen.c: fixed some warnings
23344	* support/regression/tests/bug1115321.c: new, added
23345
233462010-07-26 Borut Razem <borut.razem AT siol.net>
23347
23348	* src/SDCCutil.c:
23349	  applied patch #3034715: Report correct host for x86_64 Macs,
23350	  thanks to Patrik Persson
23351
233522010-07-26 Philipp Klaus Krause <pkk AT spth.de>
23353
23354	* src/z80/gen.c,
23355	  src/z80/main.c,
23356	  support/regression/tests/float_single.c:
23357	  Fixed #2862650.
23358
233592010-07-25 Philipp Klaus Krause <pkk AT spth.de>
23360
23361	* src/z80/gen.c:
23362	  Fixed #3027961.
23363
233642010-07-25 Borut Razem <borut.razem AT siol.net>
23365
23366	* src/SDCCerr.c, src/SDCCerr.h, src/SDCC.y, src/SDCC.lex,
23367	  src/SDCCast.c, src/SDCCast.h, device/include/stddef.h,
23368	  device/include/pic16/stddef.h, support/regression/tests/zeropad.c,
23369	  support/regression/tests/offsetof.c:
23370	  applied patch #2801126: __builtin_offsetof implementation,
23371	  thanks to Robert Larice
23372	* support/regression/ports/pic16/spec.mk,
23373	  support/regression/ports/pic16/support.c:
23374	  _asm and _endasm changed to __asm and __endasm, reentrant changed to __reentrant
23375	* device/include/pic16/stdlib.h: added declarations of abs() and labs()
23376
233772010-07-24 Borut Razem <borut.razem AT siol.net>
23378
23379	* device/lib/pic16/libm/*, device/lib/pic16/libio/adc/*,
23380	  device/lib/pic16/libio/i2c/*, device/lib/pic16/libio/usart/*,
23381	  device/lib/pic16/libsdcc/long/*,
23382	  device/lib/pic16/libsdcc/fixed16x16/*,
23383	  device/lib/pic16/libsdcc/stack/*, device/lib/pic16/libsdcc/lregs/*,
23384	  device/lib/pic16/libsdcc/char/*:
23385	  sdcc library license changed to GPL+LE
23386
233872010-07-23 Maarten Brock <sourceforge.brock AT dse.nl>
23388
23389	* src/mcs51/ralloc.c,
23390	* src/SDCCicode.c: cosmetic changes
23391	* src/mcs51/gen.c (genPointerGet, genPointerSet),
23392	* src/SDCCglue.c (aopLiteralLong),
23393	* src/SDCCsymt.c (computeType),
23394	* src/SDCCval.c (valPlus),
23395	* src/z80/ralloc.c (serialRegAssign, packRegisters): fixed bug 3027957
23396	* support/regression/tests/bug3027957.c: new, added
23397	* support/regression/fwk/include/testfwk.h: removed flaky NULL definition
23398	* support/regression/tests/absolute.c,
23399	* support/regression/tests/bug-2982135.c,
23400	* support/regression/tests/bug-524691.c,
23401	* support/regression/tests/bug1496419.c,
23402	* support/regression/tests/bug2817646.c,
23403	* support/regression/tests/driverstruct.c: include <stddef.h> for NULL
23404
234052010-07-18 Maarten Brock <sourceforge.brock AT dse.nl>
23406
23407	* src/SDCCast.c (decorateType CAST): fixed bug 2941749
23408	* src/SDCCBBlock.c,
23409	* src/SDCCcse.c: cosmetic changes
23410	* src/SDCCglue.c (printIvalPtr): added names
23411	* support/regression/ports/ds390/spec.mk,
23412	* support/regression/ports/hc08/spec.mk,
23413	* support/regression/ports/mcs51-common/spec.mk,
23414	* support/regression/ports/ucz80/spec.mk: added .PRECIOUS for using -j
23415	* support/regression/tests/absolute.c: added test for bug 2941749
23416
234172010-07-17 Maarten Brock <sourceforge.brock AT dse.nl>
23418
23419	* src/SDCCcse.c,
23420	* src/SDCCopt.c,
23421	* src/SDCCicode.c: cosmetic changes
23422	* src/SDCCloop.c (loopInduction): fixed bug 2889032
23423	* support/regression/tests/bug2889032.c: new, added
23424
234252010-07-15 Borut Razem <borut.razem AT siol.net>
23426
23427	* sdas/as8051/Makefile.in, sdas/asz80/Makefile.in,
23428	  sdas/linksrc/Makefile.in, sdas/as6808/Makefile.in,
23429	  sdcc/sdas/asgb/Makefile.in:
23430	  fixed bug #3030113: assembler Makefile.in missing trailing '@' on
23431	  MAKEPDEP= stmt
23432
234332010-07-11 Maarten Brock <sourceforge.brock AT dse.nl>
23434
23435	* src/SDCCsymt.h: added IS_SMALL_PTR
23436	* src/mcs51/ralloc.c (packRegsForOneuse): check for small pointers, check
23437	    all subsequent params to fix bug 3004918
23438	* support/regression/tests/bug3004918.c: new, added
23439	* src/SDCCloop.c: cosmetic changes
23440	* src/mcs51/main.c (_mcs51_keywords): removed duplicate keywords,
23441	  (get_model): fixed bug 3018737
23442
234432010-07-10 Maarten Brock <sourceforge.brock AT dse.nl>
23444
23445	* src/SDCCast.c (processParms): fixed bug 3002698
23446	* src/SDCCast.h: cosmetic changes
23447
234482010-07-05 Borut Razem <borut.razem AT siol.net>
23449
23450	* support/regression/ports/pic14/spec.mk,
23451	  support/regression/ports/pic16/spec.mk,
23452	  support/regression/ports/ds390/spec.mk,
23453	  support/regression/ports/hc08/spec.mk,
23454	  support/regression/ports/ucz80/spec.mk,
23455	  support/regression/ports/mcs51-common/spec.mk:
23456	  mingw build cross reggression testing with wine
23457
234582010-07-03 Philipp Klaus Krause <pkk AT spth.de>
23459
23460	* support/scripts/sdcc.nsi: removed unix2dos conversion
23461
234622010-06-28 Philipp Klaus Krause <pkk AT spth.de>
23463
23464	* device/lib/z80/modmixed.s:
23465	  Fixed missing line.
23466
234672010-06-25 Borut Razem <borut.razem AT siol.net>
23468
23469	* device/lib/pic16/libsdcc/float/*, device/lib/pic16/startup/*:
23470	  sdcc library license changed to GPL+LE
23471
234722010-06-25 Philipp Klaus Krause <pkk AT spth.de>
23473
23474	* device/lib/z80/mod.s,
23475	  device/lib/z80/Makefile.in,
23476	  device/lib/z80/modmixed.s,
23477	  device/lib/z80/modsigned.s,
23478	  device/lib/z80/divmixed.s,
23479	  device/lib/z80/divsigned.s,
23480	  device/lib/z80/modunsigned.s:
23481	  Z80 division library reorganization.
23482
234832010-06-23 Philipp Klaus Krause <pkk AT spth.de>
23484
23485	* device/lib/z80/divsigned.s:
23486	  Minor cleanup
23487	* src/SDCCpeeph.c,
23488	  src/z80/peep.h,
23489	  src/z80/main.c,
23490	  src/z80/peep.c,
23491	  src/z80/peeph-z80.def,
23492	  Implemented correct instruction size calculation, replacing estimate.
23493
234942010-06-20 Borut Razem <borut.razem AT siol.net>
23495
23496	* src/SDCCmain.c, src/pic/main.c, src/pic16/main.c:
23497	  fixed bug #3015137: -c -o not working as expected (caused by fix for
23498	  #2951083)
23499	* device/lib/pic16/libc/string/*, device/lib/pic16/libc/utils/cnvint.S,
23500	  device/lib/pic16/libc/utils/cnvfrac.S:
23501	  sdcc library license changed to GPL+LE
23502
235032010-06-19 Borut Razem <borut.razem AT siol.net>
23504
23505	* device/include/pic/pic14devices.txt,
23506	  device/include/pic16/pic16devices.txt:
23507	  license changed to GPL - files are not part of sdcc library
23508	* device/lib/z80/divunsigned.s, device/lib/pic16/debug/gstack/gstack.c,
23509	  device/lib/pic16/libsdcc/int/*, device/lib/pic16/libc/stdlib/*:
23510	  sdcc library license changed to GPL+LE
23511
235122010-06-15 Philipp Klaus Krause <pkk AT spth.de>
23513
23514	* device/lib/z80/abs.s,
23515	  device/lib/z80/Makefile.in:
23516	  Z80-specific abs().
23517
235182010-06-14 Philipp Klaus Krause <pkk AT spth.de>
23519
23520	* src/SDCCpeeph.c,
23521	  src/SDCCpeeph.h,
23522	  src/port.h,
23523	  src/mcs51/peeph.def,
23524	  src/ds390/peeph.def,
23525	  src/avr/peeph.def,
23526	  src/z80/peep.h,
23527	  src/z80/peep.c,
23528	  src/z80/peeph-z80.def,
23529	  src/z80/peeph-gbz80.def:
23530	  Peephole cleanup.
23531
235322010-06-13 Maarten Brock <sourceforge.brock AT dse.nl>
23533
23534	* sdas/linksrc/lksym.c,
23535	* src/ds390/main.c,
23536	* src/SDCCast.c: cosmetic changes
23537	* src/SDCC.y: removed type_specifier2, moved AT into type_specifier,
23538	    fixed bug 29979999
23539	* src/SDCCsymt.c (addDecl): fixed char* __code __at(N) bug
23540	* support/regression/tests/absolute.c: added test for bug 29979999
23541
235422010-06-12 Borut Razem <borut.razem AT siol.net>
23543
23544	* device/include/asm/pic/features.h, device/include/pic/*.h,
23545	  device/include/pic/p16f_common.inc:
23546	  sdcc library license changed to GPL+LE
23547
235482010-06-10 Philipp Klaus Krause <pkk AT spth.de>
23549
23550	* src/SDCCpeeph.c,
23551	  src/z80/peep.c:
23552	  Improved canAssign().
23553
235542010-06-07 Philipp Klaus Krause <pkk AT spth.de>
23555
23556	* src/port.h,
23557	  src/SDCCpeeph.c,
23558	  src/mcs51/main.c,
23559	  src/pic/main.c,
23560	  src/z80/peep.h,
23561	  src/z80/main.c,
23562	  src/z80/peep.c,
23563	  src/z80/peeph-z80.def,
23564	  src/pic16/main.c,
23565	  src/hc08/main.c,
23566	  src/ds390/main.c:
23567	  Added canAssign() for use in peepholes.
23568
235692010-06-07 Philipp Klaus Krause <pkk AT spth.de>
23570
23571	* src/z80/gen.c,
23572	  src/z80/mappings.i,
23573	  src/z80/peeph-gbz80.def:
23574	  Move generation of short jumps into peepholes.
23575
235762010-06-05 Borut Razem <borut.razem AT siol.net>
23577
23578	* device/include/asm/pic16/features.h, device/include/pic16/*.h,
23579	  device/include/pic16/pic16devices.txt,
23580	  device/include/pic16/p18fxxx.inc, device/lib/pic16/libsdcc/*.c:
23581	  sdcc library license changed to GPL+LE
23582
235832010-06-05 Maarten Brock <sourceforge.brock AT dse.nl>
23584
23585	* sdas/asranlib/asranlib.c (do_ranlib): fixed text output
23586	* src/SDCCerr.c,
23587	* src/SDCCerr.h,
23588	* src/SDCC.y: changed E_STORAGE_CLASS_SPECIFIED_FOR_PARAMETER to
23589	    E_STORAGE_CLASS_FOR_PARAMETER
23590	* src/SDCCcse.c,
23591	* src/SDCCdflow.c,
23592	* src/SDCCval.c: cosmetic changes
23593	* src/SDCCopt.c,
23594	* src/SDCCsymt.c,
23595	* src/SDCCsymt.h: removed double underscores from function names,
23596	    fixed bug 3005305
23597
235982010-06-03 Philipp Klaus Krause <pkk AT spth.de>
23599
23600	* device/lib/_memcpy,
23601	  device/lib/_memmove.c:
23602	  Library cleanup.
23603
236042010-06-02 Borut Razem <borut.razem AT siol.net>
23605
23606	* doc/sdccman.lyx: corrected z80 assembler name, corrected revision
23607	  date format
23608
236092010-06-01 Philipp Klaus Krause <pkk AT spth.de>
23610
23611	* src/z80/gen.c:
23612	  Optimization of multibyte comparison.
23613	* src/SDCCpeeph.c,
23614	  src/SDCCpeeph.h,
23615	  src/z80/peeph-z80.def:
23616	  Peephole barriers, fixes #1677178.
23617
236182010-05-31 Borut Razem <borut.razem AT siol.net>
23619
23620	* debugger/mcs51/simi.c, debugger/mcs51/cmd.c, debugger/mcs51/sdcdb.c,
23621	  debugger/mcs51/sdcdb.h: enhanced help text formating, added usage
23622	  (-h, -?, --help) and verbose (-v) command line options, SDCDB_VERSION
23623	  bumped to 0.9
23624	* doc/sdccman.lyx: asxxxx and aslink renamed to sdas and sdld
23625
236262010-05-30 Philipp Klaus Krause <pkk AT spth.de>
23627
23628	* src/z80/peeph-z80.def:
23629	  Minor peephole improvement.
23630
236312010-05-25 Philipp Klaus Krause <pkk AT spth.de>
23632
23633	* src/SDCCcse.c:
23634	  Simplified division optimization.
23635	* src/z80/gen.c:
23636	  Fixed comment alignment.
23637	* src/z80/peep.c,
23638	  src/z80/peeph-z80.def:
23639	  Peephole improvements, mostly negation.
23640
236412010-05-24 Borut Razem <borut.razem AT siol.net>
23642
23643	* src/SDCC.y, src/SDCCsymt.h: test if the parameter is a valid storage
23644	  class specifier
23645	* src/hc08/gen.c, support/regression/tests/bug1875933.c:
23646	  fixed bug #3006063: xor broken
23647
236482010-05-23 Philipp Klaus Krause <pkk AT spth.de>
23649
23650	* support/regression/tests/bug1875933.c:
23651	  Disabled recently introduced regression test on hc08, since it never worked there.
23652
236532010-05-23 Philipp Klaus Krause <pkk AT spth.de>
23654
23655	* src/z80/peep.c,
23656	  src/z80/peeph-z80.def:
23657	  Minor peephole improvements.
23658
236592010-05-23 Borut Razem <borut.razem AT siol.net>
23660
23661	* src/SDCCerr.c, src/SDCCerr.h, src/SDCCsymt.h, src/SDCC.y:
23662	  fixed bug #2811521: sdcc doesn't accept register storage class
23663	  specifier in func
23664
236652010-05-21 Philipp Klaus Krause <pkk AT spth.de>
23666
23667	* src/mcs51/gen.c,
23668	  src/z80/gen.c,
23669	  src/hc08/gen.c,
23670	  src/ds390/gen.c,
23671	  support/regression/tests/bug1875933.c:
23672	  Completed fix for #1875933 applying #2892763.
23673
236742010-05-21 Philipp Klaus Krause <pkk AT spth.de>
23675
23676	* src/SDCCopt.c,
23677	  src/z80/gen.c,
23678	  support/regression/tests/memory.c:
23679	  Fixed bug #2995398.
23680
236812010-05-16 Philipp Klaus Krause <pkk AT spth.de>
23682
23683	* src/z80/main.c:
23684	  A tiny step toward implementing #1921061.
23685
236862010-05-16 Philipp Klaus Krause <pkk AT spth.de>
23687
23688	* src/z80/peeph-z80.def:
23689	  Minor peephole improvements.
23690
236912010-05-13 Borut Razem <borut.razem AT siol.net>
23692
23693	* sdas/asxxsrc/asmain.c: fixed bug #2914707: as-z80 segmentation fault
23694
236952010-05-10 Borut Razem <borut.razem AT siol.net>
23696
23697	* src/Makefile.in: added -Wall
23698	* sdas/linksrc/lkarea.c: fixed bug #2999446: ds390 xram limit at 0x400000
23699	* asxxsrc/asmain.c: fixed compiler warning
23700
237012010-05-10 Maarten Brock <sourceforge.brock AT dse.nl>
23702
23703	* support/cpp/sdcpp.dsp: added sdcpp-diagnostic.c
23704
237052010-05-06 Maarten Brock <sourceforge.brock AT dse.nl>
23706
23707	* device/lib/_strtok.c: cosmetic changes
23708	* sdas/linksrc/aslink.dsp: removed lkgb.c
23709	* src/SDCCast.c (gatherImplicitVariables): fixed bug 2956580, const iTemp
23710	* src/z80/peeph-gbz80.def (rule 16): fixed non-existent operandsNotSame bug
23711	* support/regression/tests/bug2956580.c: new, added
23712
237132010-05-05 Borut Razem <borut.razem AT siol.net>
23714
23715	* support/cpp/sdcpp.opt: fixed bug #2996806: Werror broken
23716
237172010-05-04 Borut Razem <borut.razem AT siol.net>
23718
23719	* debugger/mcs51/sdcdb.c: fixed compiler warnings
23720
237212010-05-03 Borut Razem <borut.razem AT siol.net>
23722
23723	* support/cpp/Makefile.in, support/cpp/sdcpp-diagnostic.c,
23724	  support/cpp/sdcpp.h, support/cpp/sdcpp-opts.c:
23725	  added c_cpp_error diagnostic callback function
23726
237272010-05-01 Maarten Brock <sourceforge.brock AT dse.nl>
23728
23729	* device/include/mcs51/C8051F330.h,
23730	* device/include/mcs51/C8051F336.h,
23731	* device/include/mcs51/C8051F350.h,
23732	* device/include/mcs51/C8051F410.h,
23733	* device/include/mcs51/C8051T630.h: applied patch 2994867, thanks Steven Borley
23734
237352010-04-22 Borut Razem <borut.razem AT siol.net>
23736
23737	* support/cpp/libcpp/charset.c, support/cpp/libcpp/directives.c,
23738	  support/cpp/libcpp/errors.c, support/cpp/libcpp/expr.c,
23739	  support/cpp/libcpp/files.c, support/cpp/libcpp/identifiers.c,
23740	  support/cpp/libcpp/include/cpp-id-data.h,
23741	  support/cpp/libcpp/include/cpplib.h,
23742	  support/cpp/libcpp/include/line-map.h,
23743	  support/cpp/libcpp/include/symtab.h, support/cpp/libcpp/init.c,
23744	  support/cpp/libcpp/internal.h, support/cpp/libcpp/lex.c,
23745	  support/cpp/libcpp/line-map.c, support/cpp/libcpp/macro.c,
23746	  support/cpp/libcpp/mkdeps.c, support/cpp/libcpp/symtab.c,
23747	  support/cpp/libcpp/traditional.c, support/cpp/libiberty/filenames.h,
23748	  support/cpp/libiberty/hashtab.c, support/cpp/libiberty/hashtab.h,
23749	  support/cpp/libiberty/obstack.h, support/cpp/libiberty/safe-ctype.h,
23750	  support/cpp/libiberty/splay-tree.h, support/cpp/sdcpp.c,
23751	  support/cpp/sdcpp.h, support/cpp/sdcpp-opts.c:
23752	  SDCPP synchronized with GCC CPP release version 4.5.0
23753
237542010-04-14 Borut Razem <borut.razem AT siol.net>
23755
23756	* sim/ucsim/configure, sim/ucsim/configure.in, sim/ucsim/ddconfig_in.h:
23757	  fixed bug #2986676: ucz80 fails to run z80 regtests on Solaris
23758	  SPARC platform
23759	* sdccconf_in.h: corrected endianness detection on solaris
23760	* debugger/mcs51/symtab.c, debugger/mcs51/configure,
23761	  debugger/mcs51/Makefile.in, debugger/mcs51/simi.c,
23762	  debugger/mcs51/cmd.c, debugger/mcs51/symtab.h,
23763	  debugger/mcs51/configure.in, debugger/mcs51/sdcdb.c,
23764	  debugger/mcs51/config.h.in, debugger/mcs51/break.c:
23765	  code cleaning: removed warnings, added -Wall c compiler flag, ...
23766
237672010-04-12 Borut Razem <borut.razem AT siol.net>
23768
23769	* device/lib/pic/libsdcc/*.[cS], device/lib/pic/*.[cS]:
23770	  sdcc library license changed to GPL+LE
23771
237722010-04-11 Borut Razem <borut.razem AT siol.net>
23773
23774	* sim/ucsim/configure.in:
23775	  define CXXFLAGS
23776	* device/lib/pic/libm/expf.c:
23777	  corrected typo
23778	* device/include/mcs51/uPSD32xx.h:
23779	  sdcc library license changed to GPL+LE
23780
237812010-04-10 Borut Razem <borut.razem AT siol.net>
23782
23783	* support/regression/ports/host/spec.mk.in:
23784	  reverted change made 2010-04-08, since the include is needed by
23785	  the libmullong.c regression test
23786	* device/lib/pic/libm/*.c:
23787	  sdcc library license changed to GPL+LE
23788
237892010-04-09 Borut Razem <borut.razem AT siol.net>
23790
23791	* device/include/mcs51/msm8xc154s.h:
23792	  sdcc library license changed to GPL+LE
23793
237942010-04-08 Philipp Klaus Krause <pkk AT spth.de>
23795	* support/regression/tests/bug-2982135.c:
23796	  Fixed a stupid mistake.
23797
237982010-04-08 Borut Razem <borut.razem AT siol.net>
23799
23800	* support/regressuin/test/bitvars.c:
23801	  fixed failing test on on Solaris i386 SunPro C compiler;
23802	  it behaves differently if -xO2 option is set or not
23803	* src/SDCCast.c, src/SDCCast.h:
23804	  fixed SunPro C warning: anonymous struct declaration
23805	* device/include/mcs51/C8051F336.h, device/include/mcs51/C8051T610.h,
23806	  device/include/mcs51/p89lpc938.h, device/include/mcs51/C8051F920.h,
23807	  device/include/mcs51/C8051T600.h, device/include/mcs51/C8051T630.h,
23808	  sdcc/device/include/hc08/mc68hc908qy.h, device/include/hc08/mc68hc908gp32.h:
23809	  sdcc library license changed to GPL+LE
23810	* support/regression/ports/host/spec.mk.in: removed unneeded include
23811	* sim/ucsim/cmd.src/Makefile.in:
23812	  sh test doesn't understand -e option
23813	* sim/ucsim/cmd.src/FlexLexer.h:
23814	  fixed warning about missing newline at last line
23815
238162010-04-07 Philipp Klaus Krause <pkk AT spth.de>
23817	* src/z80/ralloc.c,
23818	  support/regression/tests/bug-2982135.c:
23819	  Fixed bug #2982135.
23820
238212010-04-06 Philipp Klaus Krause <pkk AT spth.de>
23822	* src/z80/gen.c,
23823	  src/z80/peeph-z80.def
23824	  Minor improvements, workaround for bug #2970351.
23825	* device/lib/z80/divunsigned.s,
23826	  device/lib/z80/Makefile.in,
23827	  device/lib/z80/div.s,
23828	  device/lib/z80/divmixed.s
23829	  device/lib/z80/divsigned.s:
23830	  Division library reorganization.
23831
238322010-04-05 Borut Razem <borut.razem AT siol.net>
23833
23834	* sdcc/sim/ucsim/gui.src/Makefile.in:
23835	  fixed for Solaris if CURSES_PKGS is empty
23836	* sdcc/device/include/mcs51/at89c51snd1c.h:
23837	  sdcc library license changed to GPL+LE
23838
238392010-04-04 Borut Razem <borut.razem AT siol.net>
23840
23841	* device/include/hc08/mc68hc908jb8.h:
23842	  sdcc library license changed to GPL+LE
23843	* sdas/linksrc/Makefile.in: Solaris make (GNU Make 3.81) doesn't like
23844	  $$() syntax; converted to ``
23845
238462010-04-03 Borut Razem <borut.razem AT siol.net>
23847
23848	* device/include/mcs51/p89lpc933_4.h, device/include/mcs51/p89lpc935_6.h,
23849	  device/include/mcs51/p89v66x.h, device/include/mcs51/p89c66x.h,
23850	  device/include/mcs51/at89Sx051.h: sdcc library license changed to GPL+LE
23851
238522010-04-03 Philipp Klaus Krause <pkk AT spth.de>
23853	* src/z80/gen.c:
23854	  Fixed bug #2977331.
23855
238562010-04-01 Borut Razem <borut.razem AT siol.net>
23857
23858	* support/regression/ports/host/spec.mk.in:
23859	  fixed execution of host regression tests on Mac OS X
23860
238612010-03-28 Borut Razem <borut.razem AT siol.net>
23862
23863	* device/include/ds400/ds400rom.h, device/include/asm/gbz80/features.h,
23864	  device/lib/z80/crt0.s, device/lib/gbz80/stubs.s,
23865	  device/lib/gbz80/div.s, device/lib/gbz80/fstubs.s,
23866	  device/lib/gbz80/putchar.s, device/lib/gbz80/crt0.s,
23867	  device/lib/gbz80/crt0_rle.s, device/lib/gbz80/heap.s,
23868	  device/lib/gbz80/mul.s, device/lib/gbz80/shift.s,
23869	  device/lib/ds400/memcpyx.c, device/lib/hc08/_mulint.c,
23870	  device/lib/hc08/_ret.c, device/lib/hc08/_mullong.c,
23871	  device/lib/mcs51/crtpagesfr.asm, device/lib/mcs51/crtxpush.asm,
23872	  device/lib/mcs51/crtxpopbits.asm, device/lib/mcs51/crtxpushr0.asm,
23873	  device/lib/mcs51/crtbank.asm, device/lib/mcs51/crtcall.asm,
23874	  device/lib/mcs51/crtxinit.asm, device/lib/mcs51/crtstart.asm,
23875	  device/lib/mcs51/crtxstack.asm, device/lib/mcs51/crtxclear.asm,
23876	  device/lib/mcs51/crtclear.asm, device/lib/mcs51/crtxpop.asm,
23877	* device/include/asm/mcs51/features.h, device/include/mcs51/*.h:
23878	  sdcc library license changed to GPL+LE
23879
238802010-03-25 Borut Razem <borut.razem AT siol.net>
23881
23882	* sdcc/configure, sdcc/configure.in, sdcc/sdccconf_in.h,
23883	  sdcc/sim/ucsim/configure, sdcc/sim/ucsim/configure.in,
23884	  sdcc/sim/ucsim/ddconfig_in.h:
23885	  fixed endianness detection, enabled NetBSD build
23886	* sim/ucsim/cmd.src/cmdpars.cc:
23887	  fixed alloca detection on Solaris x86. This is actually bison++ bug.
23888	* support/regression/tests/bitfields.c,
23889	  support/regression/tests/literalop.c,
23890	  support/regression/tests/bitwise.c,
23891	  support/regression/tests/swap.c:
23892	  fixed host regression tests on NetBSD sparc64
23893
238942010-03-23 Borut Razem <borut.razem AT siol.net>
23895
23896	* device/include/*.h, device/include/asm/z80/features.h,
23897	  device/include/asm/default/features.h, device/include/z80/*.h,
23898	  device/lib/z80/*.s, device/include/asm/ds390/features.h,
23899	  device/lib/ds390/memcpyx.c, device/lib/ds390/putchar.c:
23900	  sdcc library license changed to GPL+LE
23901
239022010-03-20 Borut Razem <borut.razem AT siol.net>
23903
23904	* main_in.mk, configure, debugger/mcs51/configure,
23905	  debugger/mcs51/Makefile.in, debugger/mcs51/configure.in,
23906	  configure.in, src/Makefile.in, src/port.mk, sim/ucsim/configure,
23907	  sim/ucsim/cmd.src/Makefile.in, , sim/ucsim/xa.src/Makefile.in,
23908	  sim/ucsim/z80.src/Makefile.in, sim/ucsim/gui.src/Makefile.in,
23909	  sim/ucsim/gui.src/serio.src/Makefile.in,
23910	  sim/ucsim/gui.src/obsolete/portmon.src/Makefile.in,
23911	  sim/ucsim/sim.src/Makefile.in, sim/ucsim/main_in.mk,
23912	  sim/ucsim/configure.in, sim/ucsim/hc08.src/Makefile.in:
23913	  introduced MAKEDEP
23914
239152010-03-20 Borut Razem <borut.razem AT siol.net>
23916
23917	* configure.in, configure, support/regression/tests/bitfields.c,
23918	  support/regression/tests/bug-1981238.c,
23919	  support/regression/tests/preproc.c,
23920	  support/regression/tests/strtok.c,
23921	  support/regression/tests/structflexarray.c,
23922	  support/regression/tests/malloc.c:
23923	  regression test fixed for SunPro C compiler
23924	* support/regression/ports/host/spec.mk:
23925	  adapted for SunPro C compiler & renamed to spec.mk.in
23926	* support/regression/Makefile.in:
23927	  include ./ports/$(PORT)/spec.mk if exists
23928	* device/lib/Makefile.in:
23929	  Solaris make (GNU Make 3.81) doesn't like $$() syntax;
23930	  converted to ``
23931
239322010-03-19 Borut Razem <borut.razem AT siol.net>
23933
23934	* configure.in, configure, device/lib/z80/Makefile.in,
23935	  device/lib/gbz80/Makefile.in, device/lib/ds390/Makefile.in,
23936	  device/lib/Makefile.in, device/lib/ds400/Makefile.in,
23937	  device/lib/mcs51/Makefile.in, device/lib/hc08/Makefile.in:
23938	  autoconf test if ar accepts -S (GNU ar does, BSD ar does not)
23939	* src/pic/ralloc.c: Solaris SunPro C compiler doesn't like (void)0
23940
239412010-03-18 Borut Razem <borut.razem AT siol.net>
23942
23943	* sim/ucsim/ddconfig_in.h:
23944	  fixed endianness detection, so that it works on Solaris
23945
239462010-03-17 Borut Razem <borut.razem AT siol.net>
23947
23948	* configure.in, configure, debugger/mcs51/configure.in,
23949	  debugger/mcs51/configure, sim/ucsim/configure.in,
23950	  sim/ucsim/configure, sim/ucsim/aclocal.m4, src/SDCCutil.c:
23951	  preparations for *BSD and Solaris ports
23952	* configure, debugger/mcs51/configure, debugger/mcs51/configure.in,
23953	  configure.in, sim/ucsim/configure, sim/ucsim/cmd.src/Makefile.in,
23954	  sim/ucsim/xa.src/Makefile.in, sim/ucsim/z80.src/Makefile.in,
23955	  sim/ucsim/gui.src/Makefile.in,
23956	  sim/ucsim/gui.src/serio.src/Makefile.in,
23957	  sim/ucsim/gui.src/obsolete/portmon.src/Makefile.in,
23958	  sim/ucsim/sim.src/Makefile.in, sim/ucsim/configure.in,
23959	  sim/ucsim/hc08.src/Makefile.in, sim/ucsim/s51.src/Makefile.in,
23960	  sim/ucsim/avr.src/Makefile.in, sdas/as8051/Makefile.in,
23961	  sdas/asz80/Makefile.in, sdas/linksrc/Makefile.in,
23962	  sim/ucsim/main_in.mk: portable -Wall
23963	* support/cpp/Makefile.in, support/cpp/libiberty/alloca.c:
23964	  added alloca.c
23965
239662010-03-15 Borut Razem <borut.razem AT siol.net>
23967
23968	* device/lib/*.c: sdcc library license changed to GPL+LE
23969
239702010-03-13 Borut Razem <borut.razem AT siol.net>
23971
23972	* support/scripts/sdcc.nsi: removed lib/src/z80/*.c from the package
23973	* src/z80/gen.c: fixed warning: suggest parentheses around assignment
23974	  used as truth value
23975	* sdas/asxxsrc/sdas.c, sdas/linksrc/sdld.c:
23976	  fixed warning: implicit declaration of function 'tolower'
23977	* sdas/asxxsrc/asmain.c: fixed warning: variable not initialized
23978	* device/include/limits.h, device/include/stdint.h,
23979	  device/include/float.h, device/include/typeof.h,
23980	  device/include/stddef.h, device/include/sdcc-lib.h,
23981	  device/include/stdlib.h, device/include/stdio.h,
23982	  device/include/math.h, device/include/asm/default/features.h,
23983	  device/include/assert.h, device/include/setjmp.h,
23984	  device/include/stdbool.h, device/include/ctype.h,
23985	  device/include/stdarg.h, device/include/errno.h:
23986	  sdcc library license changed to GPL+LE
23987
239882009-03-11 Raphael Neider <rneider AT web.de>
23989
23990	* device/include/pic/pic16f616.h,
23991	  device/include/pic/pic16hv616.h,
23992	  device/lib/pic/libdev/devices.txt,
23993	  device/lib/pic/libdev/pic16f616.c,
23994	  device/lib/pic/libdev/pic16hv616.c:
23995	  add support for 16f616 and 16hv616 devices
23996
239972010-03-09 Philipp Klaus Krause <pkk AT spth.de>
23998	* device/lib/gbz80/Makefile.in,
23999	  device/lib/gbz80/printf.c:
24000	  Made gbz80 port use the generic printf routine family.
24001
240022010-03-07 Philipp Klaus Krause <pkk AT spth.de>
24003	* src/z80/gen.c,
24004	  support/regression/tests/float_single.c:
24005	  gbz80 port regression test fixes.
24006
240072010-03-06 Borut Razem <borut.razem AT siol.net>
24008
24009	* src/hc08/main.c: fixed hc08 target:
24010	  reintroduced MODAL_SMALL and MODEL_LARGE
24011
240122010-03-04 Borut Razem <borut.razem AT siol.net>
24013
24014	* src/SDCCmain.c, src/port.h, src/avr/main.c, src/ds390/main.c,
24015	  src/hc08/main.c, src/mcs51/main.c, src/pic16/main.c, src/pic/main.c,
24016	  src/xa51/main.c, src/z80/main.c: get_model() moved to the traget
24017	* src/mcs51/rtrack.c: removed MSVC warnings:
24018	  integral size mismatch in argument; conversion supplied
24019	* src/SDCCglobl.h: introduced NO_MODEL
24020
240212010-03-03 Borut Razem <borut.razem AT siol.net>
24022
24023	* all.dsp: added makebin to project
24024	* src/SDCCmain.c: fixed lib suffix,
24025	  get_lib_suffix() renamed to get_model(),
24026	  added pic* handling to get_model()
24027
240282010-03-02 Borut Razem <borut.razem AT siol.net>
24029
24030	* src/SDCCmain.c, src/pic/main.c, src/pic16/main.c:
24031	  lib suffix is a part of lib dir set
24032	* support/scripts/Makefile.in, support/scripts/clean.mk:
24033	  added clean Makefile target for scripts
24034
240352010-03-02 Maarten Brock <sourceforge.brock AT dse.nl>
24036
24037	* src/SDCCmain.c(get_lib_suffix): added huge model
24038
240392010-02-26 Borut Razem <borut.razem AT siol.net>
24040
24041	* sdcc/support/scripts/as2gbmap.py:
24042	  use pre-python 2.6 exceptin handling syntax
24043
240442010-02-25 Borut Razem <borut.razem AT siol.net>
24045
24046	* configure.in, configure, Makefile.in, support/scripts/Makefile.in:
24047	  "compile" as2gbmap.py: copy it to bin/as2gbmap and make it executable
24048	* support/scripts/sdcc.nsi: include bin/as2gbmap.cmd to the package
24049
240502010-02-24 Borut Razem <borut.razem AT siol.net>
24051
24052	* sdcc/support/scripts/as2gbmap.py:
24053	  sort symbols by value for rrgb outout,
24054	  handle file open errors
24055	* doc/sdccman.lyx: documented changed library format to ar in 2.9.0;
24056	  documented makebin and as2gbmap.py
24057
240582010-02-23 Borut Razem <borut.razem AT siol.net>
24059
24060	* src/SDCCmain.c, src/z80/main.c, sdas/linksrc/lkdata.c,
24061	  sdas/linksrc/lklist.c, sdas/linksrc/lkmain.c, sdas/linksrc/lkrloc.c,
24062	  sdas/linksrc/aslink.h:
24063	  removed geneneration of no$gmb symbol file and rrgb map file
24064	* sdas/linksrc/Makefile.in: removed compilation of lkgb.c
24065	* sdcc/support/scripts/as2gbmap.py:
24066	  added option -j to convert from asxxxx to no$gmb symbol file format
24067	* sdas/linksrc/lkgb.c, sdas/linksrc/lkgg.c: deleted from svn
24068
240692010-02-21 Borut Razem <borut.razem AT siol.net>
24070
24071	* support/makebin/makebin.c:
24072	  check if fopen() succeeded
24073	* support/regression/ports/gbz80/spec.mk:
24074	  sdlsgb now creates .ihx file and makebin converts it to .gb;
24075	  removed -m (Load map file) rrgb command line option, since sdlsgb
24076	  doesn't generate a rrgb compatible map file
24077	* src/SDCCmain.c: search C runtime initialization object files
24078	  crt0.rel in system library directories, then in user defined
24079	  library directories - third try
24080	* support/scripts/as2gbmap.py: converter from asxxxx to rrgb map
24081	  file format
24082
240832010-02-21 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
24084
24085	* src/mcs51/rt rack.c: fixed two warnings reported in #2955971
24086	  by Hubert Sack. (2nd warning found a bug)
24087
240882010-02-20 Philipp Klaus Krause <pkk AT spth.de>
24089	* device/lib/gbz80/mul.s,
24090	  device/lib/gbz80/Makefile.in:
24091	  Fixed multiplication in gbz80 port.
24092
240932010-02-20 Philipp Klaus Krause <pkk AT spth.de>
24094	* device/lib/gbz80/div.s:
24095	  Fixed mixed-sign division and modulo in gbz80 port.
24096
240972010-02-20 Borut Razem <borut.razem AT siol.net>
24098
24099	* support/makebin/makebin.c: added support for GameBoy binary file format,
24100	  added optional input and output file names arguments,
24101	  making it (hopefully) more robust, ...
24102	* all.dsp, sdcc.dsw, support/makebin/makebin.dsp:
24103	  added makebin to the MSVC project
24104	* src/SDCCmain.c: fixed bug #2955614 - Regression - Warning: Couldn't find
24105
241062010-02-19 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
24107
24108	* src/mcs51/rtrack.h,
24109	  src/mcs51/rtrack.c,
24110	  src/mcs51/ralloc.h,
24111	  src/mcs51/gen.c: Implemented tracking of symbols and dptr.
24112	  Set environment variable SDCC_REGTRACK if you want to enable
24113	  register tracking. If you want diagnostic output use option
24114	  --fverbose-asm and additionally set SDCC_REGTRACK_VERBOSE
24115
241162010-02-18 Borut Razem <borut.razem AT siol.net>
24117
24118	* src/SDCCmain.c: search C runtime initialization object files
24119	  crt0.rel in system library directories, then in user defined
24120	  library directories
24121
241222010-02-16 Borut Razem <borut.razem AT siol.net>
24123
24124	* support/scripts/sdcc.nsi: remove crt0.rel for z80 and gb
24125	* src/SDCCmain.c:
24126	  fixed the fist part of bug #2951083: -o not working as expected:
24127	  rename the linker output file name to -o binary file name
24128	* sdas/linksrc/lkaomf51.c:
24129	  fixed the second part of bug #2951083: -o not working as expected:
24130	  remove the file extension in any case
24131
241322010-02-16 Philipp Klaus Krause <pkk AT spth.de>
24133
24134	* src/z80/peeph-gbz80.def,
24135	  device/include/asm/z80/features.h,
24136	  device/lib/gbz80/Makefile.in,
24137	  device/lib/gbz80/div.s,
24138	  device/lib/gbz80/mul.s,
24139	  support/regression/ports/gbz80/spec.mk:
24140	  Made gbz80 regression tests compile again.
24141
241422010-02-11 Borut Razem <borut.razem AT siol.net>
24143
24144	* sdas/linksrc/lkmain.c: removed unneeded gb linker initialization
24145
241462010-02-10 Maarten Brock <sourceforge.brock AT dse.nl>
24147
24148	* device/lib/clean.mk: also clean huge library
24149
241502010-02-10 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
24151
24152	* src/mcs51/gen.c: (genAssign literal) loading via accumulator if it
24153	  pays off. Could eventually also be enabled for assigning to registers
24154
241552010-02-09 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
24156
24157	* src/mcs51/peeph.def: added rules 105.b and 114.x improving parameter
24158	  passing for models large and huge.
24159	  Regression test suite is about 1% smaller for model large
24160
241612010-02-09 Borut Razem <borut.razem AT siol.net>
24162
24163	* sdas/asxxsrc/sdas.c, sdas/linksrc/sdld.c:
24164	  convert parogram name to lower case since on Win 9x program names
24165	  in argv[0] are always upper case;
24166	  added diagnostic if SDAS_DIAG and/or SDLD_DIAG environment
24167	  variables are set
24168
241692010-02-08 Borut Razem <borut.razem AT siol.net>
24170
24171	* src/avr/gen.c, src/avr/gen.h, src/cdbFile.c, src/ds390/gen.c,
24172	  src/ds390/gen.h, src/hc08/gen.c, src/hc08/gen.h, src/mcs51/gen.c,
24173	  src/mcs51/gen.h, src/mcs51/main.c, src/pic16/gen.c, src/pic16/gen.h,
24174	  src/pic16/main.c, src/pic/gen.c, src/pic/gen.h, src/port.h,
24175	  src/SDCCBBlock.c, src/SDCCdebug.c, src/SDCCdebug.h, src/SDCCdwarf2.c,
24176	  src/SDCCdwarf2.h, src/SDCCglobl.h, src/SDCCglue.c, src/SDCCmain.c,
24177	  src/xa51/gen.c, src/xa51/gen.h, src/xa51/main.c, src/z80/gen.c,
24178	  src/z80/gen.h, src/z80/main.c:
24179	  get rid of scratchFileName, const string pointers
24180	* src/SDCCmain.c, src/xa51/main.c, src/mcs51/main.c, sdcc_vc_in.h:
24181	  fixed bug #2947712: SDCC completely broken in multiple ways
24182	* sdas/linksrc/lklist.c, sdas/linksrc/lkmain.c:
24183	  reintroduced gameboy map file format, required by rrgb simulator,
24184	  reenabled gameboy regression tests
24185
241862010-02-07 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
24187
24188	* src/mcs51/peeph.def: added rules 272.x helping literal left shifts
24189
241902010-02-07 Borut Razem <borut.razem AT siol.net>
24191
24192	* src/SDCCmain.c, src/SDCCglobl.h, src/z80/main.c, src/hc08/main.c,
24193	  sdas/linksrc/lkmain.c, sdas/linksrc/lkar.c, sdas/linksrc/lkrloc.c:
24194	  fixed output file format handling
24195	* src/SDCCmain.c, src/port.h, src/xa51/main.c, src/mcs51/main.c,
24196	  src/z80/main.c, src/ds390/main.c, src/hc08/main.c:
24197	  list of standard library files moved to port structure,
24198	  defined for each target
24199	* sdas/linksrc/lkmain.c: re-added the gb version of map()
24200
242012010-02-06 Maarten Brock <sourceforge.brock AT dse.nl>
24202
24203	* device/lib/_setjmp.c: fixed --stack-auto for model-huge
24204	* support/regression/Makefile.in: keep the hex-file
24205
242062010-02-05 Philipp Klaus Krause <pkk AT spth.de>
24207
24208	* src/z80/gen.c,
24209	  src/z80/mappings.i,
24210	  src/z80/peeph-z80.def:
24211	  Decompose multiline macros, fixing #1570701, #1921731.
24212
242132010-02-04 Borut Razem <borut.razem AT siol.net>
24214
24215	* src/mcs51/main.c, src/z80/main.c, src/ds390/main.c, src/hc08/main.c,
24216	  src/xa51/main.c, src/SDCCmain.c, src/port.h:
24217	  list of C runtime initialization object files crt0.rel moved to port
24218	  structure, defined for each target
24219
242202010-02-02 Philipp Klaus Krause <pkk AT spth.de>
24221
24222	* src/z80/peeph-gbz80.def,
24223	  src/z80/mappings.i:
24224	  Fixed gbz80 port to work with new assembler.
24225
242262010-02-02 Maarten Brock <sourceforge.brock AT dse.nl>
24227
24228	* src/SDCCsymt.c(addSymChain): fixed --xstack float support in model-huge
24229
242302010-02-01 Maarten Brock <sourceforge.brock AT dse.nl>
24231
24232	* src/SDCCmain.c(assemble): don't destroy asmName twice
24233
242342010-02-01 Maarten Brock <sourceforge.brock AT dse.nl>
24235
24236	* src/ds390/ralloc.c (packRegsDPTRuse): fixed bug 2938110
24237	* support/regression/tests/bug2938110.c: new, added
24238
242392010-02-01 Borut Razem <borut.razem AT siol.net>
24240
24241	* sdas/linksrc/lkar.c, sdas/linksrc/lksdcclib.c:
24242	  detection of asxxxx v3.0 and higher rel files
24243
242442010-01-31 Philipp Klaus Krause <pkk AT spth.de>
24245
24246	* src/z80/peeph-z80.def:
24247	  Minor peephole.
24248
242492010-01-30 Maarten Brock <sourceforge.brock AT dse.nl>
24250
24251	* configure,
24252	* configure.in: added device/lib/huge/Makefile
24253
242542010-01-30 Maarten Brock <sourceforge.brock AT dse.nl>
24255
24256	* device/include/asm/mcs51/features.h: added _RETURN
24257	* device/include/setjmp.h: adapted for model-huge
24258	* device/lib/_setjmp.c: adapted for xstack and model-huge
24259	* device/lib/_decdptr.c(_decdptr): __naked
24260	* device/lib/_logexpf.c (_fs_cordic_rshift_r765_unsigned): __naked
24261	* device/lib/_mullong.c: use _AUTOMEM from sdcc-lib.h
24262	* device/lib/_startup.c (_sdcc_external_startup): __nonbanked
24263	* device/lib/_strlen.c,
24264	* device/lib/abs.c,
24265	* device/lib/labs.c: use _RETURN
24266	* device/lib/cotf.c,
24267	* device/lib/tanf.c,
24268	* device/lib/tancotf.c (tancotf): changed iscotan to BOOL
24269	* device/lib/expf.c,
24270	* device/lib/logf.c: adapted for model-huge
24271	* device/lib/printf_large.c: set USE_FLOATS for ds390, xstack, model-huge
24272	* device/lib/huge: added directory
24273	* device/lib/huge/Makefile.in: new, added
24274	* src/mcs51/gen.c (aopPut, Push): factored out Push,
24275	  (getFreePtr): save R0 in B for PCALL,
24276	  (opIsGptr): also true for banked function pointers,
24277	  (saveRegisters, unsaveRegisters): always save for banked functions,
24278	    don't kill R0,
24279	  (genCall, genPcall, genEndFunction): even static functions are banked in
24280	    model-huge, address could be taken,
24281	  (genPcall): don't kill R0-R2 before genSend
24282	* src/mcs51/main.c (_mcs51_keywords): added nonbanked,
24283	  (_mcs51_finaliseOptions): added MODEL_HUGE,
24284	    xstack float lib is not reentrant,
24285	  (mcs51_port): added MODEL_HUGE, fixed banked_overhead bug
24286	* src/mcs51/peep.c (termScanAtFunc): always abort for banked call and R0-R2
24287	* src/SDCC.y: remoed warning W_BANKED_WITH_STATIC
24288	* src/SDCCast.c (funcOfType): all C support routines are nonbanked,
24289	  (processParms): fixed banked function pointer is no codepointer,
24290	  (createFunction): fixed banked_overhead bug
24291	* src/SDCCerr.c: W_BANKED_WITH_STATIC no longer used
24292	* src/SDCCglue.c (_printPointerType): added size parameter,
24293	  (printIvalFuncPtr): adapted for banked function pointer,
24294	  (glue): added MODEL_HUGE
24295	* src/SDCCmain.c (optionsTable, parseCmdLine, preProcess): added
24296	    MODEL_HUGE, --model-huge and OPTION_HUGE_MODEL
24297	* src/SDCCmem.c (allocParms): moved banked_overhead to createFunction
24298	* src/SDCCsymt.c (getSize): adapted for model-huge,
24299	  (checkFunction): merge banked/nonbanked from prototype into definition,
24300	  (initCSupport):  all C support routines are made nonbanked in funcOfType
24301	* src/SDCCsymt.h: added BANKED_FUNCTIONS, adapted IFFUNC_ISBANKEDCALL
24302	* src/z80/gen.c (emitCall):  even static functions are banked in
24303	    model-large and model-medium, address could be taken
24304	* support/regression/Makefile.in: added target test-mcs51-huge
24305	* support/regression/ports/mcs51-common/support.c: added PSBANK,
24306	  (_sdcc_external_startup): must be nonbanked
24307	* support/regression/ports/mcs51-xstack-auto/spec.mk: moved USE_FLOATS to
24308	    printf_large.c
24309	* support/regression/ports/mcs51-huge: added directory
24310	* support/regression/ports/mcs51-huge/spec.mk: new, added
24311	* support/regression/tests/bug1678803.c,
24312	* support/regression/tests/bug1712928.c: adapted for model-huge
24313	* support/regression/tests/float_single.c: added putchar for debugging
24314	* support/regression/tests/snprintf.c: adapted for model-huge
24315
243162010-01-29 Philipp Klaus Krause <pkk AT spth.de>
24317
24318	* src/z80/gen.c:
24319	  Minor comment.
24320
243212010-01-29 Philipp Klaus Krause <pkk AT spth.de>
24322
24323	* src/z80/gen.c:
24324	  Minor comment.
24325
243262010-01-29 Philipp Klaus Krause <pkk AT spth.de>
24327
24328	* src/SDCCsymt.h:
24329	  Minor fix.
24330
243312010-01-29 Borut Razem <borut.razem AT siol.net>
24332
24333	* sdcc/src/xa51/main.c, sdcc/src/mcs51/main.c, sdcc/src/SDCCmain.c,
24334	  sdcc/src/z80/main.c, sdcc/src/ds390/main.c, sdcc/src/hc08/main.c,
24335	  sdcc/sdas/asxxsrc/asmain.c:
24336	  fixed bug #2925290: SDCC assemblers do not process "-o" option correctly
24337	  The sdas command line syntax is now compatible with asxxxx v5.0
24338
243392010-01-24 Philipp Klaus Krause <pkk AT spth.de>
24340	* support/regression/tests/bool.c,
24341	  support/regression/tests/bitopcse.c,
24342	  device/include/stdbool.h:
24343	  Added test for bool.
24344
243452010-01-24 Borut Razem <borut.razem AT siol.net>
24346
24347	* src/z80/gen.c:
24348	  fixed declaration in the middle of the block
24349	* support/cpp/ansidecl.h, support/cpp/libcpp/directives.c,
24350	  support/cpp/libcpp/errors.c, support/cpp/libcpp/init.c,
24351	  support/cpp/libcpp/internal.h, support/cpp/libcpp/lex.c,
24352	  support/cpp/libiberty.h, support/cpp/libiberty/hex.c,
24353	  support/cpp/libiberty/md5.c, support/cpp/libiberty/splay-tree.c,
24354	  support/cpp/md5.h:
24355	  SDCPP synchronized with GCC CPP release version 4.4.3
24356
243572010-01-24 Philipp Klaus Krause <pkk AT spth.de>
24358	* src/SDCCcse.c,
24359	  src/SDCCval.c,
24360	  src/SDCCicode.c,
24361	  src/SDCCsymt.c,
24362	  src/SDCCsymt.h,
24363	  src/SDCC.y,
24364	  src/SDCCdwarf2.c,
24365	  src/SDCCglue.c,
24366	  src/z80/gen.c,
24367	  src/z80/main.c,
24368	  src/z80/peep.c,
24369	  src/z80/peeph-z80.def,
24370	  src/SDCCglobl.h,
24371	  src/SDCC.lex,
24372	  src/SDCCast.c,
24373	  device/include/stdbool.h,
24374	  support/regression/tests/bug1546986.c,
24375	  support/regression/tests/constantRange.c,
24376	  support/regression/tests/bug2805333.c,
24377	  support/regression/tests/bug1337835.c,
24378	  support/regression/tests/bitopcse.c,
24379	  support/regression/tests/bug1723128.c,
24380	  support/regression/tests/bug-908454.c,
24381	  support/regression/tests/bug1734654.c,
24382	  support/regression/tests/bug1745717.c,
24383	  support/regression/tests/bug2719592.c,
24384	  support/regression/tests/bug1738367.c,
24385	  support/regression/tests/funptrs.c,
24386	  support/regression/tests/bug1509084.c,
24387	  support/regression/tests/bug1788177.c,
24388	  support/regression/tests/bitvars.c:
24389	  Finally implemented true _Bool support.
24390	* src/SDCCpeeph.c,
24391	  doc/random-notes.txt:
24392	  Generic cleanup.
24393
243942010-01-24 Borut Razem <borut.razem AT siol.net>
24395
24396	* sdas/as8051/i51adr.c, sdas/as8051/i51pst.c, sdas/asz80/z80pst.c,
24397	  sdas/asz80/z80adr.c, sdas/linksrc/lkdata.c, sdas/linksrc/lkmain.c,
24398	  sdas/linksrc/aslink.h, sdas/as6808/m08adr.c, sdas/as6808/m08pst.c,
24399	  sdas/asxxsrc/asmain.c, sdas/asxxsrc/asxxxx.h, sdas/asxxsrc/aslex.c,
24400	  sdas/asxxsrc/asdata.c, sdas/asgb/gbadr.c, sdas/asgb/gbpst.c:
24401	  optimized .optsdcc handling
24402
244032010-01-23 Borut Razem <borut.razem AT siol.net>
24404
24405	* src/SDCCicode.c, src/SDCCast.c, src/SDCCast.h:
24406	  fixed bug #1767885: Parameters lost from scope of intermediate inline function
24407	  applied patches from Pavel Pisa; tahks Pavel
24408	* support/regression/tests/inline.c:
24409	  merged inline regression tests bug1717305.c, bug1864577.c and bug 1767885
24410
244112010-01-18 Borut Razem <borut.razem AT siol.net>
24412
24413	* src/SDCCmain.c, sdas/linksrc/lkmain.c, sdas/linksrc/aslink.h:
24414	  fixed bug #2933892 - Weird default ouput location for linker - regression
24415	  The sdld command line syntax is now compatible with asxxxx v5.0
24416
244172010-01-18 Philipp Klaus Krause <pkk AT spth.de>
24418
24419	* src/SDCCast.c:
24420	  Taking the address of _Bool works on the z80 and gbz80 ports.
24421
244222010-01-17 Philipp Klaus Krause <pkk AT spth.de>
24423
24424	* src/SDCCcse.c,
24425	  src/SDCCicode.c,
24426	  src/SDCCglue.c,
24427	  src/z80/gen.c,
24428	  src/z80/main.c,
24429	  src/z80/peep.c,
24430	  src/z80/peeph-z80.def,
24431	  device/include/stdbool.h,
24432	  device/lib/z80/crt0.s:
24433	  Support for bool on the Z80 (RFE #1751355).
24434	* device/lib/z80/asm_strings.s,
24435	  device/lib/z80/mulchar.s,
24436	  device/lib/z80/stubs.s,
24437	  device/lib/z80/fstubs.s,
24438	  device/lib/z80/heap.s,
24439	  device/lib/gbz80/stubs.s,
24440	  device/lib/gbz80/fstubs.s,
24441	  device/lib/gbz80/asm_strings.s,
24442	  device/lib/gbz80/heap.s:
24443	  Z80 library cleanup.
24444	* src/SDCCpeeph.c:
24445	  Enable jump-to-jump optimizations for jump table entries.
24446
244472010-01-16 Borut Razem <borut.razem AT siol.net>
24448
24449	* doc/sdccman.lyx: sfr at to __sfr __at
24450
244512010-01-16 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
24452
24453	* src/SDCCmain.c: added ReadcfgFile() - get options from
24454	  a sdcc.cfg file.
24455
244562010-01-15 Borut Razem <borut.razem AT siol.net>
24457
24458	* support/regression/ports/hc08/support.c,
24459	  support/regression/ports/pic14/support.c,
24460	  support/regression/ports/pic16/support.c,
24461	  support/regression/ports/xa51/support.c,
24462	  support/regression/tests/macro.c:
24463	  _asm and _endasm changed to __asm and __endasm
24464
244652010-01-15 Philipp Klaus Krause <pkk AT spth.de>
24466
24467	* device/lib/gbz80/string.c:
24468	  Removed unused gbz80-specific string routines.
24469
244702010-01-14 Borut Razem <borut.razem AT siol.net>
24471
24472	* src/SDCCerr.c, src/SDCCerr.h, src/SDCC.lex, doc/sdccman.lyx,
24473	  device/include/mcs51/mcs51reg.h,
24474	  support/regression/tests/bug2817646.c,
24475	  support/regression/tests/driverstruct.c,
24476	  support/regression/tests/nullstring.c,
24477	  support/regression/tests/bug1546986.c,
24478	  support/regression/tests/bug-1981238.c,
24479	  support/regression/tests/array.c,
24480	  support/regression/tests/bug-1699804.c,
24481	  support/regression/tests/bug-221100.c,
24482	  support/regression/tests/bug1839277.c,
24483	  support/regression/tests/bug-460010.c,
24484	  support/regression/tests/bug1921073.c,
24485	  support/regression/tests/bug1839321.c,
24486	  support/regression/tests/float.c,
24487	  support/regression/tests/simplefloat.c,
24488	  support/regression/tests/bug2783061.c,
24489	  support/regression/tests/critical.c,
24490	  support/regression/tests/bug1551947.c,
24491	  support/regression/tests/bug663539.c,
24492	  support/regression/tests/absolute.c,
24493	  support/regression/tests/bug-221168.c,
24494	  support/regression/tests/bug-716242.c,
24495	  support/regression/tests/bug1348008.c,
24496	  support/regression/tests/bug1928022.c,
24497	  support/regression/tests/bug1938300.c,
24498	  support/regression/tests/bug-880197.c,
24499	  support/regression/tests/bug1536762.c,
24500	  support/regression/tests/bug1198642.c,
24501	  support/regression/tests/bug1749275.c,
24502	  support/regression/tests/bitopcse.c,
24503	  support/regression/tests/bug1535242.c,
24504	  support/regression/tests/bug-868103.c,
24505	  support/regression/tests/using.c,
24506	  support/regression/tests/bug1723128.c,
24507	  support/regression/tests/bug1750318.c,
24508	  support/regression/tests/bug1409955.c,
24509	  support/regression/tests/bug1856409.c,
24510	  support/regression/tests/regtrack.c,
24511	  support/regression/tests/setjmp.c,
24512	  support/regression/tests/bug1618050.c,
24513	  support/regression/tests/float_single.c,
24514	  support/regression/tests/malloc.c,
24515	  support/regression/tests/bug-524691.c,
24516	  support/regression/tests/bug1908493.c,
24517	  support/regression/tests/bug2761883.c,
24518	  support/regression/tests/sfr16.c,
24519	  support/regression/tests/zeropad.c,
24520	  support/regression/tests/staticinit.c,
24521	  support/regression/tests/bug2655200.c,
24522	  support/regression/tests/bug2435941.c,
24523	  support/regression/fwk/include/testfwk.h,
24524	  support/regression/fwk/lib/testfwk.c,
24525	  support/regression/ports/pic14/spec.mk,
24526	  support/regression/ports/ds390/spec.mk,
24527	  support/regression/ports/ds390/support.c,
24528	  support/regression/ports/hc08/spec.mk,
24529	  support/regression/ports/ucz80/spec.mk,
24530	  support/regression/ports/mcs51-common/spec.mk,
24531	  support/regression/ports/mcs51-common/T2_isr.c,
24532	  support/regression/ports/mcs51-common/support.c,
24533	  support/regression/generate-cases.py:
24534	  implemented RFE #2931693: deprecate warnings for sdcc specific keyword
24535	* configure.in, configure:
24536	  implemented RFE #2932327: remove unsupported and broken targets xa51 and avr
24537	* .version, doc/sdccman.lyx: bumped version to 2.9.7
24538
245392010-01-11 Borut Razem <borut.razem AT siol.net>
24540
24541	* configure.in, configure, Makefile.in, sdcc.dsw,
24542	  sdas/asranlib/asranlib.dsp, sdas/asranlib/Makefile.in:
24543	  sdas/aslink renamed to sdas/linksrc
24544
245452009-01-10 Raphael Neider <rneider AT web.de>
24546
24547	* src/pic/gen.c (genCmp): do not clobber CARRY when storing the
24548	  result of the comparison (fixes #2929477), cosmetic changes
24549
245502010-01-10 Borut Razem <borut.razem AT siol.net>
24551
24552	* configure.in, configure, Makefile.in, sdas/*/Makefile.in,
24553	  sdcc/sdcc.dsw, sdas/asranlib/asranlib.dsp, config.dsp:
24554	  as renamed to sdas, as/link renamed to sdas/aslink,
24555	  as/z80 renamed to sdac/asz80, as/mcs51 renamed to sdas/as8051,
24556	  as/hc80 renamed to sdcc/sdas/as6808
24557	* debugger/mcs51/cmd.c, sim/ucsim/utils.cc, sdcc/sdas/aslink/lklibr.c,
24558	  support/cpp/libcpp/macro.c: fixed compiler warnings
24559
245602010-01-09 Borut Razem <borut.razem AT siol.net>
24561
24562	* as/*/conf.mk: removed
24563	  as/conf.mk: added
24564	  as/*/Makefile.in: use common as/conf.mk
24565	  as/*/clean.in: unified
24566	* src/SDCCmain.c, src/z80/main.c,
24567	  device/lib/z80/Makefile.in, device/lib/gbz80/Makefile.in,
24568	  as/asxxsrc/asmain.c, as/link/aslink.h,
24569	  support/regression/Makefile.in,
24570	  support/regression/ports/ucz80/spec.mk:
24571	  object file extension for z80 and gb targets changed from .o to .rel
24572	* .version, doc/sdccman.lyx: bumped version to 2.9.6
24573
245742010-01-04 Borut Razem <borut.razem AT siol.net>
24575
24576	* doc/sdccman.lyx, support/cpp/libcpp/internal.h,
24577	  support/cpp/libcpp/lex.c, support/cpp/sdcpp.c:
24578	  fixed bug #2919991: #Pragma preproc_asm cannot be used by -- std-c99.
24579	* support/cpp/libcpp/macro.c, support/cpp/version.c:
24580	  SDCPP synchronized with GCC CPP release version 4.4.2
24581	* as/link/lklist.c: fixed NULL pointer dereference
24582	* as/link/lkmain.c: do not complaint when opening optional adb files
24583
245842009-12-31 Borut Razem <borut.razem AT siol.net>
24585
24586	* as/link/lkarea.c, as/link/lkdata.c, as/link/lklist.c,
24587	  as/link/lks19.c, as/link/lkmain.c, as/link/lkeval.c,
24588	  as/link/lklibr.c, as/link/lkaomf51.c, as/link/lkhead.c,
24589	  as/link/lklex.c, as/link/lkrloc.c, as/link/aslink.h:
24590	  sync with aslink 2.0
24591	* as/link/lks19.c: include "sdld.c"
24592	* as/link/aslink.dsp: cleaning
24593	* as/link/aslink.h: changed the type Character Type Definitions to char
24594
245952009-12-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
24596
24597	* src/hc08/gen.c: fixed bug 2912013
24598
245992009-12-25 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
24600
24601	* as/link/aslink.dsp, as/link/sdld_all.dsp: fixed destination path of
24602	sdld.exe, sdldz80.exe, sdldgb.exe, and sdld6808.exe
24603
246042009-12-21 Borut Razem <borut.razem AT siol.net>
24605
24606	* Makefile.in: fixed hc08
24607	* Makefile.in, as/link/Makefile.in: fixed installation
24608
246092009-12-20 Borut Razem <borut.razem AT siol.net>
24610
24611	* as/link/lkmain.c, as/link/lksdcclib.c,
24612	  as/link/lklib.c, as/link/lklex.c, as/link/aslink.h:
24613	  fixed "o" file extension for z80 and gb targets
24614
246152009-12-19 Borut Razem <borut.razem AT siol.net>
24616
24617	* configure, Makefile.in, configure.in, as/link/Makefile.in,
24618	  all.dsp, as/link/aslink.dsp, as/link/sdld_all.dsp,
24619	  as/link/lkmain.c, as/link/lkgb.c, as/link/lkihx.c,
24620	  as/link/sdld.c, as/link/sdld.h, as/link/lkmem.c,
24621	  as/link/clean.mk, as/link/lkrloc.c: modified
24622	  as/link/lkarea.c, as/link/readme.390, conf.mk, aslink.dsp:
24623	  moved from as/link/mcs51,
24624	  as/link/z80, as/link/mcs51, as/link/hc08: removed,
24625	  unification of lkarea.c, one polymorphic sdld
24626	* as/asxxsrc/sdas.h, as/asxxsrc/sdas.c:
24627	  renamed TRAGET_IS_XXXX to TARGET_ID_XXXX
24628	* .version, doc/sdccman.lyx: bumped version to 2.9.5
24629
246302009-12-18 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
24631
24632	* device/lib/abs.c, device/lib/labs.c: assembler version
24633	  for mcs51, other targets slightly shorter too
24634	* support/regression/tests/abs.c: added regression test
24635
246362009-12-17 Indy Sams < drift_solutions AT users.sourceforge.net >
24637
24638	* device/lib/_strpbrk.c: fixed bug #2908537 (svn commit by Frieder)
24639
246402009-12-17 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
24641
24642	* support/regression/tests/strpbrk.c: added regression test
24643
246442009-12-16 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
24645
24646	* device/include/mcs51/w7100.h: added.
24647
246482009-12-16 Borut Razem <borut.razem AT siol.net>
24649
24650	* as/link/lkihx.c,
24651	  as/link/z80/Makefile.in, as/link/z80/linkz80.dsp,
24652	  as/link/z80/linkgbz80.dsp,
24653	  as/link/mcs51/Makefile.in, as/link/mcs51/aslink.dsp,
24654	  as/link/hc08/Makefile.in, as/link/hc08/link_hc08.dsp,
24655	  as/link/z80/lkihx.c, as/link/hc08/lkihx.c
24656	  as/link/mcs51/lkihx.c: unification of lkihx.c
24657
246582009-12-14 Raphael Neider <rneider AT web.de>
24659
24660	* device/include/pic16/pic16devices.txt:
24661	  mask _XINST for 18f97j60 family, fix configword locations
24662	* device/include/pic16/pic18f24j50.h,
24663	  device/include/pic16/pic18f25j50.h,
24664	  device/include/pic16/pic18f44j50.h,
24665	  device/include/pic16/pic18f45j50.h,
24666	  device/include/pic16/pic18f46j50.h,
24667	  device/include/pic16/pic18f66j60.h,
24668	  device/include/pic16/pic18f66j65.h,
24669	  device/include/pic16/pic18f67j60.h,
24670	  device/include/pic16/pic18f86j60.h,
24671	  device/include/pic16/pic18f86j65.h,
24672	  device/include/pic16/pic18f87j60.h,
24673	  device/include/pic16/pic18f96j60.h,
24674	  device/include/pic16/pic18f96j65.h,
24675	  device/include/pic16/pic18f97j60.h:
24676	  add symbolic addresses to configuration bits
24677	* device/include/pic16/pic18fregs.h: add __CONFIG() macro
24678
246792009-12-14 Borut Razem <borut.razem AT siol.net>
24680
24681	* src/SDCCmain.c: fixed crashing if -o option is not defined,
24682	  bug #2913769: sdcc crashes on cygwin
24683	* as/link/lkgb.c, as/link/z80/lkihx.c, as/link/lkrloc.c,
24684	  as/link/z80/Makefile.in, as/link/z80/linkz80.dsp,
24685	  as/link/z80/linkgbz80.dsp,
24686	  as/link/mcs51/Makefile.in, as/link/mcs51/aslink.dsp,
24687	  as/link/hc08/Makefile.in, as/link/hc08/link_hc08.dsp,
24688	  as/link/z80/lkrloc.c, as/link/hc08/lkrloc.c
24689	  as/link/mcs51/lkrloc.c:
24690	  unification of lkrloc.c
24691
246922009-12-13 Borut Razem <borut.razem AT siol.net>
24693
24694	* as/link/aslink.h. as/link/lksym.c, as/link/lkstore.c:
24695	  StrStore() replaced with strsto(), removed as/link/lkstore.c
24696	* as/link/lkgb.c, as/link/lkgg.c, as/link/z80/lkgb.c,
24697	  as/link/z80/lkgg.c, as/link/z80/Makefile.in,
24698	  as/link/z80/linkz80.dsp, as/link/z80/linkgbz80.dsp,
24699	  as/link/mcs51/Makefile.in, as/link/mcs51/aslink.dsp,
24700	  as/link/hc08/Makefile.in, as/link/hc08/link_hc08.dsp:
24701	  as/link/z80/lkgb.c and as/link/z80/lkgg.c moved to as/link
24702	* as/link/lkelf.c: added casts to new()
24703	* as/link/lkmem.c: fixed code asld6808 crash
24704	* all.dsp, as/link/z80/linkz80.dsp, as/link/z80/linkgbz80.dsp:
24705	  fixed for new sdld names
24706	* src/SDCCmain.c: fixed cygwin compilation
24707
247082009-12-12 Borut Razem <borut.razem AT siol.net>
24709
24710	* as/link/z80/lkmain.c: removed
24711	* as/link/z80/linkgbz80.dsp, as/link/z80/linkz80.dsp,
24712	  as/link/z80/Makefile.in: use as/link/lkmain.c
24713	* as/link/lkmain.c: fixed command line option handling
24714	* src/port.h, src/SDCCmain.c, src/z80/main.c:
24715	  fixed crt object file handling with asld, ...
24716	* as/link/lkdata.c, as/link/mcs51/lkarea.c,
24717	  as/link/aslink.h, as/link/hc08/Makefile.in,
24718	  as/link/mcs51/Makefile.in, as/link/z80/Makefile.in,
24719	  as/link/z80/linkz80.dsp, as/link/z80/linkgbz80.dsp,
24720	  as/link/mcs51/aslink.dsp, as/link/hc08/link_hc08.dsp:
24721	  modified
24722	  as/link/z80/lks19.c, as/link/z80/lkmem.c,
24723	  as/link/mcs51/lks19.c, as/link/mcs51/lkmem.c,
24724	  as/link/hc08/lks19.c, as/link/hc08/lkmem.c,
24725	  as/link/hc08/lkelf.c: moved to as/link
24726	  unification of lkelf.c, lks19.c and lkmem.c
24727
247282009-12-10 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
24729
24730	* all.dsp, as/link/hc08/link_hc08.dsp, as/link/mcs51/aslink.dsp:
24731	 renamed linker executables.
24732
247332009-12-04 Borut Razem <borut.razem AT siol.net>
24734
24735	* support/scripts/sdcc.nsi: renamed liker executables
24736	* as/link/mcs51/Makefile.in, as/link/hc08/Makefile.in:
24737	  fixed installation linker executable name
24738
247392009-12-03 Borut Razem <borut.razem AT siol.net>
24740
24741	* device/lib/z80/Makefile.in, device/lib/gbz80/Makefile.in,
24742	  device/lib/ds390/Makefile.in, device/lib/Makefile.in,
24743	  device/lib/ds400/Makefile.in, device/lib/mcs51/Makefile.in,
24744	  device/lib/hc08/Makefile.in:
24745	  fixed bug #2907642: version of make > 3.80 required to build SDCC
24746	* as/asxxsrc/asxxxx.h: fixed typo
24747
247482009-12-02 Borut Razem <borut.razem AT siol.net>
24749
24750	* as/link/hc08/link_hc08.dsp, as/link/mcs51/aslink.dsp,
24751	  as/link/z80/linkgbz80.dsp, as/link/z80/linkz80.dsp,
24752	  as/link/lkmain.c: re-enabled msvc build
24753
247542009-12-01 Borut Razem <borut.razem AT siol.net>
24755
24756	* as/link/aslink.h, as/link/lkmain.c, as/link/z80/Makefile.in,
24757	  as/link/z80/lkmain.c:
24758	  temporarily re-added special lkmain.c for z80 and gb targets
24759
247602009-11-29 Borut Razem <borut.razem AT siol.net>
24761
24762	* src/mcs51/main.c, src/z80/main.c, src/hc08/main.c, src/ds390/main.c,
24763	  as/asxxsrc/sdas.c, as/link/Makefile.in, as/link/lkmain.c,
24764	  as/link/z80/Makefile.in, as/link/mcs51/Makefile.in,
24765	  as/link/hc08/Makefile.in, as/link/aslink.h, as/link/sdlink.[ch],
24766	  as/link/sdld.[ch], as/asxxsrc/sdas.c, as/link/lkdata.c,
24767	  as/link/lkmain.c:
24768	  fixed bug in target detection, sdlink renamed to sdld
24769
247702009-11-28 Borut Razem <borut.razem AT siol.net>
24771
24772	* as/asxxsrc/asdata.c, as/asxxsrc/asmain.c, as/asxxsrc/asxxxx.h:
24773	  mark sdas specifics
24774	* as/asxxsrc/sdas.c, as/asxxsrc/sdas.h, as/link/aslink.h,
24775	  as/link/hc08/lkarea.c, as/link/hc08/lkmain.c, as/link/hc08/lkmem.c,
24776	  as/link/hc08/Makefile.aslink, as/link/hc08/Makefile.in,
24777	  as/link/lkmain.c, as/link/Makefile.in, as/link/mcs51/lkmain.c,
24778	  as/link/mcs51/Makefile.aslink, as/link/mcs51/Makefile.in,
24779	  as/link/z80/linkgbz80.dsp, as/link/z80/linkz80.dsp,
24780	  as/link/z80/lkarea.c, as/link/z80/lkgb.c, as/link/z80/lkmain.c,
24781	  as/link/z80/lkmem.c, as/link/z80/Makefile.in, src/ds390/main.c,
24782	  src/hc08/main.c, src/mcs51/main.c, src/z80/main.c,
24783	  as/link/sdlink.[ch]:
24784	  lkmain.c unification; linkers renamed to sdlinkXXXX
24785
247862009-11-27 Borut Razem <borut.razem AT siol.net>
24787
24788	* sim/ucsim/config.guess, sim/ucsim/ltmain.sh, sim/ucsim/config.sub:
24789	  upgraded to libtool 2.2.5,
24790	  fixed dug #2897829: ancient-libtool sim/ucsim/ltmain.sh 1.4.2
24791
247922009-11-06 Raphael Neider <rneider AT web.de>
24793
24794	* src/pic/gen.c (pic14_getDataSize): use true size of generic
24795	  pointers to fix assignment of the result of pointer arithmetics
24796
247972009-11-05 Raphael Neider <rneider AT web.de>
24798
24799	* src/pic/gen.c (genUnpackBits): setup FSR before using it, fixes
24800	  "[Sdcc-user] The damned loop from hell"; plus cosmetic changes
24801
248022009-11-04 Maarten Brock <sourceforge.brock AT dse.nl>
24803
24804	* src/SDCCmem.c(defaultOClass, allocDefault): refactored
24805	* src/SDCCmem.h: added defaultOClass
24806	* src/SDCCsymt.c(processFuncArgs): use defaultOClass to support storage
24807	  class in parameters, fixes bug 2761883
24808	* support/regression/tests/bug2761883.c: new, added
24809	* doc/sdccman.lyx: removed warning about ignored storage class in params
24810
248112009-11-02 Maarten Brock <sourceforge.brock AT dse.nl>
24812
24813	* src/SDCCast.c(constExprTree): struct fields have a constant offset
24814
248152009-11-01 Maarten Brock <sourceforge.brock AT dse.nl>
24816
24817	* src/SDCCglue.c(initValPointer): fixed bug 1503239
24818	* support/regression/tests/bug1928022.c: added test cases
24819
248202009-11-01 Philipp Klaus Krause <pkk AT spth.de>
24821
24822	* src/SDCCpeeph.c,
24823	* src/mcs51/peeph.def,
24824	* src/avr/peeph.def,
24825	* src/z80/peeph-z80.def,
24826	* src/ds390/peeph.def,
24827	* support/regression/tests/bug-2890326.c:
24828	  Fixed bug #2890326.
24829
248302009-11-01 Maarten Brock <sourceforge.brock AT dse.nl>
24831
24832	* src/SDCCsymt.c(addSymChain, checkDecl): fixed bug 1470790
24833	* support/regression/tests/zeropad.c: added test
24834
248352009-11-01 Maarten Brock <sourceforge.brock AT dse.nl>
24836
24837	* src/SDCCast.c(decorateType,CAST): fold literal pointers
24838	* src/SDCCdflow.c(usedInRemaining),
24839	* src/SDCCicode.c(geniCodeCall): fix for non-symbol values
24840	* src/SDCCsymt.c(isConstant): reverted, make literals const instead
24841	* src/SDCCval.c(constFloatVal, constFixed16x16Val, constVal, constCharVal,
24842	  strVal): make literals const
24843	  (valForArray),
24844	  (valForStructElem): fixed bug 1928022 with folded literal pointers
24845	* src/ds390/gen.c(genCall),
24846	* src/hc08/gen.c(genCall),
24847	* src/mcs51/gen.c(genCall),
24848	* src/z80/gen.c(emitCall): handle literal function pointers
24849	* support/regression/tests/bug1928022.c: new, added
24850
248512009-10-30 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
24852
24853	* device/include/mcs51/P89LPC922.h, device/include/mcs51/P89LPC932.h,
24854	  device/include/mcs51/p89lpc938.h: fixed bug 2889428, double definition
24855	  for CMP1 and CMP2.
24856	* device/include/mcs51/p89lpc925.h: for consistency with the other lpc
24857	  files, renamed CMP1b and CMP2b to CMP_1 and CMP_2.
24858
248592009-10-28 Maarten Brock <sourceforge.brock AT dse.nl>
24860
24861	* src/SDCCast.c(newIfxNode): fixed bug 2887512
24862	  (decorateType, '='): use different error for function pointers
24863	* src/SDCCglue.c(printIvalFuncPtr): fixed bug 2806238, don't throw away
24864	  function pointer value just like that
24865	  (printIval): use different error for function pointers
24866	* src/SDCCsymt.c(compareFuncType, compareType): new function to compare
24867	  function pointer types
24868	  (isConstant): treat literals as constant too to warn before bug 2887512
24869
248702009-10-26 Borut Razem <borut.razem AT siol.net>
24871
24872	* doc/cdbfileformat.lyx, doc/sdccman.lyx, doc/test_suite_spec.lyx:
24873	  converted to LyX 1.6.4 (\lyxformat 345) format
24874
248752009-10-25 Maarten Brock <sourceforge.brock AT dse.nl>
24876
24877	* as/link/mcs51/lkarea.c(lnkarea2): fixed bug 2839083
24878
248792009-10-24 Maarten Brock <sourceforge.brock AT dse.nl>
24880
24881	* src/SDCCast.c(decorateType): also set OCLS for PTR_OP, fixed bug 2823963
24882	* src/SDCCast.h: cosmetic changes
24883	* src/SDCCicode.c,
24884	* src/SDCCicode.h: moved setOClass prototype
24885	* support/regression/tests/bug2823963.c: new, added
24886
248872009-10-22 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
24888
24889	* device/include/mcs51/p89lpc9321.h, device/include/mcs51/p89lpc9331.h,
24890	  device/include/mcs51/p89lpc9351.h: added
24891
248922009-10-21 Maarten Brock <sourceforge.brock AT dse.nl>
24893
24894	* src/SDCCast.c(createIvalPtr),
24895	* src/SDCCglue.c(printIvalFuncPtr): fixed bug 2881971
24896	* support/regression/tests/zeropad.c: added test
24897
248982009-10-18 Borut Razem <borut.razem AT siol.net>
24899
24900	* support/scripts/sdcc.nsi: assemblers renamed to sdasxxxx
24901
249022009-10-17 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
24903
24904	* src/mcs51/gen.c: Fixed bug 2880909
24905	* all.dsp, device/lib/make51lib.bat: renamed assemblers to sdasxxxx
24906
249072009-10-17 Borut Razem <borut.razem AT siol.net>
24908
24909	* as/asgb/asgb.dsp, as/asgb/Makefile.in, as/asxxsrc/asexpr.c,
24910	  as/asxxsrc/asmain.c, as/asxxsrc/asout.c, as/asxxsrc/sdas.c,
24911	  as/asxxsrc/sdas.h, as/hc08/as_hc08.dsp, as/hc08/Makefile.in,
24912	  as/mcs51/asx8051.dsp, as/mcs51/Makefile.in, as/z80/as_z80.dsp,
24913	  as/z80/Makefile.in, device/lib/gbz80/Makefile.in,
24914	  device/lib/hc08/Makefile.in, device/lib/mcs51/Makefile.in,
24915	  device/lib/z80/Makefile.in, src/ds390/main.c, src/hc08/main.c,
24916	  src/mcs51/main.c, src/z80/main.c,
24917	  support/regression/ports/gbz80/spec.mk,
24918	  support/regression/ports/hc08/spec.mk,
24919	  support/regression/ports/ucz80/spec.mk,
24920	  support/regression/ports/z80/spec.mk:
24921	  assemblers renamed to sdasxxxx:
24922	    as-gbz80 -> sdasgb,
24923	    as-hc08 -> sdas6808
24924	    asx8051 -> sdas8051
24925	    as-z80 -> sdasz80
24926	* .version, doc/sdccman.lyx: bumped version to 2.9.4
24927
249282009-10-12 Maarten Brock <sourceforge.brock AT dse.nl>
24929
24930	* device/lib/_fsadd.c: optimized (for mcs51-xstack) and enhanced precision
24931	  to fix some float_single regression tests
24932	* device/lib/_fssub.c: optimized
24933	* device/lib/asinf.c,
24934	* device/lib/acosf.c,
24935	* device/lib/asincosf.c: optimized
24936	* device/lib/mcs51/crtxpop.asm,
24937	* device/lib/mcs51/crtxpopbits.asm,
24938	* device/lib/mcs51/crtxpush.asm,
24939	* device/lib/mcs51/crtxpushr0.asm: new (slow) helper functions for xstack
24940	* device/lib/mcs51/Makefile.in: added crtxpush... and crtxpop...
24941	* src/mcs51/gen.c(aopForSym): optimized stack access
24942	  (xstackRegisters): new, calculates bitmask
24943	  (saveRegisters, unsaveRegisters): use (slow) crtxpush/pop to save memory
24944	  (genFunction): optimized stack access
24945	* src/mcs51/peep.c(removeDeadMove): removed unused parm
24946	* support/regression/tests/float_single.c: enabled now passing tests
24947
249482009-10-12 Borut Razem <borut.razem AT siol.net>
24949
24950	* as/link/aslink.h, as/link/hc08/lkarea.c, as/link/hc08/lkmain.c,
24951	  as/link/lkdata.c, as/link/lksym.c, as/link/mcs51/lkarea.c,
24952	  as/link/mcs51/lkmain.c, as/link/z80/lkarea.c, as/link/z80/lkmain.c:
24953	  itroduced zflag for case senditivity; zflag is forced to 1
24954
249552009-10-10 Borut Razem <borut.razem AT siol.net>
24956
24957	* as/asgb/Makefile.in, as/z80/Makefile.in: added -lm to LDFLAGS
24958
249592009-10-10 Borut Razem <borut.razem AT siol.net>
24960
24961	* as/hc08/m08adr.c, as/hc08/m08mch.c, as/hc08/m6808.h,
24962	  as/mcs51/i51adr.c, as/mcs51/i51mch.c, as/mcs51/i51pst.c,
24963	  as/mcs51/i8051.h, as/z80/z80.h, as/z80/z80adr.c, as/z80/z80mch.c:
24964	  targets synced with asxxxx v2.0 and later
24965	* as/asgb/asgb.dsp, as/asgb/clean.mk, as/asgb/conf.mk, as/asgb/gb.h,
24966	  as/asgb/gbadr.c, as/asgb/gbext.c, as/asgb/gbmch.c, as/asgb/gbpst.c,
24967	  as/asgb/Makefile.in,
24968	  as/Makefile.in, as/z80/as_gbz80.dsp,
24969	  as/mcs51/i51ext.c, as/z80/Makefile.in, as/z80/z80.h, as/z80/z80adr.c,
24970	  as/z80/z80ext.c, as/z80/z80mch.c, as/z80/z80pst.c,
24971	  configure, configure.in, Makefile.in, sdcc.dsw:
24972	  split asz80 and asgb
24973	* as/asgb/gb.h, as/asgb/gbmch.c, as/asxxsrc/asdata.c,
24974	  as/asxxsrc/asexpr.c, as/asxxsrc/aslex.c, as/asxxsrc/asmain.c,
24975	  as/asxxsrc/asxxxx.h, as/hc08/m08adr.c, as/hc08/m08mch.c,
24976	  as/hc08/m6808.h, as/link/aslink.h, as/link/hc08/lkarea.c,
24977	  as/link/hc08/lkelf.c, as/link/hc08/lkihx.c, as/link/hc08/lkmain.c,
24978	  as/link/hc08/lkrloc.c, as/link/hc08/lks19.c, as/link/lkdata.c,
24979	  as/link/lkeval.c, as/link/lkhead.c. as/link/lklist.c,
24980	  as/link/lknoice.c, as/link/lksym.c, as/link/mcs51/lkarea.c,
24981	  as/link/mcs51/lkihx.c, as/link/mcs51/lkmain.c,
24982	  as/link/mcs51/lkrloc.c, as/link/mcs51/lks19.c, as/link/z80/lkarea.c,
24983	  as/link/z80/lkihx.c, as/link/z80/lkmain.c, as/link/z80/lkrloc.c,
24984	  as/link/z80/lks19.c, as/mcs51/i51mch.c, as/mcs51/i8051.h,
24985	  as/z80/z80.h, as/z80/z80mch.c: type Addr_T renamed to a_uint,
24986	  function comma() moved to aslex.c
24987
249882009-10-09 Maarten Brock <sourceforge.brock AT dse.nl>
24989
24990	* src/SDCC.y,
24991	* src/SDCCsymt.c(mergeDeclSpec): fixed bug 1376285
24992
249932009-10-08 Maarten Brock <sourceforge.brock AT dse.nl>
24994
24995	* src/SDCCerr.c,
24996	* src/SDCCerr.h: changed W_STRUCT_AS_ARG to error E_STRUCT_AS_ARG
24997	* src/SDCCsymt.c(aggregateToPointer),
24998	* src/SDCCast.c(processParms): throw error for struct parameters,
24999	  fixes bug 2874687
25000
250012009-10-07 Maarten Brock <sourceforge.brock AT dse.nl>
25002
25003	* src/SDCCglue.c(initValPointer, initPointer): fixed bug 2166213
25004
250052009-10-05 Borut Razem <borut.razem AT siol.net>
25006
25007	* as/asxxsrc/asmain.c:
25008	  removed forced wide listing format for symbol table and
25009	  removed forced enable case sensitivity for symbols in case of sdas
25010
250112009-10-05 Maarten Brock <sourceforge.brock AT dse.nl>
25012
25013	* as/asxxsrc/assubr.c: include sdas.h
25014	* as/asxxsrc/assym.c(symeq): type of n is size_t
25015	* src/SDCCglue.c(initPointer): fixed bug 2655200 by using oclass->ptrType
25016	* support/regression/tests/bug2655200.c: enabled --model-medium
25017
250182009-10-04 Borut Razem <borut.razem AT siol.net>
25019
25020	* as/asxxsrc/asdata.c, as/asxxsrc/aslex.c, as/asxxsrc/assubr.c,
25021	  as/asxxsrc/assym.c, as/asxxsrc/asxxxx.h:
25022	  partially synced with asxxxx v2.0
25023	* src/ds390/main.c, src/hc08/main.c, src/mcs51/main.c, src/z80/main.c:
25024	  added -z and -w option to assembler invocation
25025
250262009-10-04 Maarten Brock <sourceforge.brock AT dse.nl>
25027
25028	* device/include/string.h,
25029	* device/lib/_strlen.c: return size_t
25030	* device/lib/_memchr.c,
25031	* device/lib/_strcspn.c: cosmetic changes
25032	* device/lib/sincosf.c,
25033	* device/lib/cosf.c,
25034	* device/lib/sinf.c: use BOOL instead of larger int
25035	* src/z80/gen.c,
25036	* src/z80/mappings.i: cosmetic changes
25037	* src/SDCCsymt.c (pointerTypes, mergeDeclSpec, checkSClass): fixed bug 2817646
25038	  (checkFunction): disabled __naked
25039	  (dbuf_printTypeChain): more like RFE 2824498, print C-ish
25040	  (isRestrict): added
25041	* src/SDCCsymt.h: added IS_RESTRICT, mergeDeclSpec, isRestrict
25042	* src/SDCC.y: use mergeDeclSpec to fix bug 2817646
25043	* src/SDCCicode.c (checkPtrQualifiers, checkTypes, geniCodeAssign,
25044	  geniCodeParms, geniCodeCall): fixed bug 1302048
25045	* src/SDCCerr.c,
25046	* src/SDCCerr.h: added warning W_TARGET_LOST_QUALIFIER
25047	* support/regression/tests/bug-136564.c,
25048	* support/regression/tests/bug-223113.c,
25049	* support/regression/tests/bug1839277.c,
25050	* support/regression/tests/bug2655200.c: added necessary const keywords
25051	* support/regression/tests/strtok.c: removed incorrect const keyword
25052	* support/regression/tests/bug2817646.c: new, added
25053	* .version,
25054	* doc/sdccman.lyx: bumped version to 2.9.3
25055
250562009-10-03 Philipp Klaus Krause <pkk AT spth.de>
25057	* src/z80/z80-peeph.def:
25058	  Reenabled unproblematic peephole changes.
25059
250602009-10-03 Philipp Klaus Krause <pkk AT spth.de>
25061	* src/z80/z80-peeph.def:
25062	  Reverted recent peephole changes.
25063
250642009-09-30 Philipp Klaus Krause <pkk AT spth.de>
25065	* src/SDCCcse.c:
25066	  A step towards #1923898.
25067
250682009-09-29 Philipp Klaus Krause <pkk AT spth.de>
25069	* src/z80/gen.c,
25070	  Minor 16-bit addition improvement.
25071
250722009-09-28 Philipp Klaus Krause <pkk AT spth.de>
25073	* src/z80/ralloc.c,
25074	* src/z80/peeph-z80.def:
25075	  Improved usage of accumulator as inter-i-code temporary.
25076
250772009-09-28 Philipp Klaus Krause <pkk AT spth.de>
25078	* src/SDCCOpt.c:
25079	  Burn the corpses to fight necromancy.
25080
250812009-09-27 Philipp Klaus Krause <pkk AT spth.de>
25082	* src/z80/gen.c,
25083	* src/z80/ralloc.c,
25084	* src/z80/peeph-z80.def
25085	  Improved usage of accumulator as inter-i-code temporary.
25086
250872009-09-26 Philipp Klaus Krause <pkk AT spth.de>
25088	* src/z80/peeph-z80.def:
25089	  Minor peephole improvement.
25090
250912009-09-26 Philipp Klaus Krause <pkk AT spth.de>
25092	* src/SDCCpeeph.c,
25093	  src/z80/peeph-z80.def:
25094	  Fixed #2867572.
25095
250962009-09-20 Philipp Klaus Krause <pkk AT spth.de>
25097	* device/include/string.h,
25098	  device/lib/_strspn.c,
25099	  device/lib/incl.mk,
25100	  device/lib/_memchr.c,
25101	  device/lib/_strcspn.c,
25102	  device/lib/_memcmp.c:
25103	  Minor string library improvements, including #772292.
25104
251052009-09-20 Philipp Klaus Krause <pkk AT spth.de>
25106	* src/SDCCmain.c:
25107	  Fixed #2819835 applying #2853488.
25108
251092009-09-20 Philipp Klaus Krause <pkk AT spth.de>
25110	* debugger/mcs51/sdcdb.c,
25111	  src/SDCCerr.c,
25112	  src/z80/gen.c,
25113	  src/z80/mappings.i,
25114	  src/pic16/gen.c,
25115	  src/pic16/pcode.c,
25116	  support/librarian/sdcclib.c:
25117	  Applied spelling patch #2862563.
25118
251192009-09-15 Maarten Brock <sourceforge.brock AT dse.nl>
25120
25121	* device/include/mcs51/at89Sx051.h: new, added, applied patch 2858106,
25122	  thanks Ben Boeckel
25123
251242009-09-08 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
25125
25126	* device/include/mcs51/p89v51rd2.h: Watchdog Timer Control sfr is
25127	  bit addressable.
25128
251292009-08-31 Maarten Brock <sourceforge.brock AT dse.nl>
25130
25131	* src/mcs51/gen.c (genAnd, genOr): applied patch for bug 2719592,
25132	  thanks to Robert Larice
25133	* support/regression/tests/bug2719592.c: new, added
25134
251352009-09-02 Borut Razem <borut.razem AT siol.net>
25136
25137	* support/regression/ports/gbz80/spec.mk,
25138	  support/regression/ports/ucz80/spec.mk,
25139	  support/regression/ports/z80/spec.mk: fixed *z80 regression test if
25140	  built ran directly from sdcc source directory
25141
251422009-08-31 Maarten Brock <sourceforge.brock AT dse.nl>
25143
25144	* as/asxxsrc/asmain.c,
25145	* as/asxxsrc/asxxxx.h: fixed warning, main should return int
25146	* as/hc08/Makefile.in,
25147	* as/mcs51/Makefile.in: added -lm to LDFLAGS
25148
251492009-08-31 Raphael Neider <rneider AT web.de>
25150
25151	* device/lib/_fsmul.c, device/lib/pic/libsdcc/fsmul.c,
25152	  device/lib/pic16/libsdcc/float/fsmul.c: fix overflow during rounding
25153	* support/regression/tests/float.c: add testcase for the fix
25154
251552009-08-29 Maarten Brock <sourceforge.brock AT dse.nl>
25156
25157	* src/mcs51/gen.c (aopGet): applied patch 2837100 to fix bug 2805333
25158	* support/regression/tests/bug2805333.c: new, added,
25159	  thanks Ruud van Silfhout
25160
251612009-08-29 Maarten Brock <sourceforge.brock AT dse.nl>
25162
25163	* device/include/ctype.h: removed _REENTRANT as they are already with
25164	  --stack-auto, optimized _tolower and _toupper with char casts
25165	* device/include/string.h,
25166	* device/lib/_strcat.c,
25167	* device/lib/_strchr.c,
25168	* device/lib/_strcmp.c,
25169	* device/lib/_strcpy.c,
25170	* device/lib/_strcspn.c,
25171	* device/lib/_strlen.c,
25172	* device/lib/_strncat.c,
25173	* device/lib/_strncmp.c,
25174	* device/lib/_strncpy.c,
25175	* device/lib/_strpbrk.c,
25176	* device/lib/_strrchr.c,
25177	* device/lib/_strspn.c,
25178	* device/lib/_strstr.c,
25179	* device/lib/_strtok.c,
25180	* device/lib/pic16/libc/stdio/printf_small.c,
25181	* device/lib/pic16/libc/stdio/printf_tiny.c,
25182	* device/lib/pic16/libc/stdio/vfprintf.c,
25183	* device/lib/printf_large.c,
25184	* device/lib/time.c: added required const keywords to pointers
25185	* device/lib/pic16/debug/Makefile.in: changed ommitFramePtr to omitFramePtr
25186	* support/regression/tests/bug-716242.c,
25187	* support/regression/tests/nullstring.c,
25188	* support/regression/tests/strstr.c,
25189	* support/regression/tests/strtok.c: added const and set svn-properties
25190	* support/regression/tests/bug1908493.c: added cast
25191	* support/regression/tests/float_single.c: fixed check for result=0.0
25192
251932009-08-28 Borut Razem <borut.razem AT siol.net>
25194
25195	* as/asxxsrc/asout.c: as/mcs51/asout.c moved to as/asxxsrc/asout.c
25196	* as/mcs51/asout.c, as/hc08/asout.c, as/z80/asout.c: removed
25197	* as/asxxsrc/sdas.c, as/asxxsrc/sdas.h:
25198	  added function is_sdas_target_mcs51_like()
25199	* as/z80/as_gbz80.dsp, as/hc08/as_hc08.dsp, as/z80/as_z80.dsp,
25200	  as/mcs51/asx8051.dsp, as/hc08/Makefile.in, as/mcs51/Makefile.in,
25201	  as/z80/Makefile.in: updated project files
25202	* as/asxxsrc/asexpr.c: as/mcs51/asexpr.c moved to as/asxxsrc/asexpr.c
25203	* as/mcs51/asexpr.c, as/hc08/asexpr.c, as/z80/asexpr.c: removed
25204	* as/z80/as_gbz80.dsp, as/hc08/as_hc08.dsp, as/z80/as_z80.dsp,
25205	  as/mcs51/asx8051.dsp, as/hc08/Makefile.in, as/mcs51/Makefile.in,
25206	  as/z80/Makefile.in: updated project files
25207	* support/regression/ports/z80/spec.mk:
25208	  unified as-z80 and as-gbz80 call convention with other assemblers
25209
252102009-08-27 Borut Razem <borut.razem AT siol.net>
25211
25212	* as/asxxsrc/asmain.c:
25213	  HUGE changed to ASXXXX_HUGE due to redefinition in math.h
25214	* support/regression/ports/gbz80/spec.mk,
25215	  support/regression/ports/ucz80/spec.mk,
25216	  support/regression/ports/z80/spec.mk:
25217	  unified as-z80 and as-gbz80 call convention with other assemblers
25218
252192009-08-26 Borut Razem <borut.razem AT siol.net>
25220
25221	* as/asxxsrc/sdas.c, as/asxxsrc/sdas.h: added
25222	* as/asxxsrc/asmain.c: calls sdas
25223	* src/z80/main.c: unified as-z80 and as-gbz80 call convention with
25224	  other assemblers
25225	* as/hc08/Makefile.in, as/mcs51/Makefile.in, as/z80/Makefile.in,
25226	  as/hc08/as_hc08.dsp, as/mcs51/asx8051.dsp, as/z80/as_gbz80.dsp,
25227	  as/z80/as_z80.dsp: updated project files
25228	* device/lib/z80/Makefile.in, device/lib/gbz80/Makefile.in:
25229	  unified call convention, sync with device/lib/z80/Makefile.in
25230	* as/asxxsrc/aslist.c: as/mcs51/aslist.c moved to as/asxxsrc/aslist.c
25231	* as/asxxsrc/asxxxx.h, as/z80/asout.c, as/mcs51/asout.c,
25232	  as/hc08/asout.c:
25233	  HUGE changed to ASXXXX_HUGE due to redefinition in math.h
25234	* as/asxxsrc/asmain.c: forced wflag and zflag
25235	* as/z80/aslist.c, as/mcs51/aslist.c, as/hc08/aslist.c: removed
25236
252372009-08-25 Borut Razem <borut.razem AT siol.net>
25238
25239	* as/hc08/Makefile.in, as/mcs51/Makefile.in, as/z80/Makefile.in:
25240	  removed duplicated asdata.c
25241	* as/hc08/aslist.c, as/hc08/asmain.c, as/hc08/asout.c,
25242	  as/mcs51/aslist.c, as/mcs51/asmain.c, as/mcs51/asout.c:
25243	  fixed copy&paste problem in S_ORG
25244	* as/asxxsrc/asmain.c, as/hc08/Makefile.in, as/mcs51/Makefile.in,
25245	  as/z80/Makefile.in,
25246	* as/mcs51/asx8051.dsp, as/z80/as_z80.dsp, as/hc08/as_hc08.dsp,
25247	  as/z80/as_gbz80.dsp: as/mcs51/asmain.c moved to s/asxxsrc/asmain.c
25248	* as/hc08/asmain.c, as/z80/asmain.c: removed
25249	* as/asxxsrc/asmain.c, as/asxxsrc/asdata.c, as/asxxsrc/asxxxx.h:
25250	  added wflag and zflag
25251	* as/hc08/aslist.c, as/hc08/asout.c, as/mcs51/aslist.c,
25252	  as/mcs51/asout.c: fixed compiler wrning about unused variables
25253
252542009-08-24 Borut Razem <borut.razem AT siol.net>
25255
25256	* as/asxxsrc/asdata.c, as/asxxsrc/asxxxx.h, as/asxxsrc/aslex.c,
25257	  as/asxxsrc/asnoice.c, as/asxxsrc/assubr.c, as/asxxsrc/assym.c,
25258	  as/hc08/asexpr.c, as/hc08/aslist.c, as/hc08/asmain.c,
25259	  as/hc08/asout.c, as/hc08/m08adr.c, as/hc08/m08ext.c,
25260	  as/hc08/m08mch.c, as/hc08/m08pst.c, as/mcs51/asexpr.c,
25261	  as/mcs51/aslist.c, as/mcs51/asmain.c, as/mcs51/asout.c,
25262	  as/mcs51/i51adr.c, as/mcs51/i51ext.c, as/mcs51/i51mch.c,
25263	  as/mcs51/i51pst.c, as/z80/asexpr.c, as/z80/aslist.c,
25264	  as/z80/asmain.c, as/z80/asout.c, as/z80/z80adr.c,
25265	  as/z80/z80ext.c, as/z80/z80mch.c, as/z80/z80pst.c,
25266	  as/hc08/as_hc08.dsp, as/mcs51/asx8051.dsp, as/z80/as_gbz80.dsp,
25267	  as/z80/as_z80.dsp,
25268	  as/hc08/Makefile.in, as/mcs51/Makefile.in, as/z80/Makefile.in:
25269	  as/mcs51/asdata.c moved to as/asxxsrc/asdata.c,
25270	  as/mcs51/asm.h moved to as/asxxsrc/asxxxx.h
25271	* as/hc08/asdata.c, as/mcs51/asdata.c, as/z80/asdata.c,
25272	  as/hc08/asm.h, as/mcs51/asm.h, as/z80/asm.h: removed
25273
252742009-08-10 Borut Razem <borut.razem AT siol.net>
25275
25276	* as/asxxsrc/assubr.c, as/hc08/asm.h, as/hc08/asmain.c,
25277	  as/mcs51/asm.h, as/mcs51/asmain.c, as/z80/asm.h:
25278	  increnemt aserr only on fatal errors
25279
252802009-08-09 Borut Razem <borut.razem AT siol.net>
25281
25282	* as/asxxsrc/assubr.c: moved and mergerd from as/mcs51/assubr.c
25283	  as/hc08/assubr.c, as/mcs51/assubr.c, as/z80/assubr.c: deleted
25284	  as/hc08/asmain.c, as/mcs51/asmain.c: removed variable fatalError
25285	* as/z80/as_gbz80.dsp, as/hc08/as_hc08.dsp,
25286	  as/z80/as_z80.dsp, as/mcs51/asx8051.dsp: assubr.c moved to as/asxxsrc
25287	* as/hc08/Makefile.as_hc08, as/mcs51/Makefile.asx8051,
25288	  as/hc08/Makefile.bcc, as/link/hc08/Makefile.bcc,
25289	  as/link/mcs51/Makefile.bcc, as/mcs51/Makefile.bcc,
25290	  as/z80/Makefile.bcc, device/examples/ds390/tinitalk/Makefile.bcc,
25291	  Makefile.bcc, src/avr/Makefile.bcc, src/ds390/Makefile.bcc,
25292	  src/hc08/Makefile.bcc, src/izt/Makefile.bcc, src/Makefile.bcc,
25293	  src/mcs51/Makefile.bcc, src/pic16/Makefile.bcc, src/pic/Makefile.bcc,
25294	  src/xa51/Makefile.bcc, src/z80/Makefile.bcc, Bcc.inc
25295	  support/cpp/Makefile.bcc, support/librarian/Makefile.bcc,
25296	  support/packihx/Makefile.bcc: removed unmaintained makefiles,
25297	  implemented RFE #2786753: Remove Borland C support
25298	* support/Util/dbuf_string.h: include stdio.h
25299
253002009-08-08 Maarten Brock <sourceforge.brock AT dse.nl>
25301
25302	* device/lib/pic16/libc/Makefile.in,
25303	* device/lib/pic16/libdev/Makefile.in,
25304	* device/lib/pic16/libio/Makefile.in,
25305	* device/lib/pic16/libm/Makefile.in,
25306	* device/lib/pic16/libsdcc/Makefile.in,
25307	* device/lib/pic16/startup/Makefile.in,
25308	* device/lib/pic16/Makefile.common,
25309	* device/lib/pic16/Makefile.in,
25310	* src/hc08/main.c (_hc08_setDefaultOptions),
25311	* src/pic16/gen.c (genFunction, genEndFunction),
25312	* src/pic16/NOTES,
25313	* src/SDCCglobl.h,
25314	* src/SDCCmain.c,
25315	* src/z80/gen.c (genFunction),
25316	* doc/sdccman.lyx: changed ommitFramePtr to omitFramePtr
25317	* src/mcs51/main.c (_mcs51_finaliseOptions),
25318	* src/SDCCmain.c (parseCmdLine): moved mcs51 specific code for float_rent
25319	* src/SDCCast.h,
25320	* src/SDCCast.c (decorateType): removed incorrect fix for bug 1372851 which
25321	   caused bug 1458678
25322	  (CodePtrPointsToConst),
25323	* src/SDCCicode.c (isOperandVolatile),
25324	* src/SDCCsymt.h (IS_CONSTANT, IS_VOLATILE),
25325	* src/SDCCsymt.c (structElemType, checkSClass, isConstant, isVolatile)
25326	* src/SDCCglue.c (emitRegularMap, initPointer),
25327	* src/pic16/glue.c (pic16_initPointer): skip arrays when setting/checking
25328	   const/volatile, fixes bugs 1372851 and 1458678
25329	* src/SDCCbitv.c (bitVectnBitsOn): made mask const
25330	* src/SDCCicode.c (opFromOpWithDU),
25331	* src/SDCCopt.c (replaceRegEqv): use OPDEFS and OP_USES
25332	* src/SDCCptropt.c: cosmetic changes
25333	* src/z80/gen.c (isRegString, isConstantString): renamed isConstant and
25334	  made them static
25335	* support/regression/tests/bug1458678.c: new, added
25336
253372009-08-06 Philipp Klaus Krause <pkk AT spth.de>
25338
25339	* src/SDCCpepph.c:
25340	  Fixed #1947081.
25341	* src/z80/peeph-z80.def:
25342	  Fixed #1703943.
25343
253442009-08-05 Maarten Brock <sourceforge.brock AT dse.nl>
25345
25346	* as/link/lksym.c (newsym): only allow redefinition in ABS area
25347	  fixes bug 1057171
25348	* src/hc08/main.c,
25349	* src/mcs51/main.c,
25350	* src/z80/main.c: made RSEG absolute
25351	* src/SDCCglue.c (emitDebugSym): new, factored out
25352	  (emitRegularMap): add org 0x0000 to SFR/SBIT,
25353	  (emitRegularMap, emitStaticSeg) fixed bug for absolute debug symbols
25354	* src/SDCCmem.h,
25355	* src/SDCCsymt.h: cosmetic changes
25356	* src/SDCCsymt.c (dbuf_printTypeChain): implemented RFE 2824498
25357
253582009-07-26 Borut Razem <borut.razem AT siol.net>
25359
25360	* support/regression/Makefile.in,
25361	  support/regression/ports/pic14/spec.mk,
25362	  support/regression/ports/z80/spec.mk,
25363	  support/regression/ports/pic16/spec.mk,
25364	  support/regression/ports/gbz80/spec.mk,
25365	  support/regression/ports/ds390/spec.mk,
25366	  support/regression/ports/hc08/spec.mk,
25367	  support/regression/ports/ucz80/spec.mk,
25368	  support/regression/ports/host/spec.mk,
25369	  support/regression/ports/mcs51-common/spec.mk,
25370	  support/regression/ports/xa51/spec.mk:
25371	  preparations for running WIN32 regression test on Linux / wine
25372
253732009-07-22 Borut Razem <borut.razem AT siol.net>
25374
25375	* support/scripts/sdcc.nsi: add SDCC bin directory to path if silent mode
25376
253772009-07-20 Maarten Brock <sourceforge.brock AT dse.nl>
25378
25379	* as/asranlib/asranlib.dsp: removed all windows library dependencies
25380	* as/mcs51/asx8051.dsp: no debugging for Release build
25381	* src/SDCCast.h,
25382	* src/SDCCast.c (createRMW): IS_DEREF now also checks for PTR_OP
25383	* src/SDCCicode.c (geniCodeStruct): added assert for really being a struct,
25384	  (ast2iCode): IS_DEREF now also checks for PTR_OP, fixes bug 2821333
25385	* src/SDCCptropt.c: changed all TAB's to spaces
25386	* support/regression/tests/float_single.c,
25387	* device/lib/asincosf.c: removed unnecessary macros, const on global always
25388	  means 'put it in code memory', and 'reentrant' is predefined in testfwk.h
25389
253902009-07-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
25391
25392	* doc/sdccman.lyx: various changes
25393	* src/SDCCmain.c: fix typo in help text
25394
253952009-07-19 Borut Razem <borut.razem AT siol.net>
25396
25397	* src/SDCCast.c: removed check for "unanticipated opcode in tree",
25398	  introduced with patch #2802510
25399
254002009-07-18 Borut Razem <borut.razem AT siol.net>
25401
25402	* src/SDCCmain.c: RFE #1204438 - make SDCC a multicall binary,
25403	  fixed for WIN32
25404	* as/link/lkar.c: fixed bug 2817508 - double free or memory corruption
25405	  in aslink
25406	* src/SDCCast.c, support/regression/tests/bug2740884.c:
25407	  applied patch #2802510 - fix for bug #2740884,
25408	  fixed bug #2740884 - Incorrect assignment in array of structs,
25409	  thanks to Robert Larice
25410	* as/hc08/clean.mk, as/link/clean.mk, as/link/hc08/clean.mk,
25411	  as/link/mcs51/clean.mk, as/link/z80/clean.mk, as/mcs51/clean.mk,
25412	  as/z80/clean.mk, device/lib/clean.mk, device/lib/large/Makefile.in,
25413	  device/lib/Makefile.in, device/lib/mcs51/Makefile.in,
25414	  device/lib/medium/Makefile.in, device/lib/pic/Makefile.in,
25415	  device/lib/small/Makefile.in, support/cpp/Makefile.in:
25416	  applied patch #2801385 - make clean and distclean,
25417	  fixed bug #2799101 - make clean does not remove .obj in /as,
25418	  fixed bug #2783160 - "make distclean" fails to clean properly,
25419	  thanks to Robert Larice
25420	* .version, doc/sdccman.lyx: changed sdcc version to 2.9.2
25421
254222009-07-15 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
25423
25424	* src/SDCCmain.c: make SDCC a multicall binary, RFE #1204438,
25425	  allows choosing the port by renaming the sdcc binary
25426	  (to f.e. z80-sdcc) or by calling SDCC from a suitable link
25427	  (parameter -m takes precedence)
25428	* src/SDCCglue.c: be more verbose about constants in code space
25429
254302009-07-07 Raphael Neider <rneider AT web.de>
25431
25432	* src/pic16/device.c (find_in_list): ignore case during device
25433	  selection, fixes #2816817
25434
254352009-06-24 Raphael Neider <rneider AT web.de>
25436
25437	* src/pic/ralloc.c (pic14_assignRegisters): avoid incorrect register
25438	  reuse among functions (fixes #2810015), cosmetic changes
25439
254402009-06-22 Raphael Neider <rneider AT web.de>
25441
25442	* device/include/pic16/adc.h,
25443	  device/include/pic16/pic16devices.txt,
25444	  device/include/pic16/pic18f1[34]k50.h,
25445	  device/include/pic16/pic18f[24][456]j50.h,
25446	  device/include/pic16/pic18f[68][56]27.h,
25447	  device/include/pic16/pic18f[68][67]22.h,
25448	  device/include/pic16/pic18fregs.h,
25449	  device/lib/pic16/libdev/Makefile.am,
25450	  device/lib/pic16/libdev/pic18f1[34]k50.c,
25451	  device/lib/pic16/libdev/pic18f[24][456]j50.c,
25452	  device/lib/pic16/libdev/pic18f[68][56]27.c,
25453	  device/lib/pic16/libdev/pic18f[68][67]22.c,
25454	  device/lib/pic16/libio/Makefile.am,
25455	  device/lib/pic16/libio/adc/adcbusy.c,
25456	  device/lib/pic16/libio/adc/adcopen.c,
25457	  device/lib/pic16/libio/adc/adcsetch.c,
25458	  device/lib/pic16/libio/i2c/i2copen.c,
25459	  device/lib/pic16/pics.all,
25460	  doc/sdccman.lyx: added families 18f1[34]k50 (#2783178),
25461	    18f[24][456]j50 (#2794505), and 18f[68][56]27/18f[68][67]22
25462	* device/lib/pic16/aclocal.m4,
25463	  device/lib/pic16/configure,
25464	  device/lib/pic16/Makefile.in,
25465	  device/lib/pic16/debug/Makefile.in,
25466	  device/lib/pic16/libc/Makefile.in,
25467	  device/lib/pic16/libdev/Makefile.in,
25468	  device/lib/pic16/libio/Makefile.in,
25469	  device/lib/pic16/libm/Makefile.in,
25470	  device/lib/pic16/libsdcc/Makefile.in,
25471	  device/lib/pic16/startup/Makefile.in: regenerated
25472
254732009-06-13 Borut Razem <borut.razem AT siol.net>
25474
25475	* src/SDCCasm.c: fixed bug #2805536: Assembly code comment cause Internal Error
25476	* support/regression/tests/macro.c: new, added
25477
254782009-06-01 Maarten Brock <sourceforge.brock AT dse.nl>
25479
25480	* src/SDCC.y,
25481	* src/SDCCsymt.c (finalizeSpec),
25482	* src/SDCCsymt.h: applied patch for bug 2798646, thanks Robert Larice
25483	* src/SDCCsymt.c (initCSupport): also handle --funsigned-char for floating
25484	  point support routines
25485	* src/z80/ralloc.c (regTypeNum): fixed warning
25486	* device/lib/_atof.c,
25487	* support/regression/tests/args.c,
25488	* support/regression/tests/arithcse.c,
25489	* support/regression/tests/bitvars.c,
25490	* support/regression/tests/compare.c,
25491	* support/regression/tests/onebyte.c,
25492	* support/regression/tests/shifts.c,
25493	* support/regression/tests/uminus.c,
25494	* support/regression/tests/vaargs.c: fixed for --funsigned-char
25495
254962009-05-30 Borut Razem <borut.razem AT siol.net>
25497
25498	* device/include/mcs51/80c51xa.h: moved to device/include/xa51
25499	  device/include/mcs51/ds400rom.h: moved to device/include/ds400
25500	  device/include/mcs51/serial390.h: moved to device/include/ds390
25501	  device/include/mcs51/ds80c390.h, device/include/mcs51/tinibios.h:
25502	  moved back to device/include, since they are used also by ds400
25503	  device/include/Makefile.in: new include directories ds390, ds400
25504	  and xa51
25505	* device/include/stdlib.h: coorected types for _itoa and _ltoa
25506	* device/lib/ds400/Makefile.in: added include serch path include/ds400
25507
255082009-05-25 Philipp Klaus Krause <pkk AT spth.de>
25509	* src/z80/gen.c:
25510	  Fixed an ancient, but difficult to reproduce and detect bug, that
25511	  led to stack corruption under certain conditions.
25512
255132009-05-25 Borut Razem <borut.razem AT siol.net>
25514
25515	* device/include/80c51xa.h, device/include/ds400rom.h,
25516	  device/include/ds80c390.h, device/include/ser.h,
25517	  device/include/ser_ir.h, device/include/serial.h,
25518	  device/include/serial390.h, device/include/tinibios.h:
25519	  moved to device/include/mcs51/
25520	  device/include/z180.h:
25521	  moved to device/include/z80/
25522	  implemented RFE #1930974: Some device specific header files are not
25523	  in their folders
25524
255252009-05-24 Philipp Klaus Krause <pkk AT spth.de>
25526
25527	* src/z80/ralloc.c,
25528	  src/z80/peeph-z80.def,
25529	  src/SDCCasm.c:
25530	  Propagate rematerializability over addition of constants.
25531
255322009-05-24 Philipp Klaus Krause <pkk AT spth.de>
25533
25534	* src/z80/ralloc.c:
25535	  Improved use of hl as inter-i-code temporary.
25536
255372009-05-24 Philipp Klaus Krause <pkk AT spth.de>
25538
25539	* src/z80/gen.c:
25540	  Fixed bug #2795942.
25541
255422009-05-22 Raphael Neider <rneider AT web.de>
25543
25544	* src/pic16/gen.c (genGenericShift): do not overwrite the shift count
25545	  for `val = 1 << val', fixes bug #2795131
25546
255472009-05-18 Maarten Brock <sourceforge.brock AT dse.nl>
25548
25549	* src/SDCCglue.c (printIvalBitFields): cleaned up
25550	* src/pic16/glue.c (pic16_printIvalBitFields): same fix for bug 2791782
25551
255522009-05-17 Maarten Brock <sourceforge.brock AT dse.nl>
25553
25554	* device/lib/_iscntrl.c,
25555	* device/lib/_isdigit.c,
25556	* device/lib/_isgraph.c,
25557	* device/lib/_islower.c,
25558	* device/lib/_isprint.c,
25559	* device/lib/_ispunct.c,
25560	* device/lib/_isspace.c,
25561	* device/lib/_isupper.c,
25562	* device/lib/_isxdigit.c,
25563	* device/lib/_ltoa.c,
25564	* device/lib/pic16/libc/ctype/iscntrl.c,
25565	* device/lib/pic16/libc/ctype/isdigit.c,
25566	* device/lib/pic16/libc/ctype/isgraph.c,
25567	* device/lib/pic16/libc/ctype/islower.c,
25568	* device/lib/pic16/libc/ctype/isprint.c,
25569	* device/lib/pic16/libc/ctype/ispunct.c,
25570	* device/lib/pic16/libc/ctype/isspace.c,
25571	* device/lib/pic16/libc/ctype/isupper.c,
25572	* device/lib/pic16/libc/ctype/isxdigit.c,
25573	* device/lib/pic16/libc/stdlib/ltoa.c: fixed warnings after patch 2704189
25574	* src/SDCCglue.c (printIvalBitFields): fixed bug 2791782, a bug with
25575	  bitfields in next integer and an endianness bug for hc08
25576	* support/regression/tests/bitfields.c: added testcase for these bugs
25577
255782009-05-09 Philipp Klaus Krause <pkk AT spth.de>
25579
25580	* src/z80/ralloc.c,
25581	  src/z80/gen.c,
25582	  support/regression/test/bug-2646174.c:
25583	  Fixed bug #2646174.
25584
255852009-05-09 Philipp Klaus Krause <pkk AT spth.de>
25586
25587	* src/z80/peeph-z80.def:
25588	  Fixed bug #1924707.
25589
255902009-05-09 Borut Razem <borut.razem AT siol.net>
25591
25592	* doc/sdccman.lyx: implemented RFE #2786753: Remove Borland C support
25593
255942009-05-09 Maarten Brock <sourceforge.brock AT dse.nl>
25595
25596	* device/include/mcs51/uPSD32xx.h: added, thanks G.H.J. Morsink
25597	* device/include/mcs51/C8051F920.h: added, from patch 2486338,
25598	  thanks Steven Borley
25599
256002009-05-07 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
25601
25602	* support/librarian/sdcclib.c: fixed bugs in GetNameFromPath() and
25603	  ChangeExtension().  Thanks to Jon Nall for pointed the bug out and
25604	  patch #2788108.
25605
256062009-05-05 Maarten Brock <sourceforge.brock AT dse.nl>
25607
25608	* doc/sdccman.lyx: documented pointer casting for vararg function params
25609
256102009-05-04 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
25611
25612	* as/link/hc08/link_hc08.dsp, as/link/mcs51/aslink.dsp,
25613	  as/link/z80/linkgbz80.dsp, as/link/z80/linkz80.dsp: replaced getline.c
25614	  with lk_readnl.c.
25615
256162009-05-04 Borut Razem <borut.razem AT siol.net>
25617
25618	* support/cpp/sdcpp.c, support/cpp/version.c: fixed crash due to
25619	  missing initialization of line_table,
25620	  corrected sdcpp version to 4.4.0
25621
256222009-04-19 Philipp Klaus Krause <pkk AT spth.de>
25623
25624	* device/lib/z80/div.s:
25625	  Applied patch #2764475 from Marco Bodrato to speed up Z80 division.
25626
256272009-05-03 Borut Razem <borut.razem AT siol.net>
25628
25629	* as/link/hc08/Makefile.in, as/link/mcs51/Makefile.in,
25630	  as/link/z80/Makefile.in, as/link/lk_readnl.c, as/link/lk_readnl.h,
25631	  as/link/lklib.c, as/link/lkrel.c, as/link/lksdcclib.c:
25632	  getline renamed to lk_readln to prevent conflicts with Fedora 11
25633	  glibc-2.9.90-19 getline;
25634	  see https://bugzilla.redhat.com/show_bug.cgi?id=488217
25635
256362009-05-01 Maarten Brock <sourceforge.brock AT dse.nl>
25637
25638	* src/SDCCast.c (processParms): fixed bug 2783061 by applying patch from
25639	  Keith Packard, thanks
25640	* support/regression/tests/bug2783061.c: new, added
25641
256422009-04-28 Borut Razem <borut.razem AT siol.net>
25643
25644	* support/cpp/output.h, support/cpp/opts-common.c,
25645	  support/cpp/c-ppoutput.c, support/cpp/cppdefault.c,
25646	  support/cpp/system.h, support/cpp/cppdefault.h,
25647	  support/cpp/prefix.c, support/cpp/except.h, support/cpp/hwint.h,
25648	  support/cpp/prefix.h, support/cpp/libiberty/safe-ctype.h,
25649	  support/cpp/libiberty/filenames.h, support/cpp/libiberty/xstrdup.c,
25650	  support/cpp/libiberty/md5.c, support/cpp/libiberty/obstack.h,
25651	  support/cpp/sdcpp.c, support/cpp/intl.h, support/cpp/sdcpp.h
25652	  support/cpp/libcpp/symtab.c, support/cpp/libcpp/directives.c,
25653	  support/cpp/libcpp/macro.c, support/cpp/libcpp/include/cpplib.h,
25654	  support/cpp/libcpp/include/symtab.h,
25655	  support/cpp/libcpp/include/line-map.h,
25656	  support/cpp/libcpp/include/cpp-id-data.h,
25657	  support/cpp/libcpp/include/mkdeps.h, support/cpp/libcpp/files.c,
25658	  support/cpp/libcpp/line-map.c, support/cpp/libcpp/init.c,
25659	  support/cpp/libcpp/identifiers.c, support/cpp/libcpp/ucnid.h,
25660	  support/cpp/libcpp/traditional.c, support/cpp/libcpp/errors.c,
25661	  support/cpp/libcpp/expr.c, support/cpp/libcpp/internal.h,
25662	  support/cpp/libcpp/mkdeps.c, support/cpp/libcpp/lex.c,
25663	  support/cpp/libcpp/system.h, support/cpp/libcpp/charset.c,
25664	  support/cpp/opts.h, support/cpp/sdcpp-opts.c:
25665	  SDCPP synchronized with GCC CPP release version 4.4.0.
25666	  SDCPP license changed to GPL version 3 or later.
25667
256682009-04-28 Borut Razem <borut.razem AT siol.net>
25669
25670	* fixed GCC 4.4.0 mingw compilation:
25671	  sim/ucsim/cmd.src/cmdlex.cc: regenerated - added #include <stdio.h>
25672	* src/SDCCsymt.c: fixed warning:
25673	  suggest parentheses around operand of '!' or change '&' to '&&' or
25674	  '!' to '~'
25675	* support/scripts/sdcc_mingw32: sync with sdcc-build
25676
256772009-04-27 Raphael Neider <rneider AT web.de>
25678
25679	* src/pic16/gen.c (genNearPointerGet): fix double indirect
25680	  access to bitfields (#2782405)
25681
256822009-04-27 Borut Razem <borut.razem AT siol.net>
25683
25684	* fixed GCC 4.4.0 mingw compilation:
25685	* sim/ucsim/cmd.src/cmdlex.l: added #include <stdio.h>
25686	* support/cpp/sdcpp-opts.c: fixed warning:
25687	  unknown conversion type character 'm' in format,
25688	  use strerror(errno) instead of %m glibc extension format specifier
25689	* src/SDCCsymt.c: fixed warning:
25690	  suggest parentheses around operand of '!' or change '&' to '&&' or
25691	  '!' to '~'
25692	* src/pic16/pcode.c, src/pic16/glue.c: fixed warning:
25693	  unknown conversion type character 'h' in format,
25694	  replaced hh printf format specifier with parameter casting to
25695	  unsigned char
25696
256972009-04-19 Philipp Klaus Krause <pkk AT spth.de>
25698
25699	* device/lib/z80/shift.s,
25700	  device/lib/z80/memmove.s,
25701	  device/lib/z80/mul.s,
25702	  device/lib/z80/mulchar.s,
25703	  device/lib/z80/div.s,
25704	  device/lib/z80/mod.s:
25705	  Applied patch #2762516 from Marco Bodrato containing minor
25706	  improvements of many Z80 asm routines.
25707
257082009-04-19 Philipp Klaus Krause <pkk AT spth.de>
25709
25710	* support/regression/tests/strtok.c,
25711	  support/regression/tests/strstr.c,
25712	  support/regression/tests/strspn.c,
25713	  support/regression/tests/strncmp.c,
25714	  support/regression/tests/strcpy.c,
25715	  support/regression/tests/strcmp.c:
25716	  Added some regression tests by Ruud van Silfhout from patch #2321830.
25717
257182009-04-13 Borut Razem <borut.razem AT siol.net>
25719
25720	* device/lib/Makefile.in, device/lib/ds390/Makefile.in,
25721	  device/lib/ds400/Makefile.in, device/lib/gbz80/Makefile.in,
25722	  device/lib/hc08/Makefile.in, device/lib/mcs51/Makefile.in,
25723	  device/lib/z80/Makefile.in: override PORTDIR in sub-makefiles
25724
257252009-04-13 Raphael Neider <rneider AT web.de>
25726
25727	* device/lib/pic16/bootstrap.sh: avoid symlinks
25728	* device/lib/pic16/configure.ac,
25729	  device/lib/pic16/configure.gnu: removed obsolete configure-wrapper
25730
257312009-04-13 Borut Razem <borut.razem AT siol.net>
25732
25733	* device/lib/Makefile.in: remove abspath for PORTDIR, introduced in
25734	  svn revision #5341, since it makes asranlib to fail on cygming and
25735	  mingw builds: win32 native asranlib doesn't understand cygwin paths.
25736
257372009-04-10 Raphael Neider <rneider AT web.de>
25738
25739	* device/lib/pic/libsdcc/fs2ulong.c, device/lib/pic/libsdcc/fsadd.c,
25740	  device/lib/pic/libsdcc/fsdiv.c, device/lib/pic/libsdcc/fseq.c,
25741	  device/lib/pic/libsdcc/fsgt.c, device/lib/pic/libsdcc/fslt.c,
25742	  device/lib/pic/libsdcc/fsmul.c, device/lib/pic/libsdcc/fsneq.c,
25743	  device/lib/pic/libsdcc/fssub.c, device/lib/pic/libsdcc/ulong2fs.c,
25744	  device/lib/pic16/libsdcc/float/fs2ulong.c,
25745	  device/lib/pic16/libsdcc/float/fsadd.c,
25746	  device/lib/pic16/libsdcc/float/fsdiv.c,
25747	  device/lib/pic16/libsdcc/float/fsmul.c: fixed pic14 libraries, merge
25748	  changes from the pic16 port, minor code cleanup
25749	* src/pic/gen.c: implemented genUminusFloat(), fixed warning and style
25750
257512009-04-09 Philipp Klaus Krause <pkk AT spth.de>
25752
25753	* device/lib/z80/mod.s,
25754	  device/lib/z80/Makefile.in,
25755	  device/lib/z80/div.s,
25756	  device/lib/z80/modsigned.s,
25757	  device/lib/z80/divsigned.s:
25758	  Applied patch #2741451 from Marco Bodrato
25759	  and moved functions for signed modulo into
25760	  separate file.
25761
257622009-04-06 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
25763
25764	* src/mcs51/peeph.def: disabled rule 270, fixing bug #2736282
25765
257662009-04-04 Philipp Klaus Krause <pkk AT spth.de>
25767
25768	* src/z80/gen.c,
25769	  src/z80/peeph-z80.def:
25770	  Improved caching of pointers in hl and iy.
25771	  device/lib/z80/div.s:
25772	  Applied patch #2727917 from Marco Bodrato.
25773
257742009-04-03 Philipp Klaus Krause <pkk AT spth.de>
25775
25776	* src/z80/ralloc.c:
25777	  Enabled use of hl as inter-i-code temporary.
25778
257792009-04-03 Philipp Klaus Krause <pkk AT spth.de>
25780
25781	* src/z80/peeph-z80.def:
25782	  Reenabled peephole 0t.
25783
257842009-04-03 Philipp Klaus Krause <pkk AT spth.de>
25785
25786	* src/z80/gen.c:
25787	  Fixed bugs #2728224, #2728218.
25788	  src/z80/peeph-z80.def:
25789	  Workaround for bug #2728445.
25790	  support/regression/tests/memory.c:
25791	  Added test for memcmp().
25792
257932009-04-03 Philipp Klaus Krause <pkk AT spth.de>
25794
25795	* device/lib/z80/mul.s,
25796	  device/lib/z80/memmove.s,
25797	  device/lib/z80/strlen.s:
25798	  Minor improvements, code cleanup and license clarification.
25799
258002009-04-01 Philipp Klaus Krause <pkk AT spth.de>
25801
25802	* device/lib/z80/mul.s:
25803	  Minor improvement in Z80 16x16 bit multiplication.
25804
258052009-03-23 Borut Razem <borut.razem AT siol.net>
25806
25807	* src/SDCCval.c, src/SDCCmain.c, device/include/limits.h,
25808	  device/include/pic/limits.h, device/include/pic16/limits.h,
25809	  device/lib/_fs2schar.c, device/lib/pic/libsdcc/fs2schar.c,
25810	  device/lib/pic16/libsdcc/float/fs2schar.c, doc/sdccman.lyx,
25811	  support/regression/tests/funsigned-char.c:
25812	  applied patch 2704189: character constant sign fix
25813	  thanks to Robert Larice
25814
258152009-03-22 Borut Razem <borut.razem AT siol.net>
25816
25817	* Small Device C Compiler 2.9.0 released
25818	* .version, doc/sdccman.lyx: changed sdcc version to 2.9.1
25819
258202009-03-15 Borut Razem <borut.razem AT siol.net>
25821
25822	* support/scripts/repack_release.sh: added
25823
258242009-03-13 Borut Razem <borut.razem AT siol.net>
25825
25826	* doc/sdccman.lyx: "freeware" replaced with "free open source"
25827
258282009-03-12 Borut Razem <borut.razem AT siol.net>
25829
25830	* src/z80/peep.c: #2652979: --debug crashes sdcc
25831
258322009-03-12 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
25833
25834	* src/SDCCglue.c,
25835	  support/regression/tests/bug2655200.c:
25836	  applied modified patch from Robert Larice <larice AT vidisys.de>
25837	  fixing original report of bug #2655200: pointer to pdata memory
25838	  not correctly initialized
25839
258402009-03-11 Borut Razem <borut.razem AT siol.net>
25841
25842	* as/asranlib/asranlib.c: retain the original file mode
25843
258442009-03-10 Borut Razem <borut.razem AT siol.net>
25845
25846	* src/mcs51/gen.c, src/z80/gen.c, src/hc08/gen.c, src/ds390/gen.c,
25847	  support/regression/tests/bug1875933.c:
25848	  fixed bug #1875933: Evelyn jumps into the void
25849	  thanks to Robert Larice
25850
258512009-03-10 Raphael Neider <rneider AT web.de>
25852
25853	* src/pic16/pcode.c (LinkFlow): fix invalid cast from pCodeLabel
25854	  to pCodeInstruction to avoid a segmentation fault
25855
258562009-03-03 Borut Razem <borut.razem AT siol.net>
25857
25858	* device/lib/printf_large.c: fixed bug #2656821: bug in printf
25859
258602009-03-03 Raphael Neider <rneider AT web.de>
25861
25862	* device/lib/pic/libdev/Makefile.in: build device-specific
25863	  libraries for the correct processor, fixes #2654585
25864
258652009-03-01 Raphael Neider <rneider AT web.de>
25866
25867	* device/lib/Makefile.in: fixed parallel builds (i.e., make -jN, N>1)
25868
258692009-03-01 Borut Razem <borut.razem AT siol.net>
25870
25871	* src/z80/peep.c: fixed bug #2648964: --i-code-in-asm crashes sdcc
25872	* .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt:
25873	  changed sdcc version to 2.9.0
25874
258752009-03-01 Maarten Brock <sourceforge.brock AT dse.nl>
25876
25877	* src/mcs51/ralloc.c (spillThis, spilSomething): fixed bug 2435941
25878	  (serialRegAssign): do not spil bit registers
25879	  throughout cosmetic changes
25880	* support/regression/tests/bug2435941.c: new, added
25881
258822009-02-28 Raphael Neider <rneider AT web.de>
25883
25884	* src/regression/compare10.c,
25885	  src/regression/compare7.c,
25886	  src/regression/compare8.c,
25887	  src/regression/compare9.c: reset watchdog timer in time
25888	* src/regression/configword.c: apply patch from #2488150
25889	* src/pic/glue.c (pic14createInterruptVect): pin RESET vector
25890	  handler to 0x0000 as the linker no longer knows STARTUP sections
25891	* src/pic/pcode.c (register_reassign, ReuseReg): applied modified
25892	  patch #2512926 to (mostly) fix #1762626, cosmetic changes
25893	* src/pic/pcodepeep.c: remove reference to nonexisting function
25894
258952009-02-28 Raphael Neider <rneider AT web.de>
25896
25897	* device/include/pic16/signal.h: avoid multiline inline
25898	  assembler statements in macros, addresses #2644965
25899
259002009-02-27 Raphael Neider <rneider AT web.de>
25901
25902	* device/include/pic16/pic18f[24][3456]k20.h,
25903	  device/include/pic16/pic18f[68][567]j50.h,
25904	  device/include/pic16/pic18f[68]6j55.h,
25905	  device/lib/pic16/libdev/pic18f[24][3456]k20.c,
25906	  device/lib/pic16/libdev/pic18f[68][567]j50.c,
25907	  device/lib/pic16/libdev/pic18f[68]6j55.c,
25908	  device/include/pic16/pic18fregs.h,
25909	  device/include/pic16/pic16devices.txt,
25910	  device/lib/pic16/pics.all,
25911	  device/lib/pic16/libdev/Makefile.am,
25912	  device/lib/pic16/libio/Makefile.am: added/re-enabled many device
25913	  families (87j50 family contributed by Robert Wuest)
25914
25915	* device/include/pic16/adc.h,
25916	  device/lib/pic16/libio/adc/adcbusy.c,
25917	  device/lib/pic16/libio/adc/adcclose.c,
25918	  device/lib/pic16/libio/adc/adcconv.c,
25919	  device/lib/pic16/libio/adc/adcopen.c,
25920	  device/lib/pic16/libio/adc/adcsetch.c: added 65j50-style ADC
25921
25922	* doc/sdccman.lyx: updated list of supported devices, fixed typo
25923	* device/lib/pic16/Makefile.common: do not suppress assembler warnings
25924
25925	* device/lib/pic16/Makefile.in,
25926	  device/lib/pic16/libm/Makefile.in,
25927	  device/lib/pic16/debug/Makefile.in,
25928	  device/lib/pic16/libio/Makefile.in,
25929	  device/lib/pic16/startup/Makefile.in,
25930	  device/lib/pic16/libsdcc/Makefile.in,
25931	  device/lib/pic16/libdev/Makefile.in,
25932	  device/lib/pic16/libc/Makefile.in: regenerated
25933
259342009-02-27 Borut Razem <borut.razem AT siol.net>
25935
25936	* as/z80/asexpr.c, as/z80/z80mch.c: re-fixed bugs
25937	  #1829678 and #1704376 in the way proposed by Alan Baldwin
25938
259392009-02-23 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
25940
25941	* device/include/mcs51/at89c51ed2.h: Fixed address of SFR P5. Thanks
25942	  to Steve Qu for the fix.
25943
259442009-02-23 Borut Razem <borut.razem AT siol.net>
25945
25946	* as/z80/asexpr.c: fixed bug #1829678: Z-80 CP A,<xxx> assembly
25947	  it is already fixed for mcs51 and hc08 targets
25948	* as/z80/z80mch.c: fixed bug #1704376: missing as-z80 errors
25949
259502009-02-22 Borut Razem <borut.razem AT siol.net>
25951
25952	* device/lib/Makefile.in: fixed parenthesis error
25953	* doc/sdccman.lyx: fixed webdocs bug #2071421: error in the manual,
25954	  fixed webdocs bug #1967920: --version
25955
259562009-02-18 Maarten Brock <sourceforge.brock AT dse.nl>
25957
25958	* device/include/mcs51/at89c51ed2.h: fixed bug #2071949 bitmask RBCK wrong
25959
259602009-02-17 Maarten Brock <sourceforge.brock AT dse.nl>
25961
25962	* as/link/mcs51/lkihx.c (hexRecord): bugfix do not insert extended address
25963	  when addresses are unsorted
25964
259652009-02-15 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
25966
25967	* device/include/mcs51/p89v66x.h: added ENBOOT thanks
25968	  Gudjon Gudjonsson <gudjon AT gudjon.org>
25969	* device/include/mcs51/p89c66x.h: fixed some defines
25970	* device/include/mcs51/p89v66x.h: fixed some sbit addresses
25971	* doc/sdccman.lyx: added <NO FLOAT> to index, try to reanimate
25972	  svn keywords
25973
259742009-02-14 Borut Razem <borut.razem AT siol.net>
25975
25976	* doc/sdccman.lyx: corrected cpp info
25977
259782009-02-13 Borut Razem <borut.razem AT siol.net>
25979
25980	* as/Makefile.in: *.doc renamed to *.txt
25981
259822009-02-11 Borut Razem <borut.razem AT siol.net>
25983
25984	* as/doc/aslnk.doc, as/doc/abstra.doc: renamed to *.txt
25985	* as/doc/aslnk.txt, as/doc/asxhtml.html: changed licens to GPLv3
25986
259872009-02-11 Borut Razem <borut.razem AT siol.net>
25988
25989	* doc/sdccman.lyx: documented ar format libraries
25990
259912009-02-10 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
25992
25993	* support/regression/tests/float_single.c: added regression
25994	  test. Some testpoints for probably rarely used functions
25995	  (acosf, sinhf, tanf, expf) disabled for some targets
25996
259972009-02-10 Raphael Neider <rneider AT web.de>
25998
25999	* src/pic16/gen.c (pic16_freeAsmop): avoid NULL pointer dereference,
26000	  (genAssign): fixed for operands on the stack
26001
26002	* device/lib/pic16/libc/stdio/vfprintf.c,
26003	  device/lib/pic16/configure.ac,
26004	  device/lib/pic16/Makefile.common: add configurable support for
26005	  printing floats via ./configure --enable-floats
26006	* device/lib/pic16/configure,
26007	  device/lib/pic16/Makefile.in,
26008	  device/lib/pic16/libm/Makefile.in,
26009	  device/lib/pic16/debug/Makefile.in,
26010	  device/lib/pic16/libio/Makefile.in,
26011	  device/lib/pic16/startup/Makefile.in,
26012	  device/lib/pic16/libsdcc/Makefile.in,
26013	  device/lib/pic16/libdev/Makefile.in,
26014	  device/lib/pic16/libc/Makefile.in: regenerated
26015	* doc/sdccman.lyx: documented float support and how to get it
26016	* doc/Makefile.in: fixed race condition on parallel builds
26017
26018	* device/lib/pic16/libc/stdio/sprintf.c,
26019	  device/lib/pic16/libc/stdio/vsprintf.c: do not mess up the user's
26020	  pointer to the string buffer, enlarge buffer for x_ftoa()
26021
260222009-02-10 Borut Razem <borut.razem AT siol.net>
26023
26024	* device/lib/printf_tiny.c: replaced non-C89 comments '//' with '/* */'
26025
260262009-02-10 Raphael Neider <rneider AT web.de>
26027
26028	* device/include/pic16/pic18f*.h: add bit aliases in INTCONbits_t
26029
260302009-02-09 Raphael Neider <rneider AT web.de>
26031
26032	* src/pic16/pcode.c (assignToSameBank): add force argument to ignore
26033	  artificial bank size limits for compound data (structs, arrays),
26034	  avoids assert if --obanksel=N, N > 1, is given
26035
260362009-02-09 Borut Razem <borut.razem AT siol.net>
26037
26038	* as/asranlib/asranlib.c, link/lkar.c: don't check the padding bytes since
26039	  the openSUSE GNU ar (GNU Binutils; openSUSE 11.0) 2.18.50.20080409-11.1
26040	  uses '`' character instead '\n' for padding
26041	* as/asranlib/asranlib.c: made it more robust
26042
260432009-02-08 Borut Razem <borut.razem AT siol.net>
26044
26045	* as/COPYING3: added
26046	* support/scripts/sdcc.nsi: added COPYING3.txt to the package
26047	* device/lib/Makefile.in: reenable floating point in model-xstack-auto
26048	  libraries
26049
260502009-02-07 Borut Razem <borut.razem AT siol.net>
26051
26052	* as/asranlib/asranlib.c: fixed BSD header length calculation
26053	* .version, doc/sdccman.lyx: bumped sdcc version to 2.8.9
26054	  due sdcc asxxxx license change to GPLv3
26055
260562009-02-05 Borut Razem <borut.razem AT siol.net>
26057
26058	* as/asranlib/asranlib.c, link/lkar.h, link/lkar.c:
26059	  added support for BSD (Mac OS X) ar format
26060	* as/asxxsrc/aslex.c, as/as/asxxsrc/asnoice.c, as/as/asxxsrc/assym.c,
26061	  as/as/hc08/asdata.c, as/hc08/asexpr.c, as/hc08/aslist.c,
26062	  as/hc08/asm.h, as/hc08/asmain.c, as/hc08/asout.c, as/hc08/assubr.c,
26063	  as/hc08/m08adr.c, as/hc08/m08ext.c, as/hc08/m08mch.c,
26064	  as/hc08/m08pst.c, as/hc08/m6808.h, as/link/aslink.h,
26065	  as/link/hc08/lkarea.c, as/link/hc08/lkelf.c, as/link/hc08/lkihx.c,
26066	  as/link/hc08/lkmain.c, as/link/hc08/lkmem.c, as/link/hc08/lkrloc.c,
26067	  as/link/hc08/lks19.c, as/link/lkaomf51.c, as/link/lkdata.c,
26068	  as/link/lkeval.c, as/link/lkhead.c, as/link/lklex.c, as/link/lklib.c,
26069	  as/link/lklibr.c, as/link/lklibr.h, as/link/lklist.c,
26070	  as/link/lknoice.c, as/link/lkrel.c, as/link/lkrel.h,
26071	  as/link/lksdcclib.c, as/link/lkstore.c, as/link/lksym.c,
26072	  as/link/mcs51/lkarea.c, as/link/mcs51/lkihx.c,
26073	  as/link/mcs51/lkmain.c, as/link/mcs51/lkmem.c,
26074	  as/link/mcs51/lkrloc.c, as/link/mcs51/lks19.c, as/link/z80/lkarea.c,
26075	  as/link/z80/lkgb.c, as/link/z80/lkgg.c, as/link/z80/lkihx.c,
26076	  as/link/z80/lkmain.c, as/link/z80/lkrloc.c, as/link/z80/lks19.c,
26077	  as/mcs51/asdata.c, as/mcs51/asexpr.c, as/mcs51/aslist.c,
26078	  as/mcs51/asm.h, as/mcs51/asmain.c, as/mcs51/asout.c,
26079	  as/mcs51/assubr.c, as/mcs51/i51adr.c, as/mcs51/i51ext.c,
26080	  as/mcs51/i51mch.c, as/mcs51/i51pst.c, as/mcs51/i8051.h,
26081	  as/xa51/xa_link.c, as/xa51/xa_main.c, as/xa51/xa_main.h,
26082	  as/xa51/xa_rasm.l, as/xa51/xa_rasm.y, as/xa51/xa_version.h,
26083	  as/z80/asdata.c, as/z80/asexpr.c, as/z80/aslist.c, as/z80/asm.h,
26084	  as/z80/asmain.c, as/z80/asout.c, as/z80/assubr.c, as/z80/z80.h,
26085	  as/z80/z80adr.c, as/z80/z80ext.c, as/z80/z80mch.c, as/z80/z80pst.c:
26086	  changed license to GPL either version 3, or (at your option) any
26087	  later version
26088
260892009-02-05 Borut Razem <borut.razem AT siol.net>
26090
26091	* as/asranlib/asranlib.c, link/lkar.h, link/lkar.c:
26092	  added support for BSD (Mac OS X) ar format
26093
260942009-02-02 Borut Razem <borut.razem AT siol.net>
26095
26096	* device/lib/gbz80/Makefile.in, device/lib/hc08/Makefile.in,
26097	  device/lib/z80/Makefile.in:
26098	  chose source files in the PORT directory if they are available
26099
261002009-02-01 Raphael Neider <rneider AT web.de>
26101
26102	* device/lib/pic16/libdev/pic18f1220.c,
26103	* device/lib/pic16/libdev/pic18f4450.c:
26104	  define SSPBUF to allow use of printf
26105
261062009-02-01 Borut Razem <borut.razem AT siol.net>
26107
26108	* device/lib/Makefile.in, device/lib/gbz80/Makefile.in,
26109	  device/lib/hc08/Makefile.in, device/lib/incl.mk,
26110	  device/lib/z80/Makefile.in:
26111	  don't remake libraries
26112	* support/regression/tests/snprintf.c:
26113	  reenable floating point in small-xstack-auto library
26114
261152009-01-26 Raphael Neider <rneider AT web.de>
26116
26117	* src/pic16/ralloc.c (packForPush): disabled to fix #2496919
26118
261192009-01-25 Raphael Neider <rneider AT web.de>
26120
26121	* src/pic16/main.c (_pic16_linkEdit): prepend -L paths to linker
26122	  search path instead of appending them
26123
261242009-01-24 Borut Razem <borut.razem AT siol.net>
26125
26126	* as/asranlib/asranlib.h: changed type of offset to unsigned int to
26127	  make it work on ppc Mac OS X (off_t is 64 bit and is not converted
26128	  to 32 bit unsigned int when calling sputl() since it is a macro
26129	* as/link/lkar.c: changed the initialization of This->loaded
26130
261312009-01-23 Borut Razem <borut.razem AT siol.net>
26132
26133	* as/link/lkar.h: changed type of ar_size to size_t to make it work on
26134	  ppc Mac OS X (off_t is 64 bit and is not converted to 32 bit
26135	  unsigned int when calling new(), since asxxxx doesn't use function
26136	  prototypes)
26137
261382009-01-21 Borut Razem <borut.razem AT siol.net>
26139
26140	* as/link/lkar.h: sgetl and sputl are independent of endianness
26141	* as/link/sdxxxx_config.h.in: removed endianness detection
26142
261432009-01-20 Borut Razem <borut.razem AT siol.net>
26144
26145	* .version, doc/sdccman.lyx: bumped sdcc version to 2.8.8
26146	  due creation of ar format libraries
26147	* support/scripts/sdcc.nsi:
26148	  don't add nonexistent object files to the package
26149
261502009-01-19 Borut Razem <borut.razem AT siol.net>
26151
26152	* Makefile.in, configure.in, configure,
26153	  device/lib/Makefile.in, device/lib/ds390/Makefile.in,
26154	  device/lib/ds400/Makefile.in, device/lib/gbz80/Makefile.in,
26155	  device/lib/hc08/Makefile.in, device/lib/large/Makefile.in,
26156	  device/lib/mcs51/Makefile.in, device/lib/medium/Makefile.in,
26157	  device/lib/small/Makefile.in,
26158	  device/lib/z80/Makefile.in: create ar format libraries
26159	* support/regression/ports/mcs51-xstack-auto/spec.mk:
26160	  use device/lib/Makefile to create library
26161	* support/regression/tests/snprintf.c:
26162	  floating point is not enabled in small-xstack-auto library
26163	* device/lib/libfloat.lib, device/lib/libint.lib,
26164	  device/lib/liblong.lib, device/lib/libsdcc.lib: removed
26165
261662009-01-18 Borut Razem <borut.razem AT siol.net>
26167
26168	* support/cpp/auto-host.h: fixed warning: "__STDC__" redefined,
26169	  warning: extra tokens at end of #endif directive
26170
261712009-01-11 Borut Razem <borut.razem AT siol.net>
26172
26173	* Makefile.in: added SDCC_ASRANLIB to PKGS
26174
261752009-01-10 Borut Razem <borut.razem AT siol.net>
26176
26177	* support/scripts/sdcc.nsi: added asranlib.exe to the install package
26178	* .version, doc/sdccman.lyx: bumped sdcc version to 2.8.7
26179	  due added support for ar format libraries
26180
261812009-01-09 Borut Razem <borut.razem AT siol.net>
26182
26183	* as/asranlib/Makefile.in, as/asranlib/asranlib.dsp,
26184	  as/asranlib/asranlib.c: added asranlib
26185	* as/link/lkar.c, as/link/lkar.h: added support for ar format libraries
26186	* Makefile.in, as/link/hc08/Makefile.in,
26187	  as/link/hc08/link_hc08.dsp, as/link/lklib.c, as/link/lklibr.c,
26188	  as/link/lklibr.h, as/link/lkrel.c, as/link/lkrel.h,
26189	  as/link/lksdcclib.c, as/link/mcs51/Makefile.in,
26190	  as/link/mcs51/aslink.dsp, as/link/z80/Makefile.in,
26191	  as/link/z80/linkgbz80.dsp, as/link/z80/linkz80.dsp, configure,
26192	  configure.in, sdcc.dsw: modified to support ar format libraries
26193
261942009-01-08 Maarten Brock <sourceforge.brock AT dse.nl>
26195
26196	* src/SDCCast.c (decorateType RETURN): use RESULT_TYPE_GPTR for generic
26197	  pointer return
26198
261992009-01-05 Philipp Klaus Krause <pkk AT spth.de>
26200
26201	* sim/ucsim/z80.src/inst_ed.cc:
26202	  Fixed bug #2488074, which made regression tests fail.
26203
262042009-01-05 Philipp Klaus Krause <pkk AT spth.de>
26205
26206	* device/lib/z80/mod.s,
26207	  device/lib/z80/div.s,
26208	  device/lib/z80/mulchar.s,
26209	  device/lib/z80/mul.s,
26210	  device/lib/z80/divsigned.s,
26211	  device/lib/z80/Makefile.in:
26212	  Implemented RFE #1702376.
26213
262142009-01-05 Borut Razem <borut.razem AT siol.net>
26215
26216	* as/link/lksdcclib.c:
26217	  fixed linker hanging in INDEXLIB is not defined (hc08)
26218
262192009-01-04 Philipp Klaus Krause <pkk AT spth.de>
26220
26221	* src/z80/gen.c:
26222	  Implemented RFE #2485684, and some further improvements of HL caching
26223	  including a bugfix.
26224	* src/z80/peeph-z80.def:
26225	  Fixed a bug exposed by implementing RFE #2485684.
26226
262272009-01-04 Philipp Klaus Krause <pkk AT spth.de>
26228
26229	* src/z80/peeph-z80.def:
26230	  Peephole improvements.
26231	* src/z80/gen.c,
26232	  src/z80/main.c,
26233	  device/include/string.h,
26234	  device/lib/z80/memmove.s:
26235	  Minor code cleanup.
26236	* device/lib/z80/Makefile.in,
26237	  device/lib/Makefile.in,
26238	  support/regression/tests/memory.c,
26239	  device/lib/z80/strlen.s:
26240	  Partially implemented RFE #2471534.
26241
262422009-01-04 Borut Razem <borut.razem AT siol.net>
26243
26244	* .version, doc/sdccman.lyx: bumped sdcc version to 2.8.6
26245	  due changes in sdcc asxxxx linkers - it sholud be done 2 days ago :(
26246	* doc/README.txt: updated John Hartman's e-mail address
26247	* as/link/lkrel.c, as/link/lksdcclib.c:
26248	  fixed bug #2484677: Linker hangs
26249	* src/z80/peep.c: fixed msvc warning C4047:
26250	  'return' : 'int ' differs in levels of indirection from 'char *'
26251	* config.dsp: as/lib corrected to as/link
26252
262532009-01-04 Philipp Klaus Krause <pkk AT spth.de>
26254
26255	* src/z80/peep.c:
26256	  Implemented RFE #2484693.
26257	* src/z80/peeph-z80.def:
26258	  Some peephole improvements.
26259
262602009-01-03 Borut Razem <borut.razem AT siol.net>
26261
26262	* as/link/lklibr.c:
26263	  fixed warning: 'ret' may be used uninitialized in this function
26264
262652009-01-02 Borut Razem <borut.razem AT siol.net>
26266
26267	* as/link/lklib.c, as/link/lksdcclib.c, as/link/lklibr.h,
26268	  as/link/getline.[ch], as/link/lkrel.[ch]: added,
26269	  made support for differnet library formats more flexible,
26270	  preparation for support of ar format
26271	* as/link/lklibr.c, as/link/z80/Makefile.in,
26272	  as/link/z80/linkgbz80.dsp, as/link/z80/linkz80.dsp,
26273	  as/link/hc08/link_hc08.dsp, as/link/hc08/Makefile.in,
26274	  as/link/mcs51/aslink.dsp, as/link/mcs51/Makefile.in,
26275	  as/link/hc08/lkelf.c, as/link/aslink.h:
26276	  made support for differnet library formats more flexible,
26277	  preparation for support of ar format
26278
262792009-01-01 Borut Razem <borut.razem AT siol.net>
26280
26281	* as/link/asxxxx_config.h.in:
26282	  fixed warning: extra tokens at end of #endif directive
26283	* src/z80/peep.c:
26284	  fixed warning: suggest parentheses around && within ||
26285	* device/lib/Makefile.in: allow whitespaces at the end of lines in
26286	  ports.build, in order to make it work on cygwin - it seems to be a
26287	  bug in cygwin grep: CR is not treated as part of end-of-line
26288
262892008-12-31 Borut Razem <borut.razem AT siol.net>
26290
26291	* configure, configure.in, config.dsp, config_vc.awk,
26292	  as/link/asxxxx_config.h.in, as/link/hc08/lkelf.c, as/link/aslink.h,
26293	  as/link/hc08/Makefile.in, as/link/mcs51/Makefile.in:
26294	  introduced asxxxx_config.h.in
26295
262962008-12-30 Philipp Klaus Krause <pkk AT spth.de>
26297
26298	* src/z80/gen.c,
26299	  src/z80/peeph-z80.def:
26300	  Minor addition improvement.
26301
263022008-12-30 Raphael Neider <rneider AT web.de>
26303
26304	* as/link/hc08/lkelf.c, as/link/lkaomf51.c, as/link/lklibr.c,
26305	  as/link/z80/lkgb.c, debugger/mcs51/cmd.c, sim/ucsim/utils.cc,
26306	  src/SDCCasm.c, support/Util/dbuf_string.c, support/cpp/c-ppoutput.c,
26307	  support/cpp/libcpp/lex.c, support/cpp/libcpp/macro.c,
26308	  support/librarian/sdcclib.c, support/makebin/makebin.c:
26309	  partially revert changes from r5293..r5295
26310
263112008-12-29 Philipp Klaus Krause <pkk AT spth.de>
26312
26313	* src/z80/peeph-z80.def:
26314	  Minor peephole improvement.
26315
263162008-12-29 Raphael Neider <rneider AT web.de>
26317
26318	* src/pic/pcode.c (insertBankSel, FixRegisterBanking): emit
26319	  incorrectly discarded BANKSELs
26320
263212008-12-29 Philipp Klaus Krause <pkk AT spth.de>
26322
26323	* support/regression/tests/memory.c:
26324	  Added simple test for memset(), memcpy() and memmove()
26325
263262008-12-29 Borut Razem <borut.razem AT siol.net>
26327
26328	* sdcc/support/scripts/sdcc.nsi: removed $INSTDIR\lib\src\z80\*.c
26329
263302008-12-28 Maarten Brock <sourceforge.brock AT dse.nl>
26331
26332	* src/mcs51/peeph.def (177.e): replaced notVolatile(%3) with
26333	  operandsNotRelated(%1 %3), had to change (a)r%1 to (a)%1 for this to work
26334	  (177.j): added new rule
26335	* src/SDCCsymt.h: added RESULT_TYPE_GPTR
26336	* src/SDCCast.c (processParms): use RESULT_TYPE_GPTR for generic ptr parms,
26337	  (decorateType CAST): propagate storage class to generic pointer results
26338
263392008-12-27 Philipp Klaus Krause <pkk AT spth.de>
26340
26341	* device/lib/z80/string.c,
26342	  device/lib/z80/printf.c,
26343	  device/lib/z80/mul.s:
26344	  z80 library cleanup
26345	* src/z80/gen.c:
26346	  Fixed code generation bug exposed by builtin memcpy().
26347
263482008-12-27 Philipp Klaus Krause <pkk AT spth.de>
26349
26350	* device/lib/_memcpy.c:
26351	  fixed conflict with builtin memcpy()
26352
263532008-12-26 Borut Razem <borut.razem AT siol.net>
26354
26355	* support/librarian/sdcclib.c:
26356	  fixed bug 2466950: "sdcclib broken"
26357	  by removing fgets return value check
26358
263592008-12-26 Philipp Klaus Krause <pkk AT spth.de>
26360	* src/z80/main.c,
26361	  src/z80/gen.c,
26362	  device/include/string.h: Implemented RFE #1914254
26363
263642008-12-26 Philipp Klaus Krause <pkk AT spth.de>
26365	* device/lib/z80/Makefile.in,
26366	  device/lib/Makefile.in,
26367	  device/lib/z80/memmove.s: Implemented RFE #1914256
26368
263692008-12-26 Philipp Klaus Krause <pkk AT spth.de>
26370
26371	* src/z80/peeph-z80.def: fixed a bug in peephole 0zf
26372	* src/z80/peep.c: improved checks for unused data
26373	* src/z80/gen.c,
26374	  src/z80/main.c: Implemented RFE #1899189
26375
263762008-12-25 Borut Razem <borut.razem AT siol.net>
26377
26378	* support/regression/Makefile.in:
26379	  add -I$(INC_DIR) to SDCCFLAGS only if INC_DIR is defined
26380
263812008-12-25 Philipp Klaus Krause <pkk AT spth.de>
26382
26383	* src/z80/peeph-z80.def: minor peephole improvements
26384
263852008-12-21 Borut Razem <borut.razem AT siol.net>
26386
26387	* support/librarian/sdcclib.c: fixed build failure on Mac OS X
26388	  due to redefinition of symbol __assert
26389	  sdcclib.c:53:1:warning: "__assert" redefined
26390	  /Xcode2.5/SDKs/MacOSX10.4u.sdk/usr/include/assert.h:80:1:
26391	  warning: this is the location of the previous definition
26392
263932008-12-20 Raphael Neider <rneider AT web.de>
26394
26395	* debugger/mcs51/break.c, debugger/mcs51/cmd.c,
26396	  debugger/mcs51/simi.c, debugger/mcs51/symtab.c,
26397	  support/cpp/libcpp/macro.c: fix format string errors
26398
26399	* sim/ucsim/s51.src/timer2.cc: add clarifying parens
26400
26401	* src/pic/device.c: partial rewrite using strtok,
26402	  quieten compiler warnings, adopt SDCC coding style
26403
26404	* as/link/hc08/lkelf.c, as/link/lkaomf51.c, as/link/lklibr.c,
26405	  as/link/z80/lkgb.c, as/z80/asout.c, debugger/mcs51/cmd.c,
26406	  sim/ucsim/utils.cc, src/SDCCasm.c, support/Util/dbuf_string.c,
26407	  support/cpp/c-ppoutput.c, support/cpp/libcpp/lex.c,
26408	  support/librarian/sdcclib.c, support/makebin/makebin.c:
26409	  quieten most compiler warnings
26410
26411	* sim/ucsim/avr.src/arith_inst.cc: quieten compiler warnings,
26412	  probably fix operator precedence bug
26413
26414	* doc/clean.mk: quieten rm if no .lyx is present
26415
264162008-12-19 Borut Razem <borut.razem AT siol.net>
26417
26418	* doc/sdccman.lyx, doc/random-notes.txt, doc/avr/avr_design.txt,
26419	  doc/TININative.txt, doc/macro-sys-design.txt, doc/libdoc.txt,
26420	  doc/README.txt, doc/test_suite_spec.lyx:
26421	  applied patch 2446381: Dcoumentation spelling correcitons
26422	  thanks to Steven Borley
26423
264242008-12-16 Raphael Neider <rneider AT web.de>
26425
26426	* device/include/pic/pic12f629.h,
26427	  device/include/pic/pic12f675.h,
26428	  device/lib/pic/libdev/pic12f629.c,
26429	  device/lib/pic/libdev/pic12f675.c: consolidated, added TRISIO bits
26430
264312008-12-14 Borut Razem <borut.razem AT siol.net>
26432
26433	* doc/sdccman.lyx, cdbfileformat.lyx, test_suite_spec.lyx:
26434	  converted to LyX 1.5.7 (\lyxformat 276) format
26435
264362008-12-07 Borut Razem <borut.razem AT siol.net>
26437
26438	* support/regression/tests/bitfields.c:
26439	  added test case for bug #2366757
26440
264412008-12-07 Raphael Neider <rneider AT web.de>
26442
26443	* src/pic16/glue.c (pic16_printIvalBitFields): prevent
26444	  NULL pointer dereference, closes #2366757
26445
264462008-11-25 Raphael Neider <rneider AT web.de>
26447
26448	* device/include/pic16/pic16devices.txt,
26449	  sdcc/src/pic16/device.c,
26450	  sdcc/src/pic16/device.h: implicitly disable XINST
26451	  whenever CONFIG4L is set via an additional optional
26452	  argument to the configword directive in pic16devices.txt
26453
264542008-11-24 Raphael Neider <rneider AT web.de>
26455
26456	* device/lib/pic16/configure.ac,
26457	  device/lib/pic16/Makefile.common: fixed quoting issues
26458
26459	* device/lib/pic16/configure,
26460	  device/lib/pic16/debug/Makefile.in,
26461	  device/lib/pic16/libc/Makefile.in,
26462	  device/lib/pic16/libdev/Makefile.in,
26463	  device/lib/pic16/libio/Makefile.in,
26464	  device/lib/pic16/libm/Makefile.in,
26465	  device/lib/pic16/libsdcc/Makefile.in,
26466	  device/lib/pic16/Makefile.in,
26467	  device/lib/pic16/startup/Makefile.in: regenerated
26468
26469	* src/pic16/main.c (_pic16_finaliseOptions): revert to
26470	  variant of r5216
26471
264722008-11-24 Raphael Neider <rneider AT web.de>
26473
26474	* src/pic16/main.c (_pic16_finaliseOptions): do not quote the
26475	  argument of --asm= or --link= to allow for
26476	  --asm="sh script --options", the user can double quote the
26477	  argument if needed: --asm="'c:/program files/gpasm' -q",
26478	  also fix some potential buffer overflows
26479
264802008-11-19 Borut Razem <borut.razem AT siol.net>
26481
26482	* doc/sdccman.lyx:
26483	  fixed 2314467: sdccman.lyx: fix "--" in command line parameters
26484	  thanks Mauro Giachero
26485
264862008-11-16 Borut Razem <borut.razem AT siol.net>
26487
26488	* .version, doc/sdccman.lyx: bumped sdcc version to 2.8.5
26489	* doc/sdccman.lyx: documented fixed unnamed bit-field initialization
26490
264912008-11-15 Borut Razem <borut.razem AT siol.net>
26492
26493	* src/pic16/glue.c, src/SDCC.y, src/SDCCast.c, src/SDCCglue.c,
26494	  src/SDCCsymt.c, src/SDCCsymt.h:
26495	  fixed RFE #2291335 : Unnamed bit-field initialization
26496	* support/regression/tests/bitfields.c:
26497	  added test case for RFE #2291335
26498	* support/regression/tests/bug-1981238.c:
26499	  don't initialize unnamed bit-fields
26500
265012008-11-11 Raphael Neider <rneider AT web.de>
26502
26503	* device/include/pic16/pic18f25j10.h,
26504	  device/include/pic16/pic18f45j10.h: remove useless boilerplate
26505
26506	* device/include/pic16/adc.h,
26507	  device/lib/pic16/libio/adc/adcbusy.c,
26508	  device/lib/pic16/libio/adc/adcclose.c,
26509	  device/lib/pic16/libio/adc/adcconv.c,
26510	  device/lib/pic16/libio/adc/adcopen.c,
26511	  device/lib/pic16/libio/adc/adcread.c,
26512	  device/lib/pic16/libio/adc/adcsetch.c: generalized, documented,
26513	  and fixed ADC routines to work for more target devices,
26514	  incorporates patch #2036130 by Nick Materer
26515
265162008-11-10 Steven Borley <steven.borley AT partnerelectronics.com>
26517
26518	* device/include/ctype.h,
26519	* device/include/ds400rom.h,
26520	* device/include/ds80c390.h,
26521	* device/include/float.h,
26522	* device/include/math.h,
26523	* device/include/serial.h,
26524	* device/include/stdbool.h,
26525	* device/include/tinibios.h: replaced non-C89 '//' with '/* */',
26526	  patch 2195343
26527	* device/include/mcs51/C8051F336.h,
26528	* device/include/mcs51/C8051T600.h,
26529	* device/include/mcs51/C8051T610.h,
26530	* device/include/mcs51/C8051T630.h: new, added, patch 2183334
26531	  (svn commit by Maarten Brock <sourceforge.brock AT dse.nl>)
26532
265332008-11-10 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
26534
26535	* device/include/mcs51/P89LPC922.h: fixed #2255989, thanks kubi57
26536
265372008-11-10 Raphael Neider <rneider AT web.de>
26538
26539	* device/lib/pic16/libdev/mkmk.sh: obey pics.all
26540	* device/lib/pic16/libio/mkmk.sh: properly match whole lines in
26541	  .ignore files, fixes IO libs for 18f242, 18f252, 18f442, and 18f452
26542	  (patch by Nick Materer, #2253980)
26543
26544	* device/lib/pic16/libio/adc.ignore,
26545	  device/lib/pic16/libio/i2c.ignore,
26546	  device/lib/pic16/libio/usart.ignore,
26547	  device/lib/pic16/pics.all: updated to build more device libs
26548
26549	* device/lib/pic16/libdev/Makefile.am,
26550	  device/lib/pic16/libdev/Makefile.in,
26551	  device/lib/pic16/libio/Makefile.am,
26552	  device/lib/pic16/libio/Makefile.in: regenerated
26553
26554	* src/pic16/device.c (pic16_dump_usection): fixed output of multiple
26555	  names per memory location, applied SDCC style to more functions
26556
265572008-11-09 Gudjon I. Gudjonsson <gudjon AT gudjon.org>
26558
26559	* device/include/mcs51/p89lpc933_4.h: new NXP header file
26560	* device/include/mcs51/p89lpc935_6.h: new NXP header file
26561	* device/include/mcs51/p89v66x.h: minor changes
26562	  (svn commit by Frieder Ferlemann <Frieder.Ferlemann AT web.de>)
26563
265642008-11-09 Raphael Neider <rneider AT web.de>
26565
26566	* device/include/pic/pic14devices.txt: fixed memory description for
26567	  12f629 and 12f675, closes #2236240
26568
265692008-11-06 Borut Razem <borut.razem AT siol.net>
26570
26571	* src/SDCCmain.c: fixed bug #2224960: sdcc -MM no working correctly
26572	  pass system include paths with -isystem to sdcpp
26573	* src/SDCCglue.c, src/pic/glue.c, src/pic16/glue.c: removed unneeded
26574	  functions (closePipes), (closeTmpFiles) and (rmTmpFiles)
26575
265762008-11-02 Raphael Neider <rneider AT web.de>
26577
26578	* doc/sdccman.lyx: updated the sections on the library build process
26579	  and on how to add support for new devices, and documented known
26580	  problems with the extended instruction set including a workaround
26581
265822008-11-01 Raphael Neider <rneider AT web.de>
26583
26584	* device/include/pic16/adc.h,
26585	  device/include/pic16/pic16devices.txt,
26586	  device/include/pic16/pic18f2410.h,
26587	  device/include/pic16/pic18f2510.h,
26588	  device/include/pic16/pic18f2515.h,
26589	  device/include/pic16/pic18f2610.h,
26590	  device/include/pic16/pic18f4410.h,
26591	  device/include/pic16/pic18f4510.h,
26592	  device/include/pic16/pic18f4515.h,
26593	  device/include/pic16/pic18f4610.h,
26594	  device/include/pic16/pic18fregs.h,
26595	  device/lib/pic16/libdev/Makefile.am,
26596	  device/lib/pic16/libdev/Makefile.in,
26597	  device/lib/pic16/libdev/pic18f2410.c,
26598	  device/lib/pic16/libdev/pic18f2510.c,
26599	  device/lib/pic16/libdev/pic18f2515.c,
26600	  device/lib/pic16/libdev/pic18f2610.c,
26601	  device/lib/pic16/libdev/pic18f4410.c,
26602	  device/lib/pic16/libdev/pic18f4510.c,
26603	  device/lib/pic16/libdev/pic18f4515.c,
26604	  device/lib/pic16/libdev/pic18f4610.c,
26605	  device/lib/pic16/libio/Makefile.am,
26606	  device/lib/pic16/libio/Makefile.in,
26607	  device/lib/pic16/pics.all: added support for 18f[24][456]10
26608	  and 18f[24]515 devices
26609	* doc/sdccman.lyx: updated list of supported PIC16 devices
26610
26611	* src/pic/glue.c, src/pic/pcode.c, src/pic/pcodeflow.c,
26612	  src/pic16/glue.c, src/pic16/pcode.c, src/pic16/pcodeflow.c,
26613	  src/xa51/gen.c: avoid compiler warnings
26614	* support/scripts/inc2h-pic16.pl: removed trailing whitespace
26615
266162008-10-22 Gudjon I. Gudjonsson <gudjon AT gudjon.org>
26617
26618	* device/include/mcs51/p89v66x.h: NXP header file
26619	* device/include/mcs51/p89c66x.h: fixed an SBIT definition
26620	  (svn commit by Frieder Ferlemann <Frieder.Ferlemann AT web.de>)
26621
266222008-10-14 Raphael Neider <rneider AT web.de>
26623
26624	* device/lib/pic16/libdev/Makefile.am,
26625	  device/lib/pic16/libio/Makefile.am: enable building libraries for
26626	  18f2321, 18f4321, 18f2523, 18f4620, 18f66j60, 18f66j65, 18f67j60,
26627	  18f86j60, 18f86j65, 18f87j60, 18f96j60, 18f96j65, and 18f97j60
26628	* device/lib/pic16/libdev/Makefile.in,
26629	  device/lib/pic16/libio/Makefile.in: regenerated
26630
266312008-10-14 Raphael Neider <rneider AT web.de>
26632
26633	* device/include/pic16/pic18f2450.h,
26634	  device/include/pic16/pic18f4450.h,
26635	  device/lib/pic16/libdev/pic18f2450.c,
26636	  device/lib/pic16/libdev/pic18f4450.c,
26637	  device/include/pic16/adc.h,
26638	  device/include/pic16/pic16devices.txt,
26639	  device/include/pic16/pic18fregs.h,
26640	  device/lib/pic16/libdev/Makefile.am,
26641	  device/lib/pic16/libdev/Makefile.in,
26642	  device/lib/pic16/libio/Makefile.am,
26643	  device/lib/pic16/libio/Makefile.in,
26644	  device/lib/pic16/pics.all: added 18f2450 and 18f4450, closes #1844525
26645
26646	* device/lib/pic16/libsdcc/stack/stack.S: there is no need to pin the
26647	  stack to a fixed location, relax it to automatically work with all
26648	  but the smallest devices (256 byte RAM devices need #pragma stack)
26649
266502008-10-09 Maarten Brock <sourceforge.brock AT dse.nl>
26651
26652	* debugger/mcs51/break.c: bugfix from patch 1989966, thanks Risto Huotari
26653	* debugger/mcs51/simi.c: bugfix from patch 1989972, thanks Risto Huotari
26654	* device/lib/_strcspn.c: fixed bug 2140931
26655
266562008-10-06 Raphael Neider <rneider AT web.de>
26657
26658	* device/include/pic16/stdio.h,
26659	  device/lib/pic16/libc/stdio/putchar.c: putchar should not be
26660	  declared __naked for convenience, named all arguments
26661	* device/lib/pic16/libc/stdio/strmgpsim.c,
26662	  device/lib/pic16/libc/stdio/strmmssp.c,
26663	  device/lib/pic16/libc/stdio/strmusart.c: cosmetic changes
26664
26665	* src/pic16/pcode.c (createReachingDefinitions): avoid segfault on
26666	  empty __naked functions,
26667	* (pCodeLabelDestruct, pic16_unlinkpCode, pic16_pCodeUnlink): fix
26668	  corner cases (unlink first/last pCode in list), reuse more code
26669
266702008-10-05 Maarten Brock <sourceforge.brock AT dse.nl>
26671
26672	* src/ds390/main.c (_ds390_genInitStartup): added
26673	* src/SDCCpeeph.c (getPatternVar): new, added,
26674	  (labelInRange): fixed bug 2115959
26675	* src/mcs51/peeph.def (rules 193.x to 198.x): check for labelInRange
26676	* src/SDCCicode.h: added newiTempOperand
26677	* src/SDCCcse.c (algebraicOpts): fixed bug for x*-1,
26678	  added optimizations for 0/x and x/-1, see also patch 2142900
26679	* support/regression/tests/onebyte.c (testMul): added test cases
26680
266812008-09-20 Borut Razem <borut.razem AT siol.net>
26682
26683	* src/pic16/glue.c:
26684	  definition of absolute address symbols without initial value,
26685	  fixed SDCC crash "do not know how to intialize symbol"
26686
266872008-09-16 Maarten Brock <sourceforge.brock AT dse.nl>
26688
26689	* device/lib/z80/mul.s (__mulsuchar_rrx_s, __muluschar_rrx_s),
26690	* device/lib/z80/div.s (__divsuchar_rrx_s, __modsuchar_rrx_s,
26691	  __divuschar_rrx_s, __moduschar_rrx_s): added mixed signedness versions
26692	* device/lib/z80/stubs.s: added stubs for above functions
26693	* src/SDCCopt.c (convilong),
26694	* src/SDCCsymt.c (initCSupport): fixed bug 1900961
26695	* src/SDCCsymt.h (__muldiv): enlarged for mixed signedness
26696	* src/z80/main.c (_hasNativeMulFor): fixed bug, I think
26697	* support/regression/tests/onebyte.c: enabled all tests for z80
26698
266992008-09-15 Borut Razem <borut.razem AT siol.net>
26700
26701	* device/include/pic16/stdio.h, device/lib/pic16/libc/stdio/streams.c,
26702	  device/lib/pic16/libc/stdio/printf.c,
26703	  device/lib/pic16/libc/stdio/strmusart.c,
26704	  device/lib/pic16/libc/stdio/printf_tiny.c,
26705	  device/lib/pic16/libc/stdio/sprintf.c,
26706	  device/lib/pic16/libc/stdio/strmgpsim.c,
26707	  device/lib/pic16/libc/stdio/putchar.c,
26708	  device/lib/pic16/libc/stdio/fprintf.c,
26709	  device/lib/pic16/libc/stdio/strmmssp.c,
26710	  device/device/lib/pic16/libc/stdio/vprintf.c,
26711	  device/lib/pic16/libc/stdio/printf_small.c,
26712	  device/lib/pic16/libc/stdio/vsprintf.c,
26713	  device/lib/pic16/libc/stdio/strmputchar.c,
26714	  device/lib/pic16/libc/Makefile.am,
26715	  device/lib/pic16/libc/Makefile.in:
26716	  *printf now returns int, puchar.c moved from stdlib to stdio,
26717	  *printf format parameter type changed from char * to const char *,
26718	  added GNU link excetion text to library source files,
26719	  applyed GNU coding style, removed useless svn ids,
26720	  added BINARY_SPECIFIER macro re-enables the use of the removed 'b'
26721	  binary specifier: "%b", "%hb" and "%lb"
26722	* device/lib/pic16/libc/stdio/vfprintf.c:
26723	  applied patch #2044424: PIC16: vfprintf
26724	  thanks Mauro Giachero
26725	* support/regression/tests/bug1057979.c:
26726	  removed old pic16 sprintf specifics
26727	* .version, doc/sdccman.lyx: bumped sdcc version to 2.8.4
26728	* doc/sdccman.lyx: documented 'b' binary format specifier removal
26729
267302008-09-15 Raphael Neider <rneider AT web.de>
26731
26732	* src/pic16/device.c (pic16_dump_usection): force udata sections
26733	  into the addressable range (0..0xFFF), workaround for a gpsim
26734	  bug preventing simulation of regtest bug1750318
26735	* src/pic16/ralloc.c (deassignLRs): cosmetic changes,
26736	  (serialRegAssign): fixed regtest bug-971834,
26737	  (pic16_packRegisters): avoid null-pointer dereference
26738
267392008-09-14 Raphael Neider <rneider AT web.de>
26740
26741	* src/pic16/gen.c, src/pic16/ralloc.c: use
26742	  SYM_SPIL_LOC/SPIL_LOC macros, no functional changes
26743	* src/pic16/ralloc.c (rematStr): reimplemented, fixes #1818857
26744
267452008-09-12 Borut Razem <borut.razem AT siol.net>
26746
26747	* support/regression/fwk/testfwk.h:
26748	  define pdata as data for pic16 target
26749	  thanks Mauro Giachero
26750
267512008-09-11 Borut Razem <borut.razem AT siol.net>
26752
26753	* support/regression/tests/bug-221100.c, support/regression/shifts.c,
26754	  support/regression/absolute.c:
26755	  applied patch #2105615: Some PIC16 testcase fixlets
26756	  thanks Mauro Giachero
26757
267582008-09-08 Maarten Brock <sourceforge.brock AT dse.nl>
26759
26760	* src/z80/gen.c (genCmpGt, genCmpLt): fixed bug 2094505
26761	* support/regression/tests/bug2094505.c: new, added
26762
267632008-09-07 Borut Razem <borut.razem AT siol.net>
26764
26765	* src/SDCCglue.c, src/SDCCast.c:
26766	  fixed throw of "excess elements" warning for char arrays
26767	* support/regression/tests/nullstring.c:
26768	  disable warning about excess elements in array of chars initializer
26769
267702008-09-07 Maarten Brock <sourceforge.brock AT dse.nl>
26771
26772	* as/z80/aslist.c (lstsym): changed old K&R to ANSI
26773	* src/SDCCicode.c (geniCodeCritical): fixed bug for hc08
26774	* src/z80/gen.c (genCritical, genEndCritical): fixed bug 2077267
26775	* support/regression/tests/bug2077267.c: new, added
26776
267772008-09-05 Raphael Neider <rneider AT web.de>
26778
26779	* configure.in, Makefile.common.in: add support for ccache,
26780	  remove spurious $VERSION output, detect doc-tools even without
26781	  --enable-doc to facilitate later manual doc-builds, minor cleanup
26782	* configure: regenerated
26783
26784	* doc/Makefile.in: quieten pdflatex, makeindex, and latex2html,
26785	  avoid races in parallel VPATH builds
26786	* doc/clean.mk: remove .lyx files in the builddir for VPATH builds
26787	* doc/sdccman.lyx: mention --without-ccache configure option
26788
267892008-09-01 Raphael Neider <rneider AT web.de>
26790
26791	* src/pic16/gen.c (pic16_derefPtr): handle CPOINTERs as well
26792	* (genConstPointerGet): fix reading bitfields from __code space
26793	* src/pic16/glue.c (pic16_printIvalBitFields): correctly mask
26794	  bitfield initializers (fix regression test bug1856409.c)
26795	* (pic16_printIvalCharPtr,pic16_printIvalPtr): generalized to support
26796	  arbitrary sizes
26797
267982008-08-31 Raphael Neider <rneider AT web.de>
26799
26800	* src/pic16/gen.c (genAssign): removed useless compiler output
26801	* (genPointerGet,genPointerSet,genCast),
26802	  src/pic16/glue.c (pic16_printGPointerType):
26803	  also handle PPOINTERs just to avoid spurious asserts
26804	* (pic16_printIvalType,pic16_printIvalBitFields):
26805	  generalized to arbitrary type/bitfield sizes, allows compilation of
26806	  regression test bug-1981238.c
26807	* (pic16_printIvalChar): fix regression test structflexarray.c
26808	* (pic16_printIvalArray): avoid SIGSEGV on uninitialized strings
26809	  in initialized structs and fix #1843745
26810	* (pic16_printIvalStruct): always output initializers for all fields,
26811	  even those not explicitly given, fixes zeropad.c regression test
26812	* (pic16_printIvalUnion): fix union initializers (bug1426356.c,
26813	  #2073635, #1567098, and #1485812)
26814	* src/pic16/main.c (_pic16_keywords): remove unsupported 'pdata'
26815
268162008-08-31 Borut Razem <borut.razem AT siol.net>
26817
26818	* support/regression/tests/bug-895992.c,
26819	  support/regression/tests/onebyte.c:
26820	  enabled pic16 regression testing since the bugs
26821	  1511794: pic16: regression test bug-895992.c fails
26822	  1444425: onebyte.c regression tes fails on pic16
26823	  are fixed, probably by fixing
26824	  2048464: PIC16: fix genUminus - addresses not.c regression test
26825	* src/SDCCsymt.c, src/SDCCglue.c,
26826	  support/regression/tests/bug-1981238.c:
26827	  applied patch 2076664: fix #1981238 + SIGSEGV in SDCCGlue.c
26828	  thanks to RvS
26829
268302008-08-30 Borut Razem <borut.razem AT siol.net>
26831
26832	* support/cpp/libcpp/files.c: SDCPP synchronized with GCC CPP
26833	  release version 4.3.2
26834
268352008-08-24 Raphael Neider <rneider AT web.de>
26836
26837	* device/lib/pic16/configure, device/lib/pic16/configure.ac:
26838	  always use the sdcc from the current build tree (ignore $CC from
26839	  the environment, fixes compile farm builds)
26840	* device/lib/Makefile.in: rename .a into .lib for compatibility,
26841	  remove more build products from install directory
26842	* sdcc/src/pic16/main.c (_pic16_linkEdit,_pic16_finaliseOptions)
26843	* sdcc/support/scripts/sdcc.nsi: revert to .lib extension for libs
26844
268452008-08-24 Borut Razem <borut.razem AT siol.net>
26846
26847	* src/SDCC.y: applied patch
26848	  2050245: Fix # 1963382
26849	  for bug
26850	  1963382: Listing File - C file comment is incorrect
26851	  thanks to RvS
26852
268532008-08-23 Borut Razem <borut.razem AT siol.net>
26854
26855	* src/pic16/gen.c: applied patch
26856	  2048464: PIC16: fix genUminus - addresses not.c regression test
26857	  thanks Mauro Giachero
26858
268592008-08-22 Borut Razem <borut.razem AT siol.net>
26860
26861	* device/lib/pic16/configure, device/lib/pic16/configure.ac,
26862	  src/pic16/main.c: allow spaces in gpasm and gplink paths
26863
268642008-08-15 Philipp Klaus Krause <pkk AT spth.de>
26865
26866	* src/z80/peep.c,
26867	* src/z80/peeph-z80.def: minor peephole improvement
26868
268692008-08-15 Raphael Neider <rneider AT web.de>
26870
26871	* src/z80/gen.c (_vemit2): suppress compiler warning
26872
26873	* src/pic/*.[ch]: make proper use of header files and avoid
26874	  ad-hoc extern declarations, mark module-local helpers 'static',
26875	  removed dead/replaced code, no functional changes
26876	* src/pic16/pcode.c: disentangled from pic14 backend
26877
268782008-08-14 Philipp Klaus Krause <pkk AT spth.de>
26879
26880	* src/z80/gen.c: fixed #2051348
26881	* support/regression/tests/bug-2051348.c: regression test for #2051348
26882
268832008-08-10 Raphael Neider <rneider AT web.de>
26884
26885	* configure.in,
26886	* Makefile.common.in: export PACKAGE for $docdir,
26887	  fixes #1957036, avoid some "underquoted definition" warnings
26888	* configure: regenerated
26889
268902008-08-10 Raphael Neider <rneider AT web.de>
26891
26892	* device/lib/pic16/**: build pic16 library using autotools for
26893	  improved dependency tracking
26894
26895	* device/lib/Makefile.in,
26896	* src/pic16/main.c,
26897	* support/scripts/sdcc.nsi: adapt to changes in filenames (s/.lib/.a/)
26898
268992008-08-10 Raphael Neider <rneider AT web.de>
26900
26901	* src/pic/pcode.c (ReuseReg): do not overlay the registers used for
26902	  local variables if --nooverlay is given, workaround for #2023121
26903
269042008-08-08 Raphael Neider <rneider AT web.de>
26905
26906	* src/pic16/genarith.c (genAddLit): fix structure access (#1888004)
26907
269082008-08-08 Raphael Neider <rneider AT web.de>
26909
26910	* src/pic/pcoderegs.c,
26911	* src/pic/pcode.c,
26912	* src/pic16/pcode.c: replace own SAFE_snprintf with common SNPRINTF
26913
269142008-08-07 Borut Razem <borut.razem AT siol.net>
26915
26916	* src/SDCCval.c, src/SDCCmain.c, src/SDCC.lex,
26917	  device/lib/pic/Makefile.rules, device/lib/ds390/Makefile.in,
26918	  device/lib/ds400/Makefile.in, device/lib/hc08/Makefile.in,
26919	  support/cpp/libcpp/lex.c,  doc/sdccman.lyx:
26920	  applied modified patch 2038174: Add support for binary constants v2
26921	  thanks Mauro Giachero
26922	* .version, doc/sdccman.lyx: bumped sdcc version to 2.8.3
26923
269242008-08-04 Raphael Neider <rneider AT web.de>
26925
26926	* doc/sdccman.lyx,
26927	* src/pic16/device.h,
26928	* src/pic16/glue.c,
26929	* src/pic16/main.c: enable --optimize-goto by default
26930
26931	* device/lib/pic16/Makefile.common.in: suppress removed option
26932
26933	* src/pic16/gen.c,
26934	* src/pic16/genutils.c: avoid too long relative branches (#2031890)
26935
269362008-07-30 Borut Razem <borut.razem AT siol.net>
26937
26938	* src/pic16/device.c, src/pic16/glue.c, src/pic16/pcode.c:
26939	  applied patch 22032433: PIC16: fix constant strings,
26940	  thanks Mauro Giachero
26941
269422008-07-29 Borut Razem <borut.razem AT siol.net>
26943
26944	* src/pic16/gen.c: applied patches:
26945	  2030306: [1/3] PIC16: fix failing rotate.c tests on 16-bit variables,
26946	  2030307: [2/3] PIC16: fix failing rotate.c tests for 32-bit var (1),
26947	  2030310: [3/3] PIC16: fix failing rotate.c tests for 32-bit var (2),
26948	  thanks Mauro Giachero
26949
269502008-07-13 Philipp Klaus Krause <pkk AT spth.de>
26951
26952	* src/port.h: Fixed typo in comment
26953
269542008-07-12 Philipp Klaus Krause <pkk AT spth.de>
26955
26956	* src/z80/mappings.i: Implemented RFE #1919415
26957	* src/z80/peeph-z80.def: Implemented RFE #1919415, #1861376,
26958	  #1880202, #1914434, prepared for RFE #1703943
26959
269602008-07-12 Philipp Klaus Krause <pkk AT spth.de>
26961
26962	* src/z80/peeph.def,
26963	* src/z80/peeph-z80.def,
26964	* src/z80/peeph-gbz80.def: separate Z80 from GBZ80 peepholes in
26965	  preparation for Z80 peephole improvements
26966
269672008-06-21 Raphael Neider <rneider AT web.de>
26968
26969	* device/include/pic16/pic18f66j60.h,
26970	* device/include/pic16/pic18f66j65.h,
26971	* device/include/pic16/pic18f67j60.h,
26972	* device/include/pic16/pic18f86j60.h,
26973	* device/include/pic16/pic18f86j65.h,
26974	* device/include/pic16/pic18f87j60.h,
26975	* device/include/pic16/pic18f96j60.h,
26976	* device/include/pic16/pic18f96j65.h,
26977	* device/include/pic16/pic18f97j60.h,
26978	* device/lib/pic16/libdev/pic18f66j60.c,
26979	* device/lib/pic16/libdev/pic18f66j65.c,
26980	* device/lib/pic16/libdev/pic18f67j60.c,
26981	* device/lib/pic16/libdev/pic18f86j60.c,
26982	* device/lib/pic16/libdev/pic18f86j65.c,
26983	* device/lib/pic16/libdev/pic18f87j60.c,
26984	* device/lib/pic16/libdev/pic18f96j60.c,
26985	* device/lib/pic16/libdev/pic18f96j65.c,
26986	* device/lib/pic16/libdev/pic18f97j60.c,
26987	* device/include/pic16/pic16devices.txt,
26988	* device/include/pic16/pic18fregs.h,
26989	* device/lib/pic16/pics.all: added new devices
26990
26991	* device/include/pic16/adc.h,
26992	* device/lib/pic16/libio/adc/adcbusy.c,
26993	* device/lib/pic16/libio/adc/adcopen.c,
26994	* device/lib/pic16/libio/adc/adcsetch.c,
26995	* device/lib/pic16/libio/i2c/i2copen.c,
26996	* device/lib/pic16/libio/usart/uopen.c: adapted to new devices,
26997	  all changes from a patch by Anton Strobl
26998
269992008-06-12 Borut Razem <borut.razem AT siol.net>
27000
27001	* sim/ucsim/cmd.src/info.cc, sim/ucsim/cmd.src/bp.cc,
27002	  sim/ucsim/xa.src/xa.cc, sim/ucsim/xa.src/xacl.h,
27003	  sim/ucsim/z80.src/z80cl.h, sim/ucsim/z80.src/z80.cc,
27004	  sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
27005	  sim/ucsim/hc08.src/hc08.cc, sim/ucsim/hc08.src/hc08cl.h,
27006	  sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/uc390.cc,
27007	  sim/ucsim/s51.src/uc51.cc, sim/ucsim/s51.src/uc390cl.h,
27008	  sim/ucsim/avr.src/avrcl.h, sim/ucsim/avr.src/avr.cc:
27009	  fixed bug 1990586: s51 simulator, uc::disass() unimplemented
27010	  by applying the modified patch from Risto Huotari
27011
270122008-06-04 Maarten Brock <sourceforge.brock AT dse.nl>
27013
27014	* .version,
27015	* doc/sdccman.lyx: bumped sdcc version to 2.8.2
27016	* src/ds390/gen.c (aopPutUsesAcc, genAddrOf): fixed bug 1015185
27017	* src/mcs51/gen.c (genNearPointerGet, genNearPointerSet): fixed bug 1938300
27018	* support/regression/tests/bug1938300.c: new, added
27019
270202008-06-03 Maarten Brock <sourceforge.brock AT dse.nl>
27021
27022	* device/include/asm/ds390/features.h,
27023	* device/include/asm/mcs51/features.h,
27024	* device/include/mcs51/regc515c.h: inserted LGPL notice
27025
270262008-05-29 Maarten Brock <sourceforge.brock AT dse.nl>
27027
27028	* device/lib/gbz80/div.s,
27029	* device/lib/z80/div.s: fixed bug 1904314 by applying a modified part of
27030	  patch 1597883, Thanks Robert Ramey
27031
270322008-05-29 Maarten Brock <sourceforge.brock AT dse.nl>
27033
27034	* src/SDCCast.c (createIvalType, createIvalStruct, createIvalArray,
27035	  createIvalCharPtr, createIvalPtr, createIval),
27036	* src/SDCCval.h
27037	* src/SDCCval.c (convertIListToConstList, list2expr): handle incomplete
27038	  initializers for local auto variables
27039	* support/regression/tests/zeropad.c: added testcase for auto initializers
27040
270412008-05-26 Raphael Neider <rneider AT web.de>
27042
27043	* device/lib/pic16/startup/crt0.c,
27044	* device/lib/pic16/startup/crt0i.c,
27045	* device/lib/pic16/startup/crt0iz.c: clean up, make use of access bank
27046	  explicit, fixed curr_entry loop for >= 256 initializer records,
27047	  removed debug code (write to 0xf7e)
27048
270492008-05-25 Raphael Neider <rneider AT web.de>
27050
27051	* device/include/pic/pic16f627a.h,
27052	* device/include/pic/pic16f628a.h,
27053	* device/include/pic/pic16f648a.h: added missing ports
27054
270552008-05-20 Maarten Brock <sourceforge.brock AT dse.nl>
27056
27057	* device/include/float.h: added __INFINITY
27058	* device/lib/_fsadd.c: handle overflows
27059	* device/lib/_fsmul.c,
27060	* device/lib/_fsdiv.c: use __INFINITY
27061	* device/lib/_fseq.c,
27062	* device/lib/_fsneq.c: handle -0.0
27063	* sim/ucsim/s51.src/uc89c51r.cc,
27064	* sim/ucsim/s51.src/uc89c51rcl.h: fixed bug 1385430
27065	* sim/ucsim/sim.src/hwcl.h: */* confuses VC
27066	* src/mcs51/gen.c (genSend): fixed bug with --xstack
27067	* support/regression/ports/mcs51-xstack-auto/spec.mk: print floats
27068	* support/regression/tests/snprintf.c: test bug with --xstack
27069
270702008-05-19  Philipp Klaus Krause <pkk AT spth.de>
27071
27072	* src/SDCCpeeph.c (callFuncByName):
27073	  Support nested parenthesis in peephole function arguments (#1967300)
27074
270752008-05-19 Raphael Neider <rneider AT web.de>
27076
27077	* src/pic16/gen.c (pic16_emitpLabel,pic16_emitpLabelFORCE):
27078	  fixed duplicate labels (#1911325)
27079
270802008-05-19 Raphael Neider <rneider AT web.de>
27081
27082	* src/regression/empty.c: suppress warning
27083	* src/regression/pointer1.c: enabled index_by_pointer()
27084	* src/regression/inline.c: now works for pic16 as well
27085
27086	* src/pic16/device.c: include dbuf declarations
27087	* src/pic16/device.h: removed obsolete prototypes
27088
27089	* src/pic16/gen.c, src/pic16/gen.h: moved generic pointer tags
27090	* src/pic16/glue.c: made purely local functions static,
27091	  (pic16_printGPointerType, pic16_printIvalCharPtr,
27092	  pic16_printIvalFuncPtr, pic16_printIvalPtr): fixed initialized
27093	  generic pointers' tags (#1961866)
27094
27095	* src/pic16/pcode.c (assignValnums): optimize literal assignments
27096
270972008-05-19 Borut Razem <borut.razem AT siol.net>
27098
27099	* support/scripts/sdcc.nsi: remove uninstall.exe after uninstallation,
27100	  fixed typo, uninstall include/pic16/pic16devices.txt
27101
271022008-05-18 Borut Razem <borut.razem AT siol.net>
27103
27104	* support/Utils/dbuf_string.[ch]: added dbuf_chomp(),
27105	  the buffer is null terminated
27106	* src/device/pic16.c:
27107	  applied modified patch 1965676: Patch for Win32 16 bit PIC
27108	* sdcc_vc_in.h: defined YY_NO_UNISTD_H
27109
271102008-05-16 Maarten Brock <sourceforge.brock AT dse.nl>
27111
27112	* src/SDCC.lex (check_type),
27113	* src/SDCC.y (type_specifier2 TYPE_NAME): fixed bug 1925942
27114	* as/hc08/clean.mk,
27115	* as/mcs51/clean.mk,
27116	* as/z80/clean.mk: also clean *.dep
27117	* device/lib/pic16/libsdcc/stack/Makefile,
27118	* sim/ucsim/libtool: removed as they are rebuild by configure
27119	* src/clean.mk: removed izt, so Makefile is not deleted for distclean
27120
271212008-05-13 Maarten Brock <sourceforge.brock AT dse.nl>
27122
27123	* src/SDCCast.c (fixupInline, createFunction): save currBlockno in
27124	  fixupInline instead of createFunction to fix bug 1864577
27125	  (inlineFindMaxBlockno): removed, use global blockNo
27126	* src/SDCCglobl.h: added blockNo
27127	* src/z80/peep.c,
27128	* src/z80/peep.h: modified properties
27129	* support/regression/tests/bug1864577.c: new, added
27130
271312008-05-07 Maarten Brock <sourceforge.brock AT dse.nl>
27132
27133	* as/mcs51/asdata.c,
27134	* as/mcs51/asm.h: added org_cnt
27135	* as/mcs51/asmain.c (main, asmbl): fixed bug 1957716, changed old K&R to ANSI
27136	* as/mcs51/asout.c: changed old K&R to ANSI
27137	* as/mcs51/Makefile.in: use common identifiers
27138	* as/hc08/asdata.c,
27139	* as/hc08/asexpr.c,
27140	* as/hc08/asm.h,
27141	* as/hc08/asmain.c,
27142	* as/hc08/asout.c,
27143	* as/hc08/Makefile.bcc,
27144	* as/hc08/Makefile.in: synchronized with as/mcs51/*
27145	* sdcc_vc_in.h: added define __func__
27146	* src/SDCCast.c (expandInlineFuncs): applied patch 1957148 to fix bug 1717305,
27147	  Thanks Ruud van Silfhout
27148	* support/regression/tests/bug1717305.c: new, added
27149
271502008-05-05 Borut Razem <borut.razem AT siol.net>
27151
27152	* support/regression/Makefile.in,
27153	  support/regression/ports/ds390/spec.mk,
27154	  support/regression/ports/hc08/spec.mk,
27155	  support/regression/ports/mcs51-common/spec.mk,
27156	  support/regression/ports/pic14/spec.mk,
27157	  support/regression/ports/pic16/spec.mk,
27158	  support/regression/ports/ucz80/spec.mk,
27159	  support/regression/ports/z80/spec.mk:
27160	  added INC_DIR and LIBDIR paths
27161	* src/ds390/gen.c: removed duplicated selicolon
27162
271632008-05-04 Borut Razem <borut.razem AT siol.net>
27164
27165	* support/regression/Makefile.in,
27166	  support/regression/fwk/lib/testfwk.c,
27167	  support/regression/ports/ds390/spec.mk,
27168	  support/regression/ports/hc08/spec.mk,
27169	  support/regression/ports/mcs51-common/spec.mk,
27170	  support/regression/ports/mcs51-large/spec.mk,
27171	  support/regression/ports/mcs51-medium/spec.mk,
27172	  support/regression/ports/mcs51-small/spec.mk,
27173	  support/regression/ports/mcs51-stack-auto/spec.mk,
27174	  support/regression/ports/mcs51-xstack-auto/spec.mk,
27175	  support/regression/ports/pic14/spec.mk,
27176	  support/regression/ports/pic16/spec.mk,
27177	  support/regression/ports/ucz80/spec.mk:
27178	  added possibility to define the sdcc binary directory SDCC_BIN_PATH
27179	  used to run regeression tests
27180
271812008-05-01 Raphael Neider <rneider AT web.de>
27182
27183	* doc/sdccman.lyx, support/scripts/inc2h-pic16.pl: updated list of
27184	  supported devices and instructions to add new ones
27185
271862008-05-01 Raphael Neider <rneider AT web.de>
27187
27188	* device/include/pic16/adc.h,
27189	  device/lib/pic16/libio/adc/adcbusy.c,
27190	  device/lib/pic16/libio/adc/adcopen.c,
27191	  device/lib/pic16/libio/adc/adcsetch.c: support old 18f242 and new
27192	  18f2455 style ADC devices, based on patch #1776197
27193	* device/lib/pic16/libio/adc/adcclose.c,
27194	  device/lib/pic16/libio/adc/adcconv.c,
27195	  device/lib/pic16/libio/adc/adcread.c: cosmetic changes
27196	* device/include/pic16/{pic18f2331.h,pic18f2431.h},
27197	  device/lib/pic16/libdev/{pic18f2331.c,pic18f2431.c}: reuse 18f4331
27198	* device/include/pic16/pic18f4431.h,
27199	  device/lib/pic16/libdev/pic18f4431.c: remove outdated comments
27200	* device/lib/pic16/libio/adc.ignore: forbid unhandled devices
27201
272022008-05-01 Raphael Neider <rneider AT web.de>
27203
27204	* src/pic16/device.h: removed unused field PIC16_device.sfrRange,
27205	  moved xinst flag into pic16_options_t
27206	* src/pic16/device.c (default_device, pic16_list_devices,
27207	  pic16_find_device): removed references to sfrrange
27208	* src/pic16/gen.c (genFunction),
27209	  src/pic16/glue.c (pic16initialComments),
27210	  src/pic16/main.c (pic16_optionsTable),
27211	  src/pic16/ralloc.c (newReg, pic16_writeUsedRegs): updated references
27212	  to xinst
27213	* device/include/pic16/pic16devices.txt: removed sfrrange lines
27214
272152008-04-29 Raphael Neider <rneider AT web.de>
27216
27217	* src/pic16/devices.inc,
27218	  device/include/pic16/pic16devices.txt: replaced compiled-in list
27219	  of devices with a variant parsed at runtime
27220	* src/pic16/device.c: added support for parsing pic16devices.txt,
27221	  clean up
27222	* src/pic16/device.h: removed (now) unused fields from PIC_device
27223	* src/pic16/main.c: removed #pragma maxram,
27224	  (_pic16_initPaths): removed bogus generation of search paths,
27225	  setup the port proper only after the search paths (for
27226	  pic16devices.txt) are set up,
27227	  (_pic16_finaliseOptions): moved processor dependant code here
27228	  from _pic16_initPaths(), clean up
27229	* src/pic16/ralloc.c (pic16_init_stack),
27230	* src/pic16/ralloc.h,
27231	* src/pic16/pcode.c: clean up
27232	* device/include/Makefile.in,
27233	  support/scripts/sdcc.nsi: also install/package pic16devices.txt
27234	* support/scripts/inc2h-pic16.pl: updated instructions
27235
272362008-04-29 Raphael Neider <rneider AT web.de>
27237
27238	* device/include/pic16/{pic18f2480.h, pic18f2580.h, pic18f4423.h,
27239	  pic18f4480.h, pic18f4523.h, pic18f4580.h, pic18f6585.h, pic18f8585.h},
27240	  device/lib/pic16/libdev/{pic18f2480.c, pic18f2580.c, pic18f4423.c,
27241	  pic18f4480.c, pic18f4523.c, pic18f4580.c, pic18f6585.c, pic18f8585.c}:
27242	  added missing family members and 18f2480/2580/4480/4580 family
27243	* device/include/pic16/{pic18f2423.h, pic18f2523.h}: use 18f4523.h
27244	* device/include/pic16/pic18f2525.h: use 18f4620.h
27245	* device/include/pic16/pic18f6680.h: use 18f8680.h
27246	* device/include/pic16/pic18fregs.h,
27247	  device/lib/pic16/pics.all,
27248	  src/pic16/devices.inc: add new devices
27249	* device/lib/pic16/libdev/{pic18f2423.c, pic18f2523.c}: use 18f4523.c
27250	* device/lib/pic16/libdev/pic18f2525.c: use 18f4620.c
27251	* device/lib/pic16/libdev/pic18f6680.c: uso 18f8680.c
27252	* device/lib/pic16/libio/{adc.ignore, i2c.ignore, usart.ignore}:
27253	  prevent attempting to build the libio for some new devices
27254
272552008-04-29 Raphael Neider <rneider AT web.de>
27256
27257	* debugger/mcs51/Makefile.in: fixed paths to sources
27258
272592008-04-25 Borut Razem <borut.razem AT siol.net>
27260
27261	* as/link/lklibr.c: moved from as/link/z80/lklibr.c
27262	* as/link/hc08/lklibr.c, as/link/mcs51/lklibr.c: deleted
27263	* as/link/hc08/Makefile.bcc, as/link/hc08/Makefile.in,
27264	* as/link/hc08/link_hc08.dsp, as/link/mcs51/Makefile.bcc,
27265	  as/link/mcs51/Makefile.in, as/link/mcs51/aslink.dsp,
27266	  as/link/z80/Makefile.in, as/link/z80/linkgbz80.dsp,
27267	  as/link/z80/linkz80.dsp: lklibr.c moved
27268	* doc/INSTALL.txt: binary archives in bz2 format
27269	* support/cpp/auto-host_vc_in.h: CPP2 replaced with CPP
27270
272712008-04-23 Maarten Brock <sourceforge.brock AT dse.nl>
27272
27273	* src/SDCCglue.c (printIvalType, printIvalBitFields): fixed bug 1856409
27274	* support/regression/tests/bug1856409.c: new, added
27275
272762008-04-20 Maarten Brock <sourceforge.brock AT dse.nl>
27277
27278	* src/z80/peep.c,
27279	* src/mcs51/peep.c: Use werror for error messages.
27280	* src/SDCCicode.c (geniCodeConditional),
27281	* src/SDCCsymt.c (structElemType): fixed bug 1839321
27282	* src/z80/Makefile.bcc,
27283	* src/z80/z80.dsp: added src/z80/peep.c/h
27284	* support/regression/tests/bug1839321.c: new, added
27285
272862008-04-20 Raphael Neider <rneider AT web.de>
27287
27288	* device/include/pic16/pic18f2455.h: added bitfields for port C
27289
272902008-04-20 Philipp Klaus Krause <pkk AT spth.de>
27291
27292	* src/z80/peep.c: Use werror for error messages.
27293
272942008-04-19 Philipp Klaus Krause <pkk AT spth.de>
27295
27296	* src/z80/peep.h (declaration of notUsed()),
27297	* src/z80/main.c (enabled notUsed() for z80 port, documented z80_port
27298	  struct),
27299	* src/z80/z80.h (added dependency on peep.h),
27300	* src/z80/peep.c (definition of notUsed()): Implemented RFE #1880202
27301	  for Z80.
27302
273032008-04-19 Philipp Klaus Krause <pkk AT spth.de>
27304
27305	* src/SDCCpeeph.c (added support for notUsed()),
27306	* src/mcs51/main.c (added dependency on peep.h, documented mcs51_port
27307	  struct),
27308	* src/port.h (removed dependency on mcs51/peep.h, added declaration
27309	  for notUsed()): Implemented generic (that is not port-specific) part
27310	  of RFE #1880202.
27311
273122008-04-17 Maarten Brock <sourceforge.brock AT dse.nl>
27313
27314	* as/link/mcs51/lkmem.c (summary2): fixed bug 1796077
27315	* device/lib/libsdcc.lib,
27316	* device/lib/Makefile.in,
27317	* support/regression/ports/mcs51-xstack-auto/spec.mk,
27318	* device/lib/calloc.c: renamed to _calloc.c
27319	* device/lib/free.c: renamed to _free.c
27320	* device/lib/malloc.c: renamed to _malloc.c
27321	* device/lib/realloc.c: renamed to _realloc.c
27322	* src/ds390/gen.c (aopGet, aopPut, genPlusBits, genDataPointerSet,
27323	  genNearPointerSet, genPagedPointerSet): synchronized with mcs51/gen.c
27324	* src/ds390/gen.c (popForBranch, genIfxJump, genCmp, genCmpEq, ifxForOp,
27325	  genAnd, genOr, genXor, genIfx, gen390Code): fixed bug 1509084
27326	* src/mcs51/gen.c (popForBranch, genIfxJump, genCmp, genCmpEq,
27327	  ifxForOp, genAnd, genOr, genXor, genNearPointerGet,
27328	  genPagedPointerGet, genFarPointerGet, genCodePointerGet,
27329	  genGenPointerGet, genIfx, gen51Code): fixed bug 1509084
27330	* src/ds390/gen.c,
27331	* src/mcs51/gen.c: throughout cosmetic changes for syncing both
27332	* src/SDCCsymt.h: updated IS_OP_RUONLY, IS_OP_ACCUSE
27333	* support/regression/tests/bug1509084.c: new, added
27334
273352008-04-14 Maarten Brock <sourceforge.brock AT dse.nl>
27336
27337	* device/include/mcs51/cc2510fx.h: added _XPAGE
27338	* device/include/mcs51/compiler.h: cosmetic changes
27339
273402008-03-31 Maarten Brock <sourceforge.brock AT dse.nl>
27341
27342	* sdcc.dsw: adapted for moved cpp2, added dependency for as_z80 on
27343	  config
27344
273452008-03-31 Borut Razem <borut.razem AT siol.net>
27346
27347	* support/cpp2 renamed to support/cpp
27348	* support/cpp2/libiberty/filenames.h, support/cpp2/libiberty/hex.c,
27349	  support/cpp2/libiberty/splay-tree.c,
27350	  support/cpp2/libiberty/splay-tree.h, support/cpp2/libcpp/macro.c,
27351	  support/cpp2/libcpp/directives.c,
27352	  support/cpp2/libcpp/include/cpplib.h,
27353	  support/cpp2/libcpp/include/symtab.h,
27354	  support/cpp2/libcpp/include/line-map.h,
27355	  support/cpp2/libcpp/line-map.c, support/cpp2/libcpp/files.c,
27356	  support/cpp2/libcpp/init.c, support/cpp2/libcpp/traditional.c,
27357	  support/cpp2/libcpp/expr.c, support/cpp2/libcpp/internal.h,
27358	  support/cpp2/libcpp/lex.c, support/cpp2/libcpp/system.h,
27359	  support/cpp2/libcpp/charset.c: SDCPP synchronized with GCC CPP
27360	  release version 4.3.0
27361	* configure.in, configure, Makefile.in, Makefile.bcc:
27362	  adapted for moved cpp2
27363
273642008-03-31 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
27365
27366	* device/include/hc08/mc68hc908jkjl.h: committed fix for bug #1929739,
27367	  thanks Alejandro Pustowka <alejo_pustowka AT yahoo.com.mx>
27368
273692008-03-30 Maarten Brock <sourceforge.brock AT dse.nl>
27370
27371	* src/SDCCloop.c (loopInvariants): applied fix for bug 1717943, thanks
27372	  Robert Larice
27373	* support/regression/tests/bug1717943.c: new, added
27374
273752008-03-30 Philipp Klaus Krause <pkk AT spth.de>
27376
27377	* src/z80/gen.c (assignResultValue): Reverted reversal of order of
27378	  bytewise return value assignments introduced in last commit.
27379
273802008-03-30 Philipp Klaus Krause <pkk AT spth.de>
27381
27382	* src/z80/gen.c (emitDebug, assignResultValue, genPlus, genMinus,
27383	  genMult, genJumpTab):
27384	  Use 16-bit instructions for addition in some additional cases,
27385	  implemented RFEs #1914251, #1914245, #1922090, #1921382, #1918323.
27386
273872008-03-30 Philipp Klaus Krause <pkk AT spth.de>
27388
27389	* src/z80/ralloc.c (serialRegAssign, allocReg, tryAllocatingRegPair):
27390	  Implemented RFE #1921450, changed some debug messages.
27391
273922008-03-30 Borut Razem <borut.razem AT siol.net>
27393
27394	* Small Device C Compiler 2.8.0 released
27395	* .version, doc/sdccman.lyx: changed sdcc version to 2.8.1
27396	* support/scripts/sdcc.nsi: added finish page; this version
27397	  was used for 2.8.0 release
27398	* doc/knownbugs.html: removed; magically generated by the build
27399	  process using gen_known_bugs.pl from now on
27400
274012008-03-23 Borut Razem <borut.razem AT siol.net>
27402
27403	* src/pic/gen.h: Q&D solution for the bug, found by Jim Paris
27404	  and reverted it, since it was already fixed by Raphael ;-)
27405	* doc/knownbugs.html: updated for RC2
27406
274072008-03-22 Raphael Neider <rneider AT web.de>
27408
27409	* src/SDCCicode.c (getPtrType): avoid unnecessary extra assignments
27410	  for PIC16 targets
27411
274122008-03-22 Maarten Brock <sourceforge.brock AT dse.nl>
27413
27414	* src/mcs51/gen.c (adjustArithmeticResult): fixed bug 1839299
27415	* support/regression/tests/bug1839277.c: added related testBug1839299
27416
274172008-03-21 Maarten Brock <sourceforge.brock AT dse.nl>
27418
27419	* src/ds390/gen.c (opIsGptr, adjustArithmeticResult, genAddrOf, genAssign),
27420	* src/mcs51/gen.c (opIsGptr, adjustArithmeticResult, genAddrOf, genAssign):
27421	  fixed bug 1839277
27422	* src/mcs51/gen.c: throughout only output hex constants
27423	* src/SDCCicode.c (getPtrType, geniCodeCast): fixed code size regression
27424	* support/regression/tests/bug1839277.c: new, added
27425
274262008-03-21 Philipp Klaus Krause <pkk AT spth.de>
27427
27428	* src/z80/ralloc.c (callFuncByName): Used // instead of /**/ to fix
27429	  compilation warning about nested comments.
27430
274312008-03-20 Maarten Brock <sourceforge.brock AT dse.nl>
27432
27433	* src/SDCCsymt.c (comparePtrType): fixed bug 1921073
27434	* support/regression/tests/bug1921073.c: new, added
27435
274362008-03-17 Philipp Klaus Krause <pkk AT spth.de>
27437
27438	* src/z80/SDCCpeeph.c.c (callFuncByName):
27439	  Commented function parameters.
27440
274412008-03-17 Philipp Klaus Krause <pkk AT spth.de>
27442
27443	* src/z80/ralloc.c (packRegsForAccUse2):
27444	  disabled a broken accumulator packing optimization (fixed #1292721).
27445	* support/regression/tests/bug-1292721: Regression test for #1292721.
27446
274472008-03-16 Raphael Neider <rneider AT web.de>
27448
27449	* src/pic/gen.c (SetIrp,genNearPointerGet,genNearPointerSet):
27450	  fixed code bloat regression using a variant of patch #1915618
27451
274522008-03-16 Borut Razem <borut.razem AT siol.net>
27453
27454	* support/scripts/sdcc.nsi: added section debugging macros, added SDCC
27455	  icon, changed startup menu for release distribution, code cleaning,
27456	  create url files instead links in startup menu
27457
274582008-03-16 Maarten Brock <sourceforge.brock AT dse.nl>
27459
27460	* src/SDCCcse.c (algebraicOpts): fixed bug 1579949
27461	* support/regression/tests/bug1579949.c: new, added
27462
274632008-03-14 Paul Stoffregen <paul AT pjrc.com>
27464
27465	* device/lib/printf_fast.c: fixed bug 1255403
27466
274672008-03-14 Maarten Brock <sourceforge.brock AT dse.nl>
27468
27469	* doc/sdccman.lyx: enhanced paragraph about bankswitching for mcs51
27470	* src/cdbFile.c (cdbWriteBasicSymbol): fixed bug 1909409 for locals
27471
274722008-03-14 Borut Razem <borut.razem AT siol.net>
27473
27474	* as/doc/asmlnk.doc, as/doc/asxhtm.html: updated link-xx and aslink
27475	  command line options
27476	* as/link/hc08/lkmain.c: converted tabs to spaces so that the usage
27477	  is correctly displayed
27478	* as/link/z80/lkmain.c: usage line commented out
27479
274802008-03-13 Borut Razem <borut.razem AT siol.net>
27481
27482	* doc/sdccman.lyx: corrected to be able to convert to PDF,
27483	  updated the list pf supported pic14 devices
27484
274852008-03-12 Maarten Brock <sourceforge.brock AT dse.nl>
27486
27487	* doc/sdccman.lyx: added paragraph about bankswitching for mcs51
27488
274892008-03-12 Borut Razem <borut.razem AT siol.net>
27490
27491	* as/doc/asmlnk.doc, as/doc/asxhtm.html: updated command line options,
27492	  fixed documentation request #1718191
27493	* as/hc80/asmain.c, as/mcs51/asmain.c: added option -c to usage
27494	* doc/sdccman.lyx: added description of --no-std-crt0 gbz80
27495	  command line option
27496
274972008-03-10 Maarten Brock <sourceforge.brock AT dse.nl>
27498
27499	* src/SDCCast.c (isConformingBody): fixed bug 1505811, thanks Robert Larice
27500	* support/regression/tests/bug1505811.c: new, added
27501
275022008-03-09 Raphael Neider <rneider AT web.de>
27503
27504	* device/include/pic16/pic18f2620.h,
27505	* device/include/pic16/pic18f4620.h,
27506	* device/lib/pic16/libdev/pic18f2620.c,
27507	* device/lib/pic16/libdev/pic18f4525.c,
27508	* device/lib/pic16/libdev/pic18f4620.c: merged 18f2525/2620/4525/4620
27509	  family to consistently use pic18f4620.[ch], fixes #1832562
27510
275112008-03-09 Borut Razem <borut.razem AT siol.net>
27512
27513	* .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt:
27514	  changed sdcc version to 2.8.0
27515	* knownbugs.html: regenerated
27516	* support/scripts/gen_known_bugs.pl: added number of open bugs
27517
275182008-03-09 Raphael Neider <rneider AT web.de>
27519
27520	* src/pic16/gen.c (pic16_mov2w_volatile): NEW, read volatile operands,
27521	  (genOr): read volatile operand even if the result is known,
27522	  closes #1511838
27523	  (genOr,genXor): removed unused legacy code,
27524	  (genDummyRead): use pic16_mov2w_volatile()
27525
275262008-03-08 Borut Razem <borut.razem AT siol.net>
27527
27528	* src/SDCCglue.c: fixed bug #1864582: multiple definition of char
27529	  cons w. --model-large
27530	* support/regression/staticinit.c: added regression test for bug
27531	  #1864582
27532
275332008-03-08 Maarten Brock <sourceforge.brock AT dse.nl>
27534
27535	* src/ds390/gen.c (pushSide, genPcall),
27536	* src/hc08/gen.c (pushSide, genPcall): synchronized with mcs51
27537	* src/mcs51/gen.c: cosmetic changes
27538	* support/regression/fwk/include/testfwk.h: added macro reentrant
27539	* support/regression/tests/bug1908493.c: new, added
27540
275412008-03-08 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
27542
27543	* src/SDCCdebug.c:, as/link/lkaomf51.c: Fixed bug 1909409: Pdata in OMF file
27544
275452008-03-08 Maarten Brock <sourceforge.brock AT dse.nl>
27546
27547	* src/mcs51/gen.c (pushSide, genPcall): fixed bug 1908493
27548	* src/SDCCmain.c (preProcess): removed -DSDCC_PARMS_IN_BANK1 because it is
27549	  already set in ds390/main.c and mcs51/main.c
27550
275512008-03-07 Raphael Neider <rneider AT web.de>
27552
27553	* src/regression/init0.c: new test for initialized arrays of function
27554	  pointers
27555	* src/regression/Makefile: made a bit more flexible, added init0.c
27556	* src/pic/glue.c (emitIvals): hacky fix for initializing from function
27557	  pointers, closes #1427663
27558
275592008-03-05 Borut Razem <borut.razem AT siol.net>
27560
27561	* dos/sdccman.lyx: docummented predefined macros SDCC_REVISION,
27562	  SDCC_PARMS_IN_BANK1, SDCC_FLOAT_REENT and SDCC_INT_LONG_REENT
27563
275642008-03-05 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
27565
27566	* support/librarian/sdcclib.c:Added feature request 1908061:
27567	  Synchronise sdcclib commands with ar.
27568
275692008-03-04 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
27570
27571	* src/SDCCmain.c: added predefined macros SDCC_REVISION (RFE #1907229),
27572	  and (depending on corresponding compiler option) SDCC_PARMS_IN_BANK1,
27573	  SDCC_FLOAT_REENT, SDCC_INT_LONG_REENT
27574	* device/include/mcs51/compiler.h: removed umlauts, added double
27575	  underscore
27576
275772008-03-04 Maarten Brock <sourceforge.brock AT dse.nl>
27578
27579	* src/SDCCptropt.c (ptrPseudoSymConvert): fixed bug 1536762
27580	* support/regression/tests/bug1536762.c: new, added
27581	* src/SDCCutil.c,
27582	* src/SDCCutil.h: added getBuildDate()
27583	* src/SDCCmain.c (printVersionInfo),
27584	* src/SDCCglue.c (initialComments): use getBuildDate() instead of
27585	  __DATE__
27586	* src/*/ralloc.c: removed IS_OP_RUONLY macro
27587	* src/ds390/ralloc.c (packRegisters),
27588	* src/mcs51/ralloc.c (packRegisters),
27589	* src/z80/ralloc.c (packRegisters): applied fix for bug 1618050, thanks
27590	  Robert Larice
27591	* support/regression/tests/bug1618050.c: new, added
27592	* src/SDCCsymt.h: fixed typo in DECLSPEC2TXT
27593	* support/regression/fwk/include/testfwk.h,
27594	* support/regression/tests/bug1838000.c: moved _AUTOMEM and _STATMEM to
27595	  testfwk.h
27596
275972008-03-04 Raphael Neider <rneider AT web.de>
27598
27599	* src/pic/gen.c: removed unused prototypes, prevent internal errors
27600	  on accessing OP_SYM_TYPE(op)
27601	* src/pic/gen.h: removed unused prototype of genMinusDec()
27602	* src/pic/genarith.c (genMinus): cosmetic changes, rewritten to
27603	  fix #1876953 (invalid subtraction code), removed unused code
27604
276052008-03-03 Raphael Neider <rneider AT web.de>
27606
27607	* src/pic/gen.c,
27608	* src/pic/gen.h,
27609	* src/pic/genarith.c,
27610	* src/pic/ralloc.c,
27611	* src/pic/ralloc.h: removed AOP_R0, AOP_R1, AOP_DPTR, AOP_DPTR2,
27612	  AOP_ACC, and *_IDX and adjusted code, removed unused legacy code
27613
276142008-03-03 Raphael Neider <rneider AT web.de>
27615
27616	* src/pic/device.c (find_device): search user-specified paths first
27617	  for pic14devices.txt, fixes #1900827
27618
276192008-03-02 Borut Razem <borut.razem AT siol.net>
27620
27621	* support/scripts/sdcc.nsi: fixed bug in IsNT, LogicLib-isation of
27622	  AddToPath and RemoveFromPath
27623
276242008-03-01 Borut Razem <borut.razem AT siol.net>
27625
27626	* support/scripts/sdcc.nsi: reverted MULTIUSER page since it didn't
27627	  work correctly, added debugging support if -DSDCC.DEBUG command line
27628	  option is defined
27629
276302008-02-28 Borut Razem <borut.razem AT siol.net>
27631
27632	* doc/sdccman.lyx: cosmetic changes
27633
276342008-02-28 Maarten Brock <sourceforge.brock AT dse.nl>
27635
27636	* src/mcs51/ralloc.c (fillGaps): fixed bug 1839671
27637	* doc/sdccman.lyx: fixed unmeant removal of spaces
27638
276392008-02-27 Borut Razem <borut.razem AT siol.net>
27640
27641	* support/scripts/sdcc.nsi: corrected installation directory for
27642	  current user installation mode
27643	* doc/README.txt: added Philipp Klaus Krause to the developers list
27644
276452008-02-27 Maarten Brock <sourceforge.brock AT dse.nl>
27646
27647	* src/mcs51/gen.c (genUnpackBits): don't generate ifxJump, instead
27648	  return ifx condition
27649	  (genNearPointerGet, genPagedPointerGet, genFarPointerGet,
27650	  genCodePointerGet, genGenPointerGet): cleanup aop before generating
27651	    ifxJump to fix bug 1838000
27652	* src/SDCCsymt.c (aggregateToPointer): fix problem for xstack
27653	* support/regression/tests/bug1838000.c: new, added
27654	* device/include/mcs51/cc1110.h: new, added, thanks to Pravin Angolkar
27655
276562008-02-26 Borut Razem <borut.razem AT siol.net>
27657
27658	* src/SDCCast.c, doc/sdccman.lyx: fixed RFE #1901171: integer promotion
27659	  of casted varargs
27660	* support/scripts/sdcc.nsi: added MULTIUSER page,
27661	  NSIS upgraded to version 2.35
27662
276632008-02-25 Maarten Brock <sourceforge.brock AT dse.nl>
27664
27665	* src/mcs51/ralloc.c (isSpiltOnStack): fixed bug 1565152
27666	* support/regression/tests/bug1565152.c: new, added
27667
276682008-02-25 Maarten Brock <sourceforge.brock AT dse.nl>
27669
27670	* src/mcs51/gen.c (genPagedPointerSet): fixed bug 1670148
27671	* support/regression/ports/mcs51-xstack-auto/spec.mk: added expf.c
27672	* support/regression/tests/bug1670148.c: new, added
27673
276742008-02-25 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
27675
27676	* device/include/mcs51/at89c51ed2.h: fixed bug 1901469.
27677
276782008-02-24 Borut Razem <borut.razem AT siol.net>
27679
27680	* src/SDCCast.c, src/SDCCast.h: fixed bug #1874922: explicit typecast
27681	  is ineffective for unsigned char parameter
27682
276832008-02-24 Maarten Brock <sourceforge.brock AT dse.nl>
27684
27685	* src/SDCCast.c (expandInlineFuncs): fixed bug 1875869
27686	* src/SDCCglue.c (printIvalBitFields): fixed bug 1806631
27687	* support/regression/tests/bitopcse.c: removed hc08 exception, see testfwk.h
27688	* support/Util/MySystem.c (my_system): output errorcode when verbose
27689
276902008-02-22 Philipp Klaus Krause <pkk AT spth.de>
27691
27692	* src/z80/gen.c (genMult): Rewrote 8-bit multiplication by constant,
27693	  implements #1898231
27694
276952008-02-22 Philipp Klaus Krause <pkk AT spth.de>
27696
27697	* device/lib/z80/mul.s: Rewrote __muluchar_rrx_s, to improve 8-bit mult.,
27698	  implements #1896290
27699
277002008-02-22 Maarten Brock <sourceforge.brock AT dse.nl>
27701
27702	* src/SDCCast.c (createIvalStruct): fixed bug 1466761
27703
277042008-02-21 Borut Razem <borut.razem AT siol.net>
27705
27706	* support/regression/Makefile.in,
27707	  support/regression/ports/ds390/spec.mk,
27708	  support/regression/ports/hc08/spec.mk,
27709	  support/regression/ports/mcs51-common/spec.mk,
27710	  support/regression/ports/pic14/spec.mk,
27711	  support/regression/ports/pic16/spec.mk,
27712	  support/regression/ports/ucz80/spec.mk,
27713	  support/regression/ports/xa51/spec.mk:
27714	  added CFLAGS when compiling timeout
27715
277162008-02-20 Philipp Klaus Krause <pkk AT spth.de>
27717
27718	* support/regression/tests/bugs-1596270-1736867.c: Regression test for
27719	  #1596270, #1736867
27720
277212008-02-20 Maarten Brock <sourceforge.brock AT dse.nl>
27722
27723	* src/SDCClrange.c (findPrevUse): fixed bug 1888147
27724	* support/regression/tests/bug1888147.c: new, added
27725
277262008-02-20 Philipp Klaus Krause <pkk AT spth.de>
27727
27728	* src/z80/gen.c: fixed bugs #1596270, #1736867
27729
277302008-02-20 Philipp Klaus Krause <pkk AT spth.de>
27731
27732	* src/z80/gen.c: fixed bug in register pair loading when swapping register
27733	  contents, mostly fixes #1596270
27734
277352008-02-20 Philipp Klaus Krause <pkk AT spth.de>
27736
27737	* src/z80/peeph.def,
27738	* src/z80/peeph-z80.def: moved peephole that breaks gbz80 to z80-specific
27739	  peepholes, fixes #1806565
27740
277412008-02-20 Maarten Brock <sourceforge.brock AT dse.nl>
27742
27743	* src/SDCCpeeph.c (operandBaseName): added check for @Ri
27744	* src/mcs51/peeph.def (rule 177.c): added operandsNotRelated(%1 %3)
27745	  fixes bug 1739475, thanks Robert Larice
27746	  (rule 271): new, added
27747
277482008-02-18 Borut Razem <borut.razem AT siol.net>
27749
27750	* sim/ucsim/s51.src/Makefile.in: fixed error made in previous commit
27751
277522008-02-17 Maarten Brock <sourceforge.brock AT dse.nl>
27753
27754	* src/SDCCmain.c (linkEdit): emit -z when using --debug for z80
27755
277562008-02-17 Raphael Neider <rneider AT web.de>
27757
27758	* src/pic16/genarith.c,
27759	* src/pic16/gen.c,
27760	* src/pic16/gen.h,
27761	* src/pic16/genutils.c: removed unused legacy code,
27762	  removed unused fields from struct asmop and struct _G
27763
277642008-02-17 Raphael Neider <rneider AT web.de>
27765
27766	* src/pic16/gen.c (AccRsh): cosmetic changes,
27767	  (shiftR1Left2ResultSigned,shiftR1Left2Result,shiftL1Left2Result,
27768	  genRightShiftLiteral): fixed to work with SFRs as result by
27769	  assigning only once to result,
27770	  removed a lot of unused/excluded code fragments
27771
277722008-02-17 Raphael Neider <rneider AT web.de>
27773
27774	* device/include/pic/pic16f88.h,
27775	* device/include/pic/pic16f886.h,
27776	* device/include/pic/pic16f887.h: added TRISA6 and TRISA7
27777
277782008-02-17 Borut Razem <borut.razem AT siol.net>
27779
27780	* src/z80/peeph.def: applied patch
27781	  #1893626: Optimize tail calls on Z80, thanks to Philipp Krause
27782	* src/z80/gen.c, src/z80/peeph.def: applied patch
27783	  #1893510: Improve logical left shift on Z80, thanks to Philipp Krause
27784	* sim/ucsim/avr.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in,
27785	  sim/ucsim/s51.src/Makefile.in, sim/ucsim/sim.src/Makefile.in,
27786	  sim/ucsim/xa.src/Makefile.in, sim/ucsim/z80.src/Makefile.in,
27787	  sim/ucsim/main_in.mk: renamed libutil.a to libucsimutil.a in order to
27788	  enable compilation on Mac OS X 10.5 (Leopard) and XCode v3.0
27789
277902008-02-16 Maarten Brock <sourceforge.brock AT dse.nl>
27791
27792	* as/link/mcs51/aslink.dsp: removed SDK define
27793	* as/link/z80/clean.mk: brought in sync with other ports
27794	* as/link/z80/lklibr.c (SdccLib, fndsym): handle the dflag here too
27795	* as/hc08/Makefile.bcc,
27796	* as/mcs51/Makefile.bcc,
27797	* as/z80/Makefile.bcc: noice.c was moved to as/asxxsrc/
27798	* src/z80/main.c (_setValues): use the now capitalized -Z,
27799	  (z80_port, gbz80_port): generate debug information when asked
27800
278012008-02-16 Borut Razem <borut.razem AT siol.net>
27802
27803	* as/z80/asmain.c, as/z80/asm.h, as/z80/asdata.c,
27804	  as/link/z80/lkmain.c, as/z80/as_gbz80.dsp, as/z80/as_z80.dsp,
27805	  as/z80/Makefile.in. as/z80/Makefile.bcc:
27806	  applied patch #1893393: patch for as-z80 and link-z80 to generate
27807	  cdb, thanks to Armin Diehl
27808	* as/*/asnoice.c, as/hc08/as_hc08.dsp, as/hc08/Makefile.in,
27809	  as/mcs51/asx8051.dsp, as/mcs51/Makefile.in:
27810	  asnoice.c moved to as/asxxsrc/asnoice.c
27811	* src/z80/peeph-gbz80.def: applied patch
27812	  #1880235: Z80 return peephole, thanks to Philipp Krause
27813
278142008-02-14 Maarten Brock <sourceforge.brock AT dse.nl>
27815
27816	* .version,
27817	* doc/sdccman.lyx: bumped version to 2.7.5
27818	* src/SDCCsymt.c (compareType, comparePtrType): fixed bug 1281583
27819
278202008-02-13 Maarten Brock <sourceforge.brock AT dse.nl>
27821
27822	* device/include/pic16/stdlib.h,
27823	* device/lib/pic16/libc/stdlib/ltoa.c,
27824	* device/lib/pic16/libc/stdio/vfprintf.c: ascii strings are char*
27825
278262008-02-13 Borut Razem <borut.razem AT siol.net>
27827
27828	* src/SDCCmain.c, src/SDCCglue.c: fixed --c1mode
27829	* src/pic16/glue.c, src/SDCCast.c, src/SDCCast.h, src/SDCCBBlock.c,
27830	  src/SDCCcse.c, src/SDCCglue.c, src/SDCCicode.c, src/SDCCloop.c,
27831	  src/SDCCopt.c,  src/SDCCval.c:
27832	  fixed bug #1890273: SDCC Warning 154 shows wrong filename
27833
278342008-02-12 Maarten Brock <sourceforge.brock AT dse.nl>
27835
27836	* src/SDCCsymt.c (compareType): fixed bug 1309013
27837
278382008-02-09 Borut Razem <borut.razem AT siol.net>
27839
27840	* src/SDCCval.c, src/SDCCval.h:
27841	  code cleaning, added function constChrVal()
27842	* src/SDCCglue.c, src/pic/glue.c, src/pic16/glue.c, src/SDCCast.c, src/SDCC.y:
27843	  call constChrVal() instead constVal()
27844
278452008-02-01 Maarten Brock <sourceforge.brock AT dse.nl>
27846
27847	* src/SDCCast.c (resolveSymbols): added reentrancy check for parameters
27848	  of function pointer
27849	* src/SDCCerr.h,
27850	* src/SDCCerr.c: changed warning W_NONRENT_ARGS to error E_NONRENT_ARGS
27851	* support/regression/tests/absolute.c: added TestStruct TestVar (see also
27852	  bug 1859853)
27853
278542008-02-01 Raphael Neider <rneider AT web.de>
27855
27856	* device/include/pic/pic16f886.h,
27857	* device/include/pic/pic16f887.h: added RA6 and RA7
27858
278592008-01-24 Raphael Neider <rneider AT web.de>
27860
27861	* device/include/pic/pic16f88.h: added RA6 and RA7
27862	* device/lib/pic/libdev/disabled_pic16f886.c,
27863	* device/lib/pic/libdev/disabled_pic16f887.c: renamed and enabled
27864
27865	* src/pic16/devices.inc,
27866	* device/include/pic16/pic18f2423.h,
27867	* device/include/pic16/pic18f2523.h,
27868	* device/include/pic16/pic18fregs.h,
27869	* device/lib/pic16/pics.all
27870	* device/lib/pic16/libdev/pic18f2423.c,
27871	* device/lib/pic16/libdev/pic18f2523.c: added 18f2423 and 18f2523
27872	* device/lib/pic16/libio/i2c.ignore,
27873	* device/lib/pic16/libio/usart.ignore,
27874	* device/lib/pic16/libio/adc.ignore: ignore new devices
27875
278762008-01-23 Maarten Brock <sourceforge.brock AT dse.nl>
27877
27878	* src/SDCCast.c (createRMW): fixed bug 1582651
27879
278802008-01-20 Borut Razem <borut.razem AT siol.net>
27881
27882	* src/SDCCcse.c: partially fixed enhancement request
27883	  #1793872 - multiply by -1 not collapsed
27884	* support/regression/tests/arithcsi.c: added regression test
27885
278862008-01-19 Maarten Brock <sourceforge.brock AT dse.nl>
27887
27888	* as/mcs51/asx8051.dsp: removed define SDK
27889	* as/mcs51/i51mch.c (machine): fixed bug 1865114
27890	* device/include/asm/ds390/features.h: fixed bug with ds390 & stack-auto
27891	* as/link/lklex.c,
27892	* as/link/mcs51/lkmain.c: used LKDIRSEP, LKDIRSEPSTR and LKOBJEXT,
27893	  cosmetic changes, brought more in sync, changed old K&R to ANSI
27894
278952008-01-13 Borut Razem <borut.razem AT siol.net>
27896
27897	* support/scripts/sdcc.nsi: added Uninstall/reinstall page, ...
27898	* src/SDCCicode.c: fixed bug #1870216 - Error 122: dividing by zero
27899
279002007-12-30 Borut Razem <borut.razem AT siol.net>
27901
27902	* src/pic16/gen.c: fixed implementation of bitwise operations for
27903	  pic16 target
27904	* support/regression/tests/bitwise.c: added test cases
27905
279062007-12-29 Borut Razem <borut.razem AT siol.net>
27907
27908	* src/SDCCasm.[ch]: renamed from asm[ch], use dbuf_getline(), ...
27909	* src/src.dsp, src/Makefile.bcc, src/Makefile.in, src/common.h,
27910	  src/SDCCglue.c, src/xa51/main.c: asm.[ch] renamed to SDCCasm.[ch]
27911	* support/Util/dbuf_string.[ch]: added function dbuf_getline()
27912	* src/ds390/gen.c, src/hc08/gen.c, src/mcs51/gen.c, src/pic16/gen.c,
27913	  src/pic/gen.c, src/z80/gen.c, src/xa51/gen.c, src/pic16/ralloc.c,
27914	  src/pic16/pcode.[ch]: added const qualifier
27915	* as/hc08/Makefile.bcc, as/hc08/Makefile.in, as/hc08/as_hc08.dsp,
27916	  as/mcs51/Makefile.bcc, as/mcs51/Makefile.in, as/mcs51/asx8051.dsp,
27917	  as/z80/Makefile.bcc, as/z80/Makefile.in, as/z80/as_gbz80.dsp,
27918	  as/z80/as_z80.dsp: added dbuf.[ch] and dbuf_string[ch] to project
27919	* as/asxxsrc/aslex.c: use dbuf_getline()
27920	* as/hc08/asdata.c, as/hc08/asexpr.c, as/hc08/asm.h, as/hc08/m08adr.c,
27921	  as/mcs51/asdata.c, as/mcs51/asexpr.c, as/mcs51/asm.h,
27922	  as/mcs51/i51adr.c, as/z80/asdata.c, as/z80/asexpr.c, as/z80/aslist.c,
27923	  as/z80/asm.h, as/z80/z80adr.c:
27924	  changed type of ib and ip to const char *
27925
279262007-12-28 Borut Razem <borut.razem AT siol.net>
27927
27928	* as/asxxsrc/aslex.c: moved from as/mcs51/aslex.c;
27929	  introduced (readlin) - long lines are turuncated
27930	* as/hc08/as_hc08.dsp, as/mcs51/asx8051.dsp, as/z80/as_gbz80.dsp,
27931	  as/z80/as_z80.dsp, as/hc08/Makefile.in, as/mcs51/Makefile.in,
27932	  as/z80/Makefile.in: moved aslex.c to asxxsrc
27933	* as/hc08/aslex.c, as/z80/aslex.c: deleted
27934	* as/hc08/asmain.c, as/mcs51/asmain.c:
27935	  added missing initialization of a_addr field
27936	* support/regression/tests/long_asm_line.c: added regtest for long
27937	  assembler line
27938
279392007-12-22 Borut Razem <borut.razem AT siol.net>
27940
27941	* src/SDCC.lex: fixed bug #1852894: # character hangs the compiler
27942
279432007-12-20 Maarten Brock <sourceforge.brock AT dse.nl>
27944
27945	* src/SDCCsymt.c (computeType): fixed bug, thanks Fan Weiguang
27946
279472007-12-16 Borut Razem <borut.razem AT siol.net>
27948
27949	* device/include/pic16/stdbool.h: removed, since already exists in
27950	 device/include/; this also fixes bitopcse.c regression test for pic16
27951	 target
27952	* support/regression/fwk/inclusw/testfwk.h: added macro ASSERT_FAILED
27953	* src/pic16/glue.c: fixed bug #1851855: generic static pointer
27954	  dereference doesn't work; covered by regression test bug1399290
27955
279562007-12-05 Borut Razem <borut.razem AT siol.net>
27957
27958	* doc/sdccman.lyx: fixed bug #1844509 - Correction to Manual 4.6.9
27959	  Adding new PIC16
27960
279612007-12-01 Borut Razem <borut.razem AT siol.net>
27962
27963	* sim/ucsim/cmd.src/cmdmem.cc, sim/ucsim/cmd.src/mem.cc:
27964	  corrected handling of the highest_valid_address
27965
279662007-11-17 Raphael Neider <rneider AT web.de>
27967
27968	* src/pic/main.c (_asmCmd): include debug arguments (-g as $3)
27969	* src/pic/glue.c (picglue): emit .file if --debug is given
27970
279712007-11-17 Raphael Neider <rneider AT web.de>
27972
27973	* src/pic16/genarith.c (pic16_genPlus, pic16_genMinus): take special
27974	care when left or right operand resides in result, fixes #1830220
27975
279762007-11-17 Borut Razem <borut.razem AT siol.net>
27977
27978	* src/SDCCglue.c, src/pic16/glue.c: reverted fix for bug
27979	  #983491 - "Merge duplicate strings function is ineffective"
27980	* support/regression/tests/bug-983491.c: regtest disabled
27981	* as/asxxsrc: created
27982	  as/asxxsrc/assym.c, as/asxxsrc/strcmpi.c: moved
27983	  as/hc08/assym.c, as/mcs51/assym.c, as/strcmpi.c,
27984	  as/z80/assym.c, as/hc08/asstore.c, as/mcs51/asstore.c: deleted
27985	  as/hc08/Makefile.bcc, as/hc08/Makefile.in, as/hc08/as_hc08.dsp,
27986	  as/hc08/asm.h, as/link/hc08/Makefile.bcc, as/link/hc08/Makefile.in,
27987	  as/link/hc08/link_hc08.dsp, as/link/mcs51/Makefile.bcc,
27988	  as/link/mcs51/Makefile.in, as/link/mcs51/aslink.dsp,
27989	  as/link/z80/Makefile.in, as/link/z80/linkgbz80.dsp,
27990	  as/link/z80/linkz80.dsp, as/mcs51/Makefile.bcc, as/mcs51/Makefile.in,
27991	  as/mcs51/asm.h, as/mcs51/asx8051.dsp, as/z80/Makefile.bcc,
27992	  as/z80/Makefile.in, as/z80/as_gbz80.dsp, as/z80/as_z80.dsp,
27993	  as/z80/Makefile.as_hc08, as/mcs51/Makefile.asx8051: modified
27994	  created as/asxxsrc directory, assym.c and strcpi.c moved into it
27995
279962007-11-15 Maarten Brock <sourceforge.brock AT dse.nl>
27997
27998	* device/include/stdarg.h: added and removed some casts
27999	* src/SDCCsymt.c (compareType): Fully check types between generic and
28000	  non-generic pointers, also accept ptr-ptr to void-ptr assignments
28001
280022007-11-13 Borut Razem <borut.razem AT siol.net>
28003
28004	* support/regression/tests/bug-1817005.c:
28005	  added regtest for bug #1817005 - as-z80 chokes on long labels
28006
280072007-11-12 Borut Razem <borut.razem AT siol.net>
28008
28009	* as/z80/asmain.c, as/z80/asm.h, as/z80/assym.c, as/z80/asdata.c,
28010	  as/z80/asout.c, as/z80/aslist.c:
28011	  fixed bug #1817005 - as-z80 chokes on long labels
28012
280132007-11-11 Maarten Brock <sourceforge.brock AT dse.nl>
28014
28015	* as/hc08/asmain.c,
28016	* as/z80/asmain.c: cosmetic changes
28017	* as/hc08/alloc.h,
28018	* as/mcs51/alloc.h,
28019	* as/z80/alloc.h: removed
28020	* as/hc08/assym.c,
28021	* as/mcs51/assym.c: replaced alloc.h with stdlib.h
28022	* as/link/aslink.h: added LKDIRSEP and, LKDIRSEPSTR
28023	* as/link/hc08/Makefile.in,
28024	* as/link/mcs51/Makefile.in,
28025	* as/link/z80/Makefile.in: added -DUNIX to CFLAGS
28026	* as/link/lklex.c,
28027	* as/link/mcs51/lkarea.c,
28028	* as/link/mcs51/lkmain.c: cosmetic changes
28029	* as/link/hc08/lklibr.c,
28030	* as/link/z80/lklibr.c,
28031	* as/link/mcs51/lklibr.c: used LKDIRSEP, LKDIRSEPSTR and LKOBJEXT,
28032	  used cygwin_conv_to_full_posix_path,
28033	  added warnings, cosmetic changes, brought more in sync
28034	  changed old K&R into ANSI function declarations
28035	* as/link/z80/lklibr.c (loadAdb): added
28036	* as/link/z80/lkmain.c: removed -- option from usage text
28037
280382007-11-03 Maarten Brock <sourceforge.brock AT dse.nl>
28039
28040	* src/mcs51/gen.c (outBitC): optimized for no result
28041
280422007-10-31 Borut Razem <borut.razem AT siol.net>
28043
28044	* src/SDCCsymt.c: fixed (hopeful properly) bug
28045	  #1805702 - order of extern matters
28046	* support/regression/tests/bug-1805702.c: enabled regtest for bug
28047	  #1805702
28048
280492007-10-29 Borut Razem <borut.razem AT siol.net>
28050
28051	* src/SDCCsymt.c: reverted bad fixed of bug #1805702
28052	  - order of extern matters
28053	* support/regression/tests/bug-1805702.c: disabled regtest for bug
28054	  #1805702
28055
280562007-10-29 Maarten Brock <sourceforge.brock AT dse.nl>
28057
28058	* src/ds390/peeph.def: replaced 24bitModeAndPortDS390 by
28059	  24bitMode, portIsDS390
28060	* src/mcs51/gen.c (genOr): optimized for RFE 1750727
28061	* src/SDCCpeeph.c (flat24bitModeAndPortDS390): removed
28062	  (notVolatileVariable): also check sloc names,
28063	  (callFuncByName): moved ftab[] out of function and sorted it by use
28064
280652007-10-28 Maarten Brock <sourceforge.brock AT dse.nl>
28066
28067	* device/include/stdarg.h: fixed bug in va_start macro for --xstack
28068	* src/hc08/gen.c (aopForRemat): aop->aopu.aop_immd.from_cast_remat not set,
28069	  aop->aopu.aop_immd.aop_immd2 not filled with (generic) pointer type
28070	* src/SDCCicode.c (geniCodeCast): fixed bug 880197
28071	* support/regression/tests/bug-880197.c: new, added
28072
280732007-10-28 Borut Razem <borut.razem AT siol.net>
28074
28075	* support/regression/Makefile.in,
28076	  support/regression/ports/mcs51-large/spec.mk,
28077	  support/regression/ports/mcs51-xstack-auto/spec.mk,
28078	  support/regression/ports/mcs51-stack-auto/spec.mk,
28079	  support/regression/ports/mcs51-medium/spec.mk,
28080	  support/regression/ports/mcs51-common/spec.mk,
28081	  support/regression/ports/mcs51-common/*,
28082	  support/regression/ports/mcs51-small/*:
28083	  mcs51 renamed to mcs51-common, created mcs51-small
28084	* src/SDCCsymt.c: fixed bug #1805702 - order of extern matters
28085	* support/regression/tests/bug-1805702.c: added regtest for bug
28086	  #1805702
28087
280882007-10-26 Maarten Brock <sourceforge.brock AT dse.nl>
28089
28090	* src/mcs51/peeph.def: moved rules 257.x to 253.x and re-enabled 253.b,
28091	  added new rules 265 - 270
28092	* support/regression/tests/bug1721024.c:new, added
28093	* support/regression/Makefile.in: renamed test-mcs51 to test-mcs51-small,
28094	  introduced new test-mcs51 to run all mcs51 tests
28095
280962007-10-25 Maarten Brock <sourceforge.brock AT dse.nl>
28097
28098	* support/regression/tests/bug1816470.c: new, added
28099
281002007-10-21 Maarten Brock <sourceforge.brock AT dse.nl>
28101
28102	* src/SDCCast.c (resultTypePropagate): do propagate for LEFT_OP, do not
28103	  propagate for *,+,- with float, fixed bug 1816470
28104	  (decorateType): cast to resultTypeProp instead of resultType
28105
281062007-10-19 Borut Razem <borut.razem AT siol.net>
28107
28108	* src/pic16/glue.c: fixed bug #983491 - "Merge duplicate strings
28109	  function is ineffective" for pic16 tareget
28110	* support/scripts/listerr.c: corrected include path
28111	* device/lib/_itoa.c: fixed bug #1806402 - _itoa and _uitoa leak to
28112	  adjacent memory
28113
281142007-10-18 Maarten Brock <sourceforge.brock AT dse.nl>
28115
28116	* support/regression/tests/using.c: new, added
28117	* support/regression/tests/vaargs.c: fixed and enabled test
28118
281192007-10-18 Borut Razem <borut.razem AT siol.net>
28120
28121	* src/SDCCglue.c: fixed bug #983491 - Merge duplicate strings function
28122	  is ineffective
28123	* support/regression/tests/bug-983491.c: added regtest for bug #983491
28124
281252007-10-18 Maarten Brock <sourceforge.brock AT dse.nl>
28126
28127	* doc/sdccman.lyx: documented option --Werror
28128	* src/SDCCsymt.c (checkFunction): fixed bug 1815418 by setting
28129	  RegBankUsed[] earlier
28130
281312007-10-14 Maarten Brock <sourceforge.brock AT dse.nl>
28132
28133	* device/include/mcs51/p89lpc938.h: new, added, thanks Kyle Guinn
28134	* src/pic/glue.c,
28135	* src/SDCCval.c,
28136	* src/SDCCast.c,
28137	* src/SDCCast.h: replaced AST_LIT_VALUE with AST_FLOAT_VALUE and
28138	  AST_ULONG_VALUE
28139	* src/SDCCast.c (decorateType): improved optimization of tri-op
28140	* src/SDCCerr.c (vwerror, setWError),
28141	* src/SDCCerr.h,
28142	* src/SDCCmain.c (parseCmdLine): added option --Werror to treat all
28143	  warnings as errors, thanks Stas Sergeev for PATCH 1813211
28144
281452007-10-13 Maarten Brock <sourceforge.brock AT dse.nl>
28146
28147	* src/mcs51/gen.c (leftRightUseAcc): use macro IS_OP_ACCUSE
28148	* src/SDCCast.c (decorateType): optimize bit=cond?1:0, RFE 1738430
28149	* support/regression/tests/bug-223113.c,
28150	* support/regression/tests/bug-426632.c,
28151	* support/regression/tests/bug-468811.c,
28152	* support/regression/tests/bug-477835.c,
28153	* support/regression/tests/bug-478094.c,
28154	* support/regression/tests/bug-499644.c,
28155	* support/regression/tests/bug-524209.c,
28156	* support/regression/tests/bug-524211.c,
28157	* support/regression/tests/packcast.c,
28158	* support/regression/tests/structidx.c: added empty tests
28159	* support/regression/tests/bug-607243.c: enabled test
28160
281612007-10-06 Borut Razem <borut.razem AT siol.net>
28162
28163	* .version, doc/sdccman.lyx: bumped version to 2.7.4 to indicate the full
28164	   support of universal binaries on Mac OS X
28165
281662007-10-02 Borut Razem <borut.razem AT siol.net>
28167
28168	* src/SDCCval.h: unified double2ul macro for all platforms
28169	* src/SDCCval.c: fixed bug #1777758 - applied Maarten's patch
28170	* support/regression/tests/bitwise.c: added regtest for bug #1777758
28171
281722007-09-30 Borut Razem <borut.razem AT siol.net>
28173
28174	* src/SDCCval.h: fixed bug #1739860 - sdcc does not work correctly on some
28175	  platforms
28176	* sdcc_vc_in.h: enabled warnings
28177	* src/hc08/gen.c: fixed MSVC warning C4146: unary minus operator applied to
28178	  unsigned type, result still unsigned
28179	* src/mcs51/peep.c: fixed gcc warning: suggest parentheses around && within ||
28180
281812007-09-28 Raphael Neider <rneider AT web.de>
28182
28183	* src/pic/device.c (find_device): prevent buffer underflow error
28184	* src/pic/pcoderegs.c (OptimizeRegUsage): avoid dereferencing
28185	  the just destroyed list entry
28186
281872007-09-18 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
28188
28189	* doc/sdccman.lyx: there's a dedicated wiki page for cmake and sdcc, thanks
28190	  Alexander Neundorf
28191
281922007-09-18 Borut Razem <borut.razem AT siol.net>
28193
28194	* src/SDCCval.c: fixed MSVC warning C4146: unary minus operator
28195	 applied to unsigned type, result still unsigned
28196
281972007-09-17 Borut Razem <borut.razem AT siol.net>
28198
28199	* src/SDCC.y, src/SDCCast.c, src/SDCCcse.c, src/SDCCglue.c,
28200	  src/SDCCicode.c, src/SDCCopt.c, src/SDCCsymt.c, src/SDCCval.c,
28201	  src/SDCCval.h, src/hc08/gen.c, src/avr/gen.c, src/ds390/gen.c,
28202	  src/mcs51/gen.c, src/pic/gen.c, src/pic/genarith.c, src/pic/glue.c,
28203	  src/pic/ralloc.c, src/pic16/gen.c, src/pic16/genarith.c,
28204	  src/pic16/genutils.c, src/pic16/glue.c, src/pic16/main.c,
28205	  src/z80/gen.c, src/z80/ralloc.c:
28206	  fixed bug #1739860 - sdcc does not work correctly on some platforms
28207	  (not finished)
28208	  introduced and used ulFromVal(), double2ul(), used strtod() instead sscanf()
28209
282102007-09-17 Raphael Neider <rneider AT web.de>
28211
28212	* src/pic16/device.c: reverted to previous version
28213	* device/lib/pic16/Makefile.common.in: quieten gpasm via -Wa,-q
28214
282152007-09-16 Raphael Neider <rneider AT web.de>
28216
28217	* src/pic16/device.c (pic16_dump_usection): do not reserve 0 bytes,
28218	  as this raises a ton of gpasm warnings, just emit a second label
28219	* src/pic16/devices.inc,
28220	* device/lib/pic16/pics.all,
28221	* device/lib/pic16/libdev/pic18f2585.c,
28222	* device/lib/pic16/libdev/pic18f2680.c,
28223	* device/lib/pic16/libdev/pic18f2682.c,
28224	* device/lib/pic16/libdev/pic18f2685.c,
28225	* device/lib/pic16/libdev/pic18f4585.c,
28226	* device/lib/pic16/libdev/pic18f4680.c,
28227	* device/lib/pic16/libdev/pic18f4682.c,
28228	* device/lib/pic16/libdev/pic18f4685.c,
28229	* device/include/pic16/pic18f2585.h,
28230	* device/include/pic16/pic18f2680.h,
28231	* device/include/pic16/pic18f2682.h,
28232	* device/include/pic16/pic18f2685.h,
28233	* device/include/pic16/pic18f4585.h,
28234	* device/include/pic16/pic18f4680.h,
28235	* device/include/pic16/pic18f4682.h,
28236	* device/include/pic16/pic18f4685.h,
28237	* device/include/pic16/pic18fregs.h: added 18f2585, 18f2680,
28238	  18f2682, 18f2685, 18f4585, 18f4680, 18f4682, 18f4685,
28239	  patch contributed by Anton Strobl, applied with changes
28240
282412007-09-16 Raphael Neider <rneider AT web.de>
28242
28243	* device/include/pic16/pic18f2431.h,
28244	* device/include/pic16/pic18f25j10.h,
28245	* device/include/pic16/pic18f4431.h,
28246	* device/include/pic16/pic18f45j10.h: adopted common include style
28247	* device/include/pic16/pic18f1320.h,
28248	* device/include/pic16/pic18f2320.h,
28249	* device/include/pic16/pic18f2525.h,
28250	* device/include/pic16/pic18f4320.h,
28251	* device/include/pic16/pic18f4525.h: NEW, just include proper .h file
28252	* device/include/pic16/pic18fregs.h: prepared for automatic include
28253	  file selection by having DEVICE.h for every DEVICE
28254	* device/lib/pic16/libdev/pic18f2320.c,
28255	* device/lib/pic16/libdev/pic18f4320.c: just include proper .c file
28256
28257	* device/lib/pic16/configure.in,
28258	* device/lib/pic16/configure: use rm -rf instead of rmdir
28259	* device/lib/pic16/Makefile.in: use RMDIR to remove build directories
28260	* device/lib/pic16/libc/stdlib/free.c: avoid warning on pointer cast
28261
282622007-09-09 Borut Razem <borut.razem AT siol.net>
28263
28264	* src/SDCCmain.c, src/SDCCutil.c: print newline after printVersionInfo(),
28265	  distingush between i386 and ppc Mac OS X versions
28266
282672007-09-05 Maarten Brock <sourceforge.brock AT dse.nl>
28268
28269	* src/mcs51/gen.c (genReceive): fixed bug 1788177
28270	* support/regression/tests/bug1788177.c: new, added
28271
282722007-09-04 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
28273
28274	* doc/sdccman.lyx: mentioned d52 and cmake, customizing startup code
28275	* device/include/mcs51/lint.h added keyword __naked
28276
282772007-09-04 Maarten Brock <sourceforge.brock AT dse.nl>
28278
28279	* src/pic16/glue.c,
28280	* src/pic/glue.c,
28281	* src/SDCCmem.h: removed maxRegBank
28282	* src/SDCCmem.c (allocVariables): removed maxRegBank and moved setting
28283	  RegBankUsed[] to checkFunction() in SDCCsymt.c to fix bug 1759839
28284	* src/SDCCsymt.c (checkFunction): set RegBankUsed[] here
28285	* src/mcs51/peep.c (isCallerSaveFunc, termScanAtFunc): changed function
28286	  name and behaviour to handle banked functions
28287	  (scan4op): and use it to fix bug 1786213
28288
282892007-09-03 Raphael Neider <rneider AT web.de>
28290
28291	* device/include/pic16/pic18f248.h,
28292	* device/include/pic16/pic18f258.h,
28293	* device/include/pic16/pic18f448.h,
28294	* device/lib/pic16/libdev/pic18f248.c,
28295	* device/lib/pic16/libdev/pic18f258.c,
28296	* device/lib/pic16/libdev/pic18f448.c: fixed TRISEbits,
28297	  added T0CONbits, fixes #1786891
28298
282992007-08-29 Maarten Brock <sourceforge.brock AT dse.nl>
28300
28301	* src/ds390/gen.c (genFarPointerSet),
28302	* src/hc08/ralloc.c (packRegisters),
28303	* src/mcs51/ralloc.c (packRegisters),
28304	* src/SDCCcse.c (cseBBlock): check if result is a symbol first to fix
28305	  bug 1750318
28306	* src/SDCCicode.h: POINTER_SET can be true for literals too
28307	* support/regression/tests/bug1750318.c: new, added
28308
283092007-08-23 Borut Razem <borut.razem AT siol.net>
28310
28311	* debugger/mcs51/sdcdb.c: fixed compilation with older readline
28312	  library versions without the completition functionality
28313
283142007-08-22 Raphael Neider <rneider AT web.de>
28315
28316	* device/include/pic16/pic18f1220.h,
28317	* device/lib/pic16/libdev/pic18f1220.c: applied patch #1776191
28318
283192007-08-12 Borut Razem <borut.razem AT siol.net>
28320
28321	* debugger/mcs51/Makefile.in: support/Util/SDCCerr.[ch] moved to src
28322
283232007-08-11 Borut Razem <borut.razem AT siol.net>
28324
28325	* support/Util/SDCCerr.c, support/Util/SDCCerr.h, src/src.dsp,
28326	  src/Makefile.in, src/Makefile.bcc, support/scripts/listerr.c:
28327	  support/Util/SDCCerr.[ch] moved to src
28328	* as/hc08/as_hc08.dsp, as/link/hc08/link_hc08.dsp,
28329	  as/link/z80/linkgbz80.dsp, as/link/z80/linkz80.dsp,
28330	  device/examples/ds390/tinitalk/tinitalk.dsp,
28331	  device/examples/serialcomm/windows/serialcomm.dsp,
28332	  support/librarian/librarian.dsp:
28333	  removed linking of unused odbc32.lib and odbccp32.lib
28334	* support/scripts/winres.h:
28335	  added for compilation with Visual C++ 2005 Express Edition
28336
283372007-08-09 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
28338
28339	* device/include/mcs51/at89c51ed.h: Fixed typo in declarations of CKCON0
28340	  and CKCON1.
28341
283422007-08-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
28343
28344	* sdccconf_in.h: update the endian test so that SPARC Solaris
28345	  does not throw syntax errors
28346
283472007-08-06 Borut Razem <borut.razem AT siol.net>
28348
28349	* doc/sdccman.lyx: removed two index entries which prevented the
28350	  generation of sdcc doc archive
28351
283522007-08-05 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
28353
28354	* doc/sdccman.lyx: Same changes made 2007-07-28 but using lyx 1.4.4
28355	  instead of lyx 1.5.0.
28356
283572007-07-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
28358
28359	* device/include/hc08/mc68hc908apxx.h: new header contributed by
28360	  Lucas Loizaga, with minor modifications. Thanks!
28361
283622007-07-28 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
28363
28364	* doc/sdccman.lyx: Documented --acall-ajmp and described new features
28365	  in sdcclib.
28366
283672007-07-28 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
28368
28369	* src/SDCCglobl.h, src/SDCCpeeph.c, src/SDCCglue.c, src/mcs51/main.c,
28370	  src/mcs51/peeph.def: Added option --acall-ajmp: replaces lcall/ljmp
28371	  with acall/ajmp.
28372
283732007-07-22 Borut Razem <borut.razem AT siol.net>
28374
28375	* configure.in, configure: re-introduced .version
28376	* sdcc.spec, doc/INSTALL.txt: they are used only for releases;
28377	  the version reverted to 2.7.0
28378
283792007-07-18 Maarten Brock <sourceforge.brock AT dse.nl>
28380
28381	* configure.in,
28382	* doc/sdccman.lyx: bumped version to 2.7.3
28383	* device/include/mcs51/compiler.h: fixed elif->else
28384	* src/mcs51/gen.c (genAnd, genOr): handle accuse for pure bit operands
28385	* src/mcs51/ralloc.c (createStackSpil): fixed SCLS bug with sloc for sbit,
28386	  (operandUsesAcc, packRegsForAccUse): added parameter allowBitspace to
28387	   enable accuse for bit operands
28388	* src/SDCCmain.c (printVersionInfo),
28389	* src/SDCCutil.c (getBuildEnvironment): factored out creation of build
28390	  environment descriptor
28391	* src/SDCCutil.h: added getBuildEnvironment
28392	* src/SDCCglue.c (initialComments): use getBuildEnvironment
28393	* support/regression/tests/bug1464657.c: enabled test test_Peephole251
28394	* support/regression/tests/bug-408972.c: enabled test leftShiftLong
28395	* support/regression/tests/bug1348008.c,
28396	* support/regression/tests/bug1496419.c,
28397	* support/regression/tests/bug1503067.c,
28398	* support/regression/tests/preproc.c: added empty tests
28399
284002007-07-15 Maarten Brock <sourceforge.brock AT dse.nl>
28401
28402	* support/regression/tests/bug1678803.c: new, added
28403
284042007-07-14 Maarten Brock <sourceforge.brock AT dse.nl>
28405
28406	* as/link/aslink.h,
28407	* as/link/hc08/lkihx.c,
28408	* as/link/hc08/lkrloc.c,
28409	* as/link/mcs51/lkihx.c,
28410	* as/link/mcs51/lkrloc.c: renamed ihxEntendedLinearAddress to
28411	  ihxExtendedLinearAddress
28412	* as/link/mcs51/lkrloc.c (relr),
28413	* as/mcs51/asout.c (outr11, outr19): handle absolute destination for
28414	  acall/ajmp, see bug 830513
28415
284162007-07-13 Maarten Brock <sourceforge.brock AT dse.nl>
28417
28418	* src/SDCCcse.c (replaceAllSymBySym): renamed siaddr to isaddr,
28419	  (cseBBlock): remember aggr2ptr has been used
28420	* src/SDCCicode.c (operandSize): added function to handle aggr2ptr,
28421	  (geniCodeAssign): fixed bug 868103
28422	* src/SDCCicode.h: made operand.aggr2ptr 2 bits wide,
28423	  added operandSize prototype
28424	* src/mcs51/gen.c (aopOp): use operandSize to fix bug 868103,
28425	  (genDataPointerSet): use max of size of right and result,
28426	  (gencjne): added parameter useCarry for optimization,
28427	  (genCmpEq): use carry if appropriate,
28428	  (genXor): check if operand already in carry
28429	* support/regression/tests/bug-868103.c: enabled test
28430
284312007-07-12 Raphael Neider <rneider AT web.de>
28432
28433	* src/pic16/gen.c (genNearPointerSet): fixed handling of literals
28434
284352007-07-11 Maarten Brock <sourceforge.brock AT dse.nl>
28436
28437	* src/SDCCsymt.c (compareType): fixed bugs 1738367 and 1745717 with patch
28438	  from Robert Larice, thanks
28439	* support/regression/tests/bitopcse.c,
28440	* support/regression/tests/bitvars.c,
28441	* support/regression/tests/bug-908454.c: use <stdbool.h> for the bit types
28442	* support/regression/tests/bug-927659.c: enabled test for z80
28443	* support/regression/tests/bug1738367.c: added extra tests by Frieder
28444	* support/regression/tests/bug1745717.c: new, added
28445	* support/regression/tests/literalop.c,
28446	* support/regression/tests/nullstring.c: removed storage definitions that
28447	  are now in testfwk.h
28448
284492007-07-10 Maarten Brock <sourceforge.brock AT dse.nl>
28450
28451	* device/include/stdbool.h: do not define __bool_true_false_are_defined
28452	  and bool for targets that do not fully support it.
28453	* support/regression/tests/bug1546986.c,
28454	* support/regression/tests/bug1723128.c,
28455	* support/regression/tests/bug1734654.c,
28456	* support/regression/tests/bug1738367.c,
28457	* support/regression/tests/constantRange.c: only use bool if allowed
28458
284592007-07-09 Maarten Brock <sourceforge.brock AT dse.nl>
28460
28461	* src/mcs51/peep.c (isCallerSaveFunc): fixed bug 1749275, thanks Robert
28462	  Larice, also handle function pointers
28463	* support/regression/tests/bug1749275.c: new, added
28464
284652007-07-03 Borut Razem <borut.razem AT siol.net>
28466
28467	* src/mcs51/gen.c, src/avr/gen.c, src/pic/gen.c, src/z80/gen.c,
28468	  src/pic16/gen.c, src/hc08/gen.c, src/ds390/gen.c: fixed RFE
28469	  #1746528: SDCC should ignore ':' in inline assembler comments
28470	* device/include/typeof.h: fixed bug #1747142: typeof.h needs fixing
28471
284722007-07-02 Maarten Brock <sourceforge.brock AT dse.nl>
28473
28474	* device/include/mcs51/C8051F360.h: fixed bug #1746410, thanks Chris Jones
28475	* device/lib/mcs51/crtxclear.asm: do not set __XPAGE unconditionally
28476
284772007-06-29 Borut Razem <borut.razem AT siol.net>
28478
28479	* src/SDCCmain.c: fixed bug
28480	  #1744746: SDCC #4867: broken option --xram-size
28481
284822007-06-28 Borut Razem <borut.razem AT siol.net>
28483
28484	* sim/ucsim/configure.in, sim/ucsim/configure, sim/ucsim/ddconfig_in.h:
28485	  find out the endianess of host machine for ucsim
28486
284872007-06-27 Borut Razem <borut.razem AT siol.net>
28488
28489	* support/regression/generate-cases.py: corrected the file name
28490	  in warning
28491	* configure.in, configure, sdccconf_in.h: find out the endianess of
28492	  host machine
28493	* src/SDCC.y: fixed bug #1744146: Crash when compiling array of
28494	  negative size
28495
284962007-06-27 Gudjon I. Gudjonsson <gudjon AT gudjon.org>
28497
28498	* device/include/mcs51/p89c66x.h: NXP header file, OK to change licence
28499
285002007-06-26 Borut Razem <borut.razem AT siol.net>
28501
28502	* support/regression/generate-cases.py: display warning if function
28503	  list is empty; implemented more flexible rule for detection of
28504	  testing functions, allowing return type 'void' in the same line as
28505	  the function name in the function definition
28506	* support/regression/tests/bug-1654060.c: corrected test
28507	* support/librarian/sdcclib.c: fixed warning:
28508	  format '%s' expects type 'char *', but argument 2 has type 'int'
28509
285102007-06-25 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
28511
28512	* support/librarian/sdcclib.c: Added feature Requests [1510635]
28513	  Multiple infiles for sdcclib.
28514
285152007-06-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
28516
28517	* src/SDCCast.c (inlineFindMaxBlockno, createFunction): fixed
28518	  bug 1731741
28519
285202007-06-18 Borut Razem <borut.razem AT siol.net>
28521
28522	* src/SDCCmain.c: removed option -C since SDCC compiler doesn't know
28523	  how to handle comments, so they have to be removed by the
28524	  preprocessor; fixed bug #1738926:SDCC #4852: broken option -V
28525	* src/SDCCmain.c, src/SDCCargs.h, src/ds390/main.c, src/mcs15/main.c,
28526	  src/pic16/main.c, src/pic/main.c, src/z80/main.c,
28527	  support/Util/SDCCerr.c, support/Util/SDCCerr.h:
28528	  table driven option hadling
28529
285302007-06-16 Maarten Brock <sourceforge.brock AT dse.nl>
28531
28532	* src/SDCCast.c (decorateType),
28533	* src/SDCCicode.c (geniCodeConditional): moved optimization for '?' from
28534	  iCode to ast level to fix bug 1738367
28535	* support/regression/tests/bug1738367.c: new, added
28536
285372007-06-15 Raphael Neider <rneider AT web.de>
28538
28539	* src/pic16/devices.inc,
28540	* device/lib/pic16/pics.all,
28541	* device/include/pic16/pic18fregs.h,
28542	* device/include/pic16/pic18f[24][45]20.h,
28543	* device/lib/pic16/libdev/pic18f[24][45]20.c: added support for
28544	  18f2420, 18f2520, and 18f4420 devices, updated 18f4520 definitions
28545	* device/lib/pic16/Makefile.in: faster cleanup
28546
285472007-06-13 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
28548
28549	* src/mcs51/peeph.def: added 177.i (mov from a is slightly cheaper)
28550
285512007-06-13 Raphael Neider <rneider AT web.de>
28552
28553	* src/SDCCmain.c: prevent NULL pointer dereference, avoid warning
28554
285552007-06-12 Raphael Neider <rneider AT web.de>
28556
28557	* support/scripts/inc2h.pl: conditionally emit defines for SFR bits,
28558	  suppress bit defines if NO_BIT_DEFINES is #define'd
28559	* device/include/pic/pic*.h: recreated all headers to include
28560	  conditional bit defines
28561	* device/include/pic/pic16f886.h,
28562	* device/include/pic/pic16f887.h: fixed based on newer .inc file
28563	* device/include/pic/recreate.sh: script to recreate the complete
28564	  device library files based on the currently supported devices
28565
285662007-06-12 Borut Razem <borut.razem AT siol.net>
28567
28568	* src/pic16/main.c, src/SDCCargs.h, SDCCmain.c,
28569	  support/regression/Makefile.in, support/scripts/build.mak,
28570	  support/scripts/Makefile.snapshot:
28571	  use new svn URL scheme
28572	* doc/sdccman.lyx: SDCC Wiki moved to
28573	  http://sdcc.wiki.sourceforge.net/
28574
285752007-06-10 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
28576
28577	* src/mcs51/peeph.def: disabled rule 132.d to fix #1734654
28578	* support/regression/tests/bug1734654.c: added
28579
285802007-06-10 Maarten Brock <sourceforge.brock AT dse.nl>
28581
28582	* src/SDCCast.c (decorateType): optimized '?' for equal operands
28583	* src/SDCCicode.c (geniCodeConditional): optimization for bit result
28584	  with literal operands
28585
285862007-06-10 Borut Razem <borut.razem AT siol.net>
28587
28588	* as/link/z80/lklibr.c: fixed mingw build warning
28589	  lklibr.c:575: warning: implicit declaration of function 'tolower'
28590	* src/SDCCmain.c, src/ds390/main.c, src/mcs51/main.c, src/pic/main.c,
28591	  src/z80/main.c: move target specific options from src/SDCCmain.c
28592	  to src/<target>/main.c
28593
285942007-06-09 Borut Razem <borut.razem AT siol.net>
28595
28596	* src/z80/gen.c: fixed bug #1294691: nested ifs make compiler crash;
28597	  removed unused swap_sense; removed outBitCLong, replaced with outBitC
28598	* support/regression/tests/bug-1294691.c: added
28599
286002007-06-09 Maarten Brock <sourceforge.brock AT dse.nl>
28601
28602	* src/SDCCmem.c (allocDefault): removed check sym->level==0 for SPEC_ABSA,
28603	  can also be static, fixes bug 1733438
28604	* src/SDCCsymt.c (checkSClass): static local vars in reentrant funcs can
28605	  have absolute address too
28606	  (computeType): added optimization for 'cond ? true : false'
28607	* support/regression/tests/absolute.c: added test for static absolute var
28608
286092007-06-08 Raphael Neider <rneider AT web.de>
28610
28611	* src/regression/Makefile: suppress parallel builds, allow easy
28612	  switching between pic14/pic16 ports
28613	* src/regression/picregs.h: added pic14/16 header file switch
28614	* src/regression/{compare7.c,compare8.c,compare9.c,compare10.c,
28615	  inline.c,nestfor.c,string1.c}: include "picregs.h"
28616
286172007-06-07 Borut Razem <borut.razem AT siol.net>
28618
28619	* sim/ucsim/*.[ch], sim/ucsim/configure, sim/ucsim/configure.in:
28620	  permanent solution to suppress GCC 4.2.0 c++ warning:
28621	  deprecated conversion from string constant to `char *'
28622	  use 'const char *' where ever required
28623	* support/regression/generate-cases.py: implemented more flexible rule
28624	  for detection of testing functions, allowing white-spaces surrounding
28625	  the function name and the 'void' parameter.
28626	* support/regression/tests/constantRange.c,
28627	  support/regression/tests/scott-compare3.c: fixed failing regression
28628	  tests, uncovered by implementation of more flexible rule for detection
28629	  of testing functions
28630
286312007-06-04 Maarten Brock <sourceforge.brock AT dse.nl>
28632
28633	* src/SDCCast.c(decorateType): better optimize '!!' and comparisons
28634
286352007-06-04 Borut Razem <borut.razem AT siol.net>
28636
28637	* configure.in, configure, config_vc.awk: sdcc version number is now
28638	  stored in configure.in; removed .version
28639	* configure.in, configure, sdcc.spec, doc/sdccman.lyx, doc/sdccman.lyx,
28640	  doc/INSTALL.txt: version bumped to 2.7.2
28641	* sim/ucsim/configure.in, sim/ucsim/configure:
28642	  use "read" to read from .version
28643
286442007-06-03 Borut Razem <borut.razem AT siol.net>
28645
28646	* */Makefile.in: removed annoying warning:
28647	  Makefile:xx: Makefile.dep: No such file or directory
28648
286492007-06-02 Maarten Brock <sourceforge.brock AT dse.nl>
28650
28651	* src/mcs51/gen.c (outBitC, genRet): used IS_OP_RUONLY,
28652	  (genNot, genXor): used toCarry, also fixes a bug for c = bit ^ val
28653	* src/mcs51/ralloc.c: removed IS_OP_RUONLY + some cosmetic changes
28654	* src/SDCCast.c (resultTypePropagate): propagate for '!',
28655	  (decorateType): also optimize comparisons with RESULT_TYPE_BIT,
28656	  bugfix: only use newBoolLink for bit result type
28657	* src/SDCCicode.c (geniCodeLogic): added param tree,
28658	  bugfix: use newBoolLink if tree is bit type, bug appears when ruonly,
28659	  (geniCodeLogicAndOr): use IS_BIT,
28660	  (geniCodeJumpTable, geniCodeSwitch): added NULL param to geniCodeLogic,
28661	  (ast2iCode): added tree param to geniCodeLogic for comparisons
28662	* src/SDCCsymt.h: added IS_OP_RUONLY and IS_OP_ACCUSE
28663	* support/regression/tests/bug1723128.c: added test NotZero
28664
286652007-06-01 Borut Razem <borut.razem AT siol.net>
28666
28667	* SDCPP synchronized with GCC CPP release version 4.2.0,
28668	  currently the latest release:
28669	* support/cpp2/c-incpath.c, support/cpp2/c-incpath.h,
28670	  support/cpp2/c-ppoutput.c, support/cpp2/cppdefault.c,
28671	  support/cpp2/cppdefault.h, support/cpp2/except.h,
28672	  support/cpp2/libcpp/directives.c, support/cpp2/libcpp/expr.c,
28673	  support/cpp2/libcpp/files.c, support/cpp2/libcpp/include/cpplib.h,
28674	  support/cpp2/libcpp/init.c, support/cpp2/libcpp/internal.h,
28675	  support/cpp2/libcpp/lex.c, support/cpp2/libcpp/macro.c,
28676	  support/cpp2/libcpp/mkdeps.c, support/cpp2/libiberty/getpwd.c,
28677	  support/cpp2/libiberty/hashtab.c, support/cpp2/optc-gen.awk,
28678	  support/cpp2/opth-gen.awk, support/cpp2/opts.c,
28679	  support/cpp2/opts.h, support/cpp2/output.h,
28680	  support/cpp2/prefix.c, support/cpp2/sdcpp-opts.c,
28681	  support/cpp2/sdcpp.dsp, support/cpp2/sdcpp.opt,
28682	  support/cpp2/system.h, support/cpp2/version.c,
28683	  support/cpp2/Makefile.in: modified
28684	* support/cpp2/opts-common.c: added
28685	* device/lib/pic16/libdev/pic18f[24][45]j10.c: fixed svn atrributes
28686	* device/lib/pic16/libdev/pic18f[24]5j10.c:
28687	  search for included source file in local directory
28688	* sim/ucsim/configure, sim/ucsim/configure.in:
28689	  temporary solution to suppress GCC 4.2.0 c++ warning:
28690	  deprecated conversion from string constant to `char *'
28691
286922007-06-01 Raphael Neider <rneider AT web.de>
28693
28694	* device/lib/pic/libdev/pic12f683.c,
28695	* device/include/pic/pic12f683.h: added GPIO bits
28696
286972007-06-01 Raphael Neider <rneider AT web.de>
28698
28699	* doc/sdccman.lyx: added --disable-pic16-port, fixed some `--' and
28700	  quotation marks, clarified role of PIC14 vs. PIC16 ports
28701	* src/pic16/devices.inc,
28702	* device/include/pic16/pic18fregs.h,
28703	* device/include/pic16/pic18f[24][45]j10.h,
28704	* device/lib/pic16/pics.all,
28705	* device/lib/pic16/libdev/pic18f[24][45]j10.c: added support for
28706	  18f24j10, 18f25j10, 18f44j10, and 18f45j10
28707	* device/lib/pic16/libio/{i2c,adc,usart}.ignore: do not build IO libs
28708	  for new devices as they are not yet supported by gputils
28709
287102007-05-31 Borut Razem <borut.razem AT siol.net>
28711
28712	* Small Device C Compiler 2.7.0 released
28713	* .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt:
28714	  changed sdcc version to 2.7.1
28715	* support/scripts/sdcc.nsi: added How to create WIN32 release
28716	  setup.exe package
28717
287182007-05-29 Maarten Brock <sourceforge.brock AT dse.nl>
28719
28720	* doc/sdccman.lyx: documented initialization and allocation of absolute
28721	  variables, bit parameter passing, the need for function pointers to be
28722	  reentrant and alpha quality support of inline and retrict
28723
287242007-05-26 Borut Razem <borut.razem AT siol.net>
28725
28726	* support/regression/tests/bug1057979.c, support/regression/tests/malloc.c,
28727	  support/regression/fwk/include/testfwk.h: fixed compilation on Mac OS x
28728	* docs/knownbugs.html: updated
28729
287302007-05-25 Maarten Brock <sourceforge.brock AT dse.nl>
28731
28732	* doc/sdccman.lyx: inserted footnotes about inline assembler labels,
28733	  thanks Jan Waclawek
28734	* src/mcs51/gen.c (aopPut): fixed part of bug 1723128 when result is
28735	  AOP_CRY and ruonly
28736	  (gencjneshort): optimized when left is AOP_DIR
28737	* src/SDCCglue.c (printIvalStruct): fixed other part of bug 1723128 for
28738	  initializing unions in a struct/array
28739	* support/regression/fwk/include/testfwk.h: added defines for data, near
28740	  and far for host and z80
28741	* support/regression/tests/bug1723128.c: new, added
28742
287432007-05-22 Borut Razem <borut.razem AT siol.net>
28744
28745	* doc/knownbugs.html: updated
28746
287472007-05-21 Raphael Neider <rneider AT web.de>
28748
28749	* src/pic16/glue.c (pic16_initPointer): avoid assertion, emit better
28750	  error message instead
28751	* src/pic/pcoderegs.c (pCodeOptime2pCodes): keep register state intact
28752
287532007-05-21 Maarten Brock <sourceforge.brock AT dse.nl>
28754
28755	* src/mcs51/peeph.def (257.b): disabled to fix bug 1721024
28756
287572007-05-21 Raphael Neider <rneider AT web.de>
28758
28759	* src/pic/pcoderegs.c (pCodeOptime2pCodes): fixed bogus optimization,
28760	  closes #1722392
28761	* src/regression/gpsim_assert.h,
28762	* src/regression/Makefile,
28763	* src/regression/pcodeopt.c: regression test for the above fix
28764
287652007-05-11 Maarten Brock <sourceforge.brock AT dse.nl>
28766
28767	* src/SDCCpeeph.c (labelIsUncondJump): ignore identical labels for
28768	  jumps to self, fixed bug 1717281
28769
287702007-05-10 Borut Razem <borut.razem AT siol.net>
28771
28772	* support/scripts/gen_known_bugs.pl: cosmetic fix
28773	* doc/knownbugs.html: generated by gen_known_bugs.pl
28774
287752007-05-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
28776
28777	* src/SDCCast.c (createFunction): also generate non-inlined version of
28778	  function for functions declared as "static inline"
28779	* src/SDCCast.c (fixupInline, inlineAddDecl): reset symbol state so
28780	  function can be inlined after non-inlined version generated.
28781
287822007-05-10 Borut Razem <borut.razem AT siol.net>
28783
28784	* support/scripts/gen_known_bugs.pl: added script
28785	  which generates knownbugs.html
28786
287872007-05-09 Maarten Brock <sourceforge.brock AT dse.nl>
28788
28789	* doc/knownbugs.html: updated for release 2.7.0
28790
287912007-05-09 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
28792
28793	* device/include/mcs51/uPSD33xx.h: Added patch by Jan Waclawek.
28794
287952007-05-08 Maarten Brock <sourceforge.brock AT dse.nl>
28796
28797	* src/ds390/gen.c (emitcode): don't change properties of previous lines,
28798	  (throughout): updated generating comments
28799	* src/mcs51/gen.c (emitcode): don't change properties of previous lines,
28800	  (throughout): updated generating comments
28801	* src/SDCCpeeph.c (peepHole): continue searching at the first replaced
28802	  rule instead of at the second, or it might skip lines when removing the
28803	  complete match
28804	* support/regression/tests/bug1714204.c: changed test to foo
28805
288062007-05-08 Borut Razem <borut.razem AT siol.net>
28807
28808	* doc/sdccman.lyx: changed sdcc version to 2.7.0,
28809	  thanks to SDCC Distributed Compile Farm members,
28810	  added Z80 and GBZ80 command line options
28811	* .version, doc/INSTALL.txt, sdcc.spec: changed sdcc version to 2.7.0
28812
288132007-05-08 Maarten Brock <sourceforge.brock AT dse.nl>
28814
28815	* device/lib/mcs51/crtxinit.asm: added disabled version for dual dptr
28816	* device/include/mcs51/uPSD33xx.h: added sfr DPS as alias for DPTC
28817	* support/regression/tests/longlit.c: modified to be tested at all and
28818	  to pass the actual test
28819
288202007-05-07 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
28821
28822	* device/include/mcs51/uPSD33xx.h: Added.
28823
288242007-05-07 Maarten Brock <sourceforge.brock AT dse.nl>
28825
28826	* device/lib/_gptrput.c,
28827	* device/lib/_gptrget.c: removed old code,
28828	 (_gptrgetWord),
28829	* src/ds390/gen.c (genGenPointerGet): fixed bug 1714204
28830	* support/regression/tests/bug1714204.c: new, added
28831
288322007-05-06 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
28833
28834	* support/regression/tests/regtrack.c: test was never executed
28835	  because of the regression test being picky about white spaces.
28836	* device/lib/mcs51/crtclear.asm: added comment
28837
288382007-05-06 Raphael Neider <rneider AT web.de>
28839
28840	* device/lib/pic/Makefile.rules,
28841	* device/lib/pic16/Makefile.rules: make sure *.ignore file exists,
28842	  made "&> /dev/null" redirection sh-safe ("> /dev/null 2>&1")
28843
288442007-05-06 Raphael Neider <rneider AT web.de>
28845
28846	* src/pic16/device.h,
28847	* src/pic16/main.h,
28848	* src/pic16/main.c (pic16_optionsTable,_pic16_parseOptions,
28849	  _pic16_setDefaultOptions): removed/reordered command-line args
28850	* doc/sdccman.lyx: updated PIC14 and PIC16 documentation (supported
28851	  devices, regrouped command line args, environment variables),
28852	  clarified sone points, added sections on how to add devices to the
28853	  PIC14/PIC16 ports
28854
288552007-05-06 Maarten Brock <sourceforge.brock AT dse.nl>
28856
28857	* src/z80/peeph.def: fixed bug in rule 2
28858
288592007-05-05 Maarten Brock <sourceforge.brock AT dse.nl>
28860
28861	* src/port.h: added TARGET_MCS51_LIKE
28862	* src/SDCCpeeph.c (labelIsUncondJump): new, added, other targets could
28863	  take advantage of it too
28864	* src/z80/gen.c (genIpush): push b, d or h directly instead of using a,
28865	  (shiftR2Left2Result): Optimized: don't check shifting by 0
28866	* src/z80/peeph-z80.def,
28867	* src/z80/peeph.def: whole set of new rules by Philipp Krause with some
28868	  modifications, see patch 1700823
28869	* src/mcs51/peep.c (): fixed bug 1712928
28870	* support/regression/tests/bug1712928.c: new, added
28871
288722007-05-05 Borut Razem <borut.razem AT siol.net>
28873
28874	* device/lib/pic16/Makefile.common.in,
28875	  device/lib/pic/Makefile.common.in, sim/ucsim/cmd.src/Makefile.in:
28876	  removed bash dependencies
28877
288782007-05-01 Borut Razem <borut.razem AT siol.net>
28879
28880	* src/SDCCicode.c:
28881	  fixed bug #1710507: --i-code-in-asm makes compile fail
28882	  all iCode comments are now one liners
28883	* src/mcs51/gen.c: fixed memory leak
28884
288852007-05-01 Raphael Neider <rneider AT web.de>
28886
28887	* device/lib/pic/libdev/*.c
28888	* device/include/pic/*.h: regenerated all device libs from updated
28889	  .inc files
28890	* support/scripts/inc2h.pl: documented usage, now uses strict to
28891	  catch more bugs
28892
288932007-04-30 Borut Razem <borut.razem AT siol.net>
28894
28895	* doc/sdccman.lyx:
28896	  fixed bug #1669175: Problem with space in output paths
28897	  documented how to use paths with spaces for Windows users
28898
288992007-04-29 Borut Razem <borut.razem AT siol.net>
28900
28901	* Fixed svn:eol-style and svn:keywords properties
28902	* src/SDCCval.c: fixed bug
28903	  #1592871: Segfault with "large" const arrays of characters
28904	  replaced recursion with iteration
28905	* Removed svn:executable property from non-executable files
28906
289072007-04-29 Maarten Brock <sourceforge.brock AT dse.nl>
28908
28909	* src/mcs51/gen.c (genRet): fixed bug 1707003
28910
289112007-04-27 Raphael Neider <rneider AT web.de>
28912
28913	* src/pic16/pcode.c (pBlockRemoveUnusedLabels,pic16_pBlockAddInval,
28914	  createReachingDefinitions,assignValnums,pic16_destructDF,
28915	  pic16_createDF,pic16_vcg_dumpedges,pic16_vcg_dump_default):
28916	  prevent NULL pointer dereferences
28917	* device/lib/pic/libdev/pic16f886.c,
28918	* device/lib/pic/libdev/pic16f887.c: svn mv'ed to disabled_* to
28919	  prevent building them, gputils do not really support them yet
28920
289212007-04-27 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
28922
28923	* device/lib/_ltoa.c: 36 bytes less __data mem. This really
28924	  helps printf_small. 32 bytes more __idata mem.
28925
289262007-04-27 Raphael Neider <rneider AT web.de>
28927
28928	* src/pic/pcode.c (addpCode2pBlock,LinkFlow,pBlockRemoveUnusedLabels):
28929	  return early when pb or pb->pcHead is NULL (patch #1708427)
28930	* src/regression/empty.c,
28931	* src/regression/Makefile: added test with empty functions
28932	* support/Util/SDCCerr.c: fixed typo in E_INIT_STRUCT message
28933
289342007-04-27 Borut Razem <borut.razem AT siol.net>
28935
28936	* src/SDCCast.c: fixed feature request
28937	  #1547512: Redundant strings linked when using sizeof("abc")
28938
289392007-04-23 Borut Razem <borut.razem AT siol.net>
28940
28941	* doc/sdccman.lyx, src/SDCCmain.c:
28942	  peep-hole comments are generated only if --fverbose-asm option is
28943	  specified and --no-peep-comments is not, as proposed by Frieder.
28944	* support/regression/Makefile.in: compile regression tests with
28945	  --fverbose-asm option so one can "grep" whether a new (or an old)
28946	  peephole is (still) applied; requested by Frieder.
28947
289482007-04-23 Kevin Buettner <kevin AT buettner.to>
28949
28950	* device/include/pic/pic16f886.h,
28951	* device/include/pic/pic16f887.h,
28952	* device/lib/pic/libdev/pic16f886.c,
28953	* device/lib/pic/libdev/pic16f887.c,
28954	* device/include/pic/pic14devices.txt,
28955	* device/lib/pic/libdev/devices.txt: Add 16f886 and 16f887.
28956
289572007-04-23 Kevin Buettner <kevin AT buettner.to>
28958
28959	* device/lib/pic/libsdcc/idata.c: PAGESEL _main before going there,
28960	  fixes #1704666
28961
289622007-04-23 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
28963
28964	* device/lib/_memset.c: assembler version for mcs51
28965
289662007-04-22 Borut Razem <borut.razem AT siol.net>
28967
28968	* support/scripts/listerr.c: program to create the list of errors and
28969	  warnings list from - added
28970	* doc/sdccman.lyx: removed the note
28971	  "For list of warnings and corresponding codes, see err_warn.txt"
28972	* src/SDCCsymt.c: fixed bug #1699804:
28973	  Bug with some uses of sizeof(static local array) (MCS51)
28974	* support/regression/tests/bug-1699804.c: added
28975
289762007-04-20 Maarten Brock <sourceforge.brock AT dse.nl>
28977
28978	* as/mcs51/asmain.c (search_path_append, search_path_fopen): new, added,
28979	  (main): added option -i,
28980	  (asmbl, case S_INCL): use search_path_fopen,
28981	  mostly from patch 1579668 by Peter Miller, thanks
28982	* src/z80/main.c: fixed typo --callee-saves-bc
28983	* device/include/mcs51/compiler.h: added sfrword for Tasking
28984
289852007-04-20 Borut Razem <borut.razem AT siol.net>
28986
28987	* src/z80/main.c: replaced reserved keyword asm with asmblr
28988
289892007-04-19 Borut Razem <borut.razem AT siol.net>
28990
28991	* src/port.h: use const pointers to strings
28992	* src/SDCCargs.h: declared getStringArg() and getIntArg()
28993	* src/pic16/main.c: include SDCCargs.h
28994	* src/SDCCglobl.h: code_seg and const_seg are not pointers to
28995	  const char, since the strings are dynamically allocated
28996	* src/SDCCmain.c: options.code_seg and options.const_seg are
28997	  dynamically allocated; check port specific command line options
28998	  before the general ones
28999	* src/z80/main.c: fixed bug #1631895: codeseg/constseg #pragma fail
29000
290012007-04-18 Maarten Brock <sourceforge.brock AT dse.nl>
29002
29003	* device/include/ds400rom.h,
29004	* device/lib/ds390/lcd390.c,
29005	* device/lib/ds390/memcpyx.c,
29006	* device/lib/ds390/rtc390.c,
29007	* device/lib/ds400/ds400rom.c,
29008	* device/lib/ds400/memcpyx.c,
29009	* device/lib/hc08/_ret.c: more replacements of keywords with their
29010	  double underscore equivalents
29011	* device/lib/ds390/Makefile.in,
29012	* device/lib/ds400/Makefile.in,
29013	* device/lib/gbz80/Makefile.in,
29014	* device/lib/hc08/Makefile.in,
29015	* device/lib/mcs51/Makefile.in,
29016	* device/lib/z80/Makefile.in: added --std-c89 to CFLAGS
29017
290182007-04-17 Borut Razem <borut.razem AT siol.net>
29019
29020	* doc/sdccman.lyx, src/SDCCmain.c, src/SDCCglobal.h, src/ds390/gen.c,
29021	  src/hc08/gen.c, src/mcs51/gen.c, src/mcs51/rtrack.c:
29022	  fixed #1493816: option --no-gen-comments: --no-gen-comments renamed
29023	  to --fverbose-asm, to be gcc'ish
29024
290252007-04-17 Maarten Brock <sourceforge.brock AT dse.nl>
29026
29027	* src/mcs51/gen.c (aopOp): set size to 1 for ruonly, fixes bug 1699455
29028
290292007-04-17 Borut Razem <borut.razem AT siol.net>
29030
29031	* doc/sdccman.lyx: fixed #1701874: Mac OSX references in SDCC manual
29032	* device/lib/ds400/tinibios.c, device/lib/hc08/_divuint.c,
29033	  device/lib/hc08/_divulong.c: replaced _asm and _endasm keywords
29034	  with their double underscore equivalent
29035
290362007-04-14 Borut Razem <borut.razem AT siol.net>
29037
29038	* doc/sdccman.lyx: some additional "freeware" replaced with "free open
29039	  source"
29040
290412007-04-13 Borut Razem <borut.razem AT siol.net>
29042
29043	* doc/sdccman.lyx: -pedantic-parse-number is not in conformance with
29044	  C99 standard
29045	* device/examples/serialcomm/windows/serial.[ch],
29046	  device/examples/serialcomm/windows/test_serialcomm.cpp:
29047	  updated by Bela Torok
29048	* device/examples/serialcomm/windows/serialcomm.dsw,
29049	  device/examples/serialcomm/windows/serialcomm.dsp: added
29050
290512007-04-13 Jan Waclawek <wek AT efton.sk>
29052
29053	* doc/sdccman.lyx: additions and changes at various places
29054	  (submitted as #1697136).
29055	  (svn commit by Frieder Ferlemann <Frieder.Ferlemann AT web.de>)
29056
290572007-04-10 Borut Razem <borut.razem AT siol.net>
29058
29059	* doc/cdbfileformat.lyx, doc/sdccman.lyx, doc/test_suite_spec.lyx:
29060	  LyX file format changed to 245
29061	* doc/sdccman.lyx, doc/README.txt, sdc/SDCC.lex, src/SDCCglue.c:
29062	  "FreeWare" replaced with "free open source"
29063
290642007-04-10 Maarten Brock <sourceforge.brock AT dse.nl>
29065
29066	* device/include/mcs51/C8051F120.h: added some defines for bits in RSTSRC
29067
290682007-04-08 Maarten Brock <sourceforge.brock AT dse.nl>
29069
29070	* device/include/pic16/pic18fregs.h,
29071	* device/lib/_bp.c,
29072	* device/lib/_decdptr.c,
29073	* device/lib/_divsint.c,
29074	* device/lib/_divslong.c,
29075	* device/lib/_divuint.c,
29076	* device/lib/_divulong.c,
29077	* device/lib/_fs2schar.c,
29078	* device/lib/_fs2sint.c,
29079	* device/lib/_fs2slong.c,
29080	* device/lib/_fs2uchar.c,
29081	* device/lib/_fs2uint.c,
29082	* device/lib/_fs2ulong.c,
29083	* device/lib/_fsadd.c,
29084	* device/lib/_fscmp.c,
29085	* device/lib/_fsdiv.c,
29086	* device/lib/_fseq.c,
29087	* device/lib/_fsget1arg.c,
29088	* device/lib/_fsget2args.c,
29089	* device/lib/_fsgt.c,
29090	* device/lib/_fslt.c,
29091	* device/lib/_fsmul.c,
29092	* device/lib/_fsneq.c,
29093	* device/lib/_fsnormalize.c,
29094	* device/lib/_fsreturnval.c,
29095	* device/lib/_fsrshift.c,
29096	* device/lib/_fssub.c,
29097	* device/lib/_fsswapargs.c,
29098	* device/lib/_gptrget.c,
29099	* device/lib/_gptrgetc.c,
29100	* device/lib/_gptrput.c,
29101	* device/lib/_logexpf.c,
29102	* device/lib/_modsint.c,
29103	* device/lib/_modslong.c,
29104	* device/lib/_moduint.c,
29105	* device/lib/_modulong.c,
29106	* device/lib/_mulint.c,
29107	* device/lib/_mullong.c,
29108	* device/lib/_schar2fs.c,
29109	* device/lib/_ser.c,
29110	* device/lib/_setjmp.c,
29111	* device/lib/_sint2fs.c,
29112	* device/lib/_slong2fs.c,
29113	* device/lib/_spx.c,
29114	* device/lib/_uchar2fs.c,
29115	* device/lib/_uint2fs.c,
29116	* device/lib/_ulong2fs.c,
29117	* device/lib/asincosf.c,
29118	* device/lib/atanf.c,
29119	* device/lib/calloc.c,
29120	* device/lib/ds390/tinibios.c,
29121	* device/lib/ds400/tinibios.c,
29122	* device/lib/expf.c,
29123	* device/lib/free.c,
29124	* device/lib/hc08/_mulint.c,
29125	* device/lib/logf.c,
29126	* device/lib/malloc.c,
29127	* device/lib/printf_fast.c,
29128	* device/lib/printf_tiny.c,
29129	* device/lib/printfl.c,
29130	* device/lib/realloc.c,
29131	* device/lib/ser_ir.c,
29132	* device/lib/serial.c,
29133	* support/regression/tests/libmullong.c: replaced all special keywords
29134	  with their double underscore equivalent
29135	* support/regression/ports/mcs51-xstack-auto/spec.mk,
29136	* device/lib/Makefile.in: compile libs with --std-c99 instead of
29137	  --std-sdcc99
29138	* src/mcs51/gen.c (outBitC): don't store if result is return-use-only,
29139	  (genRet): if the bit-symbol is ruonly it already is in the carry
29140	* src/mcs51/ralloc.c (regTypeNum): make regType REG_CND for ruonly bit
29141	* src/SDCCast.c (createFunction): applied patch 887171 by Stas Sergeev
29142	* src/SDCCicode.c (ast2iCode): '!', GETHBIT, GETABIT: only set operand
29143	  type UCHAR if dest is not bit
29144
291452007-04-03 Maarten Brock <sourceforge.brock AT dse.nl>
29146
29147	* device/include/math.h,
29148	* device/lib/cotf.c,
29149	* device/lib/expf.c,
29150	* device/lib/sincoshf.c: changed XMAX to C99 HUGE_VALF
29151
291522007-04-01 Borut Razem <borut.razem AT siol.net>
29153
29154	* src/SDCC.lex, src/SDCCmain.c, support/cpp2/sdcpp.c:
29155	  fixed bug #1692042: input buffer overflow...scanner uses REJECT
29156	* support/cpp2/sdcpp.c: fixed recursion bug - internal_error() called
29157	  gcc_unreachable() called internal_error()...
29158
291592007-03-30 Raphael Neider <rneider AT web.de>
29160
29161	* src/pic/ralloc.c (isData): suppress garbage debug output
29162
291632007-03-28 Borut Razem <borut.razem AT siol.net>
29164
29165	* doc/sdccman.lyx:
29166	  "Nightly Snapshots" replaced with "Snapshot Builds", since the SDCC
29167	  is developed, built and used worldwide, and the word "night" doesn't
29168	  make any sense.
29169
291702007-03-28 Maarten Brock <sourceforge.brock AT dse.nl>
29171
29172	* device/include/mcs51/C8051F360.h: new, added
29173	* device/include/mcs51/C8051F520.h: fixed buggy sbit addresses SPI0CN
29174
291752007-03-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
29176
29177	* src/SDCC.y (declaration_specifiers, function_specifier),
29178	* support/Util/SDCCerr.c,
29179	* support/Util/SDCCerr.h,
29180	* src/SDCCsymt.h,
29181	* src/SDCCsymt.c (mergeSpec, checkFunction): Parse and validate the
29182	  inline keyword
29183	* src/SDCCmem.c (deallocParms),
29184	* src/SDCCast.c: support for function inlining, not quite complete
29185	* src/SDCCsymt.c (printTypeChain, printTypeChainRaw): display
29186	  'restrict' qualifier
29187
291882007-03-24 Maarten Brock <sourceforge.brock AT dse.nl>
29189
29190	* src/mcs51/gen.c (saveRegisters, unsaveRegisters): free some bitVects,
29191	  (saveRBank, unsaveRBank): don't save bits,
29192	  (genFunction, genEndFunction): save bits exactly once, fix bug 1535242
29193	* support/regression/tests/bug1535242.c: new, added
29194	* device/include/assert.h: applied patch 1686533 to fix bug 1686528,
29195	  thanks Alexey Shamrin <shamrin AT gmail.com>,
29196	  made assert.h header ANSI compliant (added a check for NDEBUG macro,
29197	  removed header guard)
29198	* .version,
29199	* sdcc.spec: bumped version to 2.6.5
29200	* src/SDCCmain.c(parseCmdLine): fixed bug 1677144
29201
292022007-03-22 Borut Razem <borut.razem AT siol.net>
29203
29204	* debugger/mcs51/cmd.c, debugger/mcs51/sdcdb.c:
29205	  fixed bug #1653671: sdcdb integration into ddd is broken
29206
292072007-03-22 Raphael Neider <rneider AT web.de>
29208
29209	* src/pic/gen.c (popGetExternal): augmented to also create references
29210	  to external variables (not only labels),
29211	  (genCall): comment on plan to reduce PAGESEL overhead,
29212	  (genFunction, genEndFunction): also save/restore FSR around interrupt
29213	  handling code, removed lots of unused code
29214	  (genDivOneByte): release acquired temp register
29215	* src/pic/glue.c (pic14createInterruptVect): adapt to new signature
29216	  of popGetExternal
29217	* device/lib/pic/libsdcc/shadowregs.c: NEW, provide storage location
29218	  for registers that need to be saved during interrupts (FSR, STATUS,
29219	  PCLATH; W needs special handling), currently only FSR is used
29220
292212007-03-22 Raphael Neider <rneider AT web.de>
29222
29223	* device/include/pic/pic14devices.txt: 16f688 has only one config word
29224
292252007-03-19 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
29226
29227	* /as/link/mcs51/aslink.dsp: Object extension for mcs51 is 'rel' not 'o'.
29228
292292007-03-17 Maarten Brock <sourceforge.brock AT dse.nl>
29230
29231	* src/mcs51/peeph.def (263.x): fixed bug for volatile variables
29232
292332007-03-14 Maarten Brock <sourceforge.brock AT dse.nl>
29234
29235	* as/link/aslink.h: added LKOBJEXT
29236	* as/link/hc08/link_hc08.dsp,
29237	* as/link/hc08/Makefile.bcc,
29238	* as/link/hc08/Makefile.in,
29239	* as/link/mcs51/aslink.dsp,
29240	* as/link/mcs51/Makefile.bcc,
29241	* as/link/mcs51/Makefile.in: moved lkamof51.c and lkdata.c
29242	* as/link/hc08/lkaomf51.c, as/link/mcs51/lkaomf51.c,
29243	* as/link/lkaomf51.c: merged and moved
29244	* as/link/hc08/lkdata.c, as/link/mcs51/lkdata.c,
29245	* as/link/z80/lkdata.c,
29246	* as/link/lkdata.c: merged and moved
29247	* as/link/hc08/lkmain.c,
29248	* as/link/mcs51/lkmain.c: cosmetic changes
29249	* as/link/z80/lkeval.c, as/link/lkeval.c: merged
29250	* as/link/lklex.c: use LKOBJEXT
29251	* as/link/z80/lklist.c, as/link/lklist.c: merged,
29252	  ANSI-fied functions, removed bubble-sorts
29253	* as/link/z80/lksym.c, as/link/lksym.c: merged,
29254	  ANSI-fied functions
29255	* as/link/z80/linkgbz80.dsp,
29256	* as/link/z80/linkz80.dsp,
29257	* as/link/z80/Makefile.in: added lkaomf51.c and lknoice.c,
29258	  moved lkdata.c, lkeval.c, lkhead.c, lklex.x, lklist.c, lksym.c
29259	* as/link/z80/lkhead.c,
29260	* as/link/z80/lklex.c: deleted
29261	* as/link/z80/lklibr.c: moved LKOBJEXT to aslink.h
29262	* as/link/z80/lkmain.c: added copyfile()
29263
292642007-03-13 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
29265
29266	* device/include/mcs51/P89LPC925.h: Added missing P1_6 and P1_7.
29267
292682007-03-13 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
29269
29270	* device/lib/_strlen.c: assembler version for mcs51
29271
292722007-03-13 Raphael Neider <rneider AT web.de>
29273
29274	* device/include/pic16/pic18f2221.h,
29275	* device/include/pic16/pic18f2321.h,
29276	* device/include/pic16/pic18f2331.h,
29277	* device/include/pic16/pic18f4221.h,
29278	* device/include/pic16/pic18f4321.h,
29279	* device/include/pic16/pic18f4331.h: fixed config byte location names
29280	* support/scripts/inc2h-pic16.pl: removed debug output, emit
29281	  consistently named config byte locations
29282
292832007-03-13 Borut Razem <borut.razem AT siol.net>
29284
29285	* src/Makefile.in, sim/ucsim/avr.src/Makefile.in,
29286	  sim/ucsim/hc08.src/Makefile.in, sim/ucsim/s51.src/Makefile.in,
29287	  sim/ucsim/xa.src/Makefile.in, sim/ucsim/z80.src/Makefile.in,
29288	  as/link/z80/Makefile.in, as/z80/Makefile.in:
29289	  introduced LDFLAGS
29290
292912007-03-11 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
29292
29293	* device/lib/printfl.c: 13 bytes less __data mem (12 more __idata)
29294	* device/lib/printf_large.c: pointer was converted to generic
29295	pointer for mcs51 models other than model-small (Maarten noticed)
29296
292972007-03-10 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
29298
29299	* device/include/mcs51/ADuC84x.h: Added.
29300
293012007-03-10 Borut Razem <borut.razem AT siol.net>
29302
29303	* src/SDCC.lex, src/SDCCutil.[ch], src/SDCCval:
29304	  fixed RFE #1624219: double backslashes in filenames;
29305	  functions hexEscape(), octalEscape() and copyStr() moved from
29306	  SDCCval.c to SDCCutil.c and made them glovbally available
29307
293082007-03-09 Borut Razem <borut.razem AT siol.net>
29309
29310	* src/SDCC.lex, src/SDCCast.c. src/SDCCglobl.c, src/SDCCsymt.c,
29311	  src/SDCCval.c: fixed bugs #1676768: Wrong line number reported and
29312	  1673361: Missaligned comments in output files
29313
293142007-03-09 Raphael Neider <rneider AT web.de>
29315
29316	* device/include/pic/pic14devices.txt: fixed confsiz of 16f91[3467]
29317
293182007-03-09 Raphael Neider <rneider AT web.de>
29319
29320	* src/pic/gen.c,
29321	* src/pic/glue.c,
29322	* src/pic/ralloc.c: suppress undesired debug output
29323	* src/SDCCmain.c (linkEdit): initialize c to quieten compiler
29324
293252007-03-08 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
29326
29327	* device/lib/printf_large.c: 6 bytes less __data mem (6 more __idata)
29328
293292007-03-07 Borut Razem <borut.razem AT siol.net>
29330
29331	* device/lib/pic16/libdev/pic18f[24][34]31.c:
29332	  search include files in the current directory
29333
293342007-03-04 Maarten Brock <sourceforge.brock AT dse.nl>
29335
29336	* src/SDCCglue.c (emitMaps, glue),
29337	* src/SDCCmem.c (initMem, allocDefault): added x_abs for initialized
29338	  absolute xdata
29339	* support/regression/tests/absolute.c: added xdata test
29340
293412007-03-03 Maarten Brock <sourceforge.brock AT dse.nl>
29342
29343	* src/SDCCmain.c (parseCmdLine): only set options.xstack_loc for mcs51,
29344	  added condition to macro, fixes bug 1666080
29345
293462007-03-02 Raphael Neider <rneider AT web.de>
29347
29348	* src/pic/gen.c (genGenPointerSet): removed bogus assertion
29349
293502007-02-28 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
29351
29352	* device/lib/mcs51/crtxclear.asm: pdata segment of 256 byte would not
29353	be cleared. Unconditionally set __XPAGE
29354	* src/hc08/gen.c: --no-gen-comments (RFE #1493816) for hc08
29355
293562007-02-27 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
29357
29358	* src/SDCCglobl.h,
29359	* src/SDCCmain.c,
29360	* src/mcs51/gen.c,
29361	* src/mcs51/rtrack.c,
29362	* src/ds390/gen.c,
29363	* doc/sdccman.lyx: added --no-gen-comments
29364	* src/mcs51/peeph.def: added 192.b, disabled 185
29365
293662007-02-25 Raphael Neider <rneider AT web.de>
29367
29368	* src/pic16/gen.c (genCast): fixed typo
29369	* device/lib/pic16/Makefile.subdir: only install existing files
29370	* device/lib/pic16/libdev/Makefile.in: build serially, avoid races
29371
293722007-02-25 Maarten Brock <sourceforge.brock AT dse.nl>
29373
29374	* device/lib/mcs51/crtcall.asm: new, added for indirect calls
29375	* device/lib/mcs51/crtclear.asm,
29376	* device/lib/mcs51/crtxclear.asm: renumbered labels
29377	* device/lib/mcs51/Makefile.in: added crtcall.asm
29378	* doc/sdccman.lyx: documented mcs51 crt* library startup code
29379	* src/mcs51/gen.c (movc): removed,
29380	  (aopGet, genPlusBits): clear a after loading the carry (possibly from
29381	    acc.x or psw.x),
29382	  (toCarry, genSend, genRet): added function toCarry,
29383	  (genPcall): use "lcall @a+dptr" for functions w/o parameters,
29384	  (assignBit, genAssign, genCast): added function assignBit
29385	* src/mcs51/Makefile.bcc: added rtrack.c
29386	* src/mcs51/ralloc.h: made valueKnown a bitfield
29387	* src/mcs51/rtrack.c (getReg, rtrackUpdate): added getReg,
29388	  fixed "jbc acc" and "cpl acc" bug, enhanced "cjne", "jnz" and "djnz",
29389	  disabled InvalidateAllRx for lcall __gptrput, added "xch a,rn"
29390	* src/pic/pcode.c (FixRegisterBanking): fixed warning used uninitialized
29391	* src/z80/gen.c: added AOP_IS_PAIRPTR,
29392	  (_pop): only pop valid pairs, see gencjneshort,
29393	  (gencjneshort): return pair that still needs to be popped, restructured,
29394	  (gencjne, genCmpEq): call _pop
29395
293962007-02-23 Raphael Neider <rneider AT web.de>
29397
29398	* device/include/pic/pic14devices.txt: 16f684 has only one config word
29399
294002007-02-22 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
29401
29402	* device/include/mcs51/P89LPC925.h: Added.
29403
294042007-02-18 Raphael Neider <rneider AT web.de>
29405
29406	* src/pic/glue.c (emitInitVal): fixed #1659894 (SIGSEGV on arrays)
29407
294082007-02-17 Borut Razem <borut.razem AT siol.net>
29409
29410	* support/cpp2/directives.c, support/cpp2/version.c:
29411	  synchronized with GCC CPP 4.1.2
29412
294132007-02-15 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
29414
29415	* src/mcs51/rtrack.h,
29416	* src/mcs51/rtrack.c: added register tracking for the mcs51 port,
29417	  by checking the strings passed by emitcode() to the assembler.
29418	  Feel free to change. This in part addresses RFE #482179.
29419	  Set environment variable SDCC_RTRACK to enable.
29420	* src/mcs51/gen.c: inserted hooks
29421	* src/mcs51/ralloc.h: added two members to struct regs
29422	* support/regression/tests/regtrack.c: added
29423
294242007-02-14 Borut Razem <borut.razem AT siol.net>
29425
29426	* src/SDCC.y: fixed bug #1291133: duplicate members across enum(s)
29427	* Makefile.in: applied patch from Makefile related part of
29428	  #1469393: Compiler does not initialize static data
29429
294302007-02-12 Maarten Brock <sourceforge.brock AT dse.nl>
29431
29432	* src/SDCCicode.c (geniCodeAssign): return (itemp) right instead of left
29433	  for better fix of bug 1273984, compiles pic16 rand.c
29434
294352007-02-12 Borut Razem <borut.razem AT siol.net>
29436
29437	* src/pic16/main.c: fixed pic16 standard library directory bug
29438
294392007-02-11 Maarten Brock <sourceforge.brock AT dse.nl>
29440
29441	* src/hc08/gen.c (genSwap): fix swap regression test
29442
294432007-02-10 Borut Razem <borut.razem AT siol.net>
29444
29445	* src/SDCCsymt.c: fixed bug #1159134: invalid duplicate declarations
29446	  with same scope
29447	* support/regression/tests/bug-1654060.c: added regression test for
29448	  #1654060
29449
294502007-02-09 Bernhard Held <bernhard AT bernhardheld.de>
29451
29452	* src/mcs51/gen.c (genRet): fixed RFE 1652561: added code for bit to
29453	bit moves in return statement
29454
294552007-02-09 Borut Razem <borut.razem AT siol.net>
29456
29457	* src/SDCC.y: fixed bug #1654060 typedef within function causes
29458	  syntax error
29459
294602007-02-07 Maarten Brock <sourceforge.brock AT dse.nl>
29461
29462	* src/mcs51/gen.c (aopPut): use direct name for pushing registers
29463	* src/SDCCmain.c (parseCmdLine): dbuf_s path must be initialised
29464
294652007-02-07 Raphael Neider <rneider AT web.de>
29466
29467	* src/pic16/devices.inc,
29468	* device/include/pic16/pic18fregs.h,
29469	* device/include/pic16/pic18f[24][34]31.h,
29470	* device/lib/pic16/libdev/pic18f[24][34]31.c,
29471	* device/lib/pic16/pics.all: added 18f[24][34]31 family
29472	* device/lib/pic16/libio/i2c.ignore: do not build i2c
29473
294742007-02-07 Maarten Brock <sourceforge.brock AT dse.nl>
29475
29476	* device/lib/printf_large.c (_print_format): fixed compare/assign bug, how
29477	  can this have lived here for so many years?
29478	* src/SDCCicode.c (ast2iCode): return left instead of right for assignment,
29479	  fixes bug 1273984, see also patch 1645121, thanks Gnther Jehle
29480	* support/regression/tests/bug1273984.c: new, added, thanks Gnther Jehle
29481
294822007-02-06 Bernhard Held <bernhard AT bernhardheld.de>
29483
29484	* src/SDCCBlock.c (addiCodeToeBBlock): fixed bug 1652207: GOTO icodes
29485	appended by loop induction must be at the very end of the eBBlock
29486
294872007-02-05 Kevin Vigor
29488
29489	* src/ds390/gen.c, src/ds390/main.c: Address bug 1469393.
29490
294912007-02-05 Borut Razem <borut.razem AT siol.net>
29492
29493	* support/regression/fwk/lib/timeout.c: native WIN32 port,
29494	  implemented #1651830 Reg. tests: rewrite timeout.c to use WIN32 API
29495
294962007-02-03 Borut Razem <borut.razem AT siol.net>
29497
29498	* src/SDCC.y, src/SDCCmain.c, src/SDCCglobl.h, doc/sdccman.lyx:
29499	  applied patch #1646602 option to set default signedness of char to
29500	  unsigned, added -funsigned-char command line option,
29501	  thanks to Gunther Jehle
29502	* device/lib/Makefile.in: added the -f option to rm so it doesn't
29503	  prompt for file deletion a few hundred times (especially the
29504	  subversion files, which have ro permissions so it asks for
29505	  confirmation), thanks to Simon McAuliffe;
29506	  added {} + option to find in order to remove multiple files from a
29507	  single rm commad
29508
295092007-02-02 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
29510
29511	* device/include/mcs51/SST89x5xRDx.h: Added.
29512
295132007-02-02 Raphael Neider <rneider AT web.de>
29514
29515	* src/pic/glue.c (emitSymbolSet): check sym->etype before use
29516	* src/regression/Makefile: use --no-pcode-opt, ignore failing tests
29517
295182007-02-01 Raphael Neider <rneider AT web.de>
29519
29520	* src/pic/glue.c (picglue,emitSymbolSet,showAllMemmaps): emit the
29521	  config words again
29522
295232007-01-31 Borut Razem <borut.razem AT siol.net>
29524
29525	* support/Util/dbuf_string.h: added ATTRIBUTE_PRINTF to dbuf_printf()
29526	  if compiled with GCC. Thanks to Raphael Neider
29527
295282007-01-31 Raphael Neider <rneider AT web.de>
29529
29530	* src/pic/pcode.c (isValidIdChar,bankCompare): fuzzy matching of
29531	    operand names, handles name and (name + n) for all n,
29532	  (sameBank): restructured, also check bank allocation policy,
29533	* src/pic/glue.c (emitPseudoStack): fixed printf arguments,
29534	  (pic14_operandsAllocatedInSameBank): check whether to operands
29535	    will be allocated into the same bank (i.e., section) to reduce
29536	    BANKSEL overhead, queried from pcode.c:sameBank,
29537	  (pic14printLocals): reintroduced clustering registers into a single
29538	    section: all compiler generated symbols will now reside in one
29539	    bank (per file), reducing BANKSEL overhead and code size,
29540	  (showAllMemmaps): use local dbuf where possible
29541
295422007-01-29 Raphael Neider <rneider AT web.de>
29543
29544	* src/pic/gen.c (popGetExternal): simplified, mark symbol as used,
29545	  (call_libraryfunc): retrieve/create symbol and mark as used,
29546	  (genFunction): mark defined functions as non-extern and add again
29547	   to code memmap for later output
29548	* src/pic/glue.c (emitPseudoStack): put into own subroutine,
29549	  (pic14printLocals): reworked for new symbol emission,
29550	  (emitIfNew,pic14_constructAbsMap,emitIvalLabel,emitIvals,emitInitVal,
29551	  showAllMemmaps): reworked symbol output using dbufs, added handling
29552	    of string literals (still incomplete),
29553	  (picglue): removed symbol emission, moved into showAllMemmaps,
29554	  (emitSymbolSet): new workhorse for symbol output,
29555	  (pic14emitMaps,pic14printPublics,pic14printExterns): commented out
29556
295572007-01-29 Borut Razem <borut.razem AT siol.net>
29558
29559	* src/SDCCmain.c, src/SDCCutil.c: dbuf_splitFile: file extension
29560	  component contains the extension separator.
29561
295622007-01-28 Borut Razem <borut.razem AT siol.net>
29563
29564	* sim/ucsim/cmd.src/cmdutil.cc: NUL device is detected as CG_FILE type
29565	  on WIN32
29566	* src/SDCCdwarf2.c, src/SDCCglobl.h, src/SDCCmain.c, src/SDCCutil.c,
29567	  src/SDCCutil.h, src/avr/gen.c, src/ds390/gen.c, src/hc08/gen.c,
29568	  src/mcs51/gen.c, src/pic/device.c, src/pic/gen.c, src/pic/pcode.c,
29569	  src/pic/pcodepeep.c, src/pic/ralloc.c, src/pic16/device.h,
29570	  src/pic16/gen.c, src/pic16/main.c, src/pic16/pcode.c,
29571	  src/pic16/pcodepeep.c, src/pic16/ralloc.c, src/xa51/gen.c,
29572	  src/z80/gen.c, support/Util/MySystem.c:
29573	  accept slash and backslash as directory separator on WIN32 and
29574	  Cygwin ports
29575
295762007-01-28 Raphael Neider <rneider AT web.de>
29577
29578	* src/pic16/devices.inc,
29579	* device/include/pic16/pic18f[24][23]21.h,
29580	* device/include/pic16/pic18fregs.h,
29581	* device/lib/pic16/libdev/pic18f[24][23]21.c,
29582	* device/lib/pic16/pics.all: added support for the 18f[24][23]21 family
29583	* device/lib/pic16/libio/adc.ignore,
29584	* device/lib/pic16/libio/i2c.ignore,
29585	* device/lib/pic16/libio/usart.ignore: do not build I/O lib for new
29586	  family, as gputils do not yet support the devices
29587	* device/lib/pic16/Makefile.subdir: ignore errors on install
29588	* support/scripts/inc2h-pic16.pl: script to generate pic16 device
29589	  headers and libraries from gputils .inc files
29590
295912007-01-26 Paul Stoffregen <paul AT pjrc.com>
29592
29593	* doc/sdccman.lyx: add printf_fast_f precision limitation note
29594
295952007-01-26 Paul Stoffregen <paul AT pjrc.com>
29596
29597	* doc/sdccman.lyx: add printf benchmarks
29598
295992007-01-25 Paul Stoffregen <paul AT pjrc.com>
29600
29601	* device/lib/printf_fast.c: fix %c, char promoted to int
29602	* device/lib/printf_tiny.c: fix %c, char promoted to int
29603
296042007-01-25 Paul Stoffregen <paul AT pjrc.com>
29605
29606	* device/lib/printf_fast.c: fix float overflow check, bug #1525093
29607
296082007-01-25 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
29609
29610	* support/regression/tests/swap.c: 64 bit hosts failed
29611	* doc/sdccman.lyx: added preliminary mcs51 printf feature matrix
29612
296132007-01-25 Raphael Neider <rneider AT web.de>
29614
29615	* src/pic/pcode.c (sameBank,FixRegisterBanking): optimize banksels
29616	  based on absolute register address, patch by Alex Blond
29617
296182007-01-22 Raphael Neider <rneider AT web.de>
29619
29620	* src/pic/glue.c (pic14emitRegularMap):	mark initialized symbols as
29621	  emitted, do not emit them again...
29622
296232007-01-22 Raphael Neider <rneider AT web.de>
29624
29625	* src/regression/bank1.c, src/regression/compare6.c,
29626	  src/regression/add.c: cosmetic changes
29627	* src/pic/pcode.h: moved GPTRTAG_* here from gen.c
29628	* src/pic/gen.c: fixed global zero and one,
29629	  (aopForSym): removed unued code,
29630	  (aopGet): assert aop is defined, check and use `index' of
29631	    pCodeImmd operands (fixes #1630908),
29632	* src/pic/pcode.c (get_op): added output of generic pointer tag,
29633	  (register_reassign): prevent accidental register unification,
29634	  (ReuseReg): cosmetic changes (also above)
29635	* src/pic/glue.c (pic14_constructAbsMap,pic14emitRegularMap,
29636	  pic14emitStaticSeg): do not emit initialized data,
29637	  (printIval*): replaced with working versions,
29638	  (pic14createInterruptVect,picglue): use idata for initialized data,
29639	    now init data should work in all modules (not only main()),
29640	* device/lib/pic/libsdcc/idata.c: NEW, handle initialized data
29641
296422007-01-21 Borut Razem <borut.razem AT siol.net>
29643
29644	* sim/ucsim/configure.in: introduced macro DD_COPT_NO_IGNORE,
29645	  use -fPIC or -fpic if they are supported and not ignored
29646	* src/SDCCval.c: fixed bug introduced by me in rev. #4577
29647	* support/cpp2/libcpp/lex.c: fixed gcc 4.1.1 warnings
29648
296492007-01-20 Borut Razem <borut.razem AT siol.net>
29650
29651	* src/SDCC.lex, src/SDCCmain.c, sdc/SDCCglobl.h, doc/sdccman.lyx:
29652	  implemented RFE #1470316: allow "$" in variable names
29653
296542007-01-20 Raphael Neider <rneider AT web.de>
29655
29656	* device/include/pic/pic14regs.h: reverted accidental wipe of the file
29657
296582007-01-20 Raphael Neider <rneider AT web.de>
29659
29660	* device/lib/pic/libdev/devices.txt: device list for mkall.sh
29661	* device/lib/pic/libdev/mkall.sh: script to rebuild all device libs
29662	* device/lib/pic/libdev/pic14ports.txt: device PORT specifications
29663	* support/scripts/inc2h.pl: fixed major .inc parsing bugs,
29664	  applied patch from Robert Tate (#1629249) to add PORTs and TRISs
29665	* device/lib/pic/libdev/pic*.c,
29666	* device/include/pic/pic*.h: regenerated with enhanced inc2h.pl
29667	* device/lib/pic/libdev/Makefile.in: show progress
29668
296692007-01-19 Bernhard Held <bernhard AT bernhardheld.de>
29670
29671	* doc/sdccman.lyx: updated "configure options" for autoconf 2.6
29672	* support/scripts/sdcc_cygwin_mingw32,
29673	* support/scripts/sdcc_mingw32,
29674	* support/scripts/build.mak: replaced --datadir by --datarootdir for
29675	conformance with autoconf 2.6
29676
296772007-01-19 Raphael Neider <rneider AT web.de>
29678
29679	* src/pic/device.c (register_map): fixed list construction
29680	* src/pic/gen.c (genDivOneByte,genModOneByte): accept result > 1 byte,
29681	  (genMod): removed case for genModbits,
29682	  (genModbits): removed as now unused/unimplemented
29683	* src/pic/glue.c (picglue): prevent name clash with sources 'init.c'
29684
296852007-01-18 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
29686
29687	* support/regression/tests/swap.c: added in response to #1638622
29688	* doc/sdccman.lyx: synced version, minor changes
29689
296902007-01-18 Borut Razem <borut.razem AT siol.net>
29691
29692	* SDCClabel.c: fixed bug #1638651: wrong linenumber presented in warning,
29693	  thanks to Gunther Jehle
29694	* src/asm.c: don't die if the file drfined in #line couldn't be opened
29695	* src/SDCC.lex, src/SDCCglobal.h, src/SDCCicode.c, src/SDCCsymt.c,
29696	  src/SDCCval.c: removed redundant definitions of currFname and mylineno;
29697	  use filename in lineno instead.
29698	* SDCCast.c: removed MSVC warning C4018: '==' : signed/unsigned mismatch,
29699	  print the file name in ast_print()
29700
297012007-01-18 Borut Razem <borut.razem AT siol.net>
29702
29703	* support/Util/dbuf_string.c: removed (PTR) cast since it is not
29704	  defined in MSVC
29705	* src/SDCC.lex: stringLiteral() returns const char pointer,
29706	  EOF detection in stringLiteral(), fixed asmbuf memory leak,
29707	  fixed column counting
29708	* src/SDCCval.[ch]: constVal(), value *strVal() and charVal()
29709	  accept const char pointer as parameter
29710	* src/SDCCdwarf2.c: corrected buffer size
29711
297122007-01-17 Borut Razem <borut.razem AT siol.net>
29713
29714	* support/Util/dbuf_string.c: fixed for amd64
29715
297162007-01-15 Borut Razem <borut.razem AT siol.net>
29717
29718	* src/pic16/ralloc.c, src/pic/ralloc.c, src/SDCC.y:
29719	  removed terminal symbol ELIPSIS, since it was never generated by the
29720	  lexer and it was wrongly used in parameter_identifier_list rule
29721
297222007-01-15 Raphael Neider <rneider AT web.de>
29723
29724	* doc/sdccman.lyx: updated PIC14/16 command line args, updated PIC14
29725	    code page and data banking description
29726	* src/pic/genarith.c,
29727	* src/pic/gen.h: removed bit arithmetic functions,
29728	    updated exit(1) to exit(EXIT_FAILURE)
29729	* device/lib/pic16/libsdcc/stack/stack.S: default to 256 byte stack
29730	* device/include/pic16/pic18f2455.h,
29731	* device/lib/pic16/libdev/pic18f2455.c: added PORTD, LATD, LATE,
29732	    TRISD and TRISE, fixed/added some bit names
29733	* device/lib/pic16/libdev/pic18f{2550,4550,4455}.c,
29734	* device/include/pic16/pic18f{2550,4550,4455}.h: simply include
29735	    updated pic18f2455.{c,h} instead of duplicating them
29736
297372007-01-14 Borut Razem <borut.razem AT siol.net>
29738
29739	* as/mcs51/asnoice.c, as/hc08/asnoice.c: fixed bug #1447412:
29740	  Cannot debug files that contain spaces in the path name
29741	  by converting spaces in asm file name to underscores
29742
297432007-01-13 Borut Razem <borut.razem AT siol.net>
29744
29745	* doc/sdccman.lyx: fixed format errors
29746
297472007-01-10 Borut Razem <borut.razem AT siol.net>
29748
29749	* src/SDCC.lex, src/SDCCmain.c: fixed bug #1631895:
29750	  codeseg/constseg #pragma fail
29751	* suppoprt/cpp2/Makefile.bcc: reenable Borland C compilation
29752	* suppoprt/cpp2/configure.in, suppoprt/cpp2/libcpp/lex.c,
29753	  suppoprt/cpp2/Makefile.in, suppoprt/cpp2/sdcpp-opts,
29754	  suppoprt/cpp2/sdcpp.[ch]: house cleaning
29755
297562007-01-09 Borut Razem <borut.razem AT siol.net>
29757
29758	* get rid of diagnistic.[ch], pretty-print.[ch],
29759	  c-pretty-print.[ch], ... used just for error, warning, ...
29760	  message formatting
29761	* suppoprt/cpp2/pretty-print.[ch], suppoprt/cpp2/diagnostic.[ch],
29762	  suppoprt/cpp2/diagnostic.def, suppoprt/cpp2/input.h,
29763	  suppoprt/cpp2/pretty-print.[ch]:
29764	  removed
29765	* suppoprt/cpp2/Makefile.in, suppoprt/cpp2/opts.c,
29766	  suppoprt/cpp2/sdcpp-opts.c, suppoprt/cpp2/sdcpp.[ch],
29767	  suppoprt/cpp2/sdcpp.dsp:
29768	  changed
29769
297702007-01-08 Maarten Brock <sourceforge.brock AT dse.nl>
29771
29772	* device/lib/printf_large.c (output_float): removed recursion,
29773	  use smaller buffer on stack for mcs51,
29774	  fixed bug printing 1.96
29775	* support/regression/tests/snprintf.c: added test
29776
297772007-01-07 Borut Razem <borut.razem AT siol.net>
29778
29779	* use dynamic memory buffers instead temporary files
29780	* support/Util/dbuf_string.c, support/Util/dbuf_string.h:
29781	  added
29782	* src/Makefile.in, src/SDCC.lex, src/SDCCast.c, src/SDCCast.h,
29783	  src/SDCCcse.c, src/SDCCglobl.h, src/SDCCglue.c, src/SDCCglue.h,
29784	  src/SDCCicode.c, src/SDCCicode.h, src/SDCCmain.c, src/SDCCmem.c,
29785	  src/SDCCmem.h, src/SDCCpeeph.c, src/SDCCpeeph.h, src/SDCCsymt.c,
29786	  src/SDCCsymt.h, src/SDCCutil.c, src/asm.c, src/asm.h, src/avr/gen.c,
29787	  src/avr/main.c, src/ds390/gen.c, src/ds390/main.c, src/hc08/gen.c,
29788	  src/hc08/main.c, src/izt/gen.c, src/mcs51/gen.c, src/mcs51/main.c,
29789	  src/pic/device.c, src/pic/gen.c, src/pic/glue.c, src/pic/main.c,
29790	  src/pic/ralloc.c, src/pic16/gen.c, src/pic16/glue.c,
29791	  src/pic16/main.c, src/pic16/ralloc.c, src/port.h, src/src.dsp,
29792	  src/xa51/gen.c, src/xa51/main.c, src/z80/gen.c, src/z80/main.c,
29793	  support/Util/dbuf.c, support/Util/dbuf.h:
29794	  modified
29795	* .version, sdcc.spec: bumped version to 2.6.4
29796
297972007-01-07 Maarten Brock <sourceforge.brock AT dse.nl>
29798
29799	* src/port.h: added TARGET_Z80_LIKE macro
29800	* src/SDCCmain.c (linkEdit): use TARGET_Z80_LIKE,
29801	  output PSEG location if --xram-loc or --xstack-loc was used
29802	* as/link/mcs51/lkarea.c (lnksect2): set segment address afterwards
29803
298042007-01-07 Maarten Brock <sourceforge.brock AT dse.nl>
29805
29806	* as/as_gbz80.dsp, as/z80/as_gbz80.dsp,
29807	* as/as_z80.dsp,   as/z80/as_z80.dsp,
29808	* as/asx8051.dsp,  as/mcs51/asx8051.dsp,
29809	* sdcc.dsw: moved project files into subdir
29810	* as/hc08/as_hc08.dsp,
29811	* as/hc08/Makefile.bcc,
29812	* as/hc08/Makefile.in,
29813	* as/mcs51/Makefile.bcc,
29814	* as/mcs51/Makefile.in,
29815	* as/z80/Makefile.bcc,
29816	* as/z80/Makefile.in,
29817	* as/link/mcs51/Makefile.bcc: use as/strcmpi.c
29818	* as/hc08/asm.h,
29819	* as/mcs51/asm.h,
29820	* as/z80/asm.h: added as_strcmpi() and as_strncmpi() prototypes
29821	* as/hc08/asmain.c,
29822	* as/hc08/assym.c,
29823	* as/mcs51/asmain.c,
29824	* as/mcs51/assym.c,
29825	* as/z80/assym.c: removed include "strcmpi.h"
29826	* as/hc08/strcmpi.c,
29827	* as/hc08/strcmpi.h,
29828	* as/mcs51/strcmpi.c,
29829	* as/mcs51/strcmpi.h,
29830	* support/Util/strcmpi.c,
29831	* support/Util/strcmpi.h: removed files
29832	* as/strcmpi.c: added as_strncmpi()
29833
298342007-01-05 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
29835
29836	* sdcc.dsw: Added some dependencies on project config.dsp
29837
298382007-01-05 Maarten Brock <sourceforge.brock AT dse.nl>
29839
29840	* as/link/mcs51/lkarea.c (lnkarea2, lnksect2): replaced [di]seg_ap->a_addr
29841	  with [di]ram_start to fix a regresion
29842
298432007-01-03 Bernhard Held <bernhard AT bernhardheld.de>
29844
29845	* configure.in: added missing mcs51 in status output
29846	* Makefile.in: add support/regression to SDCC_EXTRA to distclean this
29847	directory
29848	* debugger/mcs51/clean.mk (distclean): remove config.h
29849	* src/clean.mk (clean): remove SDCCy.c, SDCCy.h, SDCClex.c
29850	* support/cpp2/Makefile.in (clean): remove s-options, optionlist,
29851	options.h, s-options-h and options.c
29852	* support/cpp2/clean.mk: unused, removed
29853	* Makefile.common.in,
29854	* main_in.mk,
29855	* as/Makefile.in,
29856	* as/hc08/Makefile.in,
29857	* as/hc08/clean.mk,
29858	* as/mcs51/Makefile.in,
29859	* as/mcs51/clean.mk,
29860	* as/z80/clean.mk,
29861	* as/z80/conf.mk,
29862	* as/z80/Makefile.in,
29863	* as/z80/clean.mk,
29864	* as/link/Makefile.in,
29865	* as/link/hc08/Makefile.in,
29866	* as/link/hc08/clean.mk,
29867	* as/link/mcs51/Makefile.in,
29868	* as/link/mcs51/clean.mk,
29869	* as/link/z80/Makefile.in,
29870	* as/link/z80/clean.mk,
29871	* as/link/z80/conf.mk,
29872	* debugger/mcs51/Makefile.in,
29873	* debugger/mcs51/clean.mk,
29874	* device/include/Makefile.in,
29875	* device/lib/Makefile.in,
29876	* device/lib/mcs51/Makefile.in,
29877	* device/lib/pic/Makefile.in,
29878	* device/lib/pic/Makefile.common.in,
29879	* device/lib/pic/Makefile.subdir,
29880	* device/lib/pic/Makefile.rules,
29881	* device/lib/pic16/libio/Makefile.in,
29882	* device/lib/pic16/Makefile.subdir,
29883	* device/lib/pic16/libdev/Makefile.in,
29884	* device/lib/pic16/Makefile.rules,
29885	* device/lib/pic16/Makefile.common.in,
29886	* sim/ucsim/avr.src/Makefile.in,
29887	* sim/ucsim/main_in.mk,
29888	* sim/ucsim/cmd.src/Makefile.in,
29889	* sim/ucsim/doc/Makefile.in,
29890	* sim/ucsim/gui.src/Makefile.in,
29891	* sim/ucsim/gui.src/obsolete/portmon.src/Makefile.in,
29892	* sim/ucsim/gui.src/serio.src/Makefile.in,
29893	* sim/ucsim/hc08.src/Makefile.in,
29894	* sim/ucsim/libltdl/Makefile.in,
29895	* sim/ucsim/s51.src/Makefile.in,
29896	* sim/ucsim/sim.src/Makefile.in,
29897	* sim/ucsim/sim.src/conf.mk,
29898	* sim/ucsim/xa.src/Makefile.in,
29899	* sim/ucsim/z80.src/Makefile.in,
29900	* src/Makefile.in,
29901	* src/clean.mk,
29902	* src/port.mk,
29903	* support/cpp2/Makefile.in,
29904	* support/librarian/Makefile.in,
29905	* support/librarian/clean.mk,
29906	* support/makebin/Makefile.in,
29907	* support/makebin/clean.mk,
29908	* support/packihx/Makefile.in,
29909	* support/regression/Makefile.in,
29910	* support/regression/ports/ds390/spec.mk,
29911	* support/regression/ports/gbz80/spec.mk,
29912	* support/regression/ports/hc08/spec.mk,
29913	* support/regression/ports/mcs51/spec.mk,
29914	* support/regression/ports/mcs51-large/spec.mk,
29915	* support/regression/ports/mcs51-medium/spec.mk,
29916	* support/regression/ports/mcs51-xstack-auto/spec.mk,
29917	* support/regression/ports/pic14/spec.mk,
29918	* support/regression/ports/pic16/spec.mk,
29919	* support/regression/ports/mcs51-stack-auto/spec.mk,
29920	* support/regression/ports/ucz80/spec.mk,
29921	* support/regression/ports/xa51/spec.mk,
29922	* support/regression/ports/z80/spec.mk: fixed for autoconf 2.6x by
29923	adding a slash after $(top_builddir) and/or adding @datarootdir@
29924	* configure.in,
29925	* debugger/mcs51/configure.in,
29926	* device/lib/pic/configure.in,
29927	* device/lib/pic16/configure.in,
29928	* sim/ucsim/configure.in,
29929	* support/cpp2/configure.in,
29930	* support/packihx/configure.in: changed AC_PREREQ to 2.60
29931	* configure,
29932	* debugger/mcs51/configure,
29933	* device/lib/pic/configure,
29934	* device/lib/pic16/configure,
29935	* sim/ucsim/configure,
29936	* support/cpp2/configure,
29937	* support/packihx/configure: generated with autoconf 2.60
29938
299392007-01-02 Maarten Brock <sourceforge.brock AT dse.nl>
29940
29941	* as/link/hc08/lkihx.c (newArea),
29942	* as/link/hc08/lkrloc.c: renamed newArea() to ihxNewArea()
29943
299442007-01-02 Borut Razem <borut.razem AT siol.net>
29945
29946	* doc/sdccman.lyx: documented #pragma sdcc_hash
29947	* support/cpp2/sdcpp.c: allow_naked_hash (value of #pragma sdcc_hash)
29948	  initialized to 0
29949	* support/cpp2/c-ppoutput.c: fixed warning: no newline at end of file
29950
299512007-01-01 Bernhard Held <bernhard AT bernhardheld.de>
29952
29953	* src/SDCCast.c (createDo): backPatchLabels() needs falseLabel in
29954	empty 'while'-loop to work correctly, see regression test 'while.c'
29955	* support/regression/tests/while.c: added
29956
299572007-01-01 Borut Razem <borut.razem AT siol.net>
29958
29959	* support/cpp2/libcpp/directives.c, support/cpp2/libcpp/identifiers.c,
29960	  support/cpp2/libcpp/init.c, support/cpp2/libcpp/sdcpp-opts.c,
29961	  support/cpp2/libcpp/sdcpp.c:
29962	  sdcpp specific pragma/directive/option handling moved to sdcpp.c
29963	* doc/sdccman.lyx: reference to the GCC 4.1.1 CPP Manual
29964	* support/cpp2/libcpp/mkdeps.c: synchronized with GCC CPP 4.1.1
29965
299662006-12-31 Borut Razem <borut.razem AT siol.net>
29967
29968	* SDCPP synchronized with GCC CPP release version 4.1.1,
29969	  currently the latest release:
29970	* support/cpp2/libcpp, support/cpp2/libcpp/include,
29971	  support/cpp2/libcpp/include/cpp-id-data.h
29972	  support/cpp2/libiberty/fopen_unlocked.c
29973	  support/cpp2/libiberty/md5.c
29974	  support/cpp2/md5.h
29975	  support/cpp2/opt-functions.awk
29976	  support/cpp2/opt-gather.awk
29977	  support/cpp2/optc-gen.awk
29978	  support/cpp2/opth-gen.awk:
29979	  added
29980	* support/cpp2/Makefile.in, support/cpp2/auto-host_vc_in.h,
29981	  support/cpp2/c-incpath.c, support/cpp2/c-incpath.h,
29982	  support/cpp2/c-ppoutput.c, support/cpp2/c-pretty-print.c,
29983	  support/cpp2/c-pretty-print.h, support/cpp2/cppdefault.c,
29984	  support/cpp2/cppdefault.h, support/cpp2/diagnostic.c,
29985	  support/cpp2/diagnostic.h, support/cpp2/except.h,
29986	  support/cpp2/hwint.h, support/cpp2/input.h,
29987	  support/cpp2/intl.h, support/cpp2/move-if-change,
29988	  support/cpp2/opts.c, support/cpp2/opts.h,
29989	  support/cpp2/output.h, support/cpp2/prefix.c,
29990	  support/cpp2/prefix.h, support/cpp2/pretty-print.c,
29991	  support/cpp2/pretty-print.h, support/cpp2/sdcpp-opts.c,
29992	  support/cpp2/sdcpp.c, support/cpp2/sdcpp.dsp,
29993	  support/cpp2/sdcpp.h, support/cpp2/sdcpp.opt,
29994	  support/cpp2/sdcppa.dsp, support/cpp2/symcat.h,
29995	  support/cpp2/version.c:
29996	  modified
29997	* support/cpp2/libcpp/charset.c, support/cpp2/libcpp/directives.c,
29998	  support/cpp2/libcpp/errors.c, support/cpp2/libcpp/expr.c,
29999	  support/cpp2/libcpp/files.c, support/cpp2/libcpp/identifiers.c,
30000	  support/cpp2/libcpp/include/cpplib.h, support/cpp2/libcpp/include/line-map.h,
30001	  support/cpp2/libcpp/include/mkdeps.h, support/cpp2/libcpp/include/symtab.h,
30002	  support/cpp2/libcpp/init.c, support/cpp2/libcpp/internal.h,
30003	  support/cpp2/libcpp/lex.c, support/cpp2/libcpp/line-map.c,
30004	  support/cpp2/libcpp/macro.c, support/cpp2/libcpp/mkdeps.c,
30005	  support/cpp2/libcpp/symtab.c, support/cpp2/libcpp/system.h,
30006	  support/cpp2/libcpp/traditional.c, support/cpp2/libcpp/ucnid.h,
30007	  support/cpp2/libiberty/hashtab.c, support/cpp2/libiberty/hashtab.h:
30008	  moved
30009	* support/cpp2/cppcharset.c, support/cpp2/cpperror.c,
30010	  support/cpp2/cppexp.c, support/cpp2/cppfiles.c,
30011	  support/cpp2/cpphash.c, support/cpp2/cpphash.h,
30012	  support/cpp2/cppinit.c, support/cpp2/cpplex.c,
30013	  support/cpp2/cpplib.c, support/cpp2/cpplib.h,
30014	  support/cpp2/cppmacro.c, support/cpp2/cpptrad.c,
30015	  support/cpp2/cppucnid.h, support/cpp2/hashtab.c,
30016	  support/cpp2/hashtab.h, support/cpp2/hashtable.c,
30017	  support/cpp2/hashtable.h, support/cpp2/line-map.c,
30018	  support/cpp2/line-map.h, support/cpp2/mkdeps.c,
30019	  support/cpp2/mkdeps.h, support/cpp2/options_vc_in.c,
30020	  support/cpp2/options_vc_in.h, support/cpp2/opts.sh,
30021	  support/cpp2/system.h:
30022	  deleted / moved
30023
300242006-12-31 Borut Razem <borut.razem AT siol.net>
30025
30026	* configure.in, configure: fixed bug #1538756: configure dies if bison
30027	  and flex are not installed, 2nd try
30028
300292006-12-30 Bernhard Held <bernhard AT bernhardheld.de>
30030
30031	* src/mcs51/peeph.def: renamed rule 400 to 500, moved rule 253.x to
30032	400.x for better code in RFE 899102
30033
300342006-12-30 Bernhard Held <bernhard AT bernhardheld.de>
30035
30036	* src/SDCCpeeph.c (deadMove),
30037	* src/port.h,
30038	* src/mcs51/peep.h: renamed 'op' by 'reg'
30039	* src/mcs51/peep.c (isFunc, isCallerSaveFunc): added,
30040	(scan4op): small change for removeDeadMove(), added support for
30041	'callee saves' and/or PACLL function calls,
30042	(removeDeadMove): added, removes superflous 'mov r%1,%2',
30043	(removeDeadPopPush): renamed from mcs51DeadMove(), common parts
30044	left in new dispatcher mcs51DeadMove()
30045	(mcs51DeadMove): dispatcher for removeDeadPopPush() and new
30046	removeDeadMove()
30047	* src/mcs51/peeph.def: added rule 301 removing superflous 'mov r%1,%2'
30048
300492006-12-30 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30050
30051	* support/cpp2/options_vc_in.h, support/cpp2/options_vc_in.c,
30052	  support/cpp2/sdcppa.dsp: create 'options.h' and 'options.c' under MSVC.
30053
300542006-12-30 Borut Razem <borut.razem AT siol.net>
30055
30056	* support/cpp2/spacs.h: deleted from svn
30057	* configure.in, configure: fixed bug #1538756: configure dies if bison
30058	  and flex are not installed
30059
300602006-12-29 Maarten Brock <sourceforge.brock AT dse.nl>
30061
30062	* src/z80/gen.c (assignResultValue): fixed bug when registers overlap,
30063	  with this z80 passes printf float test when enabled
30064	* support/regression/tests/bug1057979.c: typo disabled ds390 float test
30065
300662006-12-28 Borut Razem <borut.razem AT siol.net>
30067
30068	* support/cpp2/config.in, support/cpp2/configure.in,
30069	  support/cpp2/configure, support/cpp2/Makefile.in:
30070	  fix for the solaris build
30071
300722006-12-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
30073
30074	* src/SDCC.y (type_specifier2, pointer),
30075	* src/SDCCsymt.h,
30076	* src/SDCCsymt.c (mergeSpec, checkSClass),
30077	* support/Util/SDCCerr.c,
30078	* support/Util/SDCCerr.h: Parse and validate the restrict keyword
30079	* support/valdiag/valdiag.py: Allow test cases to specify
30080	  required language standard
30081	* support/valdiag/tests/restrict.c: New file to test restrict keyword
30082	* support/valdiag/tests/tentdecl.c: Supress empty source file error
30083
300842006-12-27 Borut Razem <borut.razem AT siol.net>
30085
30086	* support/cpp2/cppmain.c, support/cpp2/mbchar.[ch]: removed
30087	* support/cpp2/libiberty/Makefile.in, support/cpp2/libiberty/sdcpp.dsp:
30088	  mbchar removed
30089	* support/cpp2/libiberty/getpwd.c, support/cpp2/sdcpp.h:
30090	  fixed for borland C
30091	* support/cpp2/libiberty/Makefile.bcc: updated
30092	* src/pic16/main.c: fixed #pragma udata handling
30093	* src/mcs51/mcs51.dsp: added peep.[ch] to the project
30094
300952006-12-26 Bernhard Held <bernhard AT bernhardheld.de>
30096
30097	* src/SDCCpeeph.c: made labelHashEntry global,
30098	made pcDistance, FBYNAME static,
30099	(pcDistance): made static, use isComment and isLabel,
30100	(deadMove): added,
30101	(getLabelRef): added, extracted from labelRefCount(),
30102	(labelRefCount): use new getLabelRef(),
30103	(callFuncByName): made static, added deadMove,
30104	use isComment and isLabel,
30105	(newPeepRule): made static, set isLabel,
30106	(isLabelDefinition): added parameter isPeepRule to allow '%' in
30107	labels from peephole rules,
30108	(buildLabelRefCountHash): speed up by running isLabelDefinition() only
30109	when isComment or isLabel is set
30110	* src/SDCCpeeph.h: added "isLabel" and "visited" to struct lineNode,
30111	added labelHashEntry, isLabelDefinition, labelHash and getLabelRef
30112	to make them global
30113	* src/mcs51/peep.h: added
30114	* src/mcs51/peep.c: added, implements mcs51DeadMove()
30115	* src/port.h: added peep->deadMove to port structure
30116	* src/mcs51/main.c: initialize peep->deadMove with mcs51DeadMove
30117	* src/mcs51/peeph.def: renumbered rule 300 to 400, added new rule 300
30118	deadMove, finally removed no. 1 and 2
30119	* src/mcs51/gen.c,
30120	* src/pic/gen.c,
30121	* src/z80/gen.c,
30122	* src/z80/ralloc.c,
30123	* src/pic16/gen.c,
30124	* src/ds390/gen.c,
30125	* src/hc08/gen.c: mark lines with isComment or isLabel
30126	* sim/ucsim/s51.src/uc390hw.cc: don't waist 65535 ticks before CKRDY
30127	* .version,
30128	* sdcc.spec: bumped version to 2.6.3
30129
301302006-12-26 Borut Razem <borut.razem AT siol.net>
30131
30132	* support/cpp2/Makefile.in: added dependency on options.h
30133	* configure: regenerated
30134	* support/cpp2/sdcpp.opt, support/cpp2/move-if-change: svn:eol-style native
30135	* support/cpp2/Makefile.in: added vasprintf.c
30136
301372006-12-25 Borut Razem <borut.razem AT siol.net>
30138
30139	* SDCPP synchronized with GCC CPP release version 3.4.6,
30140	  the latest release before 4.x:
30141	* support/cpp2/Makefile.in, support/cpp2/config.h,
30142	  support/cpp2/configure, support/cpp2/configure.in,
30143	  support/cpp2/cppdefault.c, support/cpp2/cppdefault.h,
30144	  support/cpp2/cpperror.c, support/cpp2/cppexp.c,
30145	  support/cpp2/cppfiles.c, support/cpp2/cpphash.c,
30146	  support/cpp2/cpphash.h, support/cpp2/cppinit.c,
30147	  support/cpp2/cpplex.c, support/cpp2/cpplib.c,
30148	  support/cpp2/cpplib.h, support/cpp2/cppmacro.c,
30149	  support/cpp2/cpptrad.c, support/cpp2/except.h,
30150	  support/cpp2/hashtable.c, support/cpp2/hashtable.h,
30151	  support/cpp2/hwint.h, support/cpp2/intl.h,
30152	  support/cpp2/line-map.c, support/cpp2/line-map.h,
30153	  support/cpp2/mkdeps.c, support/cpp2/mkdeps.h,
30154	  support/cpp2/output.h, support/cpp2/prefix.c,
30155	  support/cpp2/prefix.h, support/cpp2/sdcpp.dsp,
30156	  support/cpp2/system.h, support/cpp2/version.c:
30157	  modified
30158	* support/cpp2/c-incpath.c, support/cpp2/c-incpath.h,
30159	  support/cpp2/c-ppoutput.c, support/cpp2/c-pretty-print.c,
30160	  support/cpp2/c-pretty-print.h, support/cpp2/cppcharset.c,
30161	  support/cpp2/cppucnid.h, support/cpp2/diagnostic.c,
30162	  support/cpp2/diagnostic.def, support/cpp2/diagnostic.h,
30163	  support/cpp2/hashtab.c, support/cpp2/hashtab.h,
30164	  support/cpp2/input.h, support/cpp2/libiberty/getpwd.c,
30165	  support/cpp2/libiberty/vasprintf.c, support/cpp2/libiberty/xmemdup.c,
30166	  support/cpp2/move-if-change, support/cpp2/opts.c,
30167	  support/cpp2/opts.h, support/cpp2/opts.sh,
30168	  support/cpp2/pretty-print.c, support/cpp2/pretty-print.h,
30169	  support/cpp2/sdcpp.opt, support/cpp2/sdcpp-opts.c,
30170	  support/cpp2/win32, support/cpp2/win32/dirent.c,
30171	  support/cpp2/win32/dirent.h:
30172	  added
30173	* support/cpp2/sdcpp.c: renamed from sdcppmain.c
30174	* support/cpp2/sdcpp.h: renamed from sdcc.h
30175	* sdcppinit.c: deleted
30176
301772006-12-23 Borut Razem <borut.razem AT siol.net>
30178
30179	* support/cpp2/cpphash.h, support/cpp2/cpplex.c,
30180	  support/cpp2/cpplib.[ch], support/cpp2/sdcppinit.c, doc/sdccman.lyx,
30181	  preproc.c: an other try to fix bug #982435: introduced
30182	  -pedantic-parse-number command line option and pedantic_parse_number
30183	  pragma
30184
301852006-12-21 Maarten Brock <sourceforge.brock AT dse.nl>
30186
30187	* as/link/mcs51/lkarea.c (lnkarea2): handle absolute areas, restructured
30188	   BSEG handling,
30189	  (lnksect2): use --data-loc and --idata-loc as lower bound for ramstart,
30190	   corrected overlayed areax addresses, warn about memory overlaps
30191	* as/mcs51/asmain.c (asmbl): create a new area for every .org directive
30192	* src/avr/main.c,
30193	* src/ds390/main.c,
30194	* src/hc08/main.c,
30195	* src/mcs51/main.c,
30196	* src/pic16/main.c,
30197	* src/pic/main.c,
30198	* src/xa51/main.c,
30199	* src/z80/main.c,
30200	* src/port.h: added xabs_name and iabs_name
30201	* src/SDCCglue.c (emitRegularMap): allocate for absolutes with initializer
30202	  (glue, emitMaps): create and emit maps d_abs and i_abs
30203	* src/SDCCglue.h: cosmetic changes
30204	* src/SDCCmain.c (setDefaultOptions): idata can start below 0x80
30205	* src/SDCCmem.h,
30206	* src/SDCCmem.c (initMem): added x_abs, i_abs and d_abs
30207	  (allocDefault): put absolute, initialized globals in them
30208	* support/regression/tests/absolute.c: added absolute bdata test
30209	* device/lib/printf_large.c (output_float): moved fpBuffer to stack/xdata
30210
302112006-12-20 Borut Razem <borut.razem AT siol.net>
30212
30213	* support/cpp2/cpphash.h, support/cpp2/cpplex.c: fixed bug #982435
30214	* support/regression/tests/preproc.c: renamed from bug-1351710.c,
30215	  added regression test for bug #982435
30216
302172006-12-18 Borut Razem <borut.razem AT siol.net>
30218
30219	* src/SDCCutil.c: fixed a bug in (get_pragma_token)
30220	* src/pic16/main.c, src/SDCC.lex, src/z80/main.c:
30221	  small cosmetic changes
30222	* src/SDCC.lex: (stringLiteral) fixed bug #1351710
30223	* support/regression/tests/bug-1351710.c: added regression test
30224
302252006-12-18 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30226
30227	* doc/sdccman.lyx: added the long missed iCode table
30228	  "<where is figure II?>", added links to wiki
30229
302302006-12-17 Borut Razem <borut.razem AT siol.net>
30231
30232	* doc/sdccman.lyx, src/pic16/main.c, src/pic/main.c, src/port.h,
30233	  src/SDCC.lex, src/SDCCutil.[ch], src/z80/main.c,
30234	  support/Util/SDCCerr.[ch]: removed deprecated pragmas,
30235	  unified table driven pragma handling, pragma argument type checking
30236	* support/Util/dbuf.c: (dbuf_set_size) allow to set size equal to the
30237	  current one - version 1.1.3
30238	* src/SDCCmain.c: (setParseWithComma) substituted brain damaged strtok
30239
302402006-12-13 Raphael Neider <rneider AT web.de>
30241
30242	* src/pic/device.h: removed AssignedMemory structure and macros
30243	* src/pic/device.c: removed global finalMapping (linker assigns
30244	    memory locations),
30245	  (register_map): add SFRs to remembered memRanges
30246	  (addMemRange,isSFR,dump_map,dump_sfr,mapRegister,assignRegister,
30247	  assignFixedRegisters,assignRelocatableRegisters): removed,
30248	  (setMaxRAM,validAddress): adapted accordingly,
30249	  (pic14_hasSharebank,pic14_getSharedStack): only report and use
30250	    reasonably sized sharebanks,
30251	* src/pic/ralloc.c (writeUsedRegs): stripped down (remove?),
30252	  (allDefsOutOfRange): removed unused code,
30253	* src/pic/main.c (_process_pragma): removed memmap/maxram pragma
30254	    handling
30255	* src/pic/pcode.c (register_reassign): removed recursion warning,
30256	    fired far too often,
30257	* src/pic/glue.c (emitSymbolToFile,pic14_constructAbsMap): modified
30258	    to use existing pic14_stringInSet() to avoid duplicate symbols,
30259	    tidied up the code a bit,
30260	  (pic14printLocals): added in symmetry to printExterns, replaces
30261	    writeUsedRegs more or less,
30262	  (picglue): call new pic14_printLocals(),
30263	* device/include/pic/pic*.h: removed #pragma memmap directives,
30264	    information gathered from include/pic/pic14devices.txt
30265	* support/scripts/inc2h.pl: do not emit #pragma memmap lines
30266
302672006-12-10 Maarten Brock <sourceforge.brock AT dse.nl>
30268
30269	* device/include/mcs51/C8051F520.h: fixed buggy CPT0MX
30270
302712006-12-11 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30272
30273	* device/include/mcs51/cc2430.h: fixed missing ';'
30274
302752006-12-10 Raphael Neider <rneider AT web.de>
30276
30277	* device/lib/pic16/libc/stdio/vfprintf.c,
30278	* device/lib/pic16/libc/stdio/printf_small.c,
30279	* device/lib/pic16/libc/stdio/printf_timy.c: pop int from stack for
30280	  char arguments, as char varargs are cast to int by the caller,
30281	  hopefully fixes #1604915 (other device libraries are still affected)
30282
302832006-12-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
30284
30285	* src/mcs51/ralloc.c (packRegsForAssign),
30286	* src/hc08/ralloc.c (packRegsForAssign): fixed bug #1605880
30287
302882006-12-10 Maarten Brock <sourceforge.brock AT dse.nl>
30289
30290	* device/include/malloc.h: removed init_dynamic_memory
30291	* device/lib/malloc.c: made init_dynamic_memory static and automatically
30292	  call it once from malloc. Also use _sdcc_heap[] from _heap.c
30293	* device/lib/_heap.c: new, added, contains _sdcc_heap[]
30294	* device/lib/libsdcc.lib,
30295	* device/lib/Makefile.in,
30296	* support/regression/ports/mcs51-xstack-auto/spec.mk: added _heap.c
30297	* doc/sdccman.lyx: documented use of new _heap.c
30298	* support/regression/tests/malloc.c: removed init_dynamic_memory
30299	* src/cdbFile.c(spacesToUnderscores): new function,
30300	  (cdbWriteEndFunction, cdbWriteCLine): use spacesToUnderscores, fixes bug
30301	  1068030
30302	* device/include/tinibios.h: removed defines for putchar and getchar
30303	* device/lib/ds390/Makefile.in: added putchar.c
30304	* device/lib/ds390/putchar.c: new, added, fixes bug 1465671
30305
303062006-12-09 Borut Razem <borut.razem AT siol.net>
30307
30308	* support/cpp2/sdcc.h: prevent multiple inclusion
30309	* support/cpp2/options.h: deleted
30310
303112006-12-08 Borut Razem <borut.razem AT siol.net>
30312
30313	* support/cpp2/sdcc.h: removed x*alloc() macros
30314	* support/cpp2/libiberty.h: uncommented out x*alloc() declarations
30315	* support/cpp2/Makefile.bcc, support/cpp2/Makefile.in,
30316	  support/cpp2/sdcpp.sdc: x*alloc files added to the project
30317	* support/cpp2/system.h: moved #include "sdcc.h"
30318	* support/cpp2/libiberty/xexit.c, support/cpp2/libiberty/xmalloc.c,
30319	  support/cpp2/libiberty/xstrdup.c, support/cpp2/libiberty/xstrerror.c:
30320	  added
30321	* support/cpp2/sdcppinit.c: added -isysroot, -fsigned-char,
30322	  -funsigned-char options
30323	* support/cpp2/sdcppmain.c: fixed bug 1611411
30324
303252006-12-07 Borut Razem <borut.razem AT siol.net>
30326
30327	* support/cpp2/cpplib.c: reverted sdcpp special handling of _Pragma()
30328	  directive
30329
303302006-12-06 Maarten Brock <sourceforge.brock AT dse.nl>
30331
30332	* src/SDCCsymt.c (addDecl): fixed bug 1609244
30333	* src/SDCCmain.c (linkEdit): fixed bug 1609279
30334	* doc/sdccman.lyx,
30335	* .version: bumped to 2.6.2 because a) it's been a while
30336	  b) the linker sources have moved c) the preprocessor is upgraded
30337
303382006-12-04 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30339
30340	* support/regression/tests/snprintf.c: some checks
30341	* lib/src/printf_large.c: %bc: read char instead of int from stack
30342
303432006-12-03 Maarten Brock <sourceforge.brock AT dse.nl>
30344
30345	* device/include/mcs51/cc2430.h: inserted _XPAGE
30346
303472006-12-02 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30348
30349	* device/include/mcs51/cc2430.h: added
30350
303512006-12-02 Maarten Brock <sourceforge.brock AT dse.nl>
30352
30353	* device/include/asm/default/features.h,
30354	* device/include/asm/ds390/features.h,
30355	* device/include/mcs51/at89s53.h,
30356	* device/include/ser.h,
30357	* device/include/ser_ir.h,
30358	* device/include/serial.h: changed keywords to double underscore variants,
30359	  fixes bug 1590261 some more, thanks Steven Borley
30360
303612006-12-01 Raphael Neider <rneider AT web.de>
30362
30363	* src/pic/pcode.c (register_reassign): do not crash on recursive code
30364	  but emit warning (recursion is not supported for pic14)
30365
303662006-11-30 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30367
30368	* src/mcs51/peeph.def: added 101.a,b (moves to int/long xdata)
30369	* doc/sdccman.lyx: various small changes, acknowledged Sourceforge
30370
303712006-11-30 Raphael Neider <rneider AT web.de>
30372
30373	* src/pic/device.c (dump_sfr): always emit symbols
30374	* src/pic/glue.c (pic14printPublics): fixed typo
30375
303762006-11-30 Raphael Neider <rneider AT web.de>
30377
30378	* src/pic/device.c (create_pic,ram_map): add memRange entries to PIC
30379	  (pic14_getSharebankSize, pic14_getSharebankAddress): replaced with
30380	  (pic14_hasSharebank,pic14_isShared,pic14_allRAMShared,
30381	   pic14_getSharedStack): NEW, evaluate the memRange entries to locate
30382	   a sharebank, use a non-shared bank for the stack if none available
30383	* src/pic/device.h (struct memRange): added linked list next field,
30384	  added prototypes for above functions
30385	* src/pic/ralloc.c (initStack): handle shared and banked stacks,
30386	  (typeRegWithIdx): accept fixed and unfixed stack registers
30387	* src/pic/pcode.c (pCodeInitRegisters): use new functions to create
30388	  the stack, handle shared and banked stack (except for WSAVE),
30389	  (insertBankSel): removed useless optimization (will never fire),
30390	  (FixRegisterBanking): added optimization for devices with only one
30391	  possibly aliased bank of memory, like 16f84
30392	* src/pic/glue.c (pic14_constructAbsMap): back to udata_ovr, as some
30393	  devices have no SHAREBANK in the linker script
30394	* device/include/pic/pic14devices.txt: documented memmap
30395	* device/lib/pic/libdev/Makefile.in: removed --stack-loc again
30396
303972006-11-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
30398
30399	* src/hc08/gen.c (transferRegReg, loadRegFromAop, forceStackedAop,
30400	  storeRegToAop, freeAsmop, genPlusIncr, genPlus, genPointerGetSetOfs,
30401	  genAnd, genOr, genXor, genLeftShiftLiteral, genRightShiftLiteral,
30402	  genhc08Code): switched most of the D (debug) macros to DD (detailed
30403	  debug) macros to better control clutter in the generated .asm file.
30404	* src/hc08/gen.c: (forceStackedAop, genUminus, genLeftShift,
30405	  genRightShift): fixed bug with non-constant bit shift stored to
30406	  a volatile result (SF Open Discussion forum thread #1616749).
30407	  Single byte case is not yet optimized.
30408
304092006-11-28 Maarten Brock <sourceforge.brock AT dse.nl>
30410
30411	* device/include/asm/mcs51/features.h,
30412	* device/include/malloc.h,
30413	* device/include/stdio.h: changed keywords to double underscore variants,
30414	  fixes bug 1590261
30415
304162006-11-27 Borut Razem <borut.razem AT siol.net>
30417
30418	* support/cpp2/cppexp.c, support/cpp2/hashtable.h,
30419	  support/cpp2/Makefile.in, support/cpp2/cppfiles.c,
30420	  support/cpp2/output.h, support/cpp2/cppinit.c,
30421	  support/cpp2/cpplib.c, support/cpp2/cpplib.h,
30422	  support/cpp2/Makefile.bcc, support/cpp2/cpphash.c,
30423	  support/cpp2/cppdefault.c, support/cpp2/system.h,
30424	  support/cpp2/cpphash.h, support/cpp2/cpplex.c,
30425	  support/cpp2/cppdefault.h, support/cpp2/mbchar.c,
30426	  support/cpp2/prefix.c, support/cpp2/except.h,
30427	  support/cpp2/hwint.h, support/cpp2/cppmacro.c,
30428	  support/cpp2/line-map.h, support/cpp2/sdcpp.dsp,
30429	  support/cpp2/sdcc.h, support/cpp2/mkdeps.c,
30430	  support/cpp2/version.c, support/cpp2/cppmain.c,
30431	  support/cpp2/version.h, support/cpp2/hashtable.c,
30432	  support/cpp2/cpperror.c:
30433	  synchronized with GCC CPP release version 3.3.6,
30434	  the latest where cppmain.c still exists.
30435	* support/cpp2/cpptrad.c, support/cpp2/sdcppmain.c,
30436	  support/cpp2/sdcppinit.c: added
30437
304382006-11-27 Borut Razem <borut.razem AT siol.net>
30439
30440	* support/cpp2/cpplex.c:
30441	  fixed _asm ... _endasm handling bug, introduce with GCC CPP
30442	  synchronization
30443	* support/cpp2/cpplib.c: removed definitions of unused variables
30444
304452006-11-26 Borut Razem <borut.razem AT siol.net>
30446
30447	* support/cpp2/libiberty.h: commented out x*alloc() declarations
30448	  since they are redefined by macros in support/cpp2/sdcc.h
30449	* support/cpp2/sdcc.h: x*alloc macro redefinition
30450
304512006-11-25 Borut Razem <borut.razem AT siol.net>
30452
30453	* support/cpp2/cppexp.c, support/cpp2/hashtable.h,
30454	  support/cpp2/configure, support/cpp2/Makefile.in,
30455	  support/cpp2/cppfiles.c, support/cpp2/output.h,
30456	  support/cpp2/cppinit.c, support/cpp2/cpplib.c,
30457	  support/cpp2/config.h, support/cpp2/cpplib.h,
30458	  support/cpp2/Makefile.bcc, support/cpp2/cpphash.c,
30459	  support/cpp2/cppdefault.c, support/cpp2/config.in,
30460	  support/cpp2/system.h, support/cpp2/cpplex.c,
30461	  support/cpp2/cpphash.h, support/cpp2/mbchar.c,
30462	  support/cpp2/cppdefault.h, support/cpp2/prefix.c
30463	  support/cpp2/hwint.h, support/cpp2/mbchar.h,
30464	  support/cpp2/prefix.h, support/cpp2/cppmacro.c,
30465	  support/cpp2/configure.in, support/cpp2/intl.h,
30466	  support/cpp2/sdcpp.dsp, support/cpp2/acconfig.h,
30467	  support/cpp2/sdcc.h, support/cpp2/mkdeps.c,
30468	  support/cpp2/version.c, support/cpp2/cppmain.c,
30469	  support/cpp2/ansidecl.h, support/cpp2/libiberty.h,
30470	  support/cpp2/hashtable.c, support/cpp2/aclocal.m4,
30471	  support/cpp2/cpperror.c,
30472	  support/cpp2/libiberty/safe-ctype.c,
30473	  support/cpp2/libiberty/safe-ctype.h,
30474	  support/cpp2/libiberty/splay-tree.c,
30475	  support/cpp2/libiberty/obstack.c,
30476	  support/cpp2/libiberty/lbasename.c,
30477	  support/cpp2/libiberty/splay-tree.h,
30478	  support/cpp2/libiberty/obstack.h:
30479	  synchronized with GCC CPP release version 3.2.3,
30480	  the latest before integration of cpp into gcc
30481	* support/cpp2/except.h, support/cpp2/line-map.c,
30482	  support/cpp2/line-map.h,
30483	  support/cpp2/libiberty/hex.c,
30484	  support/cpp2/libiberty/concat.c,
30485	  support/cpp2/libiberty/filenames.h: added
30486	* support/cpp2/intl.c: deleted
30487
304882006-11-24 Borut Razem <borut.razem AT siol.net>
30489
30490	* src/SDCC.y: enabled compilation of empty source file
30491	* support/Util/SDCCerr.[ch]: added sdcc warning 190 -
30492	  "ISO C forbids an empty source file"
30493	* device/lib/_startup.c, device/lib/printf_tiny.c: disable warning 190
30494	  if all the code is ifdefed out.
30495
304962006-11-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
30497
30498	* src/hc08/gen.c (genPcall): fix for bug #1601032
30499
305002006-11-23 Maarten Brock <sourceforge.brock AT dse.nl>
30501
30502	* device/include/mcs51/c8051f000.h, device/include/mcs51/C8051F000.h,
30503	* device/include/mcs51/c8051f018.h, device/include/mcs51/C8051F018.h,
30504	* device/include/mcs51/c8051f020.h, device/include/mcs51/C8051F020.h,
30505	* device/include/mcs51/c8051f040.h, device/include/mcs51/C8051F040.h,
30506	* device/include/mcs51/c8051f060.h, device/include/mcs51/C8051F060.h,
30507	* device/include/mcs51/c8051f120.h, device/include/mcs51/C8051F120.h,
30508	* device/include/mcs51/c8051f200.h, device/include/mcs51/C8051F200.h,
30509	* device/include/mcs51/c8051f300.h, device/include/mcs51/C8051F300.h,
30510	* device/include/mcs51/c8051f310.h, device/include/mcs51/C8051F310.h,
30511	* device/include/mcs51/c8051f320.h, device/include/mcs51/C8051F320.h,
30512	* device/include/mcs51/c8051f326.h, device/include/mcs51/C8051F326.h,
30513	* device/include/mcs51/c8051f330.h, device/include/mcs51/C8051F330.h,
30514	* device/include/mcs51/c8051f340.h, device/include/mcs51/C8051F340.h,
30515	* device/include/mcs51/c8051f350.h, device/include/mcs51/C8051F350.h,
30516	* device/include/mcs51/c8051f410.h, device/include/mcs51/C8051F410.h:
30517	  Renamed to all upper case as per the standard set by SiLabs
30518
305192006-11-23 Maarten Brock <sourceforge.brock AT dse.nl>
30520
30521	* device/include/mcs51/C8051F520.h: new, added
30522	* device/include/mcs51/compiler.h: added link about predefined macros
30523
305242006-11-23 Raphael Neider <rneider AT web.de>
30525
30526	* src/regression/Makefile: add -L path to fresh library
30527	* src/regression/simulate: emphasize FAILED output
30528	* src/regression/create_stc: output _failures from gpsim
30529	* src/regression/compare4.c,
30530	* src/regression/rotate6.c: fixed char literals,
30531	  all compile, all run =8-D
30532
30533	* src/pic/pcode.h: added isPCASMDIR macro
30534	* src/pic/gen.c (genAnd): fixed bit offset
30535	* src/pic/ralloc.c (allocNewDirReg,allocDirReg,allocRegByName,
30536	  packBits): unified register numbering schemes,
30537	  (newReg): do not insert stack registers into hash table,
30538	  (initStack): unpinned pseudo stack, simplified,
30539	  (typeRegWithIdx): fixed retrieval of stack registers,
30540	* src/pic/pcode.c (addpCodeComment,sameBank): added,
30541	  (pCodeReplace): removed invalid assertion,
30542	  (insertPCodeInstruction): fixed newly added labels,
30543	  (insertBankSwitch,BankSelect,IsBankChange,DoBankSelect,
30544	  FixRegisterBankingInFlow,compareBankFlow,FixBankFlow,
30545	  DumpFlow): removed unsed (broken?) code,
30546	  (insertBankSel): prevent STATUS from being BANKSELed,
30547	  (FixRegisterBanking): rewritten from scratch, implemented generic
30548	    optimizations (suppress BANKSELs to same register and to registers
30549	    present in all banks),
30550	  (AnalyzeBanking): update flow after BANKSELection
30551
30552	* src/pic/glue.c (pic14_constructAbsMap): emit pseudo stack in
30553	    sharebank, let linker place it, mark STKxx symbols as emitted
30554
305552006-11-21 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30556
30557	* src/regression/arrays.c,
30558	* src/regression/bank1.c,
30559	* src/regression/bool2.c,
30560	* src/regression/compare7.c,
30561	* src/regression/compare8.c,
30562	* src/regression/compare9.c,
30563	* src/regression/compare10.c,
30564	* src/regression/configword.c,
30565	* src/regression/for.c,
30566	* src/regression/mult1.c,
30567	* src/regression/pointer1.c,
30568	* src/regression/rotate6.c,
30569	* src/regression/string1.c,
30570	* src/regression/struct1.c,
30571	* src/regression/Makefile: make PIC14 regression tests run again
30572	  (3 fail, 6 won't compile)
30573
305742006-11-21 Raphael Neider <rneider AT web.de>
30575
30576	* device/include/pic16/pic18f4550.h,
30577	* device/include/pic16/pic18f4455.h,
30578	* device/lib/pic16/libdev/pic18f4550.c,
30579	* device/lib/pic16/libdev/pic18f4455.c: fixed #1578591 and #1595144
30580	* configure.in: removed superfluous closing bracket
30581
305822006-11-21 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30583
30584	* device/lib/expf.c: Fixed bug 1599523: result of expf(x) is
30585	  always positive.
30586
305872006-11-21 Raphael Neider <rneider AT web.de>
30588
30589	* src/pic/device.{c,h}: added pic14_getPIC()
30590	* src/pic/gen.c (continueIfTrue,jumpIfTrue): added PIC code,
30591	  (genAnd): added PIC code for one case, fixes #1597044
30592	* src/pic/pcode.c (BankSelect): Ohoh, added generic optimization for
30593	  SFRs that are present in all banks (e.g., STATUS)
30594
305952006-11-20 Raphael Neider <rneider AT web.de>
30596
30597	* src/pic/pcode.c: changed inverted ops for DECFSZ/DECFSZW and
30598	  INCFSZ/INCFSZW and declared them as changing Z bit,
30599	  (insertPCodeInstruction): correctly invert the above instructions,
30600	  fixes #1599333,
30601	  (DoBankSelect): don't panic on po_immediates
30602
306032006-11-14 Maarten Brock <sourceforge.brock AT dse.nl>
30604
30605	* as/link/aslink.h,
30606	* as/link/mcs51/lkihx.c (newArea),
30607	* as/link/mcs51/lkrloc.c: renamed newArea() to ihxNewArea()
30608	* as/link/mcs51/lkihx.c (ihx): output reset vector as start address
30609
306102006-11-11 Raphael Neider <rneider AT web.de>
30611
30612	* src/pic/pcode.c (newpCodeOpBit): search SymbolTab for referenced
30613	  bitfield symbols, fixes #1579535 (once more...).
30614
306152006-11-09 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30616
30617	* support/regression/generate-cases.py,
30618	* support/regression/fwk/include/testfwk.h,
30619	* support/regression/fwk/lib/testfwk.c: used code pointers,
30620	  (about 50kByte less code generated for mcs51)
30621
306222006-11-06 Borut Razem <borut.razem AT siol.net>
30623
30624	* debugger/mcs51/acinclude.m4, debugger/mcs51/aclocal.m4,
30625	  debugger/mcs51/configure: fixed failed check because the function
30626	  rl_function_of_keyseq isn't in Readline 5.2. Thanks to Ilya Goldberg
30627	  who submitted the patch for gpsim.
30628	* debugger/mcs51/configure.in: removed the result message
30629	* debugger/mcs51/Makefile.in: fixed the config.status warning
30630	  "... seems to ignore the --datarootdir setting"
30631
306322006-11-03 Maarten Brock <sourceforge.brock AT dse.nl>
30633
30634	* device/include/mcs51/c8051f020.h,
30635	* device/include/mcs51/c8051f040.h,
30636	* device/include/mcs51/c8051f060.h,
30637	* device/include/mcs51/c8051f120.h: added PS0, fixed bug 1589279
30638	* src/z80/gen.c (gencjneshort),
30639	* src/z80/peeph.def: applied patch 1571373, thanks Philipp Krause
30640
306412006-10-31 Borut Razem <borut.razem AT siol.net>
30642
30643	* debugger/mcs51/acinclude.m4, debugger/mcs51/aclocal.m4,
30644	  debugger/mcs51/configure: get readline version
30645
306462006-10-30 Borut Razem <borut.razem AT siol.net>
30647
30648	* debugger/mcs51/sdcdb.c: replaced hardcoded "/" with DIR_SEPARATOR_STRING
30649	* debugger/mcs51/acinclude.m4, debugger/mcs51/aclocal.m4,
30650	  debugger/mcs51/configure: locate readline even when cross compiling
30651	* support/scripts/sdcc.nsi: include readline5.dll into the setup package
30652
306532006-10-29 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30654
30655	* device/include/mcs51/serial_IO.h: putchar() and getchar() using
30656	  serial port.
30657
306582006-10-29 Maarten Brock <sourceforge.brock AT dse.nl>
30659
30660	* device/include/malloc.h,
30661	* device/lib/calloc.c,
30662	* device/lib/free.c,
30663	* device/lib/malloc.c,
30664	* device/lib/realloc.c: moved definition of struct into sources
30665	* support/regression/tests/malloc.c: use void* for init_dynamic_memory()
30666
306672006-10-29 Maarten Brock <sourceforge.brock AT dse.nl>
30668
30669	* as/asx8051.dsp: corrected output directories
30670	* as/link/hc08: new directory for hc08 linker
30671	* as/hc08/aslink.h,             as/link/aslink.h,
30672	* as/hc08/aslink.mak,           as/link/hc08/aslink.mak,
30673	* as/hc08/clean.mk,             as/link/hc08/clean.mk,
30674	* as/hc08/link_hc08.dsp,        as/link/hc08/link_hc08.dsp,
30675	* as/hc08/lkaomf51.c,           as/link/hc08/lkaomf51.c,
30676	* as/hc08/lkarea.c,             as/link/hc08/lkarea.c,
30677	* as/hc08/lkdata.c,             as/link/hc08/lkdata.c,
30678	* as/hc08/lkelf.c,              as/link/hc08/lkelf.c,
30679	* as/hc08/lkihx.c,              as/link/hc08/lkihx.c,
30680	* as/hc08/lklibr.c,             as/link/hc08/lklibr.c,
30681	* as/hc08/lkmain.c,             as/link/hc08/lkmain.c,
30682	* as/hc08/lkmem.c,              as/link/hc08/lkmem.c,
30683	* as/hc08/lkrloc.c,             as/link/hc08/lkrloc.c,
30684	* as/hc08/lks19.c,              as/link/hc08/lks19.c,
30685	* as/hc08/Makefile.aslink,      as/link/hc08/Makefile.aslink,
30686	* as/hc08/Makefile.bcc,         as/link/hc08/Makefile.bcc,
30687	* as/hc08/Makefile.in,          as/link/hc08/Makefile.in,
30688	* as/link/hc08/conf.mk,
30689	* configure,
30690	* configure.in,
30691	* Makefile.in,
30692	* sdcc.dsw: moved hc08 linker to as/link/hc08
30693	* as/hc08/lkeval.c,     as/link/mcs51/lkeval.c,     as/link/lkeval.c,
30694	* as/hc08/lkhead.c,     as/link/mcs51/lkhead.c,     as/link/lkhead.c,
30695	* as/hc08/lklex.c,      as/link/mcs51/lklex.c,      as/link/lklex.c,
30696	* as/hc08/lklist.c,     as/link/mcs51/lklist.c,     as/link/lklist.c,
30697	* as/hc08/lknoice.c,    as/link/mcs51/lknoice.c,    as/link/lknoice.c,
30698	* as/hc08/lksym.c,      as/link/mcs51/lksym.c,      as/link/lksym.c,
30699	* as/link/mcs51/aslink.dsp,
30700	* as/link/mcs51/Makefile.in: factored out the common files
30701	* as/hc08/lkstore.c: deleted, use the one already in as/link/
30702	* as/clean.mk: extra cleaning common files
30703	* as/link/mcs51/strcmpi.c,      as/strcmpi.c: moved
30704	* as/link/mcs51/strcmpi.h: deleted, moved protoype to aslink.h
30705	* as/mcs51/asm.h: include sdccconf.h or sdcc_vc.h
30706
307072006-10-29 Raphael Neider <rneider AT web.de>
30708
30709	* src/pic/ralloc.c (newReg): create aliases for registers with
30710	  multiple names to fix #1579535 and #1584001,
30711	  (regWithIdx,dirregWithName): resolve aliases on lookup
30712	* src/pic/pcode.c (DoBankSelect): die with error message on failing
30713	  bankselect
30714	* device/lib/pic/libdev/Makefile.in: move pseudo stack down to 0x4f
30715	  to prevent build errors on small devices
30716
307172006-10-28 Raphael Neider <rneider AT web.de>
30718
30719	* src/pic/gen.c (genFunction,genCall): drop "same code page"
30720	  assumption within interrupt handlers, fixes #1584940
30721	* src/pic/glue.c (pic14_constructAbsMap): mark absolute symbols as
30722	  "emitted" to avoid emitting them again in udata
30723
307242006-10-27 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30725
30726	* device/lib/_putchar.c, device/lib/_getchar.c, device/lib/inituart.c:
30727	Removed.
30728
307292006-10-26 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30730
30731	* device/lib/_putchar.c, device/lib/_getchar.c, device/lib/inituart.c:
30732	Initialize uart only if SM0 and SM1 are zero.  Also, use flag to turn
30733	on/off CR to CRLF conversion.
30734
307352006-10-25 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30736
30737	* doc/sdccman.lyx: updated IRQ section
30738
307392006-10-24 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30740
30741	* device/lib/serial_io.c: removed
30742	* device/lib/_putchar.c, device/lib/_getchar.c, device/lib/inituart.c
30743	replacements for serial_io.c
30744
307452006-10-24 Maarten Brock <sourceforge.brock AT dse.nl>
30746
30747	* src/z80/main.c (_process_pragma, _parseOptions): fixed bug 1583318
30748
307492006-10-24 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30750
30751	* device/lib/serial_io.c: Default putchar() and getchar() for
30752	  mcs51 uses serial port.
30753
307542006-10-23 Maarten Brock <sourceforge.brock AT dse.nl>
30755
30756	* src/mcs51/gen.c (movc): improved check for 0 and 1, see RFE 1582704
30757
307582006-10-23 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30759
30760	* support/regression/ports/mcs51/support.c: smaller
30761	_sdcc_external_startup()
30762	* device/lib/mcs51/crtxclear.asm: don't check high byte of l_PSEG
30763
307642006-10-20 Maarten Brock <sourceforge.brock AT dse.nl>
30765
30766	* device/lib/gbz80/crt0.s,
30767	* device/lib/gbz80/crt0_rle.s,
30768	* device/lib/gbz80/div.s,
30769	* device/lib/gbz80/fstubs.s,
30770	* device/lib/gbz80/heap.s,
30771	* device/lib/gbz80/mul.s,
30772	* device/lib/gbz80/putchar.s,
30773	* device/lib/gbz80/stubs.s,
30774	* device/lib/z80/crt0.s,
30775	* device/lib/z80/crt0_rle.s,
30776	* device/lib/z80/div.s,
30777	* device/lib/z80/fstubs.s,
30778	* device/lib/z80/heap.s,
30779	* device/lib/z80/mul.s,
30780	* device/lib/z80/putchar.s,
30781	* device/lib/z80/stubs.s: reverted, I was mistaken
30782
307832006-10-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30784
30785	* src/mcs51/peeph.def: peephole 238.x added check for notvolatile
30786	* support/regression/ports/mcs51/support.c: removed race
30787	condition on TI in _putchar allowing to use serial port mode 0
30788
307892006-10-20 Borut Razem <borut.razem AT siol.net>
30790
30791	* debugger/mcs51/sdcdb.c: replaced isblank() with isspace()
30792
307932006-10-19 Maarten Brock <sourceforge.brock AT dse.nl>
30794
30795	* device/lib/gbz80/crt0.s,
30796	* device/lib/gbz80/crt0_rle.s,
30797	* device/lib/gbz80/div.s,
30798	* device/lib/gbz80/fstubs.s,
30799	* device/lib/gbz80/heap.s,
30800	* device/lib/gbz80/mul.s,
30801	* device/lib/gbz80/putchar.s,
30802	* device/lib/gbz80/stubs.s,
30803	* device/lib/z80/crt0.s,
30804	* device/lib/z80/crt0_rle.s,
30805	* device/lib/z80/div.s,
30806	* device/lib/z80/fstubs.s,
30807	* device/lib/z80/heap.s,
30808	* device/lib/z80/mul.s,
30809	* device/lib/z80/putchar.s,
30810	* device/lib/z80/stubs.s: removed all leading underscores from area names
30811
308122006-10-17 Maarten Brock <sourceforge.brock AT dse.nl>
30813
30814	* support/regression/ports/mcs51/support.c: use highest baudrate so the
30815	  regression tests are not waiting in the simulator for simulated
30816	  transmission of debug output
30817
308182006-10-16 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30819
30820	* device/lib/printf_large.c: slightly smaller
30821	* doc/sdccman.lyx: do not use spaces within html links
30822
308232006-10-16 Borut Razem <borut.razem AT siol.net>
30824
30825	* configure.in, configure, sdccconf_in.h, src/SDCCglobal,
30826	  debugger/mcs51/Makefile.in, debugger/mcs51/sdcdb.[ch],
30827	  debugger/mcs51/aclocal.m4, debugger/mcs51/acinclide.m4,
30828	  debugger/mcs51/config.h.in, debugger/mcs51/configure.in,
30829	  debugger/mcs51/configure:
30830	  [ 1185668 ] add gnu readline support to sdcdb - enabled
30831
308322006-10-16 Raphael Neider <rneider AT web.de>
30833
30834	* src/pic/pcode.c (BankSelect): another fix on (partial) BANKSELs,
30835	  fixes #1577882, removes close to all banking optimizations
30836
308372006-10-15 Maarten Brock <sourceforge.brock AT dse.nl>
30838
30839	* src/SDCCsymt.c (checkSClass): no error for uninitialised absolute
30840	  variables in code memory
30841	* support/regression/tests/absolute.c: added test for this
30842
308432006-10-15 Raphael Neider <rneider AT web.de>
30844
30845	* src/pic/pcode.c (InsertBankSel): suppress BANKSELs for one bank
30846	  devices,
30847	  (BankSelect): emit BANKSEL before touching linker-placed regs,
30848	  fixes #1570934
30849
308502006-10-10 Raphael Neider <rneider AT web.de>
30851
30852	* src/SDCCmain.c (optionsTable): accept --stack-size for PICs,
30853	* src/pic/device.c (pic14_getSharebankSize,pic14_getSharebankAddress),
30854	* src/pic/main.c (_pic14_parseOptions),
30855	* src/pic/main.h: mostly reverted to previous state, now use results
30856	    from SDCCmain.c's argument parsing
30857
308582006-10-10 Borut Razem <borut.razem AT siol.net>
30859
30860	* debugger/mcs51/break.[ch], debugger/mcs51/cmd.c,
30861	  debugger/mcs51/sdcdb.[ch], debugger/mcs51/simi.c:
30862	  [ 1185668 ] add gnu readline support to sdcdb -
30863	  prepared for READLINE, not enabled yet,
30864	  thanks to <tal.bav AT gmail.com>
30865
308662006-10-10 Raphael Neider <rneider AT web.de>
30867
30868	* src/pic16/pcode.c (pic16_pCode2str): use isACCESS_BANK macro
30869	* src/pic16/devices.inc,
30870	* device/include/pic16 (pic18f[24]620.h),
30871	* device/include/pic18fregs.h,
30872	* device/lib/pic16/pics.all,
30873	* device/lib/pic16/libdev/pic18f[24]{620,525}.c): added support for
30874	    18f2620, 18f4620, 18f2525, and 18f4525 devices, thanks to
30875	    Gary Plumbridge and Anton Strobl
30876
308772006-10-10 Raphael Neider <rneider AT web.de>
30878
30879	* src/pic/main.c (_pic14_parseOptions): added --stack-loc=NUM and
30880	  --stack-siz=NUM options to configure the argument passing stack
30881	* src/pic/main.h: added stackLocation and stackSize to pic14_options_t
30882	* src/pic/device.c (mapRegister): catch out-of-memory SIGSEGVs,
30883	  (pic14_getSharebankSize): obey --stack-siz=NUM,
30884	  (pic14_getSharebankAddress): obey --stack-loc=NUM
30885
308862006-10-08 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
30887
30888	* doc/sdccman.lyx: added to the manual
30889	* doc/figures/ddd_example.png: added (neither pdflatex nor
30890	most browsers seem to like the .eps file)
30891
308922006-10-06 Bernhard Held <bernhard AT bernhardheld.de>
30893
30894	* src/SDCCglue.c (tempfileandname): changed un*x tmp search paths
30895	to /tmp and /var/tmp acc. LSB
30896	* src/SDCCast.c (addCast): Fixed bug 1571231: promote in case of
30897	RESULT_TYPE_IFX
30898	* support/regression/tests/onebyte.c: added test
30899
309002006-10-05 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30901
30902	* src/mcs51/gen.c: emitcode for "add a,0x%02x" requires only 8 bits.
30903
309042006-10-05 Borut Razem <borut.razem AT siol.net>
30905
30906	* partially fixed [ 1570701 ] peephole - not replacing code from multiline macros,
30907	  thanks to dfulab:
30908	  - sdcc.dsw: changed property eol-style to CRLF
30909	  - support/scripts/resource.rc: replaced references to "afxres.h" with "winres.h"
30910
309112006-10-04 Raphael Neider <rneider AT web.de>
30912
30913	* device/include/pic/{pic16f84.h,pic16f84a.h},
30914	* device/lib/pic/libdev/{pic16f84.c,pic16f84a.c}: added PORT[AB]_bits
30915	  from patch #1522504, thanks to Robas Teodor
30916
309172006-10-02 Maarten Brock <sourceforge.brock AT dse.nl>
30918
30919	* as/link/z80/lkarea.c: essentially reverted lnksect() to #4380 which
30920	  fixes bug 1566015
30921
309222006-10-01 Maarten Brock <sourceforge.brock AT dse.nl>
30923
30924	* src/pic16/glue.c (pic16emitMaps),
30925	* src/pic/glue.c (pic14emitMaps): hopefully fixed bug 1568779
30926	* device/lib/gets.c: fixed bug 1568829,thanks Philipp Krause
30927	* device/lib/pic16/libc/string/memcpypgm2ram.c,
30928	* device/lib/pic16/libc/string/memcpyram2ram.c: fixed bug 1568836, thanks
30929	  Philipp Krause
30930	* as/mcs51/asmain.c (asmbl, newdot): fixed problems with absolute areas
30931	* as/link/mcs51/lkmem.c (summary2): reverted, do do count abs segments
30932
309332006-09-30 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
30934
30935	* support/librarian/sdcclib.c: Added option -l.
30936	* as/link/mcs51/lkmem.c: don't use absolute segments to compute memory
30937	  usage totals.
30938	* device/lib/make51lib.bat: added.  Allows building mcs51 libraries easily
30939	  using Windows command prompt.
30940
309412006-09-30 Maarten Brock <sourceforge.brock AT dse.nl>
30942
30943	* device/lib/libsdcc.lib: added module rand
30944	* src/ds390/ralloc.c (rematStr),
30945	* src/hc08/ralloc.c (rematStr),
30946	* src/mcs51/ralloc.c (rematStr),
30947	* src/z80/ralloc.c (rematStr): made output more consistent
30948	* src/mcs51/gen.c: cosmetic changes
30949
309502006-09-30 Maarten Brock <sourceforge.brock AT dse.nl>
30951
30952	* src/port.h: added mem.cabs_name to PORT
30953	* src/ds390/main.c,
30954	* src/hc08/main.c,
30955	* src/mcs51/main.c,
30956	* src/pic16/main.c,
30957	* src/pic/main.c,
30958	* src/xa51/main.c,
30959	* src/z80/main.c: added cabs_name initializers
30960	* src/SDCCglue.c (emitStaticSeg): allocate and initialize absolute
30961	  constants
30962	  (emitMaps): emit absolutes in code memory into cabs_name
30963	* src/SDCCmem.c,
30964	* src/SDCCmem.h: added memory map c_abs and defined CABS_NAME
30965	* src/ds390/gen.c (genCodePointerGet): fixed bug if left is a literal
30966	* support/regression/fwk/include/testfwk.h: added define for at
30967	* support/regression/tests/absolute.c: added, new
30968
309692006-09-29 Maarten Brock <sourceforge.brock AT dse.nl>
30970
30971	* src/mcs51/gen.c (genPlusIncr, genMinusDec, genAddrOf): small
30972	  optimizations, see also patch 887161 by Stas Sergeev
30973	* src/mcs51/peeph.def(104, 207, 209, 212): disabled as they do not seem
30974	  to be necessary anymore,
30975	  (102, 103, 104, 127): renamed all occurances of bp to _bp
30976
309772006-09-27 Maarten Brock <sourceforge.brock AT dse.nl>
30978
30979	* device/include/mcs51/at89c51snd1c.h: fixed MSK_SREQ definition
30980	  thanks Weston T. Schmidt for patch 1555221
30981	* src/mcs51/peeph.def: renamed rule 257 to 257.a, added 257.b
30982	* src/SDCCicode.c(geniCodeMultiply): small optimization
30983
309842006-09-26 Maarten Brock <sourceforge.brock AT dse.nl>
30985
30986	* device/include/stdlib.h: added rand prototypes
30987	* device/lib/rand.c: new, added
30988	* device/lib/Makefile.in: added rand.c
30989	* src/z80/peeph.def,
30990	* src/z80/peeph-gbz80.def,
30991	* src/z80/peeph-z80.def: updated conditonals, fixed bug 1565908
30992
309932006-09-20 Raphael Neider <rneider AT web.de>
30994
30995	* device/lib/pic16/libio/i2c/i2cnack.c (i2c_nack): fixed ACKDT bit
30996
309972006-09-19 Maarten Brock <sourceforge.brock AT dse.nl>
30998
30999	* as/link/aslink.h: cosmetic changes
31000	* as/link/mcs51/Makefile.in,
31001	* as/link/z80/Makefile.in: fixed build on CF where VPATH is used
31002
310032006-09-17 Maarten Brock <sourceforge.brock AT dse.nl>
31004
31005	* as/link/aslink.h,
31006	* as/link/mcs51/aslink.h,
31007	* as/link/z80/aslink.h: merged and moved to as/link/
31008	* as/link/lkstore.c,
31009	* as/link/mcs51/lkstore.c: moved to as/link/
31010	* as/link/clean.mk: remove *.o
31011	* as/link/mcs51/alloc.h: deleted
31012	* as/link/mcs51/lkarea.c: added lnksect prototype
31013	* as/link/mcs51/lkdata.c,
31014	* as/link/mcs51/lklex.c,
31015	* as/link/mcs51/lkmain.c: renamed as_getline to lk_getline
31016	* as/link/mcs51/lkmem.c,
31017	* as/link/mcs51/lknoice.c: removed include strcmpi.h
31018	* as/link/mcs51/lksym.c: include stdlib.h instead of malloc.h or alloc.h
31019	* as/link/mcs51/aslink.dsp,
31020	* as/link/mcs51/Makefile.aslink,
31021	* as/link/mcs51/Makefile.bcc,
31022	* as/link/mcs51/Makefile.in: updated for moved files
31023	* as/link/z80/lkarea.c,
31024	* as/link/z80/lkhead.c,
31025	* as/link/z80/lklex.c,
31026	* as/link/z80/lklibr.c,
31027	* as/link/z80/lklist.c,
31028	* as/link/z80/lkmain.c,
31029	* as/link/z80/lkrloc.c,
31030	* as/link/z80/lksym.c: synced with mcs51
31031	* as/link/z80/lkdata.c,
31032	* as/link/z80/lkeval.c,
31033	* as/link/z80/lkihx.c,
31034	* as/link/z80/lks19.c: cosmetic changes
31035	* as/link/z80/Makefile.in,
31036	* as/link/z80/linkgbz80.dsp,
31037	* as/link/z80/linkz80.dsp: updated for moved files
31038
310392006-09-16 Borut Razem <borut.razem AT siol.net>
31040
31041	* debugger/mcs51/sdcdb.c: partially fixed
31042	  [ 1203664 ] sdcdb fails to open files w. two "." periods
31043	* debugger/mcs51/simi.c, debugger/mcs51/symtab.c,
31044	  debugger/mcs51/symtab.h: fixed indenting
31045	* configure.in, configure: up to date with latest Maarten's changes
31046
310472006-09-15 Maarten Brock <sourceforge.brock AT dse.nl>
31048
31049	as/link/mcs51
31050	as/aslink.dsp,                  as/link/mcs51/aslink.dsp,
31051	as/link/mcs51/aslink.h,         as/mcs51/aslink.h,
31052	as/link/mcs51/aslink.mak,       as/mcs51/aslink.mak,
31053	as/link/mcs51/lkaomf51.c,       as/mcs51/lkaomf51.c,
31054	as/link/mcs51/lkarea.c,         as/mcs51/lkarea.c,
31055	as/link/mcs51/lkdata.c,         as/mcs51/lkdata.c,
31056	as/link/mcs51/lkeval.c,         as/mcs51/lkeval.c,
31057	as/link/mcs51/lkhead.c,         as/mcs51/lkhead.c,
31058	as/link/mcs51/lkihx.c,          as/mcs51/lkihx.c,
31059	as/link/mcs51/lklex.c,          as/mcs51/lklex.c,
31060	as/link/mcs51/lklibr.c,         as/mcs51/lklibr.c,
31061	as/link/mcs51/lklist.c,         as/mcs51/lklist.c,
31062	as/link/mcs51/lkmain.c,         as/mcs51/lkmain.c,
31063	as/link/mcs51/lkmem.c,          as/mcs51/lkmem.c,
31064	as/link/mcs51/lknoice.c,        as/mcs51/lknoice.c,
31065	as/link/mcs51/lkrloc.c,         as/mcs51/lkrloc.c,
31066	as/link/mcs51/lks19.c,          as/mcs51/lks19.c,
31067	as/link/mcs51/lkstore.c,        as/mcs51/lkstore.c,
31068	as/link/mcs51/lksym.c,          as/mcs51/lksym.c,
31069	as/link/mcs51/Makefile.aslink,  as/mcs51/Makefile.aslink,
31070	as/link/mcs51/alloc.h,
31071	as/link/mcs51/clean.mk,
31072	as/link/mcs51/conf.mk,
31073	as/link/mcs51/Makefile.bcc,
31074	as/link/mcs51/Makefile.in,
31075	as/link/mcs51/readme.390,
31076	as/link/mcs51/strcmpi.c,
31077	as/link/mcs51/strcmpi.h,
31078	as/mcs51/clean.mk,
31079	as/mcs51/Makefile.bcc,
31080	as/mcs51/Makefile.in,
31081	configure,
31082	Makefile.in,
31083	sdcc.dsw: moved mcs51 linker to as/link/mcs51
31084
310852006-09-14 Maarten Brock <sourceforge.brock AT dse.nl>
31086
31087	* as/link,
31088	* as/link/Makefile.in,
31089	* as/link/z80/linkgbz80.dsp,
31090	* as/link/z80/linkz80.dsp,
31091	* configure,
31092	* link,
31093	* link/clean.mk,
31094	* link/Makefile.in,
31095	* link/README,
31096	* link/z80,
31097	* link/z80/aslink.h,
31098	* link/z80/clean.mk,
31099	* link/z80/conf.mk,
31100	* link/z80/linkgbz80.dsp,
31101	* link/z80/linkz80.dsp,
31102	* link/z80/lkarea.c,
31103	* link/z80/lkdata.c,
31104	* link/z80/lkeval.c,
31105	* link/z80/lkgb.c,
31106	* link/z80/lkgg.c,
31107	* link/z80/lkhead.c,
31108	* link/z80/lkihx.c,
31109	* link/z80/lklex.c,
31110	* link/z80/lklibr.c,
31111	* link/z80/lklist.c,
31112	* link/z80/lkmain.c,
31113	* link/z80/lkrloc.c,
31114	* link/z80/lks19.c,
31115	* link/z80/lksym.c,
31116	* link/z80/Makefile.in,
31117	* Makefile.in,
31118	* sdcc.dsw: moved link/ to as/link/
31119
311202006-09-11 Maarten Brock <sourceforge.brock AT dse.nl>
31121
31122	* as/mcs51/i51mch.c (machine): fixed warning
31123
311242006-09-10 Maarten Brock <sourceforge.brock AT dse.nl>
31125
31126	* as/mcs51/i51mch.c (machine): S_DJNZ fixed bug 1554318
31127
311282006-09-09 Borut Razem <borut.razem AT siol.net>
31129
31130	* debugger/mcs51/sdcdb.c, debugger/mcs51/simi.c:
31131	  sdcdb WIN32 native port
31132	* src/clean.mk: fixed
31133
311342006-09-08 Borut Razem <borut.razem AT siol.net>
31135
31136	* doc/sdccman.lyx: SDCDB and ucSim are available on Win32 platforms.
31137
311382006-09-08 Raphael Neider <rneider AT web.de>
31139
31140	* src/pic16/main.c (_pic16_linkEdit,pic16_linkCmd),
31141	* src/pic/main.c(_pic14_do_link, linkCmd): pass "-w" and "-r"
31142	    to gplink to disable processor mismatch warning and to allow
31143	    the use of devices with only aliased (shared) memory banks,
31144	  (_pic16_genAssemblerPreamble): include pXXX.inc on --mplab-comp
31145
311462006-09-07 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
31147
31148	* doc/sdccman.lyx: Some re-formating plus example on using
31149	  #pragma preproc_asm +/-
31150
311512006-09-07 Borut Razem <borut.razem AT siol.net>
31152
31153	* support/scripts/sdcc.nsi: added SDCDB executables in a separate
31154	  section
31155
311562006-09-06 Borut Razem <borut.razem AT siol.net>
31157
31158	* support/scripts/sdcc.nsi: fixed Error: unterminated string parsing
31159	  line at sdcc.nsi:153
31160	* sdcc/debugger/mcs51/simi.c: argsToCmdLine() fixes
31161
311622006-09-05 Borut Razem <borut.razem AT siol.net>
31163
31164	* configure.in, configure: support for winsock2
31165	* debugger/mcs51/break.h, debugger/mcs51/cmd.c,
31166	  debugger/mcs51/cmd.h, debugger/mcs51/sdcdb.c,
31167	  debugger/mcs51/sdcdb.h, debugger/mcs51/simi.c,
31168	  debugger/mcs51/simi.h, debugger/mcs51/symtab.c,
31169	  debugger/mcs51/symtab.h: sdcdb WIN32 native port
31170
311712006-09-05 Maarten Brock <sourceforge.brock AT dse.nl>
31172
31173	* src/SDCCopt.c (cnvToFcall): fixed bug 1551947 by updating OP_USES
31174	  and OP_DEFS
31175	* support/regression/tests/bug1551947.c: new, added
31176	* src/SDCCsymt.h: strings are char* not byte*
31177
311782006-09-05 Raphael Neider <rneider AT web.de>
31179
31180	* device/lib/pic16/libdev/pic18f4550.c,
31181	  device/include/pic16/pic18f4550.h: added PORTD/TRISD
31182	    declarations/definitions from patch #1520949
31183
311842006-09-05 Raphael Neider <rneider AT web.de>
31185
31186	* src/pic16/gen.c (genPackBits): fix assignment to 8-bit,
31187	  byte-aligned bitfields, fixes #1539278
31188
311892006-09-05 Raphael Neider <rneider AT web.de>
31190
31191	* src/pic/gen.c (genReceive): skip unreferenced arguments,
31192	  fixes #1544120
31193
311942006-09-04 Borut Razem <borut.razem AT siol.net>
31195
31196	* support/scripts/sdcc.nsi: move ucSim executables to a separate section
31197	* support/scripts/sdcc_cygwin_mingw32: don't disable ucsim,
31198	  -mno-cygwin is a part of the compiler name
31199	* support/scripts/sdcc_mingw32: don't disable ucsim
31200
312012006-09-03 Borut Razem <borut.razem AT siol.net>
31202
31203	* sdcc.spec: corrected for 2.6.0. Thanks to Christer Weinigel.
31204	* device/lib/Makefile.in device/lib/clean.mk: small but essential corrections
31205
312062006-09-03 Raphael Neider <rneider AT web.de>
31207
31208	* src/pic/ralloc.c,
31209	* src/pic/pcode.c (InitReuseRegs): allocate registers with pseudo
31210	  indices >= 0x1000 to disambiguate them from fixed regs __at(addr),
31211	  fixes #1550049
31212
312132006-09-01 Borut Razem <borut.razem AT siol.net>
31214
31215	* sim/ucsim/cmd.src/cmdutil.cc: #include <sys/time.h> and <unistd.h>
31216	  to make ppc-osx happy
31217
312182006-08-31 Borut Razem <borut.razem AT siol.net>
31219
31220	* sim/ucsim/cmd.src/newcmdposix.cc: #include <assert.h>
31221	* sim/ucsim/cmd.src/newcmd.cc: #include <ctype.h>
31222	* sim/ucsim/cmd.src/newcmd.cc: #include <ctype.h>
31223	* support/regression/ports/ds390/spec.mk,
31224	  support/regression/ports/mcs51/spec.mk,
31225	  support/regression/ports/xa51/spec.mk: introduced DEV_NULL variable.
31226	  To run regression tests in mingw environment:
31227	  make DEV_NULL=NUL CC=gcc
31228
312292006-08-30 Borut Razem <borut.razem AT siol.net>
31230
31231	* sim/ucsim/cmd.src/newcmdposix.cc, sim/ucsim/cmd.src/newcmdposixcl.h,
31232	  sim/ucsim/cmd.src/newcmdwin32.cc, sim/ucsim/cmd.src/newcmdwin32cl.h,
31233	  sim/ucsim/app.cc, sim/ucsim/appcl.h, sim/ucsim/configure,
31234	  sim/ucsim/configure.in, sim/ucsim/ddconfig_in.h, sim/ucsim/error.cc,
31235	  sim/ucsim/errorcl.h, sim/ucsim/option.cc, sim/ucsim/optioncl.h,
31236	  sim/ucsim/utils.cc, sim/ucsim/utils.h, sim/ucsim/cmd.src/Makefile.in,
31237	  sim/ucsim/avr.src/avr.cc, sim/ucsim/avr.src/avrcl.h,
31238	  sim/ucsim/cmd.src/bp.cc, sim/ucsim/cmd.src/bpcl.h,
31239	  sim/ucsim/cmd.src/cmdconf.cc, sim/ucsim/cmd.src/cmdgui.cc,
31240	  sim/ucsim/cmd.src/cmdmem.cc, sim/ucsim/cmd.src/cmdset.cc,
31241	  sim/ucsim/cmd.src/cmdsetcl.h, sim/ucsim/cmd.src/cmdstat.cc,
31242	  sim/ucsim/cmd.src/cmduc.cc, sim/ucsim/cmd.src/cmduccl.h,
31243	  sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/cmdutil.h,
31244	  sim/ucsim/cmd.src/command.cc, sim/ucsim/cmd.src/commandcl.h,
31245	  sim/ucsim/cmd.src/get.cc, sim/ucsim/cmd.src/getcl.h,
31246	  sim/ucsim/cmd.src/info.cc, sim/ucsim/cmd.src/newcmd.cc,
31247	  sim/ucsim/cmd.src/newcmdcl.h, sim/ucsim/cmd.src/set.cc,
31248	  sim/ucsim/cmd.src/show.cc, sim/ucsim/cmd.src/timer.cc,
31249	  sim/ucsim/hc08.src/hc08.cc, sim/ucsim/hc08.src/hc08cl.h,
31250	  sim/ucsim/s51.src/Makefile.in, sim/ucsim/s51.src/interrupt.cc,
31251	  sim/ucsim/s51.src/interruptcl.h, sim/ucsim/s51.src/pca.cc,
31252	  sim/ucsim/s51.src/pcacl.h, sim/ucsim/s51.src/port.cc,
31253	  sim/ucsim/s51.src/portcl.h, sim/ucsim/s51.src/serial.cc,
31254	  sim/ucsim/s51.src/serialcl.h, sim/ucsim/s51.src/timer0.cc,
31255	  sim/ucsim/s51.src/timer0cl.h, sim/ucsim/s51.src/timer1.cc,
31256	  sim/ucsim/s51.src/timer1cl.h, sim/ucsim/s51.src/timer2.cc,
31257	  sim/ucsim/s51.src/timer2cl.h, sim/ucsim/s51.src/uc390.cc,
31258	  sim/ucsim/s51.src/uc390cl.h, sim/ucsim/s51.src/uc390hw.cc,
31259	  sim/ucsim/s51.src/uc390hwcl.h, sim/ucsim/s51.src/uc51.cc,
31260	  sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/wdt.cc,
31261	  sim/ucsim/s51.src/wdtcl.h, sim/ucsim/sim.src/hw.cc,
31262	  sim/ucsim/sim.src/hwcl.h, sim/ucsim/sim.src/mem.cc,
31263	  sim/ucsim/sim.src/memcl.h, sim/ucsim/sim.src/obsolete.cc,
31264	  sim/ucsim/sim.src/obsolete.h, sim/ucsim/sim.src/sim.cc,
31265	  sim/ucsim/sim.src/simcl.h, sim/ucsim/sim.src/stack.cc,
31266	  sim/ucsim/sim.src/stackcl.h, sim/ucsim/sim.src/test_mem_speed.cc,
31267	  sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
31268	  sim/ucsim/xa.src/xa.cc, sim/ucsim/xa.src/xacl.h,
31269	  sim/ucsim/z80.src/z80.cc, sim/ucsim/z80.src/z80cl.h:
31270	  ucsim WIN32 native port
31271
312722006-08-30 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
31273
31274	* doc/sdccman.lyx: added note on dynamic memory heap initialization
31275
312762006-08-27 Maarten Brock <sourceforge.brock AT dse.nl>
31277
31278	* src/mcs51/gen.c (genAnd, genOr, genXor): fixed bug 1546986
31279	* src/ds390/gen.c (aopGetUsesAcc): handle AOP_DPTR2 and AOP_DPTRn too
31280
312812006-08-26 Maarten Brock <sourceforge.brock AT dse.nl>
31282
31283	* src/ds390/gen.c (genAnd, genOr, genXor): fixed bug 1546986
31284	* support/regression/tests/bug1546986.c: new, added
31285	* as/mcs51/.cvsignore,
31286	* debugger/mcs51/.cvsignore,
31287	* src/.cvsignore: deleted
31288
312892006-08-25 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
31290
31291	* device/include/mcs51/P89c51RD2.h: fixed bug 1546936 (error in sbit
31292	  definitions)
31293
312942006-08-20 Borut Razem <borut.razem AT siol.net>
31295
31296	* sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/newcmdcl.h:
31297	  removed cl_listen_console::match(), cl_console::match(),
31298	  restructured cl_commander::proc_input()
31299
313002006-08-16 Borut Razem <borut.razem AT siol.net>
31301
31302	* sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/newcmdcl.h,
31303	  sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/cmdutil.h,
31304	  sim/ucsim/sim.src/mem.cc, sim/ucsim/sim.src/uc.cc: code cleaning
31305
313062006-08-14 Borut Razem <borut.razem AT siol.net>
31307
31308	* support/regression/Makefile.in,
31309	  support/regression/ports/pic14/gpsim.cmd,
31310	  support/regression/ports/pic14/spec.mk,
31311	  support/regression/ports/pic14/support.c:
31312	  added pic14 regression test
31313
313142006-08-14 Maarten Brock <sourceforge.brock AT dse.nl>
31315
31316	* as/doc/asxhtm.html: documented changed ABS behaviour
31317	* as/doc/README: fixed some typos
31318
313192006-08-13 Maarten Brock <sourceforge.brock AT dse.nl>
31320
31321	* support/regression/tests/float_trans.c: disabled test if __STDC_IEC_559__
31322	  not defined on host
31323
313242006-08-12 Borut Razem <borut.razem AT siol.net>
31325
31326	* support/regression/fwk/include/testfwk.h,
31327	  support/regression/fwk/lib/testfwk.c,
31328	  support/regression/generate-cases.py,
31329	  support/regression/Makefile.in:
31330	  regression test framework does not depend on function pointers and
31331	  variable arguments
31332
313332006-08-09 Maarten Brock <sourceforge.brock AT dse.nl>
31334
31335	* device/include/stddef.h: c temporary hack to fix bug 1518273
31336
313372006-08-09 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
31338
31339	* device/include/mcs51/cc2510fx.h: added
31340	* src/z80/z80.dsp, src/gbz80/gbz80.dsp: added support/Util/strcmpi.ch
31341	  to projects.
31342
313432006-08-09 Maarten Brock <sourceforge.brock AT dse.nl>
31344
31345	* as/z80/assym.c (mlookup): ignore case when looking up mnemonics
31346	* as/z80/Makefile.in: added strcmpi.c
31347	* as/z80/z80adr.c: added upper case registers and lower case conditionals
31348	* support/Util/strcmpi.ch: added with intention to remove from mcs51/hc08
31349
313502006-08-08 Maarten Brock <sourceforge.brock AT dse.nl>
31351
31352	* device/lib/gbz80/asm_strings.s,
31353	* device/lib/gbz80/crt0_rle.s,
31354	* device/lib/gbz80/div.s,
31355	* device/lib/gbz80/mul.s,
31356	* device/lib/gbz80/shift.s,
31357	* device/lib/z80/asm_strings.s,
31358	* device/lib/z80/crt0_rle.s,
31359	* device/lib/z80/div.s,
31360	* device/lib/z80/mul.s,
31361	* device/lib/z80/shift.s: changed to all lower case menmonics except the
31362	  flags which are all upper case
31363
313642006-08-07 Maarten Brock <sourceforge.brock AT dse.nl>
31365
31366	* as/z80/asm.h: made CASE_SENSITIVE 1
31367	* link/z80/aslink.h: made CASE_SENSITIVE 1
31368	* src/z80/gen.c (throughout): made all conditionals upper case
31369	* support/regression/tests/bug1503067.c: new
31370
313712006-08-07 Maarten Brock <sourceforge.brock AT dse.nl>
31372
31373	* src/z80/gen.c (aopPut): fixed bug !*ixy should be !*iyx,
31374	  (shiftIntoPair): added case 2 for PAIR_IY,
31375	  (setupToPreserveCarry): replaced parameters with iCode and check if
31376	   PAIR_DE is in use to fix bug 1399290,
31377	  (genPlus, genMinus): updated call to setupToPreserveCarry
31378	* support/regression/tests/bug1399290.c: new
31379
313802006-08-06 Maarten Brock <sourceforge.brock AT dse.nl>
31381
31382	* device/lib/Makefile.in (Z80SOURCES): enabled float support
31383	* sim/ucsim/z80.src/inst.cc (inst_rst): generate breakpoint on RST8,ACC==0
31384	* src/ds390/gen.c (shiftRLong),
31385	* src/hc08/gen.c (shiftLLong, shiftRLong): fixed bug 1533966
31386	* src/mcs51/gen.c (sameReg): changed to sameByte,
31387	  (xch_a_aopGet): new,
31388	  (shiftL2Left2Result, shiftR2Left2Result, shiftRLeftOrResult, shiftLLong,
31389	   shiftRLong): fixed bug 1533966
31390	* src/z80/gen.c (shiftR2Left2Result, shiftL2Left2Result, genlshTwo,
31391	  genLeftShiftLiteral, genrshTwo, genRightShiftLiteral): fixed bug 1533966
31392	* support/regression/Makefile.in: disabled z80, enabled ucz80
31393	* support/regression/tests/float_trans.c: enabled test for z80 and host
31394	* support/regression/tests/shifts2.c: new, for testing bug 1533966
31395
313962006-08-01 Borut Razem <borut.razem AT siol.net>
31397
31398	* src/mcs51/gen.c, src/dc390/gen.c: fixed warning:
31399	  comparison is always false due to limited range of data type
31400	  on PPC64 machine (openpower-linux1) where "char = unsigned char"
31401
314022006-08-01 Maarten Brock <sourceforge.brock AT dse.nl>
31403
31404	* sim/ucsim/hc08.src/hc08mac.h: removed faulty and unused add_u16_disp
31405	* sim/ucsim/hc08.src/hc08.cc: removed faulty and unused int8
31406	* sim/ucsim/z80.src/z80mac.h (add_u16_disp): use explicit signed char cast
31407	* sim/ucsim/z80.src/z80.cc: removed faulty and unused int8
31408
314092006-07-31 Borut Razem <borut.razem AT siol.net>
31410
31411	* sim/ucsim/configure, sim/ucsim/cmd.src/newcmdcl.h,
31412	  sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/cmdutil.cc,
31413	  sim/ucsim/z80.src/Makefile.in, sim/ucsim/configure.in,
31414	  sim/ucsim/hc08.src/Makefile.in, sim/ucsim/hc08.src/hc08.cc,
31415	  sim/ucsim/ddconfig_in.h, sim/ucsim/s51.src/Makefile.in,
31416	  sim/ucsim/s51.src/uc51cl.h, sim/ucsim/s51.src/serialcl.h,
31417	  sim/ucsim/s51.src/uc51.cc, sim/ucsim/s51.src/serial.cc,
31418	  sim/ucsim/app.cc, sim/ucsim/avr.src/Makefile.in:
31419	  enable ucsim mingw compilation. Serial port is disabled,
31420	  since it uses termios.h API, which is not available on native
31421	  WIN32
31422
314232006-07-31 Borut Razem <borut.razem AT siol.net>
31424
31425	* Small Device C Compiler 2.6.0 released
31426	* support/scripts/sdcc.nsi: added FULL_DOC option
31427	* .version, doc/sdccman.lyx: changed sdcc version to 2.6.1
31428
314292006-07-28 Borut Razem <borut.razem AT siol.net>
31430
31431	* support/scripts/sdcc.nsi: remove $INSTDIR/include/asm/pic16/*.h
31432	* doc/INSTALL.txt: updated
31433
314342006-07-27 Borut Razem <borut.razem AT siol.net>
31435
31436	* device/lib/pic/Makefile.in, device/lib/pic/Makefile.subdir,
31437	  device/lib/pic/libdev/Makefile.in: fixed bug
31438	  [ 1438354 ] pic libsdcc: distclean doesn't work
31439	* device/lib/pic16/Makefile.in, device/lib/pic16/Makefile.subdir,
31440	  device/lib/pic16/libio/Makefile.in: fixed bug
31441	  [ 1438344 ] pic16 lib: clean doesn't work properly
31442	* doc/knownbugs.html removed [ 1438354 ] and [ 1438344 ] from the list
31443
314442006-07-26 Maarten Brock <sourceforge.brock AT dse.nl>
31445
31446	* device/lib/pic/libsdcc/fsdiv.c,
31447	* device/lib/pic/libsdcc/fsmul.c,
31448	* device/lib/pic16/libsdcc/float/fsdiv.c,
31449	* device/lib/pic16/libsdcc/float/fsmul.c,
31450	* device/lib/_fsdiv.c,
31451	* device/lib/_fsmul.c: bugfix, handle too large and too small numbers
31452	* support/regression/tests/bug1520966.c: added
31453	* doc/knownbugs.html: removed [ 1520966 ] from the list
31454
314552006-07-25 Borut Razem <borut.razem AT siol.net>
31456
31457	* configure.in, configure, sdccconf_in.h: fixed bug
31458	  [ 1519095 ] regression test onebyte.c fails on ppc64 host
31459	* doc/knownbugs.html: removed [ 1519095 ] from the list
31460
314612006-07-25 Maarten Brock <sourceforge.brock AT dse.nl>
31462
31463	* doc/knownbugs.html: added, contains list of known bugs at release
31464	* device/include/mcs51/compiler.h: fixed SFR32 for SDCC
31465
314662006-07-23 Maarten Brock <sourceforge.brock AT dse.nl>
31467
31468	* device/include/mcs51/compiler.h: added SFRX for xdata based special
31469	  function registers and corrected defaults with additional warning
31470	* device/lib/malloc.c: cosmetic changes
31471	* device/lib/realloc.c: bugfix for bug #1496907, Thanks Efim Monyak
31472	* src/ds390/ralloc.c (getRegBitNoSpil): reenabled,
31473	  (fillGaps): and used it
31474
314752006-07-20 Raphael Neider <rneider AT web.de>
31476
31477	* src/pic/device.c (addMemRange,assignRegister): suppress verbose
31478	  output unless SDCCPICDEBUG is set
31479	* device/lib/pic16/Makefile.rules (%.lib target): suppress verbose
31480	  output if SILENT is set
31481
314822006-07-11 Borut Razem <borut.razem AT siol.net>
31483
31484	* doc/README.txt: updated
31485
314862006-07-10 Borut Razem <borut.razem AT siol.net>
31487
31488	* support/scripts/sdcc.nsi: added device/include/asm/pic/features.h and
31489	  device/lib/src/pic/libm/*.c and device/lib/src/pic16/libsdcc/stack/*.S
31490	  in WIN32 installation
31491	* .version, sdcc.spec, doc/sdccman.lyx: changed sdcc version to 2.6.0 -
31492	  release candidate 1
31493
314942006-07-08 Maarten Brock <sourceforge.brock AT dse.nl>
31495
31496	* device/include/mcs51/XC866.h: added sbit definitions for Px_x, P1_x, P2_x
31497	* src/pic16/glue.c (initPointer): fixed bug 1496419 for pic16
31498
314992006-07-06 Maarten Brock <sourceforge.brock AT dse.nl>
31500
31501	* src/hc08/gen.c (genAddrOf): fixed bug when offset on stack is >127
31502
315032006-07-06 Borut Razem <borut.razem AT siol.net>
31504
31505	* support/regression/tests/bitfields.c:
31506	  fixed bug [ 1518322 ] regression test bitfields fails on ppc hosts
31507	* support/regression/tests/constantRange.c:
31508	  fixed bug [ 1518317 ] regression test constantRange fails on alpha host
31509
315102006-07-04 Borut Razem <borut.razem AT siol.net>
31511
31512	* src/configure.in, src/configure, src/Makefile.in, as/z80/Makefile.in,
31513	  src/port.mk,
31514	  src/avr/Makefile.in, src/ds390/Makefile.in, src/ds400/Makefile.in,
31515	  src/hc08/Makefile.in, src/mcs51/Makefile.in, src/pic16/Makefile.in,
31516	  src/pic/Makefile.in, src/xa51/Makefile.in, src/z80/Makefile.in:
31517	  reverted changes from 2006-07-03
31518	* Makefile.common.in: added @CPPFLAGS@ to CPPFLAGS
31519	* support/regression/Makefile.in, support/regression/ports/host/spec.mk:
31520	  added CPPFLAGS, used by the host port
31521
315222006-07-03 Bernhard Held <bernhard AT bernhardheld.de>
31523
31524	* support/regression/valdiag/tests/switch.c,
31525	* support/regression/valdiag/tests/constantRange.c: adapted to gcc 4
31526	* support/regression/tests/libmullong.c: fixed for host
31527	* support/regression/ports/host/spec.mk: disable all warnings for host,
31528	SDCC runs with --less-pedantic too
31529
315302006-07-03 Borut Razem <borut.razem AT siol.net>
31531
31532	* src/configure.in, src/configure, src/Makefile.in, as/z80/Makefile.in:
31533	  defined CPPFLAGS
31534	* src/port.mk: defined CPPFLAGS, renamed to src/port.mk.in
31535	* src/avr/Makefile.in, src/ds390/Makefile.in, src/ds400/Makefile.in,
31536	  src/hc08/Makefile.in, src/mcs51/Makefile.in, src/pic16/Makefile.in,
31537	  src/pic/Makefile.in, src/xa51/Makefile.in, src/z80/Makefile.in:
31538	  include ../port.mk
31539	* sim/ucsim/main_in.mk, sim/ucsim/avr.src/Makefile.in,
31540	  sim/ucsim/gui.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in,
31541	  sim/ucsim/s52.src/Makefile.in, sim/ucsim/sim.src/Makefile.in,
31542	  sim/ucsim/xa.src/Makefile.in: ignore header files for dependencies
31543
315442006-07-02 Raphael Neider <rneider AT web.de>
31545
31546	* src/pic16/devices.inc,
31547	* device/include/pic16/pic18fregs.h,
31548	* device/include/pic16/pic18f4550.h,
31549	* device/lib/pic16/pics.all,
31550	* device/lib/pic16/libdev/pic18f4550.c: added support for 18f4550
31551
315522006-07-01 Bernhard Held <bernhard AT bernhardheld.de>
31553
31554	* as/hc08/lkaomf51.c (OutputName),
31555	* as/mcs51/lkaomf51.c (OutputName),
31556	* as/z80/asmain.c (asmbl),
31557	* src/ds390/main.c (asmLineNodeFromLineNode),
31558	* src/hc08/ralloc.c (hc08_assignRegisters),
31559	* src/mcs51/main.c (asmLineNodeFromLineNode),
31560	* src/xa51/ralloc.c (checkRegMask),
31561	* src/xa51/gen.c (emitcode),
31562	* src/z80/gen.c (_emit2),
31563	* src/SDCCast.c (searchLitOp),
31564	* src/SDCCglobl.h,
31565	* support/packihx/packihx.c,
31566	* support/Util/MySystem.c (split_command): fix gcc 4 warnings
31567	* src/ds390/gen.c (aopPutUsesAcc),
31568	* src/ds390/ralloc.c (getRegBitNoSpil): unused, therefore disabled
31569	* support/regression/tests/libmullong.c (mullong_wrapper),
31570	* src/SDCCsymt.c (powof2),
31571	* src/SDCCast.c,
31572	* src/SDCCicode.c: renamed TYPE_WORD by TYPE_TARGET_INT and so on
31573	* src/SDCCsymt.h: added TYPE_TARGET_*
31574	* src/SDCCutil.c (doubleFromFixed16x16, fixed16x16FromDouble),
31575	* src/SDCCutil.h (doubleFromFixed16x16, fixed16x16FromDouble): moved to
31576	SDCCast because 1) header problems 2) this is the right place
31577	* src/SDCCast.c (doubleFromFixed16x16, fixed16x16FromDouble): added
31578	* src/SDCCval.h (doubleFromFixed16x16, fixed16x16FromDouble): added
31579	prototype
31580
315812006-06-29 Bernhard Held <bernhard AT bernhardheld.de>
31582
31583	* src/SDCCicode.h: removed buggy semicolon in unused macro
31584	* src/SDCClrange.c (findPrevUseSym, rlivePoint): fixed bug #1486853,
31585	search for previous definiton of auto symbols too,
31586	(findPrevUse): fixed logic of emitWarnings
31587
315882006-06-26 Raphael Neider <rneider AT web.de>
31589
31590	* src/pic16/gen.c (genFunction, genEndFunction): also preserve
31591	  PCLATH and PCLATU on interrupts, potentially fixes #1505141
31592
315932006-06-25 Raphael Neider <rneider AT web.de>
31594
31595	* device/lib/pic/libm: NEW, added math library functions
31596	* device/lib/pic/libsdcc: NEW; added float support functions
31597	* device/lib/pic/{Makefile.in,configure.in,configure}: added libm/
31598	* device/include/pic/{limits.h,errno.h,sdcc-lib.h,float.h,math.h}:
31599	  NEW, added math related headers
31600	* device/include/asm/pic/features.h: NEW
31601	* src/pic/gen.c (emitpcode_real): emit warning on NULL pCodeOp,
31602	  (popGet): allow larger offsets for AOP_PCODE,
31603	  (genDataPointerSet): handle literals explicitly, more debug output,
31604	  (genAssign): fixed for float using aopLiteral ;-)
31605	* src/pic/glue.c (pic14createInterruptVect): inserted pagesel before
31606	  GOTO initialisation routine
31607	* src/pic/pcoderegs.c (pCodeRegMapLiveRangesInFlow): set wasUsed
31608	  flag on registers, fixes #1469043 (local variables do not work)
31609	* src/pic/main.c (_pic14_do_link),
31610	* src/pic16/main.c (_pic16_linkEdit): use fullDstFileName if
31611	  available
31612
316132006-06-25 Borut Razem <borut.razem AT siol.net>
31614
31615	* device/lib/pic16/libc/stdio/sprintf.c: return the number of
31616	  characters printed (not including the trailing '\0' used to end
31617	  output to strings). Problem detected in regression test bug-927659.c.
31618	  NOTE: printf() family functions should return int instead
31619	  unsigned int!
31620	* device/lib/pic16/libc/stdio/vfprintf.c: "%%" prints "%", unknown
31621	  specifier are printed as themselves
31622	* sdcc/support/regression/tests/bug1057979.c: pic16 printf doesn't
31623	  support flags, width and precision specifiers
31624
316252006-06-24 Borut Razem <borut.razem AT siol.net>
31626
31627	* sdcc/support/regression/tests/bitvars.c: added gbz80, pic16 and pic16
31628	  to the list of sdcc tagrets not supporting bit type
31629	* sdcc/support/regression/tests/bug-905992.c.c: excluded regression
31630	  testfor pic16 due to bug:
31631	  [ 1511794 ] pic16: regression test bug-895992.c fails
31632
316332006-06-24 Maarten Brock <sourceforge.brock AT dse.nl>
31634
31635	* src/mcs51/gen.c (genCmp): optimization for RFE 1162453
31636	* src/SDCCglue.c (initPointer), fixed bug 1496419
31637	* support/regression/tests/bug1496419.c: new, added
31638
316392006-06-22 Borut Razem <borut.razem AT siol.net>
31640
31641	* support/regression/ports/pic16/support.c: use gpsim usart module from
31642	  libgpsim_modules library
31643
316442006-06-21 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
31645
31646	* device/include/mcs51/at89c51ed2.h: Fixed bug 1510144 changed
31647	IP0H to IPH0.
31648
316492006-06-19 Raphael Neider <rneider AT web.de>
31650
31651	* src/pic/glue.h,src/pic16/glue.h: added prototypes
31652	* src/pic/glue.c,src/pic16/glue.c (pic1x_stringInSet,
31653	  pic1x_emitSymbolIfNew): NEW, check for a string in a set,
31654	  (pic14printExterns,pic14printPublics,pic16printPublics,
31655	  pic16_printExterns): use new functions to emit symbols
31656	  (picglue,pic16glue): emit publics before emitting externs
31657	* src/pic/gen.c,src/pic16/gen.c (genFunction): remember the names of
31658	  locally defined functions to avoid bug #1443651
31659	* support/regression/tests/bug-716242.c: removed pic16 workaround
31660	* support/regression/ports/pic16/spec.mk: ignore errors during build
31661
316622006-06-19 Raphael Neider <rneider AT web.de>
31663
31664	* src/pic/glue.h: added pic14aopLiteral prototype
31665	* src/pic/glue.c (pic14aopLiteral): return unsigned int
31666	* src/pic/gen.c: removed stdint.h dependency
31667	  (aopGet): use Safe_strdup()
31668	  (bitpatternFromVal): removed, replaced use with pic14aopLiteral
31669	  (genDataPointerSet): use pic14aopLiteral()
31670	* src/pic16/glue.h, src/pic16/glue.c, src/pic16/gen.c: similar changes
31671	  for pic16; thanks to Bernhard and Maarten
31672
316732006-06-18 Borut Razem <borut.razem AT siol.net>
31674
31675	* support/regression/tests/structflexarray.c: flexible array members
31676	  not supported by gcc < 3
31677	* sim/ucsim/configure, sim/ucsim/configure.in: do not compile serio
31678	  GUI tool by default
31679	* src/pic/gen.c: don't include [p]strdin.h on solaris
31680	* support/Util/pstdint.h: added svn attributes
31681	* support/regression/tests/constantRange.c,
31682	  support/regression/tests/rotate.c: include inttypes.h instead
31683	  stdint.h on solaris, added svn attributes
31684
316852006-06-18 Raphael Neider <rneider AT web.de>
31686
31687	* src/SDCCsymt.c (initCSupport): change return type of divschar to
31688	  int for PIC16
31689	* src/pic16/genarith.c (genAddLit): sign-extend via standard routine
31690	  (pic16_genMinusBits): simplified sign-extension
31691	  (pic16_genUMult8XLit_8,pic16_genUMult8X8_8): renamed to
31692	    pic16_genMult8XLit_n resp. pic16_genMult8X8_n, fixed and
31693	    adjusted to correctly handle mixed-signed operands, disabled
31694	    now unused multiplciation routines
31695	* src/pic16/gen.c (pic16_pushpCodeOp): fixed to handle literals
31696	  (assignResultValue): added argument denoting the size of the result
31697	    as returned by the function (fixes upcasts in assigning from
31698	    function calls: char foo(); int i = foo();)
31699	  (genCall,genPcall,genGenPointerGet,genReceive): pass size of
31700	    function result to assignResultValue
31701	  (genMult): disabled inlined multiplication code
31702	  (genDiv): augmented to also handle the modulus operator, fixed to
31703	    handle mixed-signed operands correctly
31704	  (genMod): simply call genDiv, disabled unused code
31705	  (genAssign): fixed missing (sign-)extension on result
31706	* src/pic16/main.c (_hasNativeMulFor): accept literals [-128..256) as
31707	    valid char operands, allow signed operands for native code, added
31708	    division and modulo operator handling
31709	* device/lib/pic16/libsdcc/char/divschar.c: divschar returns an int
31710
31711	As a consequence, onebyte.c (if split into two files) and muldiv.c
31712	pass regression tests.
31713
317142006-06-17 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
31715
31716	* doc/Makefile.in: two runs of makeindex seem needed to get
31717	correct page references in the index of sdccman.pdf
31718	* doc/sdccman.lyx: mentioned cmon51, added links, small changes
31719
317202006-06-17 Borut Razem <borut.razem AT siol.net>
31721
31722	* sdcc/device/lib/Makefile.in: corrected PORTINCDIR path
31723
317242006-06-17 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
31725
31726	* doc/sdccman.lyx: updated, added (porting source code, debugging),
31727	mentioned ec2drv and paulmon
31728
317292006-06-16 Maarten Brock <sourceforge.brock AT dse.nl>
31730
31731	* as/mcs51/lkarea.c (lnkarea2): clear new xdatamap, bugfix for two
31732	  consecutive abs areas
31733	  (find_empty_space, allocate_space): added map to handle codemap or
31734	   xdatamap,
31735	  (lnksect2): renamed rloc to locIndex, fixed bug 960060 by handling
31736	   absolute idata and xdata
31737	* as/mcs51/lkmem.c (summary2): updated legend
31738
317392006-06-16 Raphael Neider <rneider AT web.de>
31740
31741	* src/pic16/gen.c (shiftR2Left2Result): fixed bug #1507127
31742
317432006-06-13 Maarten Brock <sourceforge.brock AT dse.nl>
31744
31745	* debugger/mcs51/cmd.c (cmdListFunctions): fixed bugs 1181163 and
31746	  1208515
31747	* src/SDCClrange.c (findPrevUse): fixed bug 1294475
31748
317492006-06-13 Vangelis Rokas <vrokas AT users.sourceforge.net>
31750
31751	* src/port.h (struct PORT): added field gp_tags, to hold the tag
31752	value of generic pointers,
31753	* src/avr/main.c,
31754	  src/ds390/main.c,
31755	  src/hc08/main.c,
31756	  src/izt/i186.c,
31757	  src/izt/tlcs900h.c,
31758	  src/mcs51/main.c,
31759	  src/pic/main.c,
31760	  src/pic16/main.c,
31761	  src/xa51/main.c,
31762	  src/z80/main.c: PORT structure, added elements for gp_tags field,
31763	* src/SDCCsymt.h: replaced hardwired values of GPTYPE_* macros with
31764	fields in the PORT structure of each port,
31765	* src/SDCCast.c (decorateType): allow processing of generic pointers
31766	for PIC16 port (FPTRSIZE equals GPTRSIZE), also set GPTYPE_NEAR for
31767	S_FIXED symbols
31768
317692006-06-12 Maarten Brock <sourceforge.brock AT dse.nl>
31770
31771	* link/z80/lkgb.c,
31772	* link/z80/lkgg.c,
31773	* src/pic16/gen.c,
31774	* src/pic16/main.c,
31775	* src/pic16/pcode.c,
31776	* src/pic/main.c,
31777	* src/pic/pcoderegs.c,
31778	* src/SDCCicode.c,
31779	* src/SDCCmain.c,
31780	* src/SDCCsymt.c: replaced all exit(-1) by exit(EXIT_FAILURE) to fix
31781	  bug 1504689 on minGW
31782
317832006-06-12 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
31784
31785	* device/lib/printf_tiny.c: fixed bug #1465675 (%x format specifier)
31786
317872006-06-12 Bernhard Held <bernhard AT bernhardheld.de>
31788
31789	* src/SDCCast.c (backPatchLabels): fixed bug #1504636
31790
317912006-06-11 Maarten Brock <sourceforge.brock AT dse.nl>
31792
31793	* device/lib/printf_large.c (OUTPUT_CHAR, _output_char): added and used
31794	  for optimization
31795
317962006-06-11 Vangelis Rokas <vrokas AT users.sourceforge.net>
31797
31798	* src/pic16/gen.c (genCast): fixed bug with assignment of a pointer
31799	to a char variable. Fixed bug #1504211
31800	* device/include/pic16/adc.h,
31801	device/include/lib/pic16/libio/adc/adcopen.c: applied patch #1364387
31802	and fixed bug #1364390
31803
318042006-06-10 Borut Razem <borut.razem AT siol.net>
31805
31806	* CVSROOT: removed the CVS left-over
31807
318082006-06-10 Maarten Brock <sourceforge.brock AT dse.nl>
31809
31810	* as/hc08/asmain.c (asexit),
31811	* as/hc08/lkmain.c (lkexit),
31812	* as/mcs51/asmain.c (asexit),
31813	* as/mcs51/lkmain.c (lkexit),
31814	* src/SDCCglue.c (DEFSETFUNC),
31815	* src/SDCCmain.c (linkEdit, assemble),
31816	* support/librarian/sdcclib.c (AddRel),
31817	  replaced unlink() by standard C remove()
31818	* src/SDCC.y: replaced removePostIncDecOps() by createRMW()
31819	* src/SDCCast.c (replaceAstWithTemporary, createRMW,
31820	  gatherImplicitVariables): new, added to fix bug 608752,
31821	  (createFunction): added gatherImplicitVariables()
31822	* src/SDCCast.h: added createRMW prototype
31823	* src/SDCCsymt.h (struct symbol): added infertype
31824	* support/regression/tests/bug608752.c: new, added
31825
318262006-06-10 Raphael Neider <rneider AT web.de>
31827
31828	* src/pic16/gen.c (pic16_aopOp): use WREG as destination even for
31829	  multibyte dummy reads (fixes #1503234)
31830
318312006-06-10 Maarten Brock <sourceforge.brock AT dse.nl>
31832
31833	* device/include/mcs51/compiler.h: new, added header file to enable
31834	  creating common sfr definition header files for different compilers
31835
318362006-06-05 Raphael Neider <rneider AT web.de>
31837
31838	* src/pic16/{pcode.h,genarith.c}:
31839	  introduced pCodeOp combining any two pCodeOps (previously only
31840	  two register operands could be combined), removed pcop2 from
31841	  pCodepReg, replaced pCodeOpReg2 with pCodeOp2, fixes #1492366
31842	* src/pic16/pcodepeep.c (pic16_pCodeOpCopy): added case for PO_TWO_OPS
31843	* src/pic16/gen.c (pic16_popGet2,pic16_popGet2p,pic16_popCombine2):
31844	  rewritten to use new PO_TWO_OPS
31845	* src/pic16/main.c (_hasNativeMulFor): cover more cases natively,
31846	* src/pic16/pcode.c (pic16_newpCodeOpImmd): initialize rIdx field,
31847	  (pic16_newpCodeOp): catch invalid attempts on PO_TWO_OPS,
31848	  (pic16_newpCodeOp2): NEW, create combined pCodeOp,
31849	  (pic16_get_op): embraced return arg to allow #define return(x),
31850	    added new case for combined opcodes
31851	  (pic16_get_op2): reduced to use pic16_get_op() on second pCodeOp,
31852	  (pic16_pCode2str,pic16_getRegFrompCodeOp,
31853	   pic16_getRegFromInstruction2): fixed/added handling of new pCodeOp
31854
318552006-06-04 Bernhard Held <bernhard AT bernhardheld.de>
31856
31857	* src/SDCCval.c (checkConstantRange): added
31858	* src/SDCCval.h: added checkConstantRange
31859	* support/Util/SDCCerr.c,
31860	* support/Util/SDCCerr.h: replaced unused W_IF_NEVER_TRUE and
31861	W_IF_ALWAYS_TRUE by W_COMP_RANGE and W_LIT_OVERFLOW
31862	* src/SDCC.y: moved early 'condition transformations' to SDCCast.c
31863	* src/SDCCast.c (decorateType): added checkConstantRange,
31864	added 'condition transformations' from SDCC.y so that now W_COMP_RANGE
31865	can be emitted with the correct always true/false warning,
31866	added optimization for double '!';
31867	result of decorateType() must be assigned back to the tree, because
31868	decorateType() can change the tree
31869	* src/SDCCicode.c (geniCodeLogic),
31870	(geniCodeAssign): replaced new checkConstantRange, added warnings,
31871	(checkConstantRange): removed, it was only a fragment which never
31872	emitted a warning
31873	* src/SDCCsymt.c (computeType): fixed promotion for
31874	"-1 < (unsigned bit) b"
31875	* src/pic/ralloc.c (packRegsForAssign),
31876	* src/pic16/ralloc.c (packRegsForAssign),
31877	* src/hc08/ralloc.c (packRegsForAssign),
31878	* src/z80/ralloc.c (packRegsForAssign): ported fix for bug #930931
31879	from mcs51
31880	* src/mcs51/ralloc.c (packRegsForAssign): removed outcommented source
31881	* support/regression/tests/constantRange.c: added
31882	* support/valdiag/tests/constantRange.c: added
31883	* support/valdiag/valdiag.py: added -DPORT_HOST=1
31884
318852006-06-02 Borut Razem <borut.razem AT siol.net>
31886
31887	* support/regression/ports/pic16/support.c: increase stack size
31888	  to 255 bytes
31889	* support/regression/Makefile.in: sort tests by name so that the
31890	  resutlts can be compared on different machines / platforms
31891
318922006-06-02 Maarten Brock <sourceforge.brock AT dse.nl>
31893
31894	* device/lib/printf_large.c (output_digit): optimized further, Tnx Frieder
31895	* src/ds390/gen.c (emitLabel): new, added,
31896	  (genDjnz): fixed stack overflow bug,
31897	  (throughout): cosmetic changes to sync with mcs51/gen.c,
31898	  replaced emitcode("", "%05d$:", lbl->key + 100) with emitLabel(lbl)
31899	* src/mcs51/gen.c (genEndFunction): small optimization,
31900	  (throughout): cosmetic changes to sync with ds390/gen.c
31901
319022006-06-02 Maarten Brock <sourceforge.brock AT dse.nl>
31903
31904	* device/lib/printf_large.c (output_digit, calculate_digit): optimized,
31905	  (_print_format): fixed printing pointers
31906	* src/mcs51/gen.c (emitLabel, movb): new, added,
31907	  (genAssign): small optimization,
31908	  (genDjnz): fixed stack overflow bug,
31909	  (throughout): replaced sprintf with SNPRINTF,
31910	  replaced mcs51_regWithIdx with REG_WITH_INDEX,
31911	  replaced emitcode("mov", "b,...") with MOVB(...),
31912	  replaced emitcode("", "%05d$:", lbl->key + 100) with emitLabel(lbl),
31913	  replaced D(emitcode("; genXXX", "")) with D(emitcode(";", "genXXX"))
31914	* src/mcs51/peeph.def: added rules 140 and 264
31915	* src/SDCCmem.c (allocLocal): store register declared locals in DSEG/OSEG
31916	  so they may get optimized into registers
31917
319182006-05-30 Maarten Brock <sourceforge.brock AT dse.nl>
31919
31920	* src/SDCCmain.c (optionsTable, parseCmdLine): handle --use-stdout
31921	  immediately when encountered,
31922	  (printUsage): always use stderr even on windows
31923
319242006-05-30 Bernhard Held <bernhard AT bernhardheld.de>
31925
31926	* src/SDCCast.c (isLoopCountable): fixed bug #1478316
31927	(processParms): fixed bug #1247551
31928	* src/SDCCmain.c (printVersionInfo, printOptions, printUsage,
31929	parseCmdLine, main): print '--version' to stdout,
31930	print 'help' to stdout if --help is given,
31931	print 'help' to stderr and exit with EXIT_FAILURE if no or bad
31932	arguments are given; fixed --help
31933
319342006-05-27 Bernhard Held <bernhard AT bernhardheld.de>
31935
31936	* src/SDCCcse.c (findPointerSet): fixed bug #1493710
31937	* support/regression/tests/bug-1493710.c: added
31938
319392006-05-27 Borut Razem <borut.razem AT siol.net>
31940
31941	* support/regression/fwk/lib/testfwk.c: define array in _printn() as
31942	  static instead auto
31943	* support/regression/ports/pic16/support.c: increase stack size
31944	  from default 64 bytes to 128 bytes
31945	* support/regression/tests/staticinit.c,
31946	  support/regression/tests/float.c: regression tests fully enabled
31947	  for pic16 port by putting the initialized data arrays into the code
31948	  section
31949	* support/regression/ports/pic16/spec.mk: don't link default libraries.
31950	  This was changed by mistake in the previous version.
31951
319522006-05-28 Vangelis Rokas <vrokas AT users.sourceforge.net>
31953
31954	* src/pic16/gen.c (genFunction, genEndFunction): some
31955	beautifications, fixed bug with falsely restoring FSR2 in large
31956	stack model, thanks to Beau E. Cox for reporting the bug
31957
319582006-05-26 Maarten Brock <sourceforge.brock AT dse.nl>
31959
31960	* debugger/mcs51/break.c,
31961	* debugger/mcs51/cmd.c (throughout): removed unused variables and labels,
31962	  use %p to print pointers, made address variables unsigned
31963	* debugger/mcs51/cmd.c (infoSymbols): added missing parameter to printf
31964	* debugger/mcs51/symtab.c (parseSymbol): must return something
31965	* src/mcs51/gen.c (aopForSym): small optimization,
31966	   moved declarations mcs51_ptrRegReq and mcs51_nRegs to ralloc.h,
31967	  (freeAsmop): added missing break,
31968	  (aopPut): removed parameter bvolatile, determine it inside the function,
31969	  (saveRegisters, unsaveRegisters): small optimization,
31970	  (genIpush): removed pointless check,
31971	  (throughout): replaced Safe_calloc, strcpy with Safe_strdup,
31972	  replaced sprintf with SNPRINTF,
31973	  replaced strcpy with strncpyz,
31974	  updated aopPut calls,
31975	  replaced D(emitcode("; genXXX", "")) with D(emitcode(";", "genXXX"))
31976	* src/mcs51/ralloc.h:  added declarations mcs51_ptrRegReq and mcs51_nRegs
31977
319782006-05-24 Borut Razem <borut.razem AT siol.net>
31979
31980	* support/regression/tests/bug-221100.c: fixed xdata problem caused by
31981	  modification of test for the pic16 port, put the array to the code
31982	  memory for pic16port; thanks to Maarten Brock and Frieder Ferlemann
31983
319842006-05-23 Jesus Calvino-Fraga <jesusc at ece.ubc.ca>
31985
31986	* src/pic/gen.c: MSC 6 does not have <stdint.h>.  Use pstdint.h instead.
31987	* support/Util/pstdint.h: added
31988
319892006-05-22 Borut Razem <borut.razem AT siol.net>
31990
31991	* src/regression/Makefile: removed bool2.c test, added -q linker option
31992	* src/regression/add2.c, src/regression/add3.c, src/regression/bool1.c,
31993	  src/regression/bool3.c, src/regression/nestfor.c, src/regression/ptrfunc.c,
31994	  src/regression/compare.c, src/regression/or1.c, src/regression/compare2.c,
31995	  src/regression/while.c, src/regression/compare3.c, src/regression/compare4.c,
31996	  src/regression/compare5.c, src/regression/sub2.c, src/regression/rotate1.c,
31997	  src/regression/rotate2.c, src/regression/rotate3.c, src/regression/rotate4.c,
31998	  src/regression/switch1.c, src/regression/rotate5.c, src/regression/for.c,
31999	  src/regression/add.c, src/regression/sub.c, src/regression/call1.c:
32000	  define SUPPORT_BIT_TYPES 0, removed unused bit variables
32001
320022006-05-22 Raphael Neider <rneider AT web.de>
32003
32004	* src/pic16/gen.c (pic16_storeForReturn): fragile fix for
32005	  bug #1492360 (problematic due to generic pointers, see code)
32006
320072006-05-22 Borut Razem <borut.razem AT siol.net>
32008
32009	* support/regression/ports/pic16/specs.mk: removed stack size linker
32010	  directive
32011	* support/regression/tests/array.c,
32012	  support/regression/tests/bitopcse.c,
32013	  support/regression/tests/bug-908454.c,
32014	  support/regression/tests/malloc.c: modified for pic16 regression test
32015	* support/regression/tests/bitfields.c:
32016	  pic16 - excluded bitfileds of size > 8
32017	* support/regression/tests/bp.c: pic16 - reduced data size
32018	* support/regression/tests/bug-221100.c: pic16 - reduced data size
32019	* support/regression/tests/bug-460010.c:
32020	  pic16 - used the absolute address the fits in memory
32021	* support/regression/tests/bug-716242.c:
32022	  bug [ 1443651 ] pic 16: redefining symbol that cannot be redefined.
32023	* support/regression/tests/float.c:
32024	  pic16 - excluded - data size too big
32025	* support/regression/tests/onebyte.c:
32026	  pic16 - bug [ 1444425 ] onebyte.c regression tes fails on pic16
32027	* support/regression/tests/shifts.c:
32028	  pic16 - function names probably have to differ in first X characters
32029	  (gpasm limitation?)
32030	* support/regression/tests/staticinit.c:
32031	  pic16 - excluded some tests due error: no target memory available for
32032	  section ".idata"
32033
320342006-05-22 Borut Razem <borut.razem AT siol.net>
32035
32036	* support/Util/dbuf.c: fixed bug #1489008 fix dbuf_c_str(),
32037	  second try. Thanks Stas Sergeev once more.
32038
320392006-05-21 Maarten Brock <sourceforge.brock AT dse.nl>
32040
32041	* src/hc08/gen.c (transferAopAop): aop forced to stack was not restored,
32042	  (genLeftShift, genRightShift): fixed bug 1491627
32043	* src/hc08/peeph.def (rules 7, 8.x): added
32044	* support/regression/tests/shifts.c (ShiftLeftByParam,
32045	  ShiftRightByParam, testShiftByParam): added to test variable shifting
32046
320472006-05-20 Raphael Neider <rneider AT web.de>
32048
32049	* src/pic/gen.c (bitpatternFromVal): fixed for 64-bit machines
32050	* src/pic16/ralloc.c (newReg): use correct name in hashtable,
32051	  (allocReg): add only new registers to dynAllocRegs,
32052	  (pic16_assignRegisters): do not reset dynrIdx, fixes bugs
32053	    #1489055, #1445850, and probably #1483693
32054
320552006-05-19 Vangelis Rokas <vrokas AT users.sourceforge.net>
32056
32057	* src/pic16/glue.c (pic16_emitConfigRegs, pic16_emitIDRegs): fixed
32058	bug in for-loop that didn't emit the last of CONFIG and ID registers
32059
320602006-05-18 Maarten Brock <sourceforge.brock AT dse.nl>
32061
32062	* src/mcs51/gen.c (genCodePointerGet): inc dptr instead of loading acc
32063	  with offset
32064	* src/mcs51/peeph.def (186.x): updated and reenabled to fix bugs
32065	  1489016, 1434401 and 1490124
32066	* src/ds390/peeph.def (186.x, 227.x): updated and reenabled to fix bugs
32067	  1489016, 1434401 and 1490124
32068
320692006-05-17 Borut Razem <borut.razem AT siol.net>
32070
32071	* support/Util/dbuf.c: fixed bug #1489008 fix dbuf_c_str(),
32072	  thanks Stas Sergeev
32073
320742006-05-15 Maarten Brock <sourceforge.brock AT dse.nl>
32075
32076	* device/include/mcs51/P89c51RD2.h,
32077	* device/include/mcs51/P89LPC901.h,
32078	* device/include/mcs51/P89LPC922.h,
32079	* device/include/mcs51/P89LPC932.h: added, thanks Omar Espinosa
32080
320812006-05-14 Vangelis Rokas <vrokas AT users.sourceforge.net>
32082
32083	* device/lib/pic16/libsdcc/stack/{stack.S, Makefile.in}: add workaround
32084	to fix missing stack pragma in compiled binary object file,
32085
320862006-05-14 Bernhard Held <bernhard AT bernhardheld.de>
32087
32088	* support/packihx/configure.in,
32089	* support/packihx/configure: removed warning, autoconf >= 2.5x can
32090	determine sizeof basic types even while cross compiling
32091
320922006-05-13 Bernhard Held <bernhard AT bernhardheld.de>
32093
32094	* src/avr/gen.c (aopop),
32095	* src/ds390/gen.c (aopOp),
32096	* src/hc08/gen.c (aopOp),
32097	* src/mcs51/gen.c (aopop),
32098	* src/pic16/gen.c (pic16_aopOp),
32099	* src/pic/gen.c (aopOp),
32100	* src/z80/gen.c (aopop): fix for bug #1479882; use new, exclusive asmop
32101	if size of operand is smaller than spill location
32102
321032006-05-12 Borut Razem <borut.razem AT siol.net>
32104
32105	* *.dsw, *.dsp: changed property svn:eol-style to CRLF since they
32106	  have to have CR/LF line endings even if they are checked out on *nix
32107	  or on WIN32 in cygwin binmode
32108
321092006-05-12 Maarten Brock <sourceforge.brock AT dse.nl>
32110
32111	* doc/sdccman.lyx: documented numeric ranges, WEBDOC #1442369
32112	* device/include/ds80c390.h: added sfr16 definitions
32113	* src/ds390/gen.c,
32114	* src/ds390/gen.h,
32115	* src/ds390/main.c,
32116	* src/ds390/ralloc.c,
32117	* src/ds390/ralloc.h: changes all over the place to sync with mcs51
32118	  fixing several bugs and adding sfr16/sfr32, reentrant bit params,
32119	  bit returning functions
32120	* support/regression/tests/sfr16.c: enabled test on ds390
32121
321222006-05-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
32123
32124	* src/hc08/gen.c (asmopToBool, genIfx): fix for bug #1429722
32125	* src/hc08/gen.c (storeRegToAop): fix for bug #1439894
32126
321272006-05-11 Maarten Brock <sourceforge.brock AT dse.nl>
32128
32129	* sim/ucsim/sim.src/memcl.h: added get_decoder() to cl_address_space
32130	* sim/ucsim/sim.src/mem.cc: implemented cl_address_space::get_decoder,
32131	  (cl_address_space constructor): removed expensive initialization,
32132	  (cl_address_space::get_cell): extended for late initialization,
32133	  (cl_address_space::*): use late initialization,
32134	  (cl_address_decoder::activate): removed expensive initialization,
32135	  This reduced regression test running time by 25%
32136
321372006-05-11 Bernhard Held <bernhard AT bernhardheld.de>
32138
32139	* packihx/,
32140	* configure.in,
32141	* configure,
32142	* sdcc.dsw,
32143	* Makefile.bcc,
32144	* Makefile.in,
32145	* support/packihx/Makefile.in,
32146	* support/packihx/clean.mk,
32147	* support/packihx/Makefile.bcc,
32148	* support/packihx/PackIhx.dsp: moved packihx to support/packihx
32149
321502006-05-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
32151
32152	* src/SDCCval.c (valNot): fix for regression test failure
32153	  of not.c on big endian hosts
32154
321552006-05-10 Maarten Brock <sourceforge.brock AT dse.nl>
32156
32157	* device/inlcude/mcs51/msc1210.h: new, added, thanks Philippe Latu
32158
321592006-05-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
32160
32161	* device/lib/mcs51/Makefile.in: changed string comparison operator
32162	  to = for POSIX compliance; == is bash extension
32163
321642006-05-10 Maarten Brock <sourceforge.brock AT dse.nl>
32165
32166	* device/lib/hc08/_mulint.c: applied patch 1485428, thanks
32167	  kosmonaut_pirx
32168
321692006-05-09 Vangelis Rokas <vrokas AT users.sourceforge.net>
32170
32171	* src/pic16/gen.c (pic16_freeAsmop): release any temp registers
32172	allocated by aopForSym thus fixing bug #1478657 about failed testfwk.c
32173	* src/pic16/main.c (_pic16_keywords): added 'sfr16' keyword,
32174	* src/pic16/ralloc.c (pic16_allocWithIdx): also a fix for bug exposed by
32175	bug report #1478657,
32176
321772006-05-05 Borut Razem <borut.razem AT siol.net>
32178
32179	* doc/Makefile.in: remove of WARNINGS and labels.pl immediately after
32180	  making the html
32181
321822006-05-02 Borut Razem <borut.razem AT siol.net>
32183
32184	* doc/Makefile.in: removed *.ind dependency since there is no rule to
32185	  create *.ind, which made make to fail if invoked with -j 2
32186
321872006-05-01 Maarten Brock <sourceforge.brock AT dse.nl>
32188
32189	* src/SDCCglue.c (emitRegularMap): partial fix for bug 1477149, thanks
32190	  Hubert Sack for patch 1479782
32191
321922006-05-01 Vangelis Rokas <vrokas AT users.sourceforge.net>
32193
32194	* src/pic16/glue.c (pic16_printIvalStruct): fixed bug #1445929
32195
321962006-05-01 Raphael Neider <rneider AT web.de>
32197
32198	* src/pic/device.c (sanitise_processor_name): only remove p(ic) prefix,
32199	  (create_pic): store only prefix-free device name,
32200	  (init_pic): check for device names with "16" prefix,
32201	  (list_valid_pics),
32202	* src/pic/device.h (struct PIC_device),
32203	* src/pic/main.c (_pic14_genAssemblerPreamble): adapted to single
32204	    stored device name,
32205	* device/include/pic/pic12f{635,675,629,683}.h,
32206	* device/lib/pic/libdev/pic12f{635,675,629,683}.c: NEW device libraries
32207	* device/lib/pic/libdev/Makefile.in: allow pic12* devices,
32208	* device/include/pic/pic16f505.h,
32209	* device/lib/pic/libdev/pic16f505.c: removed
32210	* device/include/pic/pic14devices.txt: added support for pic12f
32211	    devices, removed unsupported non 16-bit devices
32212	    [above changes provided by patch from Zik Saleeba]
32213	* src/pic/*, src/pic16/*, device/include/pic16/*,
32214	  device/lib/pic/**, device/lib/pic16/**: obfuscated email address
32215
322162006-05-01 Borut Razem <borut.razem AT siol.net>
32217
32218	* configure.in, configure, doc/Makefile.in:
32219	  sync with nightly build makefile - latex, dvipdf and dvips
32220	  not needed any more
32221
322222006-04-30 Bernhard Held <bernhard AT bernhardheld.de>
32223
32224	* support/scripts/sdcc.nsi: removed all Readmes and Makefiles
32225	in the library source
32226
322272006-04-30 Maarten Brock <sourceforge.brock AT dse.nl>
32228
32229	* support/regression/ports/hc08/spec.mk: fixed bug 1478892
32230
322312006-04-28 Raphael Neider <rneider AT web.de>
32232
32233	* src/pic16/pcode.c (pic16_newpCodeOpLit12),
32234	* src/pic16/gen.c (pic16_popGetLit12): NEW, create 12 bit literal,
32235	  (pic16_loadFSR0): handle 12 bit literals correctly, fixes #1440527
32236	* src/pic16/pcode.h: added prototype for pic16_newpCodeOpLit12()
32237
322382006-04-28 Bernhard Held <bernhard AT bernhardheld.de>
32239
32240	* device/lib/pic/libdev/Makefile.in,
32241	* device/lib/hc08/Makefile.in,
32242	* device/lib/gbz80/Makefile.in,
32243	* device/lib/z80/Makefile.in,
32244	* device/lib/ds390/Makefile.in,
32245	* device/lib/ds400/Makefile.in: added srcdir to include search path,
32246	thanks to Borut for the bug report
32247	* configure.in,
32248	* configure: always create doc/Makefile independent from --enable-doc
32249	* Makefile.in: always install from directory doc independent from
32250	--enable-doc
32251	* device/lib/pic/Makefile.in: added libdev again, it was erroneously
32252	removed
32253	* device/lib/pic/libdev/Makefile.in: fixed VPATH build
32254	* doc/Makefile.in: install *.txt if present
32255	* device/include/Makefile.in (install): added installation of pic/*.inc
32256	and pic/*.txt files again, they were erroneously removed
32257
322582006-04-28 Raphael Neider <rneider AT web.de>
32259
32260	* src/pic/{gen.c,main.h,pcode.c},
32261	* src/pic16/{gen.c,pcode.c}: quietened compiler warnings
32262	    concerning signedness with casts
32263
322642006-04-28 Raphael Neider <rneider AT web.de>
32265
32266	* src/pic/gen.c (genFunction): set global pic14_hasInterrupt on
32267	    definition of an interrupt handler,
32268	* src/pic/glue.c (pic14_emitInterruptHandler): moved output of
32269	    interrupt handler stuff from picglue() to separate routine,
32270	  (picglue): enabled definition of intr handlers in files w/o main()
32271
322722006-04-26 Maarten Brock <sourceforge.brock AT dse.nl>
32273
32274	* support/librarian/sdcclib.c: moved include <limits.h> up to enable
32275	  compilation with MSVC 2005 Express Edition (VC8)
32276
322772006-04-26 Bernhard Held <bernhard AT bernhardheld.de>
32278
32279	* device/lib/Makefile: fixed build of gbz80 lib
32280
322812006-04-26 Maarten Brock <sourceforge.brock AT dse.nl>
32282
32283	* support/regression/tests/bug-460010.c,
32284	* support/regression/tests/bug-524691.c,
32285	* support/regression/tests/bug-716242.c: removed conditional defines
32286	  that are already in testfwk.h
32287
322882006-04-25 Maarten Brock <sourceforge.brock AT dse.nl>
32289
32290	* src/ds390/gen.c (AccAXRrl1, AccAXLrl1): changed to real rotate by 1,
32291	  (AccAXRsh1): added, shift right by 1,
32292	  (AccAXLsh, AccAXRsh, AccAXRshS): updated for AccAXRrl1, AccAXRsh1 and
32293	   AccAXLrl1
32294	* support/regression/tests/rotate.c: use <stdint.h> and enabled ds390
32295
322962006-04-25 Bernhard Held <bernhard AT bernhardheld.de>
32297
32298	* src/SDCCast.c (decorateType): partial fix for RFE 1475769,
32299	remove cast to same type
32300	* src/SDCCast.c (decorateType): fix for RFE 1475742,
32301	optimize 'ifx (op == 0)' resp. 'ifx (op != 0)'
32302	* as/z80/Makefile,
32303	* link/z80/Makefile: removed, they have moved to
32304	Makefile.in files
32305	* configure,
32306	* configure.in: replaced duplicate message about ucsim by missing sdcpp
32307	* install-sh: fix bug #1204398 by setting umask 0022
32308	* device/lib/Makefile: separate build of z80 and gbz80 lib
32309
323102006-04-24 Bernhard Held <bernhard AT bernhardheld.de>
32311
32312	Enabled VPATH feature: changed nearly all Makefiles (149 files).
32313	See sdccman.lyx '2.4.10 VPATH feature' about how to use it.
32314
32315	One basic decision: e.g. src/clean.mk includes further files. In order
32316	to make this work there are two solutions:
32317	- rename another dozen clean.mk to clean_in.mk, add srcdir to them and
32318	  run configure on them. This way they can use
32319	  'include $(srcdir)/port-clean.mk'
32320	- always include clean.mk by the Makefile at the same level. To avoid
32321	  that `make clean` tries to include and build Makefile.dep the
32322	  MAKECMDGOALS are examined (see e.g. src/Makefile.in). This has been
32323	  implemented, because now even `make uninstall` doesn't create
32324	  Makefile.in. clean.mk could be eliminated by pasting it in
32325	  Makefile.in.
32326
32327	* debugger/mcs51/Makefile.in: build own objects from library sources
32328	(SLIB, SDCC) in current directory
32329
32330	* configure, configure.in: renamed --disable-device-lib-build in
32331	--disable-device-lib; added --enable-doc, the required tools are
32332	searched by configure; added result message; the toolchain for the
32333	belonging ports are now only built, if the port is enabled.
32334
32335	* support/regression/*: all output is written in directory gen, because
32336	the fwk and ports directories don't livet in the build tree using vpath
32337
32338	* doc/sdccman.lyx: renamed --disable-device-lib-build to
32339	--disable-device-lib, added --enable-doc, added section VPATH
32340
32341	* sim/ucsim/configure.in,
32342	* sim/ucsim/configure.in: hc08 couldn't be disabled, now hc08 and
32343	z80 are enabled by default
32344
323452006-04-24 Raphael Neider <rneider AT web.de>
32346
32347	* src/pic/device.c (pic14_assignConfigWordValue): remember assignments
32348	    to config word, "pic14_"-prefixed some extern functions
32349	  (pic14_emitConfigWord): emit __config directive(s) if assignment to
32350	    config word has been found
32351	* src/pic/device.h: added prototypes
32352	* src/pic/pcode.c: added "pic14_"-prefix where needed
32353	* src/pic/ralloc.c (IS_CONFIG_ADDRESS,pic14_assignRegisters): cosmetic
32354	    fixup
32355	* src/pic/glue.c (pic14_constructAbsMap): handle assignments to config
32356	    words,
32357	  (pic14emitRegularMap): ignore config words,
32358	  (pic14createInterruptVect): moved generating __config directives away
32359	  (picglue): have __config directives emitted
32360
323612006-04-24 Borut Razem <borut.razem AT siol.net>
32362
32363	* doc/Makefile: sync with nightly build makefile
32364
323652006-04-24 Raphael Neider <rneider AT web.de>
32366
32367	* src/pic/pcoderegs.c (OptimizeRegUsage): do not optimize
32368	    registers that have not been assigned proper liveranges,
32369	    fixes #1469504 and #1474602,
32370	  (pCodeRegOptimizeRegUsage): fixed typo in comment
32371
323722006-04-24 Borut Razem <borut.razem AT siol.net>
32373
32374	* device/examples/main8051.c: deleted - it was removed from CVS
32375	  24.mar.2000 and after that modified 18.feb.2001, so it reappered
32376	  after the transition to Subversion
32377	* src/SDCCalloc.h: deleted - it was removed  from CVS
32378	  3.feb.2001 and after that modified 18.feb.2001, so it reappered
32379	  after the transition to Subversion
32380	* sim/ucsim/cpu.gif, sim/ucsim/interrupt.gif, sim/ucsim/new.gif,
32381	  sim/ucsim/serial1.gif, sim/ucsim/serial2.gif,
32382	  sim/ucsim/term_cpuopt.gif, sim/ucsim/timers.gif, sim/ucsim/wins.gif,
32383	  sim/ucsim/post.jpg, sim/ucsim/UCsim.jpg: corrected
32384
323852006-04-22 Maarten Brock <sourceforge.brock AT dse.nl>
32386
32387	* as/asx8051.dsp: added mcs51/strcmpi.h
32388	* as/hc08/as_hc08.dsp: added asm.h, m6808.h, strcmpi.h
32389	* as/hc08/aslink.h: updated lnksect prototype
32390	* as/hc08/asm.h,
32391	* as/mcs51/asm.h: added a_addr to struct area and s_org to struct sym
32392	* as/hc08/asmain.c,
32393	* as/mcs51/asmain.c (asmbl): init dot.s_org for S_ORG,
32394	  (newdot): handle A_ABS
32395	* as/hc08/asout.c,
32396	* as/mcs51/asout.c (outarea): output address
32397	* as/hc08/lkaomf51.c,
32398	* as/mcs51/lkaomf51.c: disabled unused array UsageType
32399	* as/hc08/m08pst.c,
32400	* as/mcs51/i51pst.c,
32401	* as/z80/z80pst.c: "ABS" is not A_OVR
32402	* as/hc08/lkarea.c (newarea): read a_addr,
32403	  (lnkarea): added codemap array, sort absolute areas to the front,
32404	   combine all GSINITx/GSFINAL,
32405	  (find_empty_space, allocate_space): new functions,
32406	  (lnksect): return next address, handle absolute sections
32407	* as/mcs51/lkarea.c (newarea): read a_addr,
32408	  lnksect2 prototype changed,
32409	  (lnkarea2): define codemap unsigned, combine all GSINITx/GSFINAL,
32410	  (find_empty_space, allocate_space): new, factored out of lnksect2,
32411	  (lnksect2): return next address, handle absolute sections
32412	* as/hc08/lkhead.c,
32413	* as/mcs51/lkhead.c (newhead): head is absolute but not overlay
32414	* as/hc08/lklibr.c (addfile, fndsym),
32415	* as/mcs51/lklibr.c (addfile, buildlibraryindex, fndsym): prevent
32416	  index out of range and detect both '\' and '/'
32417	* device/include/mcs51/c8051f200.h: added _XPAGE, removed bad comment
32418	* device/include/stdbool.h: removed SDCC_ds390 from check to pass
32419	  regression tests (ds390 cannot return bool yet)
32420	* doc/sdccman.lyx: changed version number, document changed --no-peep,
32421	  document critical interrupts on z80, document changed SDCC define
32422	* src/asm.c (_asxxxx_mapping): fixed .org directive,
32423	  (_a390_mapping): added .org directive
32424	* src/hc08/gen.c (transferAopAop): made bytemask log to fix warning,
32425	  (genMultOneByte): fixed warnings
32426	* src/hc08/hc08.dsp: lowered warning level to 2 to suppress pedantic
32427	  ones
32428	* src/pic16/device.c: removed newReg prototype, removed BYTE_IN_LONG
32429	* src/pic16/gen.c (pic16_popGetLabel): made parameter key signed,
32430	  (pic16_genLeftShiftLiteral, genRightShiftLiteral): fixed warnings
32431	* src/pic16/gen.h: changed prototype for pic16_popGetLabel
32432	* src/pic16/main.c: removed newReg prototype
32433	* src/pic16/pcode.c,
32434	* src/pic16/pcode.h (pic16_emitDB): changed parameter c to int to fix
32435	  warnings
32436	* src/pic16/pic16.dsp: lowered warning level to 2 to suppress pedantic
32437	  ones
32438	* src/pic16/ralloc.c
32439	* src/pic16/ralloc.h (newReg): changed type to int and size to unsigned
32440	  to fix warnings
32441	* src/pic/pcode.c (allocInternalRegister): changed parameter optype
32442	  from short to PIC_OPTYPE
32443	* src/pic/pic.dsp: lowered warning level to 2 to suppress pedantic ones
32444	* src/pic/ralloc.c (newReg, allocInternalRegister): changed parameter
32445	  optype from short to PIC_OPTYPE
32446	* src/port.h: made int_size unsigned to fix warnings
32447	* src/SDCC.y: fixed warning on MSVC
32448	* src/SDCCicode.c (getArraySizePtr): return unsigned int
32449	* src/SDCCopt.c (convertToFcall): fixed warnings
32450	* src/SDCCsymt.h: removed double prototype for genSymName
32451	* src/xa51/ralloc.c (allocReg): made size unsigned int, type int and
32452	  offset int to fix warnings
32453
324542006-04-22 Borut Razem <borut.razem AT siol.net>
32455
32456	* doc/sdccman.lyx, */Makefile, */Makefile.in:
32457	  references to CVS replaced with Subversion
32458
324592006-04-21 Borut Razem <borut.razem AT siol.net>
32460
32461	* doc/sdccman.lyx, */Makefile, */Makefile.in:
32462	  references to CVS replaced with Subversion
32463
324642006-04-19 Borut Razem <borut.razem AT siol.net>
32465
32466	* src/version.awk: adapted for svn
32467	* /asxxxx/asxhtml/*.gif: set property svn:mime-type to image/gif
32468	  sim/ucsim/doc/*.gif: set property svn:mime-type to image/gif
32469	  sim/ucsim/doc/*.jpg: set property svn:mime-type to image/jpeg
32470	  /binutils-avr/etc/*.vi, *.jin: removed all properties
32471	  support/scripts/sdcc.ico: set property svn:mime-type to image/x-icon
32472
324732006-04-19 Borut Razem <borut.razem AT siol.net>
32474
32475	* CVS to Subversion migration completed
32476
324772006-04-18 Borut Razem <borut.razem AT siol.net>
32478
32479	* support/scripts/sdcc.nsi: removed unexisting ${DEV_ROOT}/lib/pic/*.o,
32480	  ${DEV_ROOT}/lib/src/pic/libdev/*.S, ${DEV_ROOT}/lib/src/pic/libdev/*.inc
32481
324822006-04-17 Borut Razem <borut.razem AT siol.net>
32483
32484	* device/include/Makefile.in: added pic/*.inc to the installation
32485
324862006-04-15 Bernhard Held <bernhard AT bernhardheld.de>
32487
32488	* support/regression/collate-results.py: fixed output in case of
32489	a valdiag error
32490	* support/regression/generate-cases.py: fixed splitting of pathnames
32491	with dots
32492	* as/hc08/lklibr.c (addfile),
32493	* as/mcs51/lklibr.c (addfile): fixed off-by-one bug
32494
324952006-04-11 Raphael Neider <rneider AT web.de>
32496
32497	* src/pic16/gen.c (getFreePtr, pic16_popRegFromString),
32498	* src/pic16/ralloc.c (pic16_allocregWithName): removed debug output
32499	* src/pic16/pcode.c (assignValnums): fixed #1460578
32500
325012006-04-11 Raphael Neider <rneider AT web.de>
32502
32503	* device/lib/pic/libdev/*.c,
32504	* device/include/pic/*.h: replaced sfr and data with __sfr and __data,
32505	  fixes #1468739, enables compilation in --std-c99 mode
32506	* support/scripts/inc2h.pl: emit __sfr/__data instead of sfr/data
32507
325082006-04-11 Raphael Neider <rneider AT web.de>
32509
32510	* src/pic/device.c (find_device): removed debug output
32511	  (list_valid_pics): enabled verbose listing of supported devices
32512	* device/include/stdbool.h: define bool as char for pic14/16 as well
32513
325142006-04-07 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
32515
32516	* src/SDCC.y: allow using brackets here: "__interrupt (1) __using (1)"
32517
325182006-04-07 Maarten Brock <sourceforge.brock AT dse.nl>
32519
32520	* .version: bumped version to 2.5.6
32521	* src/pic/ralloc.c (newReg): MSVC doesn't support __builtin_return_address
32522
325232006-04-06 Raphael Neider <rneider AT web.de>
32524
32525	* .version: bumped version to 2.5.6 (pic14 ABI changed)
32526	* src/SDCCmain.c: add -DSDCC_PROCESSOR=<id> for pic14 port
32527	* src/pic/glue.c (emitSymbolToFile,pic14_constructAbsMap,
32528	  pic14emitRegularMap,pic14emitMaps): moved output for absolute symbols to
32529	    pic14_constructAbsMap
32530	  (pic14printPublics): declare absolute global symbols as global
32531	  (pic14createInterruptVect),
32532	* src/pic/ralloc.c (IS_CONFIG_ADDRESS): support second config word,
32533	  (newReg): assume new registers unused, use correct name in
32534	    hashtable (reg->name instead of name), more debugLog output
32535	* src/pic/device.h (PIC_device): added fields for verbose output
32536	* src/pic/device.c: moved device definition to pic14devices.txt,
32537	    added routines for runtime parsing of pic14devices.txt,
32538	    added support for second config word
32539	* src/pic/main.c (_process_pragma): removed #pragma maxram,
32540	  (_pic14_keywords): no longer accept "bit" and "sbit" keywords
32541	  (_pic14_initPaths): add search paths with "pic" suffix (not "pic14")
32542	  (_pic14_parseOptions): moved pCodeInitRegisters here
32543	  (_pic14_do_link): add "pic$(ARCH).lib" to linker arguments
32544	* src/pic/pcode.c (AnalyzeBanking): bail out on unset processor,
32545	  (pCodeInitRegisters): rewrapped comments, perpared new approach to
32546	    handling the pseudo stack
32547	* device/lib/Makefile.in: ignore failures in objects-pic16,
32548	* device/lib/pic/{configure,configure.in,Makefile}: added libdev/
32549	* device/lib/pic/NEWS: document new dependency on picXXX.lib
32550	* device/lib/pic/Makefile.subdir,
32551	* device/lib/pic16/Makefile.subdir: improved clean rules
32552	* device/lib/pic/libdev/: NEW, pic14 device libraries
32553	* device/lib/pic/libsdcc/_gptr{get,put}{1,2,3,4}.S: use _X not X
32554	* device/lib/pic/libsdcc/macros.inc: use _X not X, declare default SFRs
32555	* device/include/Makefile.in: create subdir and install pic14 headers
32556	* device/include/pic/p16f_common.inc: removed unused declarations
32557	* device/include/pic/pic16*.h: added header files for 100+ 14 bit
32558	    PICs from inc2h.pl v1.6,
32559	    replaced BIT_AT macros with struct declarations
32560	* device/include/pic/pic14devices.txt: definition of supported devices,
32561	    all above improvements contributed by Zik Saleeba, thanks
32562	* support/scripts/inc2h.pl: removed BIT_AT, replaced with structs
32563	* support/scripts/sdcc.nsi: also install pic14 device libraries and
32564	    headers
32565
325662006-04-06 Maarten Brock <sourceforge.brock AT dse.nl>
32567
32568	* device/include/mcs51/c8051f410.h: added interrupt numbers,
32569	* device/include/mcs51/c8051f200.h: old SiLabs mcu completes the list,
32570	  thanks to Charles Olds
32571
325722006-04-06 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
32573
32574	* debugger/mcs51/cmd.c (infoRegisters): show return address on stack
32575
325762006-04-06 Maarten Brock <sourceforge.brock AT dse.nl>
32577
32578	* src/SDCCpeeph.c (labelIsReturnOnly): fixed bug 1464657
32579	* src/mcs51/gen.c (genJumpTab): fixed bug in medium model
32580	* support/regression/bug1464657.c: added, new test
32581
325822006-04-05 Maarten Brock <sourceforge.brock AT dse.nl>
32583
32584	* src/SDCCmain.c (preProcess): implemented RFE 1449908, define SDCC as the
32585	  version number
32586
325872006-04-05 Maarten Brock <sourceforge.brock AT dse.nl>
32588
32589	* src/SDCCpeeph.c (initPeepHole): implemented RFE 1460196, when both
32590	  --no-peep and --peep-file <file> are used don't use default rules but
32591	  do use the <file>
32592
325932006-04-05 Maarten Brock <sourceforge.brock AT dse.nl>
32594
32595	* src/mcs51/gen.c (genCall): fixed bug 1457608
32596
325972006-03-30 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
32598
32599	* doc/sdccman.lyx: reverted to version 1.129 of december as my latest
32600	changes seem to cause (trigger?) problems with the build system.
32601
326022006-03-29 Maarten Brock <sourceforge.brock AT dse.nl>
32603
32604	* src/SDCCpeeph.c (operandsLiteral): new, added,
32605	  (callFuncByName): inserted operandsLiteral
32606	* src/mcs51/peeph.def: reenabled 132.e, added extra check to 132.x
32607
326082006-03-28 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
32609
32610	* doc/sdccman.lyx: added paragraph "Use of SDCC in Education"
32611	* src/mcs51/peeph.def: disabled rule 132.e fixing bug #1453093
32612
326132006-03-24 Maarten Brock <sourceforge.brock AT dse.nl>
32614
32615	* src/z80/gen.c (genFunction, genEndFunction): fixed bug 1160666,
32616	  implemented patch 1120823 Thanks to Willy De la Court (normal
32617	  interrupts need an interrupt number now if they are made critical),
32618	  and enabled nesting of critical functions though not for gbz80
32619	  (genCritical, genEndCritical): added functions
32620	  (genZ80Code): added cases for CRITICAL and ENDCRITICAL
32621	* src/z80/mappings.i: added "ei" to all mappings
32622
326232006-03-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
32624
32625	* sim/ucsim/cmd.src/newcmdcl.h: applied patch fixing GCC 4.1 build
32626	submitted by the Debian SDCC maintainer Aurelien Jarno:
32627	"Credits goes to Martin Michlmayr, who rebuilt the whole Debian
32628	archive with gcc 4.1 on mips and wrote the patch"
32629
326302006-03-16 Raphael Neider <rneider AT web.de>
32631
32632	* src/pic16/genarith.c (genAddLit): simplified and fixed case where
32633	  the left operand is shorter than the result (c* = lit-c* + int),
32634	  fixes bug #1450796
32635	* src/pic16/gen.c (genRightShift): check IS_SYMOP before accessing
32636	  OP_SYMBOL
32637
326382006-03-14 Vangelis Rokas <vrokas AT users.sourceforge.net>
32639
32640	* src/.version: increased version number to 2.5.5
32641	* src/SDCCmain.c (linkEdit): do not test for PIC16 target since, PIC16
32642	linking is done manually in pic16 port's _linkEdit,
32643	* src/SDCCsymt.c (compStructSize): for target PIC16 and shell variable
32644	PIC16_PACKED_BITFIELDS, compact bitfield structures as much as possible,
32645	* src/pic16/gen.c (aopForSym): when direct register name is WREG then
32646	allocate asmop as AOP_ACC,
32647	(aopForRemat): added parameter 'bool result' in function declaration,
32648	(pic16_aopGet): return AOP_ACC when accessing WREG,
32649	(pic16_popGetTempReg): minor modification,
32650	(pic16_popRegFromIdx): first try with 'pic16_regWithIdx' then with
32651	'pic16_allocWithIdx',
32652	(genPcall): removed ftype, usage of OP_SYM_TYPE asserted error when
32653	calling function in absolute addresses,
32654	(genAssign): take into account AOP_ACC asmop,
32655	* src/pic16/pcode.c (pic16_newpCodeOpReg): minor modifications,
32656	* src/pic16/pcoderegs.c: some debug functions and lines added,
32657	* src/pic16/ralloc.c (decodeRegType): added but commented out,
32658	* (pic16_typeRegWithIdx): search 'pic16_dynInternalRegs' for given
32659	register too,
32660	* (pic16_findFreeReg, pic16_findFreeRegNext): allocate new register via
32661	call to allocReg, not by manually allocating a new one,
32662	(pic16_assignRegisters): now before going through the register
32663	allocating functions mark all registers as free. This eliminates some
32664	side effects resulting from peephole parser done earlier in the backbone
32665
326662006-03-13 Maarten Brock <sourceforge.brock AT dse.nl>
32667
32668	* src/SDCCicode.c (geniCodeLogic),
32669	* src/SDCCast.c (decorateType): applied patch by Bernhard for rfe 1422617
32670
326712006-03-10 Maarten Brock <sourceforge.brock AT dse.nl>
32672
32673	* src/mcs51/gen.c (sameReg): new, checks if two aop regs are the same,
32674	  (genSend): bugfix, do not allocate and free twice,
32675	  (shiftRLong): handle partially overlapping aops
32676	* support/regression/tests/bitopcse.c: fixed warning redefined idata
32677
326782006-03-08 Borut Razem <borut.razem AT siol.net>
32679
32680	* support/regression/fwk/include/testfwk.h: added defines for xdata, idata
32681	  for pic16
32682
326832006-03-08 Maarten Brock <sourceforge.brock AT dse.nl>
32684
32685	* support/regression/tests/bug1409955.c: new, added
32686	* src/mcs51/gen.h: changed asmop.freed:1 to asmop.allocated for tracking
32687	* src/mcs51/gen.c (newAsmop): set asmop.allocated to 1,
32688	  (aopForSym, aopOp): increment asmop.allocated if reused,
32689	  (freeAsmop): decrement asmop.allocated and check for zero instead of
32690	  using asmop.freed,
32691	  (freeForBranchAsmop): use asmop.allocated instead of asmop.freed,
32692	  (genNot, genCpl, genUminus, genMinus, genMult, genDiv, genMod, genCmpGt,
32693	   genCmpLt, genAndOp, genOrOp, genAnd, genOr, genXor, genRRC, genRLC,
32694	   genGetHbit, genGetAbit, genGetByte, genGetWord, genSwap,
32695	   genLeftShiftLiteral, genLeftShift, genRightShiftLiteral,
32696	   genSignedRightShift, genRightShift, genDataPointerGet,
32697	   genPagedPointerGet, genFarPointerGet, genCodePointerGet,
32698	   genGenPointerGet, genDataPointerSet, genAssign, genCast): free asmop's
32699	    in reverse order from allocation,
32700	  (genPlus, genCmpEq): free asmop's in reverse order from allocation and
32701	    added swappedLR to keep track
32702	* support/regression/fwk/include/testfwk.h: added defines for xdata, idata,
32703	  pdata & code for GCC, z80, gbz80 & hc08
32704	* support/regression/tests/zeropad.c: moved defines to testfwk.h
32705
327062006-03-08 Raphael Neider <rneider AT web.de>
32707
32708	* src/pic16/main.c (_hasNativeMulFor): fixed bug #1444425
32709
327102006-03-07 Maarten Brock <sourceforge.brock AT dse.nl>
32711
32712	* device/include/mcs51/c8051f410.h: new SiLabs mcu
32713	* src/ds390/peeph.def: disabled 186.d and 227.a as fix for #1434401
32714	* support/regression/tests/array.c: added parenthesis, made arrays unsigned
32715
327162006-03-06 Borut Razem <borut.razem AT siol.net>
32717
32718	* support/regression/ports/pic16/spec.mk: link with libm18f.lib,
32719	  made the linker quiet
32720
327212006-03-06 Vangelis Rokas <vrokas AT users.sourceforge.net>
32722
32723	* src/pic16/gen.c (genPcall): fixed bug #1443644
32724	* src/pic16/device.h (struct pic16_options_t): added 'int CATregs' flag
32725	which dumps before the function entry point a data byte which represents
32726	the number of the local variables used by the specified function, added
32727	'xinst' for initial support for Extended Instruction Support,
32728	* src/pic16/gen.c (aopForSym, pic16_aopGet): beautifications,
32729	(pic16_testStackOverflow): do not prefix GSTACK_TEST_NAME with
32730	port->fun_prefix anymore (may change later),
32731	(genFunction, genEndFunction): do not store/restore local registers for
32732	_main (this should take care the --main-return command line option in
32733	the future),
32734	(genOr): removed some legacy pic-port instructions,
32735	* src/pic16/genarith.c (genAddLit): re-enabled old code because
32736	performing operations with SFR's causes data to be written more than
32737	once to each SFR. Perhaps SFRs should be handled in special cases...
32738	* src/pic16/glue.c: macros BIG_ENDIAN and BYTE_IN_LONG are moved to
32739	pcode.h
32740	* src/pic16/main.c (_process_pragma): stack bound checking did not take
32741	into account for stack starting position,
32742	(struct OPTIONS pic16_optionsTable): added command line argument
32743	--extended or -y for Extended Instruction Support,
32744	* src/pic16/ralloc.c (pic16_decodeOp): added case for FUNCTION,
32745	(deassignLRs): *** perhaps the most important change, old 'for' code
32746	(commented out for reference), didn't account for some registers which
32747	were left marked 'not free' after a pointer operation. The change
32748	reduces register usage a lot in some cases
32749
327502006-03-04 Borut Razem <borut.razem AT siol.net>
32751
32752	* support/regression/ports/hc08/spec.mk: remove *.asm in traget
32753	  _clean
32754	* support/regression/tests/bug-524697.c: decreased array size for
32755	  mcs51 to fit into the internal RAM
32756	* support/regression/Makefile.in: a little bit more verbose
32757
327582006-03-03 Borut Razem <borut.razem AT siol.net>
32759
32760	* support/regression/fwk/lib/testfwk.c,
32761	  support/regression/fwk/include/testfwk.h: introduced function
32762	  _prints(), nonrecursive _printn(), call _initEmu() from main()
32763	* support/regression/ports/gbz80/support.asm,
32764	  support/regression/ports/ucz80/support.asm,
32765	  support/regression/ports/z80/support.asm,
32766	  support/regression/ports/ds390/support.c,
32767	  support/regression/ports/hc08/support.c,
32768	  support/regression/ports/host/support.c,
32769	  support/regression/ports/mcs51/support.c,
32770	  support/regression/ports/xa51/support.c: added empty _initEmu()
32771	  function
32772	* support/regression/ports/pic16/gpsim.cmd,
32773	  support/regression/ports/pic16/spec.mk,
32774	  support/regression/ports/pic16/support.c,
32775	  support/regression/Makefile.in: added pic16 regression test
32776
327772006-03-01 Raphael Neider <rneider AT web.de>
32778
32779	* src/pic16/gen.c (genPcall,pic16_derefPtr,genGenPointerGet,
32780	  genConstPointerGet): use safe way of generating MOVFF to cover
32781	    literals as well as registers, fixes bug #1440527
32782	* src/pic16/glue.c (pic16_printIvalBitFields): prevent NULL pointer
32783	    dereference
32784	  (pic16_printIvalUnion,pic16_isUnion): NEW, handle initialized unions
32785	    more correctly, fixes bug #1232186
32786	  (pic16_printIval): use pic16_printIvalUnion() for initialized unions
32787	* src/pic16/main.c (_pic16_linkEdit): reorder linker arguments to make
32788	    gplink guess the correct processor in more cases, applied patch
32789	    from Till Riedel attached to and fixing bug #1436552
32790
327912006-02-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
32792
32793	* support/regression/tests/array.c: added, contains check for #1434401
32794	* src/mcs51/peeph.def: disabled 186.d as temporary fix for #1434401
32795
327962006-02-16 Maarten Brock <sourceforge.brock AT dse.nl>
32797
32798	* device/include/mcs51/at89s8253.h: new, thanks to Krzysztof Polomka
32799	* device/include/mcs51/at89S8252.h: fixed, thanks to Krzysztof Polomka
32800	* device/include/mcs51/c8051f326.h,
32801	* device/include/mcs51/c8051f340.h: new SiLabs mcu's
32802	* device/include/mcs51/c8051f000.h,
32803	* device/include/mcs51/c8051f018.h,
32804	* device/include/mcs51/c8051f020.h: used () with __at, renamed IDLE,STOP to
32805	  PCON_IDLE,PCON_STOP and added sfr16 definitions
32806
328072006-02-14 Maarten Brock <sourceforge.brock AT dse.nl>
32808
32809	* src/mcs51/gen.c (genPlus, genMinus, genMult, genGetAbit, genGetByte,
32810	  genGetWord): fixed bug 1409955
32811
328122006-02-14 Maarten Brock <sourceforge.brock AT dse.nl>
32813
32814	* device/include/hc08/mc68hc908gp32.h,
32815	* device/include/hc08/mc68hc908jb8.h: removed AWUL, added PTA6 & PTA7
32816
328172006-02-13 Maarten Brock <sourceforge.brock AT dse.nl>
32818
32819	* src/SDCCast.c (constExprValue): return NULL if not a value
32820	* src/SDCCglue.c (printIvalArray): fixed bug 1225568
32821	* src/hc08/gen.c(genUnpackBits, genUnpackBitsImmed): fixed bug 1019480
32822	* support/regression/tests/bitfields.c: enabled signed bitfield for all
32823
328242006-02-13 Borut Razem <borut.razem AT siol.net>
32825
32826	* src/regression/ptrarg.c: added, fails due to bug #1430967
32827	* src/regression/Makefile: ptrarg.c added, ...
32828
328292006-02-12 Maarten Brock <sourceforge.brock AT dse.nl>
32830
32831	* src/z80/gen.c (genUnpackBits): fixed bug 1019480
32832	* support/regression/tests/bitfields.c: enabled signed bitfield for z80
32833
328342006-02-11 Borut Razem <borut.razem AT siol.net>
32835
32836	* src/SDCCmain.c: Added "sdcc: Calling linker..." if --verbose,
32837	  print "Processor: xxx" message to stdout only if --verbose
32838
328392006-02-11 Maarten Brock <sourceforge.brock AT dse.nl>
32840
32841	* src/SDCCglue.c (printIvalStruct): fixed bug 1426356 union initializer
32842	* support/regression/tests/bug1426356.c: added
32843	* support/regression/tests/bitfields.c: removed 2 tests
32844
328452006-02-10 Maarten Brock <sourceforge.brock AT dse.nl>
32846
32847	* device/include/mcs51/at89c51snd1c.h: updated comments, see patch 1428901
32848	* device/include/mcs51/c8051f330.h,
32849	* device/include/mcs51/c8051f350.h: used () with __at, renamed IDLE,STOP to
32850	  PCON_IDLE,PCON_STOP and added sfr16 definitions
32851	* device/lib/_divsint.c,
32852	* device/lib/_divuint.c,
32853	* device/lib/_divulong.c,
32854	* device/lib/_divulong.c: renamed a,b to x,y to avoid confusion, fixed
32855	  register bank bug for small stackauto
32856
328572006-02-09 Maarten Brock <sourceforge.brock AT dse.nl>
32858
32859	* support/regression/fwk/lib/timeout.c: include <stdlib.h> for exit()
32860
328612006-02-08 Maarten Brock <sourceforge.brock AT dse.nl>
32862
32863	* support/regression/ports/mcs51-xstack-auto/spec.mk: forgot -I(...)/mcs51
32864	* all.dsp: corrected several bin paths
32865	* device/include/mcs51/c8051f120.h,
32866	* device/include/mcs51/c8051f300.h,
32867	* device/include/mcs51/c8051f310.h: used () with __at and renamed IDLE,STOP
32868	  to PCON_IDLE,PCON_STOP
32869	* device/include/mcs51/c8051f320.h: see above, also added sfr16 definitions
32870	* device/lib/printf_large.c (output_float): fixed bug 1388703
32871	* support/regression/tests/bug1057979.c: added test for bug 1388703
32872
328732006-02-08 Raphael Neider <rneider AT web.de>
32874
32875	* src/pic/pcode.c (pciTRIS): fixed typo,
32876	  (BuildFlow,LinkFlow_pCode): added (disabled) debug output,
32877	  (LinkFlow): fixed handling of flows that end in a call,
32878	  (ReuseReg): perform safety check earlier
32879	* src/pic/pcoderegs.c (pCodeRegMapLiveRangesInFlow): fixed
32880	    to work with flows at the beginning of a pBlock,
32881	    fixes #1426557 (Symbol not previously defined),
32882	  (pic14_ReMapLiveRanges): NEW, destroy and rebuild register
32883	    usage information
32884	  (RemoveUnusedRegisters): update register usage info
32885	* src/pic/ralloc.c (newReg): prevent duplicate registers from being
32886	    created, reuse existing ones instead
32887	* src/pic/gen.c (genPcall): fixed #1424719
32888
328892006-02-07 Bernhard Held <bernhard AT bernhardheld.de>
32890
32891	* link/z80/lkmain.c,
32892	* link/z80/lklex.c,
32893	* link/z80/lkdata.c,
32894	* link/z80/aslink.h: fixed build on current cygwin:
32895	replaced getline() by lk_getline()
32896
328972006-02-01 Borut Razem <borut.razem AT siol.net>
32898
32899	* src/regression/add.c, src/regression/add2.c, src/regression/add3.c,
32900	  src/regression/add4.c, src/regression/and1.c, src/regression/and2.c,
32901	  src/regression/arrays.c, src/regression/b.c, src/regression/bank1.c,
32902	  src/regression/bool1.c, src/regression/bool2.c,
32903	  src/regression/bool3.c, src/regression/call1.c,
32904	  src/regression/compare.c, src/regression/compare10.c,
32905	  src/regression/compare2.c, src/regression/compare3.c,
32906	  src/regression/compare4.c, src/regression/compare5.c,
32907	  src/regression/compare6.c, src/regression/compare7.c,
32908	  src/regression/compare8.c, src/regression/compare9.c,
32909	  src/regression/configword.c, src/regression/for.c,
32910	  src/regression/inline.c, src/regression/mult1.c,
32911	  src/regression/nestfor.c, src/regression/or1.c,
32912	  src/regression/pointer1.c, src/regression/ptrfunc.c,
32913	  src/regression/rotate1.c, src/regression/rotate2.c,
32914	  src/regression/rotate3.c, src/regression/rotate4.c,
32915	  src/regression/rotate5.c, src/regression/rotate6.c,
32916	  src/regression/rotate7.c, src/regression/string1.c,
32917	  src/regression/struct1.c, src/regression/sub.c,
32918	  src/regression/sub2.c, src/regression/switch1.c,
32919	  src/regression/while.c, src/regression/xor.c,
32920	  src/regression/create_stc, src/regression/simulate,
32921	  src/regression/rt.sh, src/regression/Makefile: reenabled Scott's PIC14
32922	  regression tests
32923	* src/regression/gpsim_assert.h: added
32924
329252006-01-28 Bernhard Held <bernhard AT bernhardheld.de>
32926
32927	* src/ds390/gen.c (unsaveRegisters): fixed literal function pointer
32928	((void (code *) (void)) 0) ();
32929	* as/hc08/aslex.c,
32930	* as/hc08/aslink.h,
32931	* as/hc08/asm.h,
32932	* as/hc08/asmain.c,
32933	* as/hc08/lkdata.c,
32934	* as/hc08/lklex.c,
32935	* as/hc08/lkmain.c,
32936	* as/mcs51/aslex.c,
32937	* as/mcs51/aslink.h,
32938	* as/mcs51/asm.h,
32939	* as/mcs51/asmain.c,
32940	* as/mcs51/lkdata.c,
32941	* as/mcs51/lklex.c,
32942	* as/mcs51/lkmain.c,
32943	* as/z80/aslex.c,
32944	* as/z80/asm.h,
32945	* as/z80/asmain.c: fixed build on current cygwin:
32946	replaced getline() by as_getline()
32947
329482006-01-27 Bernhard Held <bernhard AT bernhardheld.de>
32949
32950	* src/SDCC.y: fixed bug #716242, exchanged pointer and function
32951	declarator in the symbol chain
32952	* src/SDCCsymt.h,
32953	* src/SDCCsymt.c (processFuncPtrArgs): added, removes "(void)"
32954	parameter list for function pointers
32955	* src/SDCCast.c (decorateType): added call of processFuncPtrArgs()
32956	* support/regression/tests/bug-716242.c: added
32957
329582006-01-20 Bernhard Held <bernhard AT bernhardheld.de>
32959
32960	* src/SDCCicode.c (geniCodeAdd, geniCodeArray): use char for array
32961	offset if possible
32962	* src/SDCCast.c (getLeftResultType): 255 fits in char, not 256
32963
329642006-01-18 Bernhard Held <bernhard AT bernhardheld.de>
32965
32966	* src/SDCCast.c (backPatchLabels): fixed bug #1408066: made it
32967	inifinitely recurseable, added static
32968	* support/regression/tests/bug-1408066.c: added
32969
329702006-01-17 Bernhard Held <bernhard AT bernhardheld.de>
32971
32972	* src/SDCCicode.h,
32973	* src/SDCCicode.c (newiTempPreheaderLabel, newiTempLoopHeaderLabel):
32974	renamed, added possibility to create "postLoopLbl"-labels
32975	* src/SDCCBBlock.c (iCodeBreakDown): renamed newiTempPreheaderLabel to
32976	newiTempLoopHeaderLabel
32977	* src/SDCCloop.c (newInduction, newRegion, backEdges, insertIntoLoop,
32978	isNotInBlocks, addToExitsMarkDepth, createLoop, dominatedBy,
32979	addDefInExprs, assignmentsToSym, isOperandInvariant, pointerAssigned,
32980	hasNonPtrUse, loopInvariants, addressTaken, findInduction,
32981	findDefInRegion, mergeRegions, ifMerged, mergeInnerLoops): made static,
32982	(pinduction, pregion, hasIncomingDefs, findLoopEndSeq): disabled,
32983	(basicInduction): fixed bug #136564, made static,
32984	(loopInduction): changed parameter of basicInduction, made static,
32985	(addPostLoopBlock): added
32986	* src/SDCCloop.h: removed backEdges, pregion, pinduction,
32987	loopOptimizations, addressTaken, findDefInRegion, hasIncomingDefs,
32988	findLoopEndSeq
32989	* support/regression/tests/bug-136564.c: added
32990	* support/regression/ports/mcs51-xstack-auto/spec.mk: added
32991	--std-sdcc99 to LIBSDCCFLAGS
32992
329932006-01-16 Bernhard Held <bernhard AT bernhardheld.de>
32994
32995	* src/SDCCicode.c (geniCodeIfx): fix bug 1406131: always false
32996	while loop
32997	* support/regression/tests/bug-1406131.c: added
32998
329992005-12-31 Bernhard Held <bernhard AT bernhardheld.de>
33000
33001	* src/SDCCast.c (decorateType): fix promotion of unary minus
33002	* src/SDCCsymt.c (computeType): beautified
33003	* src/SDCCval.c (cheapestVal): beautified, old non-Ansi version removed,
33004	(valUnaryPM, valComplement): fix sign and promotion,
33005	(valNot): ANSI: result type is int (SDCC: unsigned char)
33006	* support/regression/tests/uminus.c: speedup by removing superflous
33007	test case 'int'
33008	* support/regression/tests/onebyte.c: added promotion and signedness
33009	tests for unary minus
33010	* support/regressions/tests/bug-477927.c: disable warning about
33011	uninitialized variables
33012	* support/regression/tests/not.c: added
33013
330142005-12-28 Bernhard Held <bernhard AT bernhardheld.de>
33015
33016	* device/lib/Makefile.in: added --std-sdcc99 to CFLAGS
33017	* src/mcs51/gen.c (gen51Code): show final register usage after
33018	fillGaps in asm with --i-code-in-asm
33019	* src/SDCClrange.c (sequenceiCode, setLiveFrom, setLiveTo,
33020	markLiveRanges, markAlive, findNextUseSym, findNextUse, unvisitBlocks,
33021	incUsed, rliveClear, adjustIChain): made static,
33022	(setFromRange): excluded because it's unused,
33023	(findPrevUseSym, markWholeLoop): added,
33024	(findPrevUse): rewritten; fixes bug 895992; now a complete search
33025	through	all branches of predecessors enables sdcc to emit the warning
33026	W_LOCAL_NOINIT, marking of outermost loop was incomplete,
33027	(rlivePoint): made static, added parameter emitWarnings which is only
33028	true during the first run out of two,
33029	(findRecursiveSucc, findRecursivePred): removed,
33030	(computeLiveRanges): made static, added parameter emitWarnings,
33031	(dumpIcRlive): added for debugging only
33032	* src/SDCClrange.h: added boolean parameter to computeLiveRanges(),
33033	removed prototype of setFromRange()
33034	* src/SDCCopt.c (eBBlockFromiCode): added new parameter emitWarnings
33035	in call of computeLiveRanges()
33036	* support/regression/tests/bug-895992.c: added
33037	* support/regression/tests/bug-971834.c: added
33038	* support/valdiag/tests/bug-895992.c: added
33039	* support/valdiag/tests/bug-971834.c: added
33040
330412005-12-18 Raphael Neider <rneider AT web.de>
33042
33043	* src/pic16/gen.c: added IS_DIRECT macro for "direct" operands,
33044	  (genUnpackBits): improved code for direct operands,
33045	  (genPackBits): improved code for literal assignment to bitfields
33046	    and for direct destination operands (no FSR indirection),
33047	    prevented redundant AND, fixes #1362800,
33048	  (AccLsh): added parameter to disable masking of the result
33049	* src/pic16/pcode.c (pic16_safepCodeUnlink): fixed to work with
33050	  skip instructions with side-effects (like incfsz),
33051	  (pic16_pCodeIsAlive): suppress verbose output unless pcode_verbose,
33052	* src/pic16/pcoderegs.c (RemoveRegsFromSet): removed annoying warning
33053	* device/lib/pic16/Makefile.common.in: added --asm=@GPASM@ to CC,
33054	  fixes #1375263
33055
330562005-12-11 Bernhard Held <bernhard AT bernhardheld.de>
33057
33058	* src/SDCCicode.c (geniCodeAssign): fixed bug 11369874, don't use
33059	volatile variables as spill location
33060
330612005-12-10 Bernhard Held <bernhard AT bernhardheld.de>
33062
33063	* src/SDCCcse.c (findCheaperOp): fixed bug 1376320, copy signedness to
33064	replacing literals
33065	* support/regression/tests/bug-1376320.c: added
33066
330672005-12-08 Raphael Neider <rneider AT web.de>
33068
33069	* src/pic/device.c: renamed is_shared to pic14_is_shared
33070	* src/pic/gen.c (genIfx): re-enabled handling of sbits
33071	* src/pic/glue.c (emitSymbolToFile): added workaround for sbits,
33072	  (is_valid_identifier): added for above workaround
33073
330742005-12-07 Maarten Brock <sourceforge.brock AT dse.nl>
33075
33076	* device/lib/Makefile.in: fixed to enable port-specific-objects
33077	* device/lib/ds390/i2c390.c (BitOutI2C): optimized by making bout unsigned
33078	  char, thanks Hubert Sack
33079	* doc/sdccman.lyx: documented --xstack-loc,
33080	  elaborated a bit more on interrupts and pitfalls,
33081	  removed "setjmp/longjmp unsupported",
33082	  documented some unsupported C99 features
33083	* src/SDCCmain.c (linkEdit): adapted default lib path for --stack-auto
33084	* src/SDCCpeeph.c (readRules): inserted patch 1367130 for finding missing
33085	  if, thanks Hubert Sack
33086	* src/mcs51/gen.c (genEndFunction): enabled "pop psw" for regbank 0 isr
33087	* support/regression/Makefile.in: test-mcs51-stack-auto no longer needs to
33088	  make make_library
33089	* support/regression/get_ticks.py: new, get cpu cycles and code size, so
33090	  regression tests can report resource usage (rfe 700441)
33091	* support/regression/collate-results.py: report resource usage
33092	* support/regression/ports/ds390/spec.mk,
33093	* support/regression/ports/hc08/spec.mk,
33094	* support/regression/ports/mcs51/spec.mk,
33095	* support/regression/ports/ucz80/spec.mk: run sim output through get_ticks
33096	* support/regression/ports/ds390/uCsim.cmd,
33097	* support/regression/ports/hc08/uCsim.cmd,
33098	* support/regression/ports/mcs51/uCsim.cmd,
33099	* support/regression/ports/ucz80/uCsim.cmd: inserted "state" to report time
33100	* support/regression/ports/mcs51-stack-auto/spec.mk: no need to build the
33101	  library, use the default one
33102	* support/regression/ports/mcs51-xstack-auto/spec.mk: inserted rules for
33103	  building the library
33104
331052005-12-06 Maarten Brock <sourceforge.brock AT dse.nl>
33106
33107	* config.dsp: added dependency on .version and configure_vc.awk
33108	* device/include/setjmp.h: updated for --stack-auto and --xstack
33109	* device/include/mcs51/at89c51snd1c.h: corrected line endings
33110	* device/include/mcs51/XC866.h: added, thanks Llewellyn van Zyl
33111	* device/lib/_setjmp.c: updated for --stack-auto and --xstack
33112	* device/lib/libsdcc.lib: added _setjmp
33113	* src/SDCCast.c (createIvalCharPtr): fixed warnings,
33114	  (decorateType): fixed bug 1372851,
33115	  (optimizeGetHbit): fixed warning
33116	* src/SDCCglue.c (printIvalChar, printIvalArray): adapted for flexible
33117	  array initialisation
33118	* support/regression/tests/bug1057979.c: added test for bug 1358192
33119	* support/regression/tests/setjmp.c: added, test for setjmp/longjmp
33120
331212005-12-03 Borut Razem <borut.razem AT siol.net>
33122
33123	* support/scripts/sdcc.nsi: added /SOLID option to "SetCompressor lzma"
33124	  command since the NSIS was upgraded to version 2.11 on CF x86-linux2
33125
331262005-11-29 Bernhard Held <bernhard AT bernhardheld.de>
33127
33128	* src/SDCCast.c (createIvalStruct, createIvalArray, createIvalPtr,
33129	createIval): implement symbol independant "flexible array member",
33130	(createIvalCharPtr): implemented flexible array initialisation with a
33131	string
33132	* src/SDCCsymt.c (copyStruct): removed,
33133	(getSize): fixed misleading comment,
33134	(getAllocSize): removed, the additional allocation size is now in
33135	sym->flexArrayLength,
33136	(checkStructFlexArray): new, syntax checks for flexible array members,
33137	(compStructSize): added syntax checks for "flexible array members"
33138	(copyStruct): removed,
33139	(copyLinkChain): removed inefficient fix for bug 770487
33140	* src/SDCCglue.c (emitRegularMap): getAllocSize has been removed
33141	* src/SDCCsymt.h: added structdef.b_flexArrayMember and
33142	symbol->flexArrayLength
33143	* src/SDCCerr.c,
33144	* src/SDCCerr.h: added W_INVALID_FLEXARRAY, W_C89_NO_FLEXARRAY,
33145	E_FLEXARRAY_NOTATEND and E_FLEXARRAY_INEMPTYSTRCT
33146	* support/regression/tests/structflexarray.c: added
33147	* support/valdiag/tests/structflexiblearray.c: added
33148
331492005-11-29 Bernhard Held <bernhard AT bernhardheld.de>
33150
33151	* src/SDCCast.c (decorateType): fixed bug 1368489
33152	* support/Util/SDCCerr.c,
33153	* support/Util/SDCCerr.h: added warning W_CMP_SU_CHAR
33154
331552005-11-28 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
33156
33157	* device/include/mcs51/at89c51snd1c.h: added file submitted by
33158	  Weston T. Schmidt <schmidtw AT users.sourceforge.net>, patch #1368001
33159
331602005-11-27 Borut Razem <borut.razem AT siol.net>
33161
33162	* support/cpp2/cppinit.c, support/cpp2/cpplib.h, support/cpp2/mkdeps.c,
33163	  support/cpp2/mkdeps.h: added command line option
33164	  -obj-ext=<extension> to SDCPP to define object file externion, used
33165	  for generation of make dependencies (-M)
33166	* src/SDCCmain.c: pass -obj-ext=<extension> to SDCPP
33167
331682005-11-26 Borut Razem <borut.razem AT siol.net>
33169
33170	* support/scripts/sdcc.nsi: added small-stack-auto libraries,
33171	  added missing device/lib/mcs51/crt*.asm, pic and pic16 sources,
33172	  added pic and pic16 libraries
33173
331742005-11-26 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
33175
33176	* device/include/float.h: Corrected typo in prototype of __fsgt
33177
331782005-11-25 Borut Razem <borut.razem AT siol.net>
33179
33180	* sdcc/device/lib/Makefile.in, sdcc/device/lib/incl.mk:
33181	  added creation of model-mcs51-stack-auto libraries
33182
331832005-11-24 Bernhard Held <bernhard AT bernhardheld.de>
33184
33185	* src/SDCCsymt.c (copyLinkChain): fixed bug 770487, copy structdef
33186	and fields-list too
33187	* src/SDCCast.c (createIvalArray): removed obsolete comment
33188
331892005-11-24 Borut Razem <borut.razem AT siol.net>
33190
33191	* sdcc/device/lib/Makefile.in: remove all unnecessary files, 2nd try...,
33192	  added missing device/lib/mcs51/crt*.asm sources
33193
331942005-11-23 Bernhard Held <bernhard AT bernhardheld.de>
33195
33196	* src/SDCCast.c (createIvalCharPtr): fixed bug 1348271
33197
331982005-11-22 Maarten Brock <sourceforge.brock AT dse.nl>
33199
33200	* device/lib/_fs2schar.c,
33201	* device/lib/_fs2sint.c,
33202	* device/lib/_fs2slong.c: optimized inline asm
33203
332042005-11-21 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
33205
33206	* device/lib/_fs2slong.c, device/lib/_fs2sint.c, device/lib/_fs2char.c:
33207	  Better handling of floats between -1.0 and 0.0.
33208
332092005-11-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
33210
33211	* src/mcs51/peeph.def: added missing "if"s as noted by Hubert Sack.
33212	  (the missing "if"s prohibited removal of redundant labels)
33213
332142005-11-19 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
33215
33216	* device/lib/_fs2slong.c, device/lib/_fs2sint.c, device/lib/_fs2char.c:
33217	  Properly convert floats between -1.0 and 0.0 to long, int, and char
33218	  types (max integer value of negative floats tends to zero).
33219	* device/lib/modff.c, device/lib/ceilf.c, device/lib/floorf.c:
33220	  Removed changes made so to work properly with floats between
33221	  -1.0 and 0.0, as the problem is fixed in _fs2slong.c, _fs2sint.c,
33222	  and _fs2char.c
33223
332242005-11-18 Bernhard Held <bernhard AT bernhardheld.de>
33225
33226	* src/SDCCcse.c (ReplaceOpWithCheaperOp): minor fix for debugging only
33227	* src/mcs51/gen.c (genUnpackBits): better code and a fix,
33228	(genCast) cosmetic change
33229	* src/ds390/gen.c (genUnpackBits, ): ported from mcs51
33230	* src/ds390/ralloc.c (packRegsForAssign): ported fix for bitfields
33231	from mcs51
33232	* support/regression/tests/bitfields (testSignedBitfields): added
33233
332342005-11-18 Borut Razem <borut.razem AT siol.net>
33235
33236	* sdcc/device/lib/Makefile.in: remove all unnecessary files
33237	* device/lib/pic/Makefile.rules, device/lib/pic16/Makefile.subdir:
33238	  introduced SILENT option to make building of pic16 libraries less
33239
332402005-11-18 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
33241
33242	* device/lib/modff.c, device/lib/ceilf.c, device/lib/floorf.c:
33243	  Now they work properly with floats between -1.0 and 0.0
33244	* device/lib/printf_large.c: Removed temporary patch for bug 1358192
33245
332462005-11-18 Maarten Brock <sourceforge.brock AT dse.nl>
33247
33248	* src/SDCCicode.c (printOperand): added missing else
33249
332502005-11-18 Bernhard Held <bernhard AT bernhardheld.de>
33251
33252	* src/SDCCsymt.c (computeType): fixed bug 1358192: added missing else,
33253	reformatted for	better readability
33254	* src/mcs51/gen.c (genUnpackBits): initial, incomplete support for
33255	signed bitfields
33256
332572005-11-17 Borut Razem <borut.razem AT siol.net>
33258
33259	* device/lib/pic16/Makefile.rules, device/lib/pic16/Makefile.subdir:
33260	  introduced SILENT option to make building of pic16 libraries less
33261	  verbose - used for nightly snapshot build
33262	* doc/sdccman.lyx: documented that SDCDB and ucSim are currently not
33263	  available on Win32 platforms.
33264	* sdcc/device/lib/Makefile.in: added library sources for mcs51, small,
33265	  medium, large, pic and pic16
33266
332672005-11-16 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
33268
33269	* device/lib/printf_large.c: Temporary patch for bug 1358192:
33270	  printf("%f"...) sets fraction to zero.
33271
332722005-11-16 Raphael Neider <rneider AT web.de>
33273
33274	* src/pic/pcode.c (LinkFlow): handle empty flows correctly,
33275	  fixes #1357221
33276	* src/pic/gen.c (genIfx): implemented for CARRY bit
33277	* src/pic16/gen.c (genAssign,genCast): fixed assigning/casting
33278	  to generic pointers, fixes #1357332,
33279	  (pic16_movLit2f): NEW,
33280	  (pic16_storeForReturn,genDataPointerSet): use pic16_movLit2f
33281
332822005-11-14 Maarten Brock <sourceforge.brock AT dse.nl>
33283
33284	* src/SDCCmain.c (parseCmdLine): fixed bug 1356800, thanks rsudjian
33285
332862005-11-11 Raphael Neider <rneider AT web.de>
33287
33288	* src/pic/gen.c: handle FPOINTERS like POINTERS everywhere
33289	* src/pic16/gen.c (pic16_derefPtr): now works for non-pointers as well,
33290	  compute pointer's type from operand,
33291	  (genUnpackBits,genPackBits): handle FPOINTERS correctly, re-indented,
33292	  improved single bit reads, fixes bug #1353379
33293
332942005-11-09 Borut Razem <borut.razem AT siol.net>
33295
33296	* support/scripts/sdcc.nsi: added lib/pic to the package
33297
332982005-11-08 Maarten Brock <sourceforge.brock AT dse.nl>
33299
33300	* src/SDCCval.c (valUnaryPM): fixed bug 1350699
33301
333022005-11-06 Maarten Brock <sourceforge.brock AT dse.nl>
33303
33304	* support/regression/tests/bug1348008.c: added
33305	* src/mcs51/gen.c (saveRBank, unsaveRBank): fixed bug 1348008
33306	* support/regression/tests/bug1337835.c: updated comment
33307
333082005-11-06 Borut Razem <borut.razem AT siol.net>
33309
33310	* sim/ucsim/error.cc, sim/ucsim/errorcl.h,
33311	  sim/ucsim/sim.src/stack.cc, sim/ucsim/sim.src/stackcl.h,
33312	  sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
33313	  sim/ucsim/sim.src/mem.cc, sim/ucsim/sim.src/memcl.h,
33314	  sim/ucsim/cmd.src/set.cc, sim/ucsim/cmd.src/show.cc:
33315	  dynamic construction of cl_error_class and derivates - 2.nd try
33316
333172005-11-05 Borut Razem <borut.razem AT siol.net>
33318
33319	* sim/ucsim/sim.src/error.cc: fixed uninitialized class member variable
33320	  bug, which caused Bus Errors on sparc solaris
33321
333222005-11-04 Borut Razem <borut.razem AT siol.net>
33323
33324	* sim/ucsim/error.cc, sim/ucsim/errorcl.h,
33325	  sim/ucsim/sim.src/stack.cc, sim/ucsim/sim.src/stackcl.h,
33326	  sim/ucsim/sim.src/uc.cc, sim/ucsim/sim.src/uccl.h,
33327	  sim/ucsim/sim.src/mem.cc, sim/ucsim/sim.src/memcl.h,
33328	  sim/ucsim/cmd.src/cmdconf.cc: dynamic construction of cl_error_class
33329	  and derivates to resolve the initialization problem on OSX
33330
333312005-11-02 Borut Razem <borut.razem AT siol.net>
33332
33333	* sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/newcmd.cc:
33334	  corrected typo - #include <winsock2.h>
33335
333362005-11-02 Maarten Brock <sourceforge.brock AT dse.nl>
33337
33338	* src/asm.c (printILine): always close tmpFile, thanks Beau E. Cox,
33339	  (_asxxxx_mapping): added org directive for future enhancements
33340
333412005-11-01 Borut Razem <borut.razem AT siol.net>
33342
33343	* sim/ucsim/app.cc, sim/ucsim/cmd.src/cmdutil.cc, sim/ucsim/cmd.src/newcmd.cc:
33344	  enabled sockets on WIN32
33345	* sim/ucsim/cmd.src/newcmd.cc: fixed bug with uninitialized variables
33346
333472005-10-31 Borut Razem <borut.razem AT siol.net>
33348
33349	* support/regression/generate-cases.py: escape backslashes in {testcase}:
33350	  WIN32 backslash path delimiters should be escaped when used in C strings
33351	* support/regression/tests/bitfields.c: exclude failing assertions for
33352	  __CYGWIN32__ and __MINGW32__ hosts
33353
333542005-10-30 Borut Razem <borut.razem AT siol.net>
33355
33356	* src/SDCCutil.c: corrected double comparison typo
33357
333582005-10-30 Maarten Brock <sourceforge.brock AT dse.nl>
33359
33360	* device/lib/medium/Makefile: added for new memory model medium
33361	* device/include/asm/mcs51/features.h: updated for medium/pdata
33362	* device/include/mcs51/c8051f120.h: added sfr16/sfr32 definitions,
33363	  added Multiply & Accumulate sbit's and MAC0_PAGE define
33364	* device/include/mcs51/c8051f300.h: added sfr16 definitions
33365	* device/include/mcs51/c8051f310.h: added sfr16 definitions
33366	* device/lib/_mullong.c: update for medium model
33367	* device/lib/incl.mk: added medium model
33368	* doc/sdccman.lyx: documented medium model
33369	* src/SDCCast.c (isBitAndPow2): simplified using updated powof2
33370	* src/SDCCicode.c (geniCodeMultiply, geniCodeDivision): use updated powof2
33371	* src/SDCCmain.c (optionsTable, linkEdit): enabled medium model
33372	* src/SDCCmem.c (allocIntoSeg): set iaccess for pdata symbols,
33373	  (allocParms): set SCLS and OCLS to pdata for medium model
33374	* src/SDCCsymt.c (processFuncArgs): use default_local_map and set iaccess
33375	  for pdata,
33376	  (powof2): return <0 if not power of 2
33377	* src/avr/gen.c (genBitWise): use updated powof2
33378	* src/mcs51/gen.c (genMinusDec): use acc if necessary,
33379	  (shiftR2Left2Result): small optimization in setup, save acc when storing,
33380	  (shiftLLeftOrResult): use B if necessary
33381	* src/mcs51/main.c (_mcs51_finaliseOptions, mcs51_port): added medium model
33382	* src/mcs51/peeph.def: renamed 226 to 226.b, added 226.a
33383	* src/pic/main.c (_pic14_do_link): made void parameter list explicit
33384	* support/regression/Makefile.in: added test-mcs51-medium
33385	* support/regression/ports/mcs51-medium/spec.mk: added to test medium model
33386
333872005-10-28 Bernhard Held <bernhard AT bernhardheld.de>
33388
33389	* src/SDCCsymt.c (compStructSize): make bitfields without (un)signed
33390	specifier unsigned
33391	* device/lib/time.c (mktime): fixed bug 1334315
33392
333932005-10-28 Raphael Neider <rneider AT web.de>
33394
33395	* device/include/pic/p16f_common.inc: added common declarations
33396	* src/pic/ralloc.c (initStack): moved regs *r to block start for Alpha
33397
333982005-10-27 Maarten Brock <sourceforge.brock AT dse.nl>
33399
33400	* src/mcs51/gen.c (getTempRegs): return 0 if not enough registers found,
33401	  (aopPutUsesAcc): added to predict accumulator use,
33402	  (assignResultValue): save acc if necessary,
33403	  (genMinusDec): store result if indirectly addressed,
33404	  (genDivOneByte):  save acc if necessary,
33405	  (movLeft2Result): bugfix if left already in acc,
33406	  (genAnd, genOr, genXor, shiftL2Left2Result, shiftR2Left2Result): pay more
33407	    attention to accumulator use (esp. pdata),
33408	  (genReceive): receive pdata correctly
33409	* src/SDCCicode.c (isOperandInPagedSpace): added to detect pdata operands
33410	* src/SDCCicode.h: added isOperandInPagedSpace prototype
33411
334122005-10-27 Raphael Neider <rneider AT web.de>
33413
33414	* doc/sdccman.lyx: corrected version (should be 2.5.4 not 2.5.5)
33415
334162005-10-27 Raphael Neider <rneider AT web.de>
33417
33418	* .version: changed version to 2.5.4
33419	* doc/sdccman.lyx: changed version to 2.5.4, added some remarks to PIC14
33420	* device/lib/pic/libsdcc/{_mulint.c,_mullong.c}: use unsigned literals,
33421	  (_divschar.c,divuchar.c,_mulchar.c,_modschar.c,_moduchar): NEW,
33422	    arithmetics support routines
33423	* device/lib/pic/Makefile.rules: have assembler sources preprocessed
33424	* device/lib/Makefile.in: also create installdir for pic
33425
33426	* src/SDCCopt.c (cnvToFcall): mark support routines `extern' for
33427	  pic14 port as well
33428	* src/pic/device.c (dump_sfr): rewritten to delegate register
33429	  placement to the linker (use `extern sym' rather than sym EQU addr),
33430	  (validAddress): fixed to check last specified address
33431	* src/pic/gen.c (aopForSym): added code to deal with array (useless?),
33432	  (popGetLit): truncate literal value to 8 bit,
33433	  (popGet): moved assert to more appropriate place
33434	  (popGetExternal): create pCode operand from and mark the according
33435	    symbol as being `extern'
33436	  (popGetAddr): added sanity check on immediate's offset, provide
33437	    GPOINTER tag on demand
33438	  (aopPut): fixed for immediates,
33439	  (mov2w_op): move operand's address or contents to WREG (depending on
33440	    operand type), safer variant of mov2w,
33441	  (movwf,call_libraryfunc): NEW, handy abbreviations,
33442	  (get_argument_pcop,get_return_val_pcop,pass_argument,
33443	  get_returnvalue): interface for accessing function parameters and
33444	    return values,
33445	  (assignResultValuei,genRet): use new parameter/return value interface
33446	  (pic14_getDataSize): back to old version handling generic pointers,
33447	  (pic14_toBoolean,genNot,genCpl,genCmpEq,genOrOp): heavily rewritten,
33448	    provided implementation and/or fixed old one,
33449	  (genMultOneByte,genDivOneByte,genModOneByte): implemented as library
33450	    calls, removed legacy 8051 reference code
33451	  (AccLsh,AccRsh): rewritten and fixed to deal with signed operands
33452	  (loadSignToC): NEW, move the operands sign bit to CARRY,
33453	  (genGenericShift): NEW, replaces genLeftShift, genRightShift and
33454	    genRightShiftSigned, accepts negative shift counts,
33455	  (setup_fsr): load FSR and adjust IRP (indirect memory access),
33456	  (emitPtrByteGet,emitPtrByteSet): rewritten, now works with
33457	    generic pointers, __data pointers and __code pointers,
33458	  (genUnpackBits,genPackBits): rewritten to work with generic pointers
33459	    and signed bitfields, limit bitfields to 8 bit,
33460	  (genDataPointerGet): fixed number of bytes read,
33461	  (genGenPointerGet,genConstPointerGet): fixed bitfield access,
33462	  (genPointerGet,genPointerSet): fixed handling of __code pointers,
33463	    pointers to constant data are no longer assumed to point to __code
33464	    space, removed invalid pointer types,
33465	  (bitpatternFromVal): retrieve the PICs representation of an integer
33466	    or float literal,
33467	  (genDataPointerSet): fixed assigning to po_immediate operands,
33468	  (genGenPointerSet): implemented as library call,
33469	  (genIfx): fixed incorrect condition,
33470	  (genAddrOf): limit generic pointers' addresses to 2 bytes,
33471	    provide GPOINTER tag according to destination's storage class,
33472	  (genCast): added code to handle casting to generic pointers, added
33473	    sign-/zero extension of the result
33474	  (aop_isLitLike,op_isLitLike): fixed handling of immediates
33475	* src/pic/gen.h: added macros to access IRP bit in STATUS register
33476	* src/pic/genarith.c (genAddLit): use min(result's,left's) size, sign
33477	  extend the result
33478	* src/pic/glue.c (is_shared_address,is_shared): check whether a given
33479	  address/register resides in the shared banks
33480	  (emitSymbolToFile): improved to handle global and `pinned' symbols,
33481	    put all variables into separate sections (have the linker arrange
33482	    them)
33483	  (picglue): put init code and interrupt handlers in separate sections
33484	* src/pic/main.c: added port specific options table, modified to PORT
33485	  structure to make GPOINTERs 3 byte, added pic14_options
33486	  (_pic14_do_link): private linking routine (update paths to libraries,
33487	    add libsdcc.lib by default)
33488	* src/pic/main.h: declare pic14_options
33489	* src/pic/pcode.c: fixed instructions i/o relations,
33490	  (RegCond): reverted to correct version,
33491	  (newpCodeOpLit): truncate literals to 8 bit,
33492	  (genericPrint): added debug output,
33493	  (getRegFromInstruction): fixed for various operand types, simplified
33494	  (BuildFlow): fixed broken handling of isntructions with labels
33495	  (LinkFlow): start at last instruction in flow (skip trailing comments),
33496	    pass the flow on to the next instruction after CALL
33497	  (pCodeReplace): NEW, replace a pCode and move meta data to the new one
33498	  (insertPCodeInstruction): fixed inserting after a skip instruction,
33499	  (DoBankSelect): fixed for labeled instructions
33500	  (OptimizepBlock): honor --nopeep switch
33501	  (AnalyzeFlow,ReuseReg): prevent crash on source files with no function
33502	* src/pic/pcodepeep.c (pCodePeepMatchRule): prevent NULL pointer accesses
33503	* src/pic/pcoderegs.c (regIsLocal): NEW, check visibility of a register
33504	  (pCodeOptime2pCodes): allow disabling this optimization via
33505	    --no-pcode-opt due seldomly occuring bugs, fixed some conditions
33506	    but is still buggy), started implementation of a dataflow based
33507	    pCode optimization (CSE + dead code elimination)
33508	  (pCodeRegMapLiveRangesInFlow): removed bogus inCond
33509	* src/pic/ralloc.c (initStack): renamed stack registers to STK%d, the new
33510	  names are independant of the stack location and therefore portable across
33511	  devices
33512
335132005-10-27 Maarten Brock <sourceforge.brock AT dse.nl>
33514
33515	* src/mcs51/ralloc.c (bitType): added to detect bit variables,
33516	  (selectSpil): fixed bug 1337835 by not spilling bit variables
33517	* support/regression/tests/bug1337835.c: added test for this bug
33518	* src/mcs51/peeph.def: restart after rule 3.c,
33519	  addded rules 263.x to optimize loading constants
33520
335212005-10-26 Raphael Neider <rneider AT web.de>
33522
33523	* src/SDCCsymt.c (compStructSize): allow signed bitfields for PIC ports
33524	* src/pic16/gen.c (genUnpackBits): support signed bitfields,
33525	  (genAssign): emit warning when casting literals to generic pointer
33526	    type, also applies when taking the address of a fixed variable,
33527	  (genCast): improved casting to generic pointers
33528	* src/pic16/glue.c (pic16emitStaticSeg): fixed(?) handling of fixed
33529	  extern variables, added verbose error message
33530	* device/include/pic16/{string.h,errno.h}: added #pragma library c
33531
335322005-10-26 Bernhard Held <bernhard AT bernhardheld.de>
33533
33534	* src/mcs51/gen.c (genMinus): fixed bug 1270906: reverse subtraction,
33535	carry must be complemented too
33536	* src/mcs51/peeph.def: addded rule 262 to remove double cpl c, which
33537	could be emitted by genMinus
33538	* src/SDCCval.c (constVal): fixed bug 1305065
33539
335402005-10-25 Bernhard Held <bernhard AT bernhardheld.de>
33541
33542	* src/SDCCast.c (addCast): added promotion for bit variables
33543	(decorateType): emit W_COMPLEMENT before the problem vanishes behind
33544	promotion casts + optimisation
33545	(optimizeGetWord): fix warning 'i' might be used uninitialized
33546	* src/mcs51/gen.c (genCpl): removed W_COMPLEMENT
33547	* src/ds390/gen.c (genCpl): removed W_COMPLEMENT
33548
335492005-10-24 Bernhard Held <bernhard AT bernhardheld.de>
33550
33551	* src/SDCCicode.c (ast2iCode): reverted to 1.224 because of regression:
33552	all chars are promoted to int; promotion should be handled in SDCCast.c
33553
335542005-10-15 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
33555
33556	* device/lib/_strcmp.c: Fixed bug 1326457
33557
335582005-10-11 Raphael Neider <rneider AT web.de>
33559
33560	* device/lib/pic16/libio/i2c.ignore: added 1320, fixes broken builds
33561	* device/lib/pic16/libdev/pic18f1320.c: added 1320's device library
33562
335632005-10-05 Maarten Brock <sourceforge.brock AT dse.nl>
33564
33565	* src/SDCC.y (AT): fixed bug with sfr32 addresses when built with GCC
33566	* support/regression/tests/sfr16.c: added test for the sfr32 bug
33567
335682005-10-04 Raphael Neider <rneider AT web.de>
33569
33570	* device/include/pic16/pic18fregs.h, src/pic16/devices.inc,
33571	  device/lib/pic16/pics.all: added pic18f1320
33572	* src/pic16/pcode.c (mnem2key): fixed prototype's argument mismatch
33573
335742005-09-30 Raphael Neider <rneider AT web.de>
33575
33576	* src/pic16/device.c (Pics16[]): moved device descriptions to devices.inc
33577	* src/pic16/devices.inc: NEW, provides device descriptions
33578	* src/pic16/gen.c (genInline): fixed handling of ';'-comments
33579
335802005-09-26 Maarten Brock <sourceforge.brock AT dse.nl>
33581
33582	* src/SDCCicode.c (operandOperation): added GETABIT, GETBYTE, GETWORD and
33583	  GETHBIT
33584
335852005-09-25 Maarten Brock <sourceforge.brock AT dse.nl>
33586
33587	* doc/sdccman.lyx: updated Highest Order Bit documentation,
33588	  documented Any Order Bit, Higher Order Byte and Higher Order Word
33589	* src/SDCC.y: added tokens GETABIT, GETBYTE, GETWORD
33590	* src/SDCCast.c (optimizeGetHbit): updated to also accept bool=expr&(1<<n),
33591	  (optimizeGetAbit): new, to get any bit, not only the high bit,
33592	  (optimizeGetByte): new, to get a byte from a (long) int: expr>>(8*n),
33593	  (optimizeGetWord): new, to get a word from a long int: expr>>(8*n),
33594	  (isConformingBody): also check GETABIT, GETBYTE, GETWORD,
33595	  (decorateType): '&': also try GETABIT, GETBYTE, GETWORD optimization,
33596	    RIGHT_OP: also try GETBYTE, GETWORD optimization,
33597	    GETABIT, GETBYTE, GETWORD: decorate them,
33598	  (isShiftRightLitVal, isBitAndPowOf2): new helper functions,
33599	  (ast_print): added GETABIT, GETBYTE, GETWORD
33600	* src/SDCCcse.c (isSignedOp): added GETABIT, GETBYTE, GETWORD
33601	* src/SDCCicode.c (codeTable): added GETABIT, GETBYTE, GETWORD,
33602	  (geniCodeBinary): new generic binary icode,
33603	  (ast2iCode): added GETABIT, GETBYTE, GETWORD
33604	* src/port.h: updated comment for PORT.hasExtBitOp
33605	* src/mcs51/gen.c (genGetAbit): new, to get any single bit,
33606	  (genGetByte): new, to get a single byte,
33607	  (genGetWord): new, to get a word from a long,
33608	  (gen51Code): added GETABIT, GETBYTE, GETWORD
33609	* src/mcs51/main.c (hasExtBitOp): added GETABIT, GETBYTE, GETWORD
33610
336112005-09-23 Raphael Neider <rneider AT web.de>
33612
33613	* configure.in, configure: have device/lib/pic configured
33614	* device/lib/Makefile.in: added model-pic14
33615	* device/lib/clean.mk: added pic/ to clean rule
33616	* device/lib/pic: added rudimentary pic14 library providing support
33617	  functions for multiplication/division/generic pointer access
33618	* src/SDCCopt.c (convilong): mark support functions as extern
33619	  for pic14 port as well
33620	* src/pic/gen.c (genMult): added assertions,
33621	  (genpic14Code): emit warning on unhandled iCodes
33622	* src/pic/main.c (_hasNativeMulFor): return true only for 8x8 bit
33623	* src/pic/pcode.c (pCodeOpCopy),
33624	* src/pic16/pcodepeep.c (pic16_pCodeOpCopy): fixed handling of various
33625	  pCodeOpReg-subtypes (PO_{STATUS,INTCON,PCL,PCLATH,PCLATU,BSR,
33626	  SFR_REGISTER}), made safe for future extensions
33627	* src/pic16/pcode.c (pic16_safepCodeUnlink): allow for removal of
33628	  instructions even if preceeded by SKIP instructions (also remove
33629	  them); removed unused code
33630	* src/pic16/pcode.h: added arg2 to pCodeOpLit to match pCodeOpLit2,
33631	  prevents leaving parts of the structure uninitialized after copying
33632
336332005-09-22 Maarten Brock <sourceforge.brock AT dse.nl>
33634
33635	* src/mcs51/gen.c (genMinus): fix for undetected bug introduced 3 months
33636	  ago by me
33637	* support/regression/tests/addsub.c: added test for the bug
33638
336392005-09-21 Raphael Neider <rneider AT web.de>
33640
33641	* device/include/pic16/pic18f1220.h,
33642	  device/lib/pic16/libdev/pic18f1220.c: added ECCPAS sfr and bitfield
33643	* device/lib/pic16/Makefile.rules: added missing opening paren
33644	* src/pic16/gen.c (pic16_genNot,pic16_genCpl): removed as these
33645	  are provided in genutils.c,
33646	  (genUminusFloat,genUminus,genCmpEq): added asserts on different
33647	  operand/result sizes,
33648	  (genCmp): assert on NULL pointers first, then check deref'ed values
33649	* src/pic16/genutils.c (pic16_genCpl): fixed for different operand/
33650	  result size
33651
336522005-09-18 Raphael Neider <rneider AT web.de>
33653
33654	* src/pic16/gen.c (genFarPointerGet,genFarPointerSet): removed
33655	  as these are now unused,
33656	  (genPointerGet,genPointerSet): handle FPOINTERs like POINTERs
33657	* src/pic16/pcode.c (pic16_symIsSpecial): assume REG_TMPs to be
33658	  local, avoids uninitialized pointer dereference on r->name
33659	* src/pic16/ralloc.c (newReg): fixed indentation
33660
336612005-09-13 Maarten Brock <sourceforge.brock AT dse.nl>
33662
33663	* src/SDCCval.c (constVal): fixed bug 730366
33664	* support/Util/SDCCerr.c,
33665	* support/Util/SDCCerr.h: added warning W_INVALID_INT_CONST
33666
336672005-09-10 Maarten Brock <sourceforge.brock AT dse.nl>
33668
33669	* as/mcs51/lkmem.c (summary2): fixed report for absolute areas (bug 1210220)
33670
336712005-09-09 Maarten Brock <sourceforge.brock AT dse.nl>
33672
33673	* src/mcs51/peeph.def (241.x): fixed bug when comparing generic pointers
33674
336752005-09-08 Maarten Brock <sourceforge.brock AT dse.nl>
33676
33677	* as/hc08/lkaomf51.c (OutputName): made name unsigned char,
33678	  (hex2dec): made hex_digit unsigned char, removed ascii dependance
33679	* as/mcs51/lkaomf51.c (OutputName): made name unsigned char,
33680	  (hex2dec): made hex_digit unsigned char, removed ascii dependance
33681	* as/mcs51/lkarea.c (lnkarea2): sort absolute areas to the front
33682	* packihx/packihx.c (hexDigit): made c unsigned char
33683	* as/mcs51/lklibr.c (fndsym),
33684	* link/z80/lkgb.c (gb),
33685	* link/z80/lklibr.c (fndsym),
33686	* link/z80/lkrloc.c (relr),
33687	* sim/ucsim/libltdl/ltdl.c (load_deplibs, try_dlopen),
33688	* src/SDCC.lex (checkCurrFile, process_pragma),
33689	* src/SDCCglue.c (spacesToUnderscores),
33690	* src/SDCCmain.c (setParseWithComma, processFile),
33691	* src/asm.c (tvsprintf, printCLine),
33692	* src/avr/gen.c (emitcode, aopPut),
33693	* src/ds390/gen.c (emitcode),
33694	* src/hc08/gen.c (emitcode, emitinline),
33695	* src/mcs51/gen.c (emitcode, genInline),
33696	* src/pic/pcodepeep.c (cvt_extract_destination, cvt_extract_status,
33697	  tokenizeLineNode),
33698	* src/pic/ralloc.c (debugLog),
33699	* src/pic16/pcodepeep.c (cvt_extract_destination, cvt_extract_status,
33700	  tokenizeLineNode),
33701	* src/pic16/ralloc.c (debugLog),
33702	* src/z80/main.c (_process_pragma):
33703	   made all ctype.h function calls safe
33704	* src/SDCCopt.c: include math.h for fabs
33705	* src/SDCCpeeph.c: added macros ISCHARDIGIT, ISCHARSPACE and ISCHARALNUM
33706	  and used them throughout the code to make ctype.h function calls safe
33707	* src/ds390/main.c (asmLineNodeFromLineNode),
33708	* src/mcs51/main.c (asmLineNodeFromLineNode): made p unsigned char*
33709	* src/pic/gen.c (DEBUGpic14_emitcode, pic14_emitcode): made lbp
33710	   unsigned char*
33711	* src/pic/pcode.c (mnem2key): made mnem unsigned char*,
33712	  (newpCodeAsmDir): made ctype.h function calls safe
33713	* src/pic16/gen.c (pic16_emitpcomment, DEBUGpic16_emitcode,
33714	  pic16_emitcode):  made lbp unsigned char*
33715	* src/pic16/pcode.c (mnem2key): made mnem unsigned char*,
33716	  (pic16_newpCodeAsmDir): made ctype.h function calls safe
33717	* src/xa51/gen.c (emitcode),
33718	* src/z80/gen.c (_emit2): made lbp unsigned char*
33719	* support/Util/MySystem.c (split_command): made cmd_line and p unsigned
33720	   char*
33721
337222005-09-05 Raphael Neider <rneider AT web.de>
33723
33724	* src/pic16/ralloc.c (pic16_allocDirReg): use device specific
33725	  access bank splitpoint
33726
337272005-09-05 Raphael Neider <rneider AT web.de>
33728
33729	* device/lib/pic16/libc/Makefile: added (missing) string to SUBDIRS
33730
337312005-09-03 Maarten Brock <sourceforge.brock AT dse.nl>
33732
33733	* .version: changed to version 2.5.3
33734	* doc/sdccman.lyx: changed version to 2.5.3,
33735	  documented --codeseg and --constseg and pragma codeseg and constseg,
33736	  documented bit parameters (reentrant) and bit returning
33737	* src/SDCCicode.c (geniCodeReceive): fixed (possible) bug generating
33738	   currFunc->recvSize, but is this ok for all ports?
33739	  (ast2iCode): result of ~ on unsigned char must be cast to int for
33740	   bool to work
33741	* src/SDCCmem.c (allocGlobal, allocLocal): don't put bit returning
33742	  function pointers in bit space
33743	* src/SDCCsymt.c (checkSClass): allow bit returning function pointers,
33744	  (processFuncArgs): call port.reg_parm() with reentrancy info
33745	* src/port.h,
33746	* src/avr/main.c,
33747	* src/ds390/main.c,
33748	* src/hc08/main.c,
33749	* src/pic/main.c,
33750	* src/pic16/main.c,
33751	* src/xa51/main.c,
33752	* src/z80/main.c: port.reg_parm prototype extended with
33753	  "bool reentrant" parameter
33754	* src/mcs51/main.c (_mcs51_regparm): use parameter reentrant instead of
33755	  options.stackAuto for allocating bit register parameters
33756	* src/mcs51/gen.c (genNot): optimized complementing direct bit,
33757	  (genSend): set BitBankUsed if it is,
33758	  (selectRegBank): factored out of genCall for use in genPcall,
33759	  (genCall): removed redundant dtype assignmen, use selectRegBank,
33760	  (genPcall): handle returning in Carry properly, save in F0 if needed,
33761	  (genReceive): handle bit register parameters
33762	* src/mcs51/ralloc.c (updateRegUsage): update BitBankUsed along the way,
33763	  (mcs51_assignRegisters): enable bit registers for all reentrant
33764	   functions and don't set BitBankUsed unconditionally
33765	* src/mcs51/peeph.def (177.d): fixed bug if %2==%3
33766	* support/regression/tests/bitvars.c: enable tests for SDCC_STACK_AUTO
33767	* support/regression/tests/funptrs.c: added tests for BOOL and for return
33768
337692005-08-27 Borut Razem <borut.razem AT siol.net>
33770
33771	* device/lib/Makefile.in: cp on sparc-solaris (SunOS) and on
33772	ppc-osx (Darwin) does not support -u option. It seems that it is
33773	supported only on Linux - GNU cp
33774
337752005-08-25 Borut Razem <borut.razem AT siol.net>
33776
33777	* sim/ucsim/gui.src/serio.src/Makefile.in,
33778	  sim/ucsim/s51.src/Makefile.in, sim/ucsim/avr.src/Makefile.in,
33779	  sim/ucsim/z80.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in,
33780	  sim/ucsim/xa.src/Makefile.in: install -s changed to 2 steps:
33781	  install and strip, since the strip at /usr/ccs/bin should be used
33782	  on solaris
33783
337842005-08-24 Borut Razem <borut.razem AT siol.net>
33785
33786	* clean.mk, device/lib/clean.mk: find on sparc-solaris does not support -maxdepth option
33787
337882005-08-23 Bernhard Held <bernhard AT bernhardheld.de>
33789
33790	* src/SDCCopt.c (convertToFcall): fixed modulus with divisors 1 and
33791	ffffffffu
33792
337932005-08-23 Maarten Brock <sourceforge.brock AT dse.nl>
33794
33795	* as/mcs51/aslink.h: completed lkrloc.c prototypes
33796	* as/mcs51/lkmain.c (link_main): fixed warning
33797	* device/include/stdbool.h: ds390 has no advanced bit support yet
33798	* src/SDCC.y: use SPEC_SHORT and renamed _signed to b_signed
33799	* src/SDCCsymt.c: use SPEC_SHORT and renamed _signed to b_signed
33800	* src/SDCCsymt.h (struct specifier): renamed _xxx bitfields to b_xxx
33801	  and updated their macros
33802	* src/SDCCval.c (constVal): updated comment for renamed b_long
33803
338042005-08-22 Maarten Brock <sourceforge.brock AT dse.nl>
33805
33806	* as/mcs51/asdata.c: changed ctype['['] to BINOP
33807	* as/mcs51/asexpr.c (expr): added case '[' for bit access in bdata,
33808	  (term): abused bit 15 of s_addr to indicate bit-addressable bytes,
33809	  (oprio): set priority for '['
33810	* as/mcs51/aslink.h: added define R_BIT, and prototypes for adb_bit
33811	   and adb_24_bit
33812	* as/mcs51/asm.h: added defines R_BIT and S_BIT
33813	* as/mcs51/lkarea.c (lnksect2): use T for seg BIT_BANK and overlay it
33814	* as/mcs51/lkdata.c: changed ctype['['] to BINOP
33815	* as/mcs51/lkmain.c (Areas51): rel2 contains 12 (=C) areas now,
33816	  added overlayable BIT_BANK area
33817	* as/mcs51/lkmem.c (summary): add BIT_BANK to BSEG_BYTES in the report,
33818	  (summary2): explain 'T' in legenda
33819	* as/mcs51/lkrloc.c: replaced old K&R style,
33820	  (relr): added R_BIT processing,
33821	  (errmsg): added "Bit-addressable relocation error",
33822	  (adb_bit): added for converting from byte- to bit-addressable space,
33823	  (adb_24_bit): added for converting from byte- to bit-addressable space
33824	* device/include/stdbool.h: changed BOOL to __bit for mcs51 as it can be
33825	   used in reentrant functions now even as return value
33826	* device/lib/_gptrput.c (_gptrput): removed obsolete code
33827	* src/SDCCast.c (resultTypePropagate): also propagate AND_OP and OR_OP,
33828	  (decorateType): case '!', GETHBIT, AND_OP, OR_OP: result in bool or char
33829	* src/SDCCglobl.h: added indicator BitBankUsed
33830	* src/SDCCglue.c (glue): emit area BIT_BANK with byte 'bits' and equ's for
33831	   the bit registers b0-b7
33832	* src/SDCCicode.c (operandFromSymbol): removed IS_BITVAR check,
33833	  (geniCodeCast): fixed bug 1263853,
33834	  (geniCodeLogicAndOr): put result in bool or char,
33835	  (geniCodeReceive): added parameter func for accessing the return type,
33836	  (geniCodeFunctionBody): pass func to geniCodeReceive
33837	* src/SDCCmain.c: added indicator BitBankUsed
33838	* src/SDCCmem.c (allocLocal): explicitly set sclass for V_BIT
33839	* src/SDCCsymt.c (newBoolLink): added for creating a bool/bit,
33840	  (checkSClass): don't put automatic bool/bit on stack,
33841	  (checkFunction): removed check on function cannot return bit
33842	* src/SDCCsymt.h: added newBoolLink prototype
33843	* src/mcs51/gen.c (rb1regs): added bit registers,
33844	  (movc): created for assigning to carry,
33845	  (pushReg, popReg): created for pushing registers,
33846	  (sameRegs): check both AOP_REG and AOP_CRY types,
33847	  (aopOp): handle bit registers,
33848	  (aopPut): optimization no self-assign,
33849	  (saveRegisters): push reg->base (bits) only once for bit registers,
33850	   and use pushReg,
33851	  (unsaveRegisters): pop reg->base only once and use popReg,
33852	  (assignResultValue): added parameter func and return in carry for bits,
33853	  (genIpush): optimization no reload in A if not changed,
33854	  (genSend): bit parameters in reentrant functions are passed in bit
33855	   registers by first assigning to bits in B, then save registers and
33856	   copy B to bits,
33857	  (genCall): handle returning in Carry properly, save it in F0 if needed,
33858	  (genPcall): updated assignResultValue call, this is not safe yet for bit
33859	   returning function !!!
33860	  (genFunction): don't generate equ's for bit registers and use pushReg,
33861	  (genEndFunction): take care of bit returning functions and use popReg,
33862	  (genRet): return bit in Carry,
33863	  (genIfx): optimize bit registers and other directly addressable bits,
33864	  (genReceive): updated assignResultValue call
33865	* src/mcs51/main.c (_mcs51_reset_regparm): added regBitParmFlg,
33866	  (_mcs51_regparm): allow passing of upto 8 bit parameters in bit
33867	   registers when using stack-auto
33868	* src/mcs51/ralloc.c (_G): added allBitregs,
33869	  (regs8051): added the bit registers,
33870	  (createStackSpil): use macro IS_BIT,
33871	  (getRegBit): added to allocate a bit register, else spill,
33872	  (getRegBitNoSpil): added to allocate a bit register, else a gpr,
33873	  (updateRegUsage): factored out to ease stepping while debugging,
33874	  (serialRegAssign): use updateRegUsage, only spill bits if necessary,
33875	   also allocate bit registers,
33876	  (fillGaps): handle bit registers,
33877	  (findAllBitregs): added to create bit vector with all bit registers,
33878	  (mcs51_allBitregs): returns this bit vector,
33879	  (mcs51_assignRegisters): when using stack-auto use bit registers for
33880	   passing parameters and creating local variables
33881	* src/mcs51/ralloc.h: added B0_IDX..B7_IDX and prototype mcs51_allBitregs
33882
338832005-08-22 Borut Razem <borut.razem AT siol.net>
33884
33885	* device/lib/Makefile.in: replaced find option -or with -o
33886	  to make it run on solaris
33887
338882005-08-22 Raphael Neider <rneider AT web.de>
33889
33890	* src/pic16/gen.c (pic16_loadFromReturn): added check for AOP_PCODE,
33891	  fixes #1265442 (crash on Solaris)
33892
338932005-08-20 Borut Razem <borut.razem AT siol.net>
33894
33895	* configure, configure.in: added tests for libsocket and libnsl libraries,
33896	  requred by sdcdb on sparc-solaris; generate support/regression/Makefile
33897	  from support/regression/Makefile.in
33898	* support/regression/Makefile.in: added
33899	* device/lib/pic16/Makefile.common.in: force make to use bash shell
33900	* sim/ucsim/libtool: regenerated on sparc-solaris
33901	* sim/ucsim/avr.src/Makefile.in, sim/ucsim/hc08.src/Makefile.in,
33902	  sim/ucsim/s51.src/Makefile.in, sim/ucsim/xa.src/Makefile.in,
33903	  sim/ucsim/z80.src/Makefile.in: removed GNU ld specific linker options
33904	  -Wl,--start-group and -Wl,--end-group to enable ucsim compilation on
33905	  sparc-solaris, which doesn't use GNU ld linker
33906	* device/lib/Makefile.in: cp on sparc-solaris (SunOS) does not support -u option
33907	* as/Makefile: find on sparc-solaris does not support -maxdepth option
33908
339092005-08-19 Maarten Brock <sourceforge.brock AT dse.nl>
33910
33911	* src/mcs51/peeph.def: updated comments
33912
339132005-08-16 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
33914
33915	* device/lib/_gptrget.c,
33916	* device/lib/_gptrput.c: slightly shorter
33917	* doc/sdccman.lyx: incremented version
33918	* src/mcs51/peeph.def: moved peephole comments to the line of first
33919	  change to better keep line correlation, reanimated 186.e
33920	* src/mcs51/peeph.def: renamed similar peepholes by using suffixes
33921
339222005-08-16 Slade Rich <slade_rich AT users.sourceforge.net>
33923
33924	* src/pic/pcode.c : Pasted ".line" assembly directives patch from
33925	  David Saxton with quotes around file name.
33926
339272005-08-15 Borut Razem <borut.razem AT siol.net>
33928
33929	* support/regression/tests/bitfields.c, support/regression/tests/bitvars.c,
33930	  support/regression/tests/bitwise.c, support/regression/tests/literalop.c,
33931	  support/regression/tests/rotate.c, support/regression/tests/zeropad.c:
33932	  make tests run on x86_64 platform
33933
339342005-08-13 Raphael Neider <rneider AT web.de>
33935
33936	* device/lib/pic16/Makefile.subdir: weakened clean-intermediate rule
33937	  as it might be executed DURING a build (parallel make is wonderful)
33938
339392005-08-13 Raphael Neider <rneider AT web.de>
33940
33941	* device/lib/Makefile.in (port-specific-objects-pic16):
33942	  revert to cp $(PORT)/bin/*.* $(PORTDIR)
33943	* device/lib/pic16/Makefile: added .PHONY targets, removed builddir
33944	  dependency
33945	* device/lib/pic16/Makefile.rules: build subdirs before creating
33946	  the library, removed builddir rule, create $(builddir) early in
33947	  recurse rule, use empty recurse rule for leaf directories
33948	* device/lib/pic16/Makefile.subdir: added phony targets, ignore
33949	  mkdir errors (race condition), removed duplicate suffix "hex"
33950	  from clean rules
33951	* device/lib/pic16/libdev/Makefile: recursive make via + and $(MAKE)
33952	* device/lib/pic16/libio/Makefile: create sub-make's builddir early,
33953	  prevents mkdir -p from aborting on Alpha
33954
339552005-08-12 Raphael Neider <rneider AT web.de>
33956
33957	* src/pic16/glue.c (pic16_print(G)PointerType): do not flush
33958	  db-statements in order to allow for arrays of pointers in code
33959	  sections to be placed without interspersed 0-padding, fixes
33960	  bug #1256215
33961	* (emitStatistics): fixed division by zero for pic18f1220
33962	* src/pic16/pcode.c: buffer (up to) 12 DB directives to allow for
33963	  unpadded writing of 8-bit, 16-bit, 24-bit and 32-bit values
33964	* (pic16_emitDS): respect DB_ITEMS_PER_LINE
33965	* (pic16_pCodeConstString): keep track of already emitted string
33966	  literals to prevent "duplicate definitions of symbol _str_NR"
33967	* src/pic16/ralloc.c (pic16_allocRegByName): removed not so helpful
33968	  debug message
33969	* device/lib/Makefile.in: ignore failing PIC16 library builds
33970	* device/lib/pic16/Makefile: do not build if gputils are missing
33971	* device/lib/pic16/Makefile.common.in: do not enforce MAKEFLAGS=-s
33972
339732005-08-10 Raphael Neider <rneider AT web.de>
33974
33975	* device/lib/Makefile.in: fixed copying pic16 libraries (broken by
33976	  my last commit)
33977
339782005-08-10 Raphael Neider <rneider AT web.de>
33979
33980	* src/*.c, src/pic16/{gen.c,glue.c,main.c}: applied Vangelis
33981	  Rokas' patch to add the new fixed point type "__fixed16x16"
33982	* device/lib/pic16/libsdcc/fixed16x16: added Vangelis' support
33983	  functions for __fixed16x16 arithmetics
33984	* device/lib/pic16: reimplemented the build system to support
33985	  a separate build directory, better handling of libio (create
33986	  the library in a separate subdir for each architecture) and
33987	  easier configuration (centralized in Makefile.common)
33988
339892005-08-07 Raphael Neider <rneider AT web.de>
33990
33991	* src/pic16/gen.c (genrshTwo): fixed sign extension
33992	* src/pic16/device.c: added pic18f2320, 4220 and 4320
33993	* device/include/pic16/pic18f2220.h: changed some bit definitions,
33994	  added T0CONbits
33995	* device/include/pic16/pic18f4220.h: NEW, header for
33996	  pic18f4220 and pic18f4320
33997	* device/include/pic16/pic18fregs.h: added new devices,
33998	  embraced Nop(), ClrWdt(), Sleep() and Reset() with do {} while(0)
33999	* device/include/pic16/signal.h: resolved name clashes
34000	  on bit definitions, added DEF_HANDLER2(sig1,sig2,handler)
34001	  to also allow testing for interrupt enable bits, added
34002	  comments on how to use the macros
34003	* device/lib/pic16/libdev/pic18f2220.c: added T0CONbits
34004	* device/lib/pic16/libdev/pic18f{2320,4220,4320}.c: NEW,
34005	  register definitions for the devices
34006	* device/lib/pic16/pics.all: added new devices
34007	* device/lib/pic16/libc/stdlib/calloc.c: fixed zeroing
34008	  allocated memory
34009	* device/lib/pic16/libc/stdlib/memfree: do not count
34010	  the block header as free memory
34011	* device/lib/pic16/libc/stdlib/memmisc.c (_initHeap):
34012	  simplified and added missing end-of-blocklist-marker
34013	  (reported by Peter Onion, fixes #1252814)
34014	* (_mergeHeapBlock): fixed loop condition
34015	* device/lib/pic16/libc/stdlib/realloc.c: return NULL for
34016	  len==0, restructured code
34017	* device/lib/pic16/libc/stdlib/{malloc,memfreemax}.c: cleaned
34018	  up a bit, reduced bitfield accesses, prevent endless loops
34019	  in case of heap corruption
34020	* device/lib/pic16/libc/stdlib/x_ftoa.c: disabled
34021	  "unreferenced arguments/must return a value" warnings
34022	* device/lib/pic16/libio/usart/ubaud.c (usart_baud):
34023	  replaced BAUDREG with SPBRG
34024	* device/lib/pic16/libsdcc/lregs/{lrrest.c,lrst.c},
34025	  device/lib/pic16/debug/gstack/gstack.c: replaced
34026	  _naked, _asm, _endasm with __naked, __asm, __endasm
34027
340282005-08-05 Raphael Neider <rneider AT web.de>
34029
34030	* src/pic16/gen.c (pic16_aopGet): fixed handling of offsets in
34031	  AOP_PCODE operands, fixes multibyte union-bitfield-accesses
34032
340332005-08-05 Borut Razem <borut.razem AT siol.net>
34034
34035	* device/lib/Makefile.in: added missing ';'
34036	* configure: removed ^M characters
34037
340382005-08-04 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
34039
34040	* device/include/mcs51/at89c51ed2.h, device/include/mcs51/p89v51rd2.h,
34041	  device/include/mcs51/at89s53.h: changed to GNU Lesser General Public
34042	  License
34043
340442005-08-04 Borut Razem <borut.razem AT siol.net>
34045
34046	* configure.in: pic16 libraries build 2nd try - enable running
34047	  configure in device/lib/pic16
34048	* configure: regenerated from configure.in
34049	* device/lib/Makefile.in: create $(PORT)/bin directory
34050
340512005-08-03 Raphael Neider <rneider AT web.de>
34052
34053	* src/pic16/gen.c (pic16_derefPtr): NEW, single place
34054	  to get/set values via pointers
34055	* (genUnpackBits,genPackBits): changed detection of
34056	  ptr->bitfield vs. sym.bitfield, fixed access via generic
34057	  pointers, removed dead (wrong) code for multibyte bitfields
34058	* (genNearPointerGet, genGenPointerGet): removed useless code,
34059	  fixed bitfield detection, fixes #1250594
34060	* (genNearPointerSet): removed useless code
34061	* src/pic16/gen.h: renamed pic16_emitpcode to pic16_emitpcode_real
34062	  and introduced macro pic16_emitpcode that conditionally emits
34063	  the origin of the following pCode (useful for debugging SDCC)
34064	* src/pic16/pcode.c: changed (and disabled) some debug outputs
34065	* (createDefmap): fixed handling of LFSR for --optimize-df
34066
340672005-08-02 Borut Razem <borut.razem AT siol.net>
34068
34069	* device/lib/Makefile.in: pic16 libraries build enabled since
34070	  gputils-0.13.2 are now localy installed at sourceforge's compile farm
34071
340722005-08-02 Raphael Neider <rneider AT web.de>
34073
34074	* src/pic16/gen.c (genPackBits): removed deprecated warning
34075	* (genGenPointerSet): fixed bitfield detection
34076
340772005-08-02 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
34078
34079	* device/include/mcs51/msm8xc154s.h: Removed PT2 definition, now in 8052.h.
34080
340812005-07-31 Raphael Neider <rneider AT web.de>
34082
34083	* device/lib/pic16/libdev/pic18f458.c,
34084	  device/include/pic16/pic18f458.h: added missing T0CONbits
34085
340862005-07-29 Maarten Brock <sourceforge.brock AT dse.nl>
34087
34088	* device/include/mcs51/msm8xc154s.h: added, thanks to Matthias Arndt
34089
340902005-07-28 Maarten Brock <sourceforge.brock AT dse.nl>
34091
34092	* src/mcs51/gen.c (operandsEqu): fixed bug 1246687
34093
340942005-07-23 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
34095
34096	* device/include/mcs51/at89c51ed2.h: added.
34097
340982005-07-23 Raphael Neider <rneider AT web.de>
34099
34100	* src/pic/gen.h: added emitpcode macro for debugging
34101	* src/pic/gen.c (emitpcode): renamed to emitpcode_real
34102	  and replace by macro adding debug information on demand
34103	* (genNot): fixed to C semantics (!0 = 1; !x = 0 iff x != 0)
34104	* (gencjne): tried to fix; replaced with correct (slower) code
34105	* (gen{Unp,P}ackBits): fixed single bit access
34106	* src/pic/pcode.c (AnalyzepCode): fixed DFPRINTF argument
34107	* src/pic/pcodepeep.c (pCodeSearchCondition): fixed finding
34108	  previous instruction
34109	* src/pic/pcoderegs.c (regIsSpecial): NEW, check whether a
34110	  register has to be handled with care (forbidding movement
34111	  of assignments/uses, removing assignments completely, ...)
34112	* (pCodeOptime2pCodes): make use of regIsSpecial
34113	* added lots of debugging output (commented out)
34114	* src/pic/rallloc.c (deassignLRs): prevent operand registers
34115	  from being reused as result UNLESS it is known to work
34116
341172005-07-23 Maarten Brock <sourceforge.brock AT dse.nl>
34118
34119	* support/Util/dbuf.h: include <stddef.h> for size_t
34120	* .version: changed to version 2.5.2
34121
341222005-07-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34123
34124	* src/SDCCloop.c (loopInvariants): fixed bug #1234048
34125
341262005-07-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34127
34128	* src/hc08/gen.c (genMinus): fixed bug #1241835,
34129	  (genModOneByte): removed needless psha/pula
34130
341312005-07-22 Raphael Neider <rneider AT web.de>
34132
34133	* src/SDCCmain.c (linkEdit): initialized linkerScriptFileName,
34134	  have PIC14 handled like PIC16, fixes broken pic14 linker calls
34135	* src/pic/gen.c (resolveIfx): do not "invent" labels
34136	* (genSkipc): changed to positive logic
34137	* (genSkipCond): removed as no longer needed
34138	* (pic14_mov2w_regOrLit,genCmp): NEW, replacement for buggy version,
34139	  backport from PIC16
34140	* (genLeftShift): check operands are in different registers
34141	* src/pic/genarith.c (genPlus): replaced INCF with ADDLW as
34142	  INCF does not update CARRY...
34143	* src/pic/main.c: fixed _linkCmd
34144	* src/pic/pcode.c (unlinkpCode): added inactive code
34145	* src/pic/ralloc.c (deassignLRs): keep arguments to shift operations
34146	  alive (do not assign result and operand overlapping registers)
34147
341482005-07-22 Raphael Neider <rneider AT web.de>
34149
34150	* src/pic/device.c (dump_sfr): replaced register declaration with
34151	  call to emitSymbolToFile() to avoid duplicate symbols
34152	* (assignRelocatableRegisters): do not declare external symbols
34153	* src/pic/ralloc.c (allocNewDirReg): fixed to get size of arrays
34154	  right (take size of type, not etype)
34155	* (allocDirReg): fixed call to allocNewDirReg() to pass OP_SYM_TYPE
34156	* (writeUsedRegs): also dump dynDirectRegs (e.g. local variables)
34157	* (packRegsForAccUse): disabled assignment of WREG as
34158	  the result reg to prevent occurence of just fixed #1235003,
34159	  fixes #1242954
34160	* src/pic/glue.c (emitSymbolToFile): NEW, central place to declare
34161	  symbols (avoids duplicate symbols in .asm file)
34162	* (pic14emitRegularMap): use emitSymbolToFile()
34163	* src/pic/gen.c (aopOp): fixed spillLocation handling
34164	* (gen{Unp,P}ackBits): fixed acquiring bit-operands
34165	* (genDataPointerSet): removed unneccessary variables/output
34166
341672005-07-22 Maarten Brock <sourceforge.brock AT dse.nl>
34168
34169	* as/mcs51/lkarea.c: enlarged codemap for banked memory
34170	* device/lib/mcs51/crtbank.asm: added # to 0x0F
34171
341722005-07-21 Raphael Neider <rneider AT web.de>
34173
34174	* src/pic/gen.c (aopOp): do not generate AOP_ACC operands as pic14
34175	  architecture cannot handle them efficiently, fixes bug #1235003
34176	* src/pic16/device.c (pic16_dump_{u,i}section,pic16_dump_int_registers):
34177	  check for empty sets before using them (fixes bug #1232190)
34178
341792005-07-19 Maarten Brock <sourceforge.brock AT dse.nl>
34180
34181	* as/mcs51/lkarea.c (lnkarea, lnkarea2): improved BSEG size calculation,
34182	  (lnksect2): generate warnings for memory overlap
34183	* src/SDCC.lex (doPragma, process_pragma): added pragma's codeseg and
34184	  constseg to set the name of these segments so you can instruct the linker
34185	  to place them in banks
34186	* src/SDCCast.c (decorateType): use new macro IS_FUNCPTR()
34187	* src/SDCCglobl.h: added MODEL_HUGE to enum,
34188	  added code_seg and const_seg to options
34189	* src/SDCCglue.c (emitMaps): use options.const_seg,
34190	  (createInterruptVect): put interrupt vectors in segment HOME,
34191	  (glue): put HOME before static segment and put the main glue in HOME,
34192	  (glue): use options.code_seg
34193	* src/SDCCicode.c (geniCodeCall): use new macro IS_FUNCPTR()
34194	* src/SDCCmain.c: added option --codeseg and --constseg to set the name of
34195	  these segments so you can instruct the linker to place them in banks
34196	  (linkEdit): use code_loc for HOME segment which should be the first
34197	  segment in code memory now
34198	* src/SDCCmem.c: fixed more stuff like bug 1238386
34199	* src/SDCCsymt.c (getSize): use generic pointer size for banked functions,
34200	  (changePointer): don't change function pointers to code pointers for
34201	  banked functions,
34202	  (compareType): added exceptional check for banked function pointers
34203	* src/SDCCsymt.h: changed IFFUNC_ISBANKEDCALL, added IS_FUNCPTR
34204	* src/hc08/main.c (_hc08_genAssemblerPreamble): put HOME first, put CSEG
34205	  after static in code memory
34206	* src/mcs51/gen.c: added aopLiteralLong prototype,
34207	  (aopForSym): use getSize for functions,
34208	  (genCall): generate banked calls over one trampoline __sdcc_banked_call
34209	  in HOME with lsb of address in r0, msb in r1 and bank in r2, use
34210	  -Wl-bBANKSEG=0xbbaaaa option to set the address (aaaa) and bank (bb) of
34211	  the segment,
34212	  (genPcall): use call for literal function pointers and generate banked
34213	  calls over the one trampoline so there's only one place for the user to
34214	  modify according to his/hers hardware,
34215	  (genEndFunction): jump to __sdcc_banked_ret in HOME for banked functions,
34216	  (genPlusIncr): moved check icount>4 beyond inc dptr optimization
34217	* src/mcs51/main.c: added keyword banked,
34218	  (_mcs51_genExtraAreas): put HOME first followed by GSINIT, STATIC and CSEG
34219	* support/Util/SDCCerr.c,
34220	* support/Util/SDCCerr.h: added E_BANKED_WITH_CALLEESAVES, registers are
34221	  needed for passing the bank and address to the trampoline
34222	* device/lib/mcs51/crtbank.asm: added for bankswitching
34223	* device/lib/mcs51/Makefile: added crtbank
34224
342252005-07-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34226
34227	* src/SDCCcse.c (algebraicOpts): fixed loss of volatility
34228	  for fields at offset 0 of a struct or union as reported
34229	  on 2005-07-07 in the developer mailing list.
34230
342312005-07-15 Maarten Brock <sourceforge.brock AT dse.nl>
34232
34233	* src/SDCCmem.c: fixed bug 1238386
34234
342352005-07-12 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
34236
34237	* src/mcs51/peeph.def: added labelrefcounting for peepholes
34238	  (patch #1144962), added peephole 300, enabled 259.x
34239	* doc/sdccman.lyx: removed screenshot and provided link instead
34240
342412005-07-05 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
34242
34243	* doc/sdccman.lyx: added section about debugging with ddd
34244	* doc/figures/ddd_example.eps: screenshot of debugging session
34245
342462005-07-04 Raphael Neider <rneider AT web.de>
34247
34248	* src/pic/gen.c (genPointerGet): handle pointers to CONST values
34249	  like CODE pointers, fixes #1115683
34250	* src/pic/pcode.c (DoBankSelect): forget LastRegIdx during function
34251	  call, fixes bugs #1232211, #1228110,
34252	  fixed wrong casts to pCodeFlow from pCodeInstructions
34253
342542005-07-04 Raphael Neider <rneider AT web.de>
34255
34256	* src/pic/gen.c (popGet): changed assert to allow for
34257	  bit operands
34258	* (popGetAddr): changed signature to provide
34259	  an additional index, patched all call sites
34260	* (genCmpEq): handle literal-like operands correctly
34261	* (genAddrOf): added sanity checks on __code/__data pointers
34262	* (genAssign): added handling of symbols from __code section
34263	* (gencjne): do not generate code for comparisons whose result
34264	  is neither stored nor used, fixes bug #1171114
34265	* (AccLsh, AccRsh): operate on operand instead of WREG
34266	* (shift{Left,Right}_Left2ResultLit): NEW, size independant
34267	  replacement for Shift{LR}{12}Left2Result; shift (byte/int/long)
34268	  by known count
34269	* rewrote complete shift-by-literal logic, commented unused
34270	  functions out
34271	* (genConstPointerGet): get multiple bytes (if result size > 1),
34272	  fixed handling of non-immediate addresses
34273	* (genPointerGet): handle CODE pointers like CONST pointers
34274	* (genpic14Code): insert C-SRC lines as Cource-pCodes
34275	* ({aop,op}_isLitLike): NEW, single place to decide whether an
34276	  operand is to be treated as a literal or not
34277	* (mov2w,genPcall,genCmpEq),
34278	  src/pic/genarith.c: use aop_isLitLike() to decide between
34279	  literal/register contents
34280	* (addSign): added missing offset
34281	* src/pic/gen.h: remove newline after FENTRY/FEXIT comments,
34282	  only emit comment in debug-mode,
34283	  use {aop,op}_isLitLike throughout the file
34284	* src/pic/glue.c: fix initializers for pointers (work in progress)
34285	* src/pic/pcode.c (get_op): honor index on _const symbols
34286	* ({reset,dump}pCodeStatistics): NEW, estimate code size
34287	* (dumppBlock): added pCode size estimation
34288	* src/pic/ralloc.c (deassignLRs,serialRegAssign,packRegisters):
34289	  check for IS_SYMOP before OP_SYMBOL'ing
34290	* fixed indentation, compacted switch-statements
34291	* (allocReg): find free register and allocate it instead of
34292	  allocating new registers all the time
34293	* (deassignLRs): prevent POINTER_GET's from being assigned the same
34294	  registers as its operands (necessary only for multibyte GETs)
34295
342962005-07-01 Raphael Neider <rneider AT web.de>
34297
34298	* src/pic/gen.h: added prototypes emitpComment, popGetAddr and
34299	  debugging .asm-output macros FENTRY + FEXIT
34300	* src/pic/gen.c (Safe_vsnprintf): NEW, is there a more generic
34301	  way... I wonder...
34302	* (emitpComment): NEW, printf to pCode
34303	* (popGet): added assert on too large offsets, fixed PO_IMMEDIATE's
34304	  offset handling
34305	* (popGetAddr): NEW, variant of popGet to access an immediates
34306	  high(er) bytes instead of the n'th byte of memory they reference,
34307	  replaced popGet with popGetAddr where neccessary
34308	* (genDataPointerGet): reactivated and fixed implementation
34309	* (genNearPointerGet): enabled call to genDataPointerGet, fixes array-
34310	  accesses
34311	* (genDataPointerSet): fixed multibyte assignments
34312	* (genpic14Code): fixed --i-code-in-asm handling
34313	* src/pic/genarith.c: fixed PO_IMMEDIATE issue using popGetAddr,
34314	* (genPlus): fixed index-out-of-bounds error
34315	* src/pic/pcode.c (get_op): fixed PO_IMMEDIATE's index/offset handling
34316	* src/pic/ralloc.c: added debugging output macro FENTRY2
34317	* (spillThis): fixed indentation, enbraced for-body for clarity
34318	* (rematStr): commented out as now unused
34319	* (regTypeNum): commented out special spill case (overwrites
34320	  arbitrary values)
34321	* fixes bugs #1229346, #1216476 (both arrays) and #1115667 (SIGSEGV)
34322
343232005-06-30 Maarten Brock <sourceforge.brock AT dse.nl>
34324
34325	* doc/sdccman.lyx: documented sfr16/sfr32,
34326	  added example for using storage class with function pointers
34327	* src/mcs51/gen.c (genPlusIncr): optimized small offsets from dptr
34328
343292005-06-28 Maarten Brock <sourceforge.brock AT dse.nl>
34330
34331	* device/lib/_gptrget.c: also push/pop _PSBANK, added # to 0x03
34332	* device/lib/_itoa.c,
34333	* device/lib/_ltoa.c: optimized codesize
34334	* src/SDCCsymt.c (checkSClass): added sanity check for sfr at addresses,
34335	  but don't know how to suppress the double warning.
34336	* src/mcs51/gen.c (genPlusIncr): fixed bug when incrementing volatile int's
34337	* support/Util/SDCCerr.c,
34338	* support/Util/SDCCerr.h: added warning W_SFR_ABSRANGE for sanity check
34339
343402005-06-27 Maarten Brock <sourceforge.brock AT dse.nl>
34341
34342	* as/mcs51/asexpr.c (expr): disabled warning "not in .flat24 mode",
34343	  fixed old K&R prototypes
34344	* as/mcs51/asout.c (outrb): always output as if generating 24bit addresses
34345	* device/lib/_gptrget.c,
34346	* device/lib/_gptrgetc.c,
34347	* device/lib/_gptrput.c: changed versions for new memory indicator values,
34348	  also new versions for small generic pointers and banked generic pointers
34349	* src/port.h: added const_name
34350	* src/SDCC.lex: added keywords sfr16, __sfr16, sfr32, __sfr32
34351	* src/SDCC.y: added tokens SFR16, SFR32 and their sfr_attributes
34352	* src/SDCCcse.c (findPrevIc): check all associative operators
34353	* src/SDCCglue.c (emitMaps): use CONST_NAME if defined
34354	* src/SDCCicode.h: added macro IS_ASSOCIATIVE
34355	* src/SDCCmem.c: updated comments,
34356	  set far-space to 0 for pdata, results in optimized code
34357	* src/SDCCmem.h: added macro CONST_NAME
34358	* src/SDCCsymt.h: renumerated generic pointer types GPTYPE_... thereby
34359	  moving the info into the highest bits, see also gptrget/gptrput
34360	* src/src.dsp: added sdcc.ico to project files
34361	* src/avr/gen.c (genCast): fixed bug 0x%d
34362	* src/avr/main.c (avr_port): added "CONST (CODE)" for const_name
34363	* src/ds390/gen.c (aopForRemat, adjustArithmeticResult): disconnected direct
34364	  relation between ptr_type and DCL_TYPE,
34365	  (genCast): fixed bug 0x%d
34366	* src/ds390/main.c (ds390_port, tininative_port, ds400_port): added "CONST
34367	  (CODE)" for const_name
34368	* src/hc08/gen.c (genCast): fixed bug 0x%d
34369	* src/hc08/main.c (_hc08_genAssemblerPreamble): added .area ...const_name,
34370	  (hc08_port): added "CONST (CODE)" for const_name
34371	* src/mcs51/gen.c (aopForSym): optimized pushing ACC,
34372	  (aopForRemat, adjustArithmeticResult): disconnected direct relation
34373	  between ptr_type and DCL_TYPE,
34374	  (aopGetUsesAcc, aopGet, aopPut): changed first parameter from asmop* to
34375	  operand* and took AOP() inside function so sfr-ness can be checked,
34376	  (all over): repaired calls to aopGetUsesAcc, aopGet, aopPut to comply with
34377	  new prototype,
34378	  (genFunction, genEndFunction): optimized stack setup,
34379	  (genMinus): optimized for literals with ending zeroes (in bytes),
34380	  (genCast): fixed bug 0x%d
34381	* src/mcs51/main.c (_mcs51_keywords): added sfr16 and sfr32,
34382	  (mcs51_port): added "CONST (CODE)" for const_name
34383	* src/mcs51/peeph.def: made rule 226 more generic
34384	* src/pic/main.c (pic_port): added "CONST (CODE)" for const_name
34385	* src/pic16/main.c (pic16_port): added "CONST (CODE)" for const_name
34386	* src/xa51/main.c (xa51_port): added "CONST (CODE)" for const_name
34387	* src/z80/main.c (z80_port): added NULL for const_name,
34388	  (gbz80_port): added NULL for const_name
34389	* support/regression/tests/bug663539.c,
34390	* support/regression/tests/sfr16.c: new tests
34391
343922005-06-25 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
34393
34394	* device/include/mcs51/p89v51rd2.h, device/include/mcs51/at89s53.h: added.
34395
343962005-06-24 Raphael Neider <rneider AT web.de>
34397
34398	* device/lib/pic16/libdev/pic18f[68][567]20.c:
34399	  corrected typos...
34400	* device/include/pic16/signal.h: added USBIF
34401	  and SIG_USB
34402
344032005-06-24 Raphael Neider <rneider AT web.de>
34404
34405	* device/lib/pic16/libdev/pic18f2455.c,
34406	  device/include/pic16/pic18f2455.h: NEW
34407	* device/include/pic16/pic18fregs.h,
34408	  device/lib/pic16/pics.all,
34409	  src/pic16/device.c: added 18f2455
34410	* device/lib/pic16/libdev/pic18f[68][567]20.c,
34411	  device/include/pic16/{pic18f[68][567].h,usart.h}:
34412	  replaced MULTIPLE_USARTS define with more relaible
34413	  compatibility sfrs (for USART access)
34414
344152005-06-20 Slade Rich <slade_rich AT users.sourceforge.net>
34416
34417	* src/pic/pcode.c : Fixed problem when a string constant contains a "\r\n"
34418	  and the output asm file line is printed on two lines.
34419
344202005-06-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34421
34422	* sim/ucsim/hc08.src/inst.cc (inst_condbranch): fixed simulation of
34423	  BGT, BLE, BHI, and BLS instructions
34424	* src/hc08/gen.c (outAcc, outBitC, outBitNV, genCmpLt, genCmpGt,
34425	  genCmpEq): removed
34426	* src/hc08/gen.c (genCmpEQorNE, genCmp, branchopCmp, nameCmp,
34427	  negatedCmp, exchangedCmp, genhc08Code): rewrite of comparison handling,
34428	  fixes bug #1216342
34429	* src/hc08/peeph.def: added rules 2g - 2l for new conditional branches
34430
344312005-06-15 Raphael Neider <rneider AT web.de>
34432
34433	* src/pic16/NOTES: moved Vangelis from active developers to people to contact
34434	* device/include/pic16/{6520.h,8520.h}: fixed configuration bits
34435	* src/pic16/gen.c (): prevent iTemps from being considered to be in CODESPACE,
34436	  fixes bug #1221120; for symbols in CODESPACE get number of bytes to read from
34437	  OP_SYM_TYPE() instead of OP_SYM_ETYPE()
34438
344392005-06-06 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
34440
34441	* device/include/mcs51/reg764.h: Changed PB0 to PBO as requested by
34442	  Marcel Telka in bug #1215704
34443
344442005-06-02 Slade Rich <slade_rich AT users.sourceforge.net>
34445
34446	* src/pic/pcode.c : Changed pseudo stack size to 15 to allow WSAVE to be
34447	  located in shared memory bank.
34448
344492005-05-31 Raphael Neider <rneider AT web.de>
34450
34451	* src/pic16/{gen.c,genarith.c}: replaced sign-extension
34452	  "CLRF, BTFSC <signbit>, DECF/COMF" with side-effect-free
34453	  "CLRF, BTFSC <signbit>, SETF"; fixes "long>>9"
34454
344552005-05-27 Maarten Brock <sourceforge.brock AT dse.nl>
34456
34457	* device/lib/_strncpy.c: fixed the fix
34458
344592005-05-26 Raphael Neider <rneider AT web.de>
34460
34461	* src/pic16/glue.c (pic16_printIvalChar): fixed _constant_ string
34462	  initializers with \0, bug #1208187
34463	* src/pic/glue.c (printIvalChar): fixed (non- and constant) string
34464	  intializers with \0, bug #1208187
34465
344662005-05-26 Raphael Neider <rneider AT web.de>
34467
34468	* src/pic16/glue.c (pic16_printIvalChar): fixed string
34469	  initializers with \0, bug #1208187
34470	* src/pic16/main.c (_process_pragma): added sanity checks
34471	  for stack position and size, emit warnings when appropriate
34472
344732005-05-26 Maarten Brock <sourceforge.brock AT dse.nl>
34474
34475	* device/lib/_strncpy.c: fixed not filling with \0
34476
344772005-05-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34478
34479	* src/SDCCast.c (funcOfType, funcOfTypeVarg, stringToSymbol,
34480	  createFunction),
34481	* src/SDCC.y (external_definition, enumerator, parameter_declaration,
34482	  compound_statement),
34483	* src/SDCCsymt.h,
34484	* src/SDCCsymt.c (addSymChain, processFuncArgs): fixed bug #1159134
34485
344862005-05-24 Raphael Neider <rneider AT web.de>
34487
34488	* src/pic16/glue.c (pic16_printGPointerType): fixed #1207796
34489
344902005-05-24 Raphael Neider <rneider AT web.de>
34491
34492	* device/include/pic16/pic18f{442,452,458}.h: fixed wrong
34493	  TRISE definitions, closes bug #1162453
34494
344952005-05-22 Raphael Neider <rneider AT web.de>
34496
34497	* src/pic16/main.c (_process_pragma): check for missing
34498	  arguments to pragmas code and udata
34499	* device/include/pic16/pic18f{2550,4331,4455,4520}.h:
34500	  consistency fixes to match other headers (thanks to Jim Paris)
34501	* device/lib/pic16/libio/i2c.ignore: 18f4331 provides no I2C
34502
345032005-05-21 Maarten Brock <sourceforge.brock AT dse.nl>
34504
34505	* src/SDCCicode.c (isOperandEqual): fixed missing ;
34506
345072005-05-19 Maarten Brock <sourceforge.brock AT dse.nl>
34508
34509	* support/regression/tests/bug1198642.c: new test
34510	* src/SDCCicode.c (isOperandEqual): fixed bug 1198642
34511	* src/SDCCcse.c (findPrevIc): added comment, please have a look
34512	* support/scripts/resource.h,
34513	* support/scripts/resource.rc,
34514	* src/src.dsp: added sdcc.ico to project as icon for sdcc.exe
34515	* support/scripts/sdcc.ico: added 32x32 icon
34516
345172005-05-18 Raphael Neider <rneider AT web.de>
34518
34519	* device/lib/pic16/libdev/pic18f*.c,
34520	* device/include/pic16/pic18f*.h: updated "sfr" and "at X"
34521	  keywords to "__sfr" and "__at (X)"
34522	* device/include/pic16/pic18fregs.h: added pic18f4520
34523	* src/pic16/pcode.c (pic16_pCode2str): fixed (?) bug
34524	  #1203088 (MPLAB compatibility)
34525
345262005-05-17 Raphael Neider <rneider AT web.de>
34527
34528	* device/include/pic16/pic18f{2550,4331,4455,4520}.h: NEW
34529	* device/lib/pic16/libdev/pic18f{2550,4331,4455,4520}.c: NEW
34530	* device/lib/pic16/pics.all: added new devices
34531	* src/pic16/device.c: added support for pic18f4520
34532
345332005-05-16 Raphael Neider <rneider AT web.de>
34534	* src/pic16/gen.{c,h}: s/mov2f/pic16_mov2f made public
34535	* src/pic16/genarith.c (genAddLit): fixed bug 1202480
34536	* src/pic16/pcode.{c,h} (pic16_newpCodeOpBit_simple): NEW
34537	  convenience function for bit access
34538
345392005-05-15 Maarten Brock <sourceforge.brock AT dse.nl>
34540
34541	* device/lib/printf_large.c: fixed bug 1193299
34542	* support/regression/tests/bug1057979.c: added test %3.3s
34543
345442005-05-15 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
34545
34546	* device/include/mcs51/8051.h,
34547	* device/include/mcs51/8052.h: made parseable with lint
34548	* device/include/mcs51/lint.h: added include file for (sp)lint
34549	* doc/sdccman.lyx: added doc about use of splint (syntax checking tool)
34550	* doc/cdbfileformat.lyx,
34551	* doc/test_suite_spec.lyx: hardcoded date to the date of last text change
34552
345532005-05-14 Raphael Neider <rneider AT web.de>
34554
34555	* device/lib/pic16/Makefile.common.in: add --optimize-df to OPT_FLAGS
34556	* device/lib/pic16/libc/stdlib/itoa.c (new)
34557	* device/lib/pic16/libc/stdlib/Makefile: have itoa.c built
34558	* device/lib/pic16/libio/Makefile: exclude subdir according to
34559	  ${subdir}.ignore for certain PICs (lacking e.g. i2c)
34560	* device/lib/pic16/libio/i2c.ignore (new): pic18f1220 has no I2C support
34561	* src/pic16/gen.c (genFunction): prevent annoying warning
34562	* src/pic16/pcode.c: renamed stack_t to dynstack_t to prevent
34563	  nameclashes on BeOS
34564	* support/cpp2/cppmain.c (cpp_output_string): new
34565	* support/cpp2/cpplib.c (_cpp_do__Pragma): fixed _Pragma(""),
34566	  fixes bug 1116802
34567
345682005-05-13 Borut Razem <borut.razem AT siol.net>
34569
34570	* src/SDCCmain.c (linkEdit): fixed bug 1195202
34571
345722005-05-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34573
34574	* .version: changed to version 2.5.1; back to bleeding edge development
34575
345762005-05-11 Borut Razem <borut.razem AT siol.net>
34577
34578	* doc/sdccman.lyx doc/cdbfileformat.lyx doc/test_suite_spec.lyx:
34579	  generate PDF version 1.3 documents
34580
345812005-05-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34582
34583	* .version: changed to version 2.5.0
34584
345852005-04-27 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
34586
34587	* doc/sdccman.lyx: updated weblinks, index and smaller updates
34588
345892005-04-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34590
34591	* doc/sdccman.lyx: changed version 2.5.0, documented --std-c89,
34592	--std-sdcc89, --std-c99, --std-sdcc99, and the corresponding #pragmas, as
34593	well as many smaller updates.
34594	* .version: changed to version 2.5.0-pre1
34595
345962005-04-26 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
34597
34598	* src/SDCCmain.c (setIncludePath): added port->target to SDCC_INCLUDE_NAME
34599
346002005-04-26 Maarten Brock <sourceforge.brock AT dse.nl>
34601
34602	* support/regression/tests/bug1185672.c: added
34603	* src/mcs51/gen.c (aopGetUsesAcc, genCpl, genAnd, genOr, genXor): fixed
34604	  bug 1185672
34605	* src/mcs51/gen.c (genCall): added comments, made it look safer
34606	* src/mcs51/gen.c (genEndFunction): simplified
34607
346082005-04-25 Maarten Brock <sourceforge.brock AT dse.nl>
34609
34610	* src/mcs51/ralloc.c (serialRegAssign): fixed bug 1189609
34611
346122005-04-14 Borut Razem <borut.razem AT siol.net>
34613
34614	* fixed bug 1045046 - SIGSEGV with really simple code?:
34615	  src/pic/pcode.c (pCodeInitRegisters)- pseudo stack size increased to 16
34616	  src/pic/ralloc.c (typeRegWithIdx) - error message on pseudo stack overflow
34617
346182005-04-14 Borut Razem <borut.razem AT siol.net>
34619
34620	* src/pic16/gen.c (genInline), src/pic16/main.c (_process_pragma),
34621	  src/pic16/device.h: temporarily disabled experimental #inline pragma
34622	  for 2.5.0 release
34623
346242005-04-14 Maarten Brock <sourceforge.brock AT dse.nl>
34625
34626	* device/include/z80/stdio.h,
34627	* device/include/z80/string.h: removed these highly incomplete files so
34628	  SDCC can use the default ones in device/include/
34629
346302005-04-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34631
34632	* src/mcs51/gen.c (genEndFunction): removed unused variable to fix
34633	gcc warning.
34634	* device/lib/Makefile.in: default PORTINCDIR to the mcs51 subdir to
34635	fix sdcpp warnings.
34636
346372005-04-12 Maarten Brock <sourceforge.brock AT dse.nl>
34638
34639	* device/include/malloc.h: removed redundant __reentrant prototypes
34640	* device/lib/_mullong.c: added working xstack variant in asm (C version
34641	  doesn't pass regression tests)
34642	* device/lib/bpx.c: used __data and made bpx char for mcs51
34643	* src/SDCCast.c (decorateType): removed unused GPTYPE_IDATA,
34644	  (createFunction): fixed bug with xstackPtr
34645	* src/SDCCcse.c: corrected comments
34646	* src/SDCCopt.c (convertToFcall): fixed warning in MSVC,
34647	  (killDeadCode, eBBlockFromiCode): removed unused code
34648	* src/SDCCsymt.h: removed unused GPTYPE_GPTR and GPTYPE_IDATA,
34649	  corrected comments
34650	* src/mcs51/gen.c (aopForSym, aopPut, toBoolean, unsaveRegisters,
34651	  assignResultValue, genCall, genFunction, genEndFunction, genAnd,
34652	  genOr, genXor, genAddrOf): fixed several bugs concerning xstack
34653	  (genModOneByte): fixed warning in MSVC
34654	* src/mcs51/main.c (): added comments
34655	* src/mcs51/peeph.def: changed 129 to 129.a, added 129.b, 129.c & 129.d
34656
346572005-04-12 Maarten Brock <sourceforge.brock AT dse.nl>
34658
34659	* src/SDCCmain.c (linkEdit): oops, changed one line too many
34660
346612005-04-11 Maarten Brock <sourceforge.brock AT dse.nl>
34662
34663	* src/SDCCmain.c (linkEdit): fixed bug with finding crt0.o for z80
34664
346652005-04-10 Vangelis Rokas <vrokas AT users.sourceforge.net>
34666
34667	* src/pic16/glue.c (printIvalChar): fixed bug when emitting
34668	characters arrays of larger size than the declared one.
34669
346702005-04-10 Borut Razem <borut.razem AT siol.net>
34671
34672	* src/pic/gen.c (genInline),
34673	  src/pic/pcode.c (newpCodeAsmDir), (pCode2str),
34674	  (genericPrint), (unlinkpCodeFromBranch), (compareLabel),
34675	  (findNextInstruction), (findPrevInstruction),
34676	  (findInstructionUsingLabel),
34677	  src/pic/pcode.h: fixed bug #1164907 - Labels not being recognized
34678	* src/pic/pcode.c (findLabel): added missing '\n'
34679	* src/src.dsp: added SDCCdwarf2.c to the project
34680
346812005-04-09 Borut Razem <borut.razem AT siol.net>
34682
34683	* support/scripts/sdcc.nsi: added include/hc08/* h to NSIS setup
34684
346852005-04-08 Raphael Neider <rneider AT web.de>
34686
34687	* src/pic16/pcode.c: added helpers defmapInsertAfter (insert a new item
34688	  into the chain after a given one) and mergeDefmapSymbols (combine
34689	  defmap entries for each symbol per pcode)
34690	* (createDefmap): have defmap entries merged in the end
34691	* (defmapReplaceSymRef): split defmap entries covering two accesses to
34692	  a symbol before replacing one access type's symbol, merge symbols in
34693	  the end (replacement symbol might already have an entry)
34694	* (assignValnums): keep reference to written WREG intact
34695
346962005-04-08 Raphael Neider <rneider AT web.de>
34697
34698	* src/pic16/pcode.c (struct defmap_s): named anonymous union (for
34699	  Alpha)
34700
347012005-04-08 Vangelis Rokas <vrokas AT users.sourceforge.net>
34702
34703	* src/pic16/pcode.c (pic16_get_op2): enlarged size of array b to 128
34704	bytes
34705
347062005-04-07 Raphael Neider <rneider AT web.de>
34707
34708	* device/include/pic16/usart.h: added compatibility defines for
34709	  devices with more than one USART
34710	* device/include/pic16/pic18f[68][567]20.h: activated above defines
34711
347122005-04-07 Maarten Brock <sourceforge.brock AT dse.nl>
34713
34714	* device/lib/Makefile.in: updated for port specific include
34715
347162005-04-07 Maarten Brock <sourceforge.brock AT dse.nl>
34717
34718	* support/regression/ports/mcs51/spec.mk: added mcs51 include
34719
347202005-04-07 Maarten Brock <sourceforge.brock AT dse.nl>
34721
34722	* device/include/8051.h,
34723	* device/include/8052.h,
34724	* device/include/at89S8252.h,
34725	* device/include/at89c55.h,
34726	* device/include/at89x051.h,
34727	* device/include/at89x51.h,
34728	* device/include/at89x52.h,
34729	* device/include/mcs51reg.h,
34730	* device/include/reg51.h,
34731	* device/include/reg764.h,
34732	* device/include/regc515c.h,
34733	* device/include/sab80515.h: (re)moved these 12 files
34734	* device/include/mcs51/8051.h,
34735	* device/include/mcs51/8052.h,
34736	* device/include/mcs51/at89S8252.h,
34737	* device/include/mcs51/at89c55.h,
34738	* device/include/mcs51/at89x051.h,
34739	* device/include/mcs51/at89x51.h,
34740	* device/include/mcs51/at89x52.h,
34741	* device/include/mcs51/mcs51reg.h,
34742	* device/include/mcs51/reg51.h,
34743	* device/include/mcs51/reg764.h,
34744	* device/include/mcs51/regc515c.h,
34745	* device/include/mcs51/sab80515.h: and added them here
34746
347472005-04-06 Maarten Brock <sourceforge.brock AT dse.nl>
34748
34749	* device/include/stdarg.h: changed SDCC specific keywords to double
34750	  underlined form.
34751	* device/include/stdint.h: changed intptr_t and uintptr_t for others than
34752	  mcs51 and ds390.
34753	* device/include/hc08/mc68hc908gp32.h,
34754	* device/include/hc08/mc68hc908jb8.h,
34755	* device/include/hc08/mc68hc908jkjl.h,
34756	* device/include/hc08/mc68hc908qy.h: fixed comments
34757	* device/include/mcs51/README: updated
34758	* device/include/mcs51/c8051f120.h: added PINRSF
34759	* device/lib/pic16/libc/stdlib/crc16.c: fixed comments
34760	* src/pic16/pcode.c: MSVC6 doesn't accept declaring new variables
34761	  amidst code. Also inline is not supported.
34762
347632005-04-06 Raphael Neider <rneider AT web.de>
34764
34765	* src/pic16/pcode.c (pic16_pCodeReplace): also update pcflow->end
34766	* (createDefmap): fixed CALLs to depend on FSR1 and RETLW to restore
34767	  callers stack/frame pointers
34768
347692005-04-06 Vangelis Rokas <vrokas AT users.sourceforge.net>
34770
34771	* device/include/pic16/usart.h: added, missing in previous commit,
34772	* device/include/pic16/adc.h: fixed typo,
34773	* device/lib/pic16/libc/utils/cvtdec.S: added missing in previous
34774	commit,
34775	* device/lib/pic16/libc/stdlib/g_ftoa.S: modified to include
34776	<p18fxxx.inc>
34777	* device/lib/pic16/libc/stdio/streams.c: leave stdin, stdout
34778	uninitialized because a bug appears with gplink
34779	* device/lib/pic16/{some makefiles}: moved $(CSTD) from CFLAGS to
34780	COMPILE_FLAGS and added CPPFLAGS with -nostdinc because sdcpp
34781	complains for unrecognised option
34782
347832005-04-05 Raphael Neider <rneider AT web.de>
34784
34785	* src/pic16/gen.c (pic16_popCopyReg): made copying work for extended
34786	  structs as well (using memcpy)
34787	* (genFunction): fixed comparison, used pCodeOpLabel to reduce warning
34788	  on ISRs (GOTO has no label)
34789	* src/pic16/device.h: added OF_OPTIMIZE_DF
34790	* src/pic16/main.c: added compiler switch --optimize-df to enable the
34791	  new data flow analysis/optimization
34792	* src/pic16/pcode.c: added (prototypes for and implementation of)
34793	  dataflow analysis functions, fixed pCodeInstructions' inCond and
34794	  outCond values, made RCALL a branch instruction
34795	* (pic16_unlinkpCode): keep C line if possible
34796	* (pic16_pCodeUnlink): removed cast on left side of assignment, have
34797	  C line moved if possible
34798	* (pic16_getRegFrompCodeOp): NEW, improved version of...
34799	* (pic16_getRegFromInstruction,pic16_getRegFromInstruction2): changed
34800	  to use new pic16_getRegFrompCodeOp (works for more SFRs)
34801	* (pic16_BuildFlow): fixed skip instructions with label (did not start
34802	  new flow)
34803	* (pic16_getJumptabpCode): NEW, needed in...
34804	* (LinkFlow): fixed handling of jumptables, calls and conditional
34805	  branches
34806	* (pic16_InsertCommentAfter): NEW
34807	* (pic16_pCodeReplace): made verbose and flow preserving
34808	* (AnalyzeFlow): added call to data flow analysis
34809	* src/pic16/pcode.h: added defmaps to pCodeFlow struct
34810	* src/pic16/pcodeflow.h: added PCC_STATUS to mean all STATUS bits
34811	* src/pic16/ralloc.c (packRegsForAssign): added return 1 in the end
34812
348132005-04-03 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34814
34815	* src/SDCCast.c (decorateType): fixed bug #1105626
34816
348172005-04-02 Vangelis Rokas <vrokas AT users.sourceforge.net>
34818
34819	* device/include/asm/pic16/features.h,
34820	* pic18f*.h headers,
34821	* device/include/pic16/adc.h,
34822	* device/include/pic16/delay.h,
34823	* device/include/pic16/i2c.h,
34824	* device/include/pic16/malloc.h,
34825	* device/include/pic16/stdio.h,
34826	* device/include/pic16/stdlib.h,
34827	* device/include/pic16/string.h,
34828	* device/lib/pic16/libc/stdio/printf_tiny.c,
34829	* device/lib/pic16/libc/stdio/printf_small.c,
34830	* device/lib/pic16/libc/stdio/strmgpsim.c,
34831	* device/lib/pic16/libc/stdio/strmmssp.c,
34832	* device/lib/pic16/libc/stdio/strmusart.c,
34833	* device/lib/pic16/libc/stdio/vfprintf.c,
34834	* device/lib/pic16/libc/stdlib/ltoa.c,
34835	* device/lib/pic16/libc/stdlib/putchar.c,
34836	* device/lib/pic16/libc/stdlib/x_ftoa.c,
34837	* device/lib/pic16/libc/stdlib/memchrpgm.c,
34838	* device/lib/pic16/libc/stdlib/memchrram.c,
34839	* device/lib/pic16/libc/stdlib/memcpypgm2ram.c,
34840	* device/lib/pic16/libc/stdlib/memcpyram2ram.c,
34841	* device/lib/pic16/libio/adc/adcbusy.c,
34842	* device/lib/pic16/libio/adc/adcread.c,
34843	* device/lib/pic16/libio/adc/adcsetch.c,
34844	* device/lib/pic16/libio/usart/ubaud.c,
34845	* device/lib/pic16/libio/usart/ubusy.c,
34846	* device/lib/pic16/libio/usart/udrdy.c,
34847	* device/lib/pic16/libio/usart/uopen.c,
34848	* device/lib/pic16/libio/usart/uputc.c,
34849	* device/lib/pic16/libsdcc/gptr/gptrget1.c,
34850	* device/lib/pic16/libsdcc/gptr/gptrget2.c,
34851	* device/lib/pic16/libsdcc/gptr/gptrget3.c,
34852	* device/lib/pic16/libsdcc/gptr/gptrget4.c,
34853	* device/lib/pic16/libsdcc/gptr/gptrput1.c,
34854	* device/lib/pic16/libsdcc/gptr/gptrput2.c,
34855	* device/lib/pic16/libsdcc/gptr/gptrput3.c,
34856	* device/lib/pic16/libsdcc/gptr/gptrput4.c: modified all SDCC
34857	specific keywords to double underlined form,
34858	* device/lib/pic16/libc/Makefile.rules,
34859	* device/lib/pic16/libsdcc/Makefile.rules,
34860	* device/lib/pic16/libm/Makefile,
34861	* device/lib/pic16/libio/Makefile.rules: added CSTD macro in CFLAGS
34862	to compile with C standard set in Makefile.common
34863	* device/lib/pic16/libc/stdlib/Makefile: added new C sources
34864	rand.c and crc.c in compilation process,
34865	* device/lib/pic16/libsdcc/int/divuint.c,
34866	* device/lib/pic16/libsdcc/long/divulong.c: changed declaration of
34867	`c' from signed to unsigned,
34868	* device/lib/pic16/startup/crt0.c,
34869	* device/lib/pic16/startup/crt0i.c,
34870	* device/lib/pic16/startup/crt0iz.c: adopted to all SDCC specific
34871	keywords to double underlined form, bug fixes in _do_cinit function
34872	which prevented the correct initialization of the .idata segment,
34873	* src/pic16/pcoderegs.c (insideLRBlock): fixed a bug that caused the
34874	core to enter a infinite loop
34875	* device/lib/pic16/libc/stdlib/rand.c, crc.c: new files
34876
348772005-04-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34878
34879	* src/SDCCicode.c (getArraySizePtr): fixed bug #1122171
34880
348812005-04-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
34882
34883	* device/include/Makefile.in: add support for hc08 subdirectory
34884	* device/include/hc08/: new subdirectory
34885	* device/include/hc08/mc68hc908jkjl.h: new header contributed by
34886	Lucas Loizaga, thanks!
34887	* device/include/hc08/mc68hc908qy.h,
34888	* device/include/hc08/mc68hc908gp32.h,
34889	* device/include/hc08/mc68hc908jb8.h: moved hc08 register defs to
34890	their own directory. Changed internal macro names to use the compiler
34891	reserved namespace. Changed SDCC specific keywords to double
34892	underlined form.
34893	* device/include/math.h,
34894	* device/include/malloc.h,
34895	* device/include/stdarg.h,
34896	* device/include/stdbool.h
34897	* device/include/string.h,
34898	* device/include/tinibios.h,
34899	* device/include/ds400rom.h,
34900	* device/include/8051.h,
34901	* device/include/8052.h,
34902	* device/include/80c51xa.h,
34903	* device/include/at89c55.h,
34904	* device/include/at89S8252.h,
34905	* device/include/at89x51.h,
34906	* device/include/at89x52.h,
34907	* device/include/ds80c390.h,
34908	* device/include/reg764.h,
34909	* device/include/regc515c.h,
34910	* device/include/sab80515.h,
34911	* device/include/mcs51/c8051f000.h,
34912	* device/include/mcs51/c8051f018.h,
34913	* device/include/mcs51/c8051f020.h,
34914	* device/include/mcs51/c8051f040.h,
34915	* device/include/mcs51/c8051f060.h,
34916	* device/include/mcs51/c8051f120.h,
34917	* device/include/mcs51/c8051f300.h,
34918	* device/include/mcs51/c8051f310.h,
34919	* device/include/mcs51/c8051f320.h,
34920	* device/include/mcs51/c8051f330.h,
34921	* device/include/mcs51/c8051f350.h,
34922	* device/include/z180.h: Changed SDCC specific keywords to double
34923	underlined form.
34924
349252005-03-31 Vangelis Rokas <vrokas AT users.sourceforge.net>
34926
34927	* src/pic16/device.c (Pics16[]): added devices 18F2550, 18F4331,
34928	18F4455,
34929	* (pic16_assignConfigWordValue): disable testing of configuration
34930	register value with config mask,
34931	* src/pic16/gen.c (pic16_testStackOverflow): prefix stack test
34932	function with port->fun_prefix,
34933	* (genFunction): when generating a naked interrupt function never
34934	create an absolute segment placed in interrupt vector address, place
34935	the actual interrupt function at IVA instead, when an interrupt
34936	function is generated with unspecified interrupt then do not create
34937	the absolute section,
34938	* (genGenPointerGet, genGenPointerSet, genPackBits): replace all
34939	code for generating a call to generic pointer get/put function with
34940	a call to function pic16_callGenericPointer(),
34941	* src/pic16/genutils.c (pic16_callGenericPointerRW): NEW, generates
34942	the call to the generic pointer get/put functions with prefixing the
34943	function name with port->fun_prefix,
34944	* src/pic16/glue.c (pic16glue): ifdef-out test of OF_LR_SUPPORT,
34945	* src/pic16/main.c (_process_pragma): prefix function with
34946	port->fun_prefix,
34947	* (_pic16_finaliseOptions): define macro __18Fxxxx macro when
34948	calling assembler, old 18Fxxxx macro is deprecated,
34949	* src/pic16/pcode.c (unlinkpCodeFromBranch): added PC_INLINE and
34950	PC_ASMDIR in while condition,
34951	* (findInstruction): add PC_ASMDIR in while condition,
34952	* (buildCallTree): prefix main with port->fun_prefix,
34953	* (pic16_pCode2str): fixed bug that didn't emit the memory access
34954	identifier for variable with banked access in instructions BTFSS,
34955	BTFSC, BCF, BSF, BTG
34956	* (AnalyzeFlow): moved call to OptimizepCode to pic16_AnalyzeBanking,
34957	* src/pic16/pcodepeep.c (pCodeOpCompare): increase size of b to 1024,
34958	* src/pic16/pcoderegs.c (pic16_pCodeRegoptimizeRegUsage): don't
34959	perform optimization when enviroment variable NO_REG_OPT is set,
34960	* (insideLRBlock): NEW, return 1 if register is inside an
34961	INF_LOCALREGS block,
34962	* (RemoveRegFromLRBlock): remove a register that is completely
34963	eliminated by register optimization, but it is still left in local
34964	register store/restore in/from stack block,
34965	* (Remove2pcodes): after removing register, check to see if it
34966	should be removed from local register store/restore in/from stack
34967	block,
34968	* src/pic16/ralloc.c (pic16_decodeOp): added decode for
34969	DUMMY_READ_VOLATILE,
34970
34971	* device/include/pic16/adc.h: minor prototype modifications and
34972	update,
34973	* device/include/pic16/malloc.h: added GPL notice various
34974	modifications,
34975	* device/include/pic16/stdint.h: NEW, standard header for ints
34976	* device/include/pic16/delay.h: NEW, header for delay functions,
34977	delay10tcy, delay100tcy, delay1ktcy, delay10ktcy, delay100ktcy,
34978	delay1mtcy,
34979	* device/include/pic16/signal.h: NEW, header providing helper macros
34980	for implementing signal handlers,
34981	* device/include/pic16/stdio.h: added prototypes for functions,
34982	printf, vprintf, sprintf, vsprintf, fprintf, vfprintf. Added
34983	prototypes for stdin and stdout, added macro PUTCHAR to
34984	automatically implement putchar function prototype,
34985	* device/include/pic16/usart.h: modified and updated USART library,
34986	* device/lib/pic16/libio/adc/,
34987	* device/lib/pic16/libio/i2c: some modifications to improve library
34988	performance,
34989	* device/lib/pic16/libc/stdio/: modifications for the new printf*
34990	family of functions,
34991	* device/lib/pic16/libc/stdlib/: various modifications in the malloc
34992	family of functions and other sources,
34993	* device/lib/pic16/libio/usart/: NEW, c sources for the usart module
34994	of the PIC18Fxx[28] devices,
34995	* device/lib/pic16/libc/delay/: NEW, c sources for the delay functions,
34996	* device/lib/pic16/libc/utils/: minor modifications in the .S sources,
34997	* device/lib/pic16/startup/{crt0i.c, crt0iz.c}: redesign of the
34998	_do_cinit function, because the previous failed when local variables
34999	where not placed in the same memory bank,
35000	* device/lib/pic16/libsdcc/char/: various modifications to improve
35001	library performance,
35002	* doc/sdccman.lyx: some reorganization of the PIC16 part, added many
35003	information on the new functions of the c library and more...
35004
350052005-03-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35006
35007	* src/SDCCBBlock.c (iCodeBreakDown): fixed bug #1170212
35008
350092005-03-26 Raphael Neider <rneider AT web.de>
35010
35011	* src/pic16/gen.c (genSkipc): fixed semantics (execute branch
35012	  if condition == CARRY)
35013	* (genCmp): adapted to new genSkipc semantics
35014	* src/pic16/genutils.c (pic6_genCmp_special): removed side effect
35015	  on rIfx (genCmp was broken)
35016
350172005-03-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35018
35019	* src/SDCCmain.c (setDefaultOptions, optionsTable[], parseCmdLine),
35020	* src/z80/main.c (_keywords[]),
35021	* src/SDCCglobal.h (struct options),
35022	* src/SDCC.y,
35023	* src/SDCC.lex (isTargetKeyword, doPragma, pragma_tbl[]): new pragmas
35024	to enable/disable SDCC and C99 extensions/keywords (std_c89, std_sdcc89,
35025	std_c99, std_sdcc99). Also, equivalent command line options (--std-c89,
35026	--std-sdcc89, --std-c99, --std-sdcc99). SDCC specific keywords are
35027	always available in leading double underscore form. The C99 support is
35028	mostly missing, but it's a start.
35029	* support/regression/tests/bug-227710.c: fixed nonconforming use of
35030	reserved identifier "__data".
35031
350322005-03-24 Maarten Brock <sourceforge.brock AT dse.nl>
35033
35034	* src/mcs51/peeph.def: fixed bug 1170013
35035
350362005-03-22 Maarten Brock <sourceforge.brock AT dse.nl>
35037
35038	* device/include/mcs51reg.h: fixed bug 842007
35039
350402005-03-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35041
35042	* src/SDCCcflow.c (dfNumCompare): committed the wrong version of this
35043	last time.
35044
350452005-03-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35046
35047	* src/port.h (struct PORT),
35048	* src/avr/ralloc.c (avr_assignRegisters),
35049	* src/avr/main.c,
35050	* src/ds390/ralloc.c (ds390_assignRegisters),
35051	* src/ds390/main.c,
35052	* src/hc08/ralloc.c (hc08_assignRegisters),
35053	* src/hc08/main.c,
35054	* src/mcs51/ralloc.c (mcs51_assignRegisters),
35055	* src/mcs51/main.c,
35056	* src/pic/ralloc.c (pic14_assignRegisters),
35057	* src/pic/main.c,
35058	* src/pic16/ralloc.c (pic16_assignRegisters),
35059	* src/pic16/main.c,
35060	* src/xa51/ralloc.c (xa51_assignRegisters),
35061	* src/xa51/main.c,
35062	* src/z80/ralloc.c (z80_assignRegisters),
35063	* src/z80/ralloc.h,
35064	* src/SDCCopt.c (eBBlockFromiCode, replaceRegEqv, killDeadCode),
35065	* src/SDCCcse.c (ifxOptimize, cseBBlock, cseAllBlocks),
35066	* src/SDCCcse.h,
35067	* src/SDCCdflow.c (computeDataFlow),
35068	* src/SDCCdflow.h,
35069	* src/SDCCloop.c (addDefInExprs, loopInvariants, loopOptimizations),
35070	* src/SDCCloop.h,
35071	* src/SDCCcflow.c (*),
35072	* src/SDCCcflow.h,
35073	* src/SDCCBBlock.c (iCodeBreakDown, dumpEbbsToFileExt, eBBWithEntryLabel),
35074	* src/SDCCBBlock.h (struct ebbIndex): new struct that keeps two copies
35075	of the eBBlock list, sorted by both bbnum and dfnum. (fixes bug with
35076	immedDom() returning wrong block; probably fixes bug #1160833)
35077
350782005-03-20 Borut Razem <borut.razem AT siol.net>
35079
35080	* support/scripts/inc2h.pl: WIN32 port
35081
350822005-03-19 Maarten Brock <sourceforge.brock AT dse.nl>
35083
35084	* device/lib/makefile.in: added abs.c and labs.c
35085
350862005-03-17 Maarten Brock <sourceforge.brock AT dse.nl>
35087
35088	* device/include/stdint.h: added
35089	* device/lib/abs.c: added
35090	* device/lib/labs.c: added
35091	* device/include/stdlib.h: added abs() and labs() prototypes
35092	* device/lib/libsdcc.lib: added abs and labs
35093	* device/include/float.h,
35094	* device/lib/_fsmul.c,
35095	* device/lib/printf_fast.c,
35096	* device/lib/printf_tiny.c: updated comments
35097
350982005-03-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35099
35100	* src/SDCCicode.c (geniCodeSwitch, geniCodeJumpTable): fixed
35101	bug #1164313
35102
351032005-03-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35104
35105	* src/SDCCcse.c (cseBBlock): retain assignment to self when volatile
35106	* src/SDCCast.c (isLoopCountable): fixed bug #1161985
35107
351082005-03-15 Maarten Brock <sourceforge.brock AT dse.nl>
35109
35110	* device/lib/printf_large.c: removed inline assembly for portability and
35111	  readability. Use printf_fast if speed or size are more important.
35112	* src/pic16/gen.c: removed conditions around use of DEBUGpc
35113	* src/pic16/genutils.h: added define for DEBUGpc for MSVC
35114
351152005-03-15 Vangelis Rokas <vrokas AT users.sourceforge.net>
35116
35117	* src/pic16/genutils.c (pic16_genCmp_special): initialized offs to
35118	prevent compiler warning
35119
351202005-03-14 Vangelis Rokas <vrokas AT users.sourceforge.net>
35121
35122	* device/lib/pic16/startup/crt0i.c (_cinit): local variables where
35123	moved to level 0 and declared as static. Also they are explicit
35124	placed in access bank. This was necessery because some times they
35125	might cross memory bank boundaries. crt0iz.c is *NOT* updated!!!
35126	* src/pic16/device.h: added flag OPTIMIZE_CMP to enable some compare
35127	optimizations. Currently only compare to unsigned char is implemented,
35128	* src/pic16/gen.c: added fReturnIdx array,
35129	* (struct resolvedIfx) is moved to gen.h and made public,
35130	* (struct _G): added sregsAlloc and sregsAllocSet fields,
35131	* (aopForSym): added an optimization to directly store in stack of
35132	the operand of a SEND iCode,
35133	* (pic16_aopOp): don't return return registers as strings (AOP_STR)
35134	but as registers instead (AOP_REG) using the fReturnIdx array,
35135	* (pic16_freeAsmop): remove the freed register from the
35136	_G.sregsAlloc field,
35137	* (pic16_aopGet): in case AOP_STR, the compare to 'a' is changed to
35138	a compare of 'WREG',
35139	* (pic16_popGetTempRegCond): changed function prototype, now
35140	function takes also a bitVector argument v which holds the current
35141	set of registers that are allocated for stack access by aopForSym,
35142	registers allocated in aopForSym for accessing stack symbols are not
35143	any more part of the functions usedRegs field,
35144	* (genCall): some times aopOp is called for a stack variable to be
35145	send, aopForSym might perform the push, if this is true make sure
35146	that genCall doesn't push the variable twice by testing _G.resDirect,
35147	* (genFunction): changed testing for unspecified interrupt number
35148	from 256 to INTNO_UNSPEC,
35149	* modified selection scheme of frame pointer generation. Previously
35150	if function did use local registers a frame pointer was generated,
35151	now a frame pointer is generated only if function has arguments
35152	(that need PLUSW2 register access), or has stack arguments, or the
35153	compiler is not instructed to omit the frame pointer,
35154	* (genEndFunction): before restoring local registers that were saved
35155	in the function preamble, also restore the registers that *might*
35156	have been allocated for stack access,
35157	* (genRet): removed some old comments,
35158	* (genCmp, the active (RN's) version): added a call to the
35159	pic16_genCmp_special function to perform the compare with a more
35160	robust and optimized way,
35161	* (genInline): a feature has been added in inline code generation,
35162	which allows a wildcard variable substitution when writing inline
35163	assembly. Code is incomplete and experimental therefore undocumented,
35164	* (genCast): changed order of aopOp for result and right to allow
35165	aopForSym to directly load the result if possible,
35166	* src/pic16/genutils.c (selectCompareOp, pic16_genCmp_special): NEW,
35167	perform an optimized compare on some selected special occasions,
35168	* src/pic16/genutils.h: declaration of resolvedIfx structure from gen.c,
35169	* src/pic16/glue.c (pic16createInterrupVect): make sure we never
35170	generate an IVT any more,
35171	* src/pic16/main.c (pic16_optionsTable): added command line option
35172	--optimize-cmp,
35173	* (_pic16_initPaths): when calling C preprocessor define pic18fXXXX
35174	macro too, when calling assembler define pic18fXXXX *and* __18Fxxxx
35175	macros,
35176	* src/pic16/NOTES: Raphael Neider added in list of active developers
35177	* src/pic16/pcode.c (OPT_TYPE_STR): added strings jumptable_begin and
35178	jumptable_end to prevent bug #,
35179	* (pic16_pciADDWFC, ADDFWC, COMF, CLRF): added some missing flags in
35180	inCond and outCond fields,
35181	* src/pic16/pcoderegs.c (pCodeOptime2pCodes): add a fix for bug #,
35182	* src/pic16/ralloc.c (serialRegAssign): explicit set willCS to 0 to
35183	turn off register spilling,
35184	* (packRegsForOneUse): synced with other ports' versions although it
35185	is not used currently,
35186	* (pic16_packRegisters): added an optimization while reading
35187	structure bitfields, some registers may be saved (malloc code is
35188	decreased by 80 bytes)
35189
351902005-03-12 Vangelis Rokas <vrokas AT users.sourceforge.net>
35191
35192	* src/SDCCcse.c (cseBBlock): inside 'do operand lookup' loop test if
35193	left is a bitfield, if yes, then don't optimize assignment. Perhaps
35194	this can be optimized more?
35195
351962005-03-10 Raphael Neider <rneider AT web.de>
35197
35198	* src/pic16/gen.c (pic16_loadFSR0, genPackBits, genUnpackBits,
35199	  genNearPointerGet): (hopefully) fixed access to bitfields via
35200	  pointers (p->bitN = x; and x = p->bitN; failed)
35201
352022005-03-09 Paul Stoffregen <paul AT pjrc.com>
35203
35204	* device/lib/printf_fast.c: fix leading zero format, eg "%02d"
35205
352062005-03-09 Raphael Neider <rneider AT web.de>
35207
35208	* src/SDCCopt.c (killDeadCode): fixed bug #1156016
35209
352102005-03-06 Maarten Brock <sourceforge.brock AT dse.nl>
35211
35212	* src/SDCCicode.h: moved CRITICAL and ENDCRITICAL from SKIP_IC2 to SKIP_IC
35213	* src/mcs51/ralloc.c (willCauseSpill): added check for REG_BIT type,
35214	  (regTypeNum): set REG_BIT type if necessary
35215	* src/mcs51/ralloc.h: added define REG_BIT, used to fix bug 1144613
35216	* support/regression/tests/critical.c: check bug 1144613
35217
352182005-03-02 Raphael Neider <rneider AT web.de>
35219
35220	* src/pic16/gen.c (genRightShiftLiteral): fixed bug #1154256
35221
352222005-02-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35223
35224	* src/avr/ralloc.c (serialRegAssign),
35225	* src/ds390/ralloc.c (serialRegAssign),
35226	* src/hc08/ralloc.c (serialRegAssign),
35227	* src/mcs51/ralloc.c (serialRegAssign),
35228	* src/pic/ralloc.c (serialRegAssign),
35229	* src/pic16/ralloc.c (serialRegAssign),
35230	* src/xa51/ralloc.c (serialRegAssign),
35231	* src/z80/ralloc.c (serialRegAssign): fixed bug #1105154
35232
352332005-02-22 Maarten Brock <sourceforge.brock AT dse.nl>
35234
35235	* src/SDCCast.c (decorateType): fixed bug 1124787
35236
352372005-02-20 Hubert Sack <sack AT digiplan.de>
35238	committed by Frieder Ferlemann <Frieder.Ferlemann AT web.de>
35239
35240	* src/mcs51/peeph.def: added peepholes 3.h-k and 132.a-f from
35241	patch #1121755
35242
352432005-02-20 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
35244
35245	* src/SDCCpeeph.def: new keyword "labelRefCountChange" which allows peepholes
35246	to keep the correct label reference count when adding/removing references
35247	to labels. A peephole file using this is appended to patch #1144962.
35248
352492005-02-14 Raphael Neider <rneider AT web.de>
35250
35251	* device/lib/pic16/libc/string/memccpy.c: changed 3rd argument to char
35252	* src/SDCC.lex (process_pragma): fixed to make disable_warning work for PIC16
35253	* src/pic16/gen.c (aopForSym, calls to pic16_aopOp): prevent unneccessary
35254	  retrievals of result operand's value on assignment
35255
352562005-02-13 Vangelis Rokas <vrokas AT otenet.gr>
35257
35258	* device/include/pic16/string.h: modified prototype for memccpy()
35259	to memccpy(void *, void *, char, size_t)
35260	* src/pic16/gen.c (genFunction, genEndFunction): reenable if-case to
35261	check whether to omit frame pointer or not,
35262	* (genInline): convert all occurences of "\n" to LF in inline
35263	assembler blocks, this helps formatting the inline text,
35264	* (pic16_loadFSR0): modified prototype,
35265	* (genNearPointerGet, genNearPointerSet): reorganization of code,
35266	removed some 8051 legacy code,
35267	* (genPackBits): enabled handling bitfields exceeding one byte in size,
35268	* src/pic16/ralloc.c (pic16_assignRegisters): clear dynrIdx variable
35269	before allocating temporary registers in functions,
35270
352712005-02-11 Maarten Brock <sourceforge.brock AT dse.nl>
35272
35273	* support/regression/tests/bitvars.c: corrected the "fix"
35274
352752005-02-10 Maarten Brock <sourceforge.brock AT dse.nl>
35276
35277	* support/regression/tests/bitvars.c,
35278	* support/regression/tests/bitwise.c,
35279	* support/regression/tests/rotate.c: "fixed" problems on Alpha
35280
352812005-02-10 Raphael Neider <rneider AT web.de>
35282
35283	* src/pic16/pcode.c (assignToSameBank) : fixed cast to pointer of
35284	  different size for Alpha
35285	* src/pic16/gen.c (genCmpEq) : improved compare with 0
35286
352872005-02-09 Raphael Neider <rneider AT web.de>
35288
35289	* src/SDCC.lex(doPragma) : save and restore warning options as well
35290	  (also added new stack plus clone- and copyAndFreeSDCCERRG())
35291	* have #pragma less_pedantic set the errorlevel to WARNING
35292	  (fixes #1117001)
35293	* (cloneOptimize) : fixed wrong malloc's size
35294	* support/Util/SDCCerr.[ch] : made SDCCERRG globally accessible to
35295	  facilitate correct handling of #pragma (save|restore)
35296
352972005-02-09 Maarten Brock <sourceforge.brock AT dse.nl>
35298
35299	* src/mcs51/gen.c: removed non-standard C nameless struct/union
35300
353012005-02-04 Slade Rich <slade_rich AT users.sourceforge.net>
35302
35303	* src/pic/gen.c : Fix for bugs #1080519 & #1115662.
35304
353052005-02-03 Maarten Brock <sourceforge.brock AT dse.nl>
35306
35307	* device/include/mcs51/c8051f120.h: added declarations for sbit port 2,3&4
35308
353092005-02-02 Raphael Neider <rneider AT web.de>
35310
35311	* src/SDCCast.c (processParms): disabled W_NONRENT_ARGS for pic16 port
35312	* src/pic16/gen.c (aopForSym): reenabled special case for function pointers
35313	* (pic16_storeForReturn): fixed to allow returning function pointers
35314	* (genPackBits): improved accessing full bytes, implemented for GPOINTERs
35315	* device/include/pic16/{stddef.h,stdbool.h}: added
35316
353172005-02-02 Maarten Brock <sourceforge.brock AT dse.nl>
35318
35319	* device/include/mcs51/c8051f040.h: added define CPT2_PAGE
35320
353212005-02-01 Slade Rich <slade_rich AT users.sourceforge.net>
35322
35323	* src/pic16/pic16.dsp : Added file graph.c to make it compile under windows
35324	* src/pic16/Makefile.bcc : Do not use this file but added file graph.c as it
35325	 appeared to be required
35326
353272005-01-31 Borut Razem <borut.razem AT siol.net>
35328
35329	* support/scripts/sdcc.nsi: added include/asm/ds390, include/asm/mcs51,
35330	  include/mcs51 and include/z80 directories to the package
35331
353322005-01-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35333
35334	* src/hc08/gen.c (genFunction): fixed bug #1112752
35335
353362005-01-30 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
35337
35338	* src/mcs51/peeph.def: adapted peephole 258.x to changed gen.c (genAnd)
35339
353402005-01-29 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
35341
35342	* src/mcs51/gen.c (genAnd): accessing LSB/MSB by rotating acc
35343
353442005-01-29 Maarten Brock <sourceforge.brock AT dse.nl>
35345
35346	* device/include/Makefile.in: create/copy mcs51 and z80 include subdirs
35347
353482005-01-27 Maarten Brock <sourceforge.brock AT dse.nl>
35349
35350	* device/include/c8051fxxx.h: removed these 6 files
35351	* device/include/mcs51/c8051fxxx.h: added these 11 new files
35352
353532005-01-26 Raphael Neider <rneider AT web.de>
35354
35355	* src/pic16/gen.c (genAssign): fixed assignment from longs
35356	  in codespace (were cut to three bytes)
35357	* (genDummyRead): implemented (except for CODESPACE...),
35358	  fixed bug #1108575
35359	* src/pic16/glue.c (emitStatistics): beautified
35360	* device/lib/pic16/libm/Makefile: added include path
35361
353622005-01-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35363
35364	* src/z80/gen.c (aopPut): fixed bug #1103902
35365
353662005-01-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35367
35368	* device/lib/expf.c: fixed bug #1095792
35369
353702005-01-24 Vangelis Rokas <vrokas AT otenet.gr>
35371
35372	* device/lib/pic16/libm: added Math library sources
35373
353742005-01-24 Raphael Neider <rneider AT web.de>
35375
35376	* src/pic16/pcode.h: added second memory operand to pCodeOpReg
35377	  to enable upcast to pCodeOpReg2 (there is no type tag to
35378	  differenciate the two and pic16_popGet2p cast into PCOR2)
35379	* src/pic16/main.c (_process_pragma): fixed another malloc bug
35380	  (sizeof(sectNames) changed to sizeof(sectName))
35381	  Both patches fix segfaults under MinGW.
35382
353832005-01-23 Raphael Neider <rneider AT web.de>
35384
35385	* src/pic16/{device.c,pcode.c}: s/free/Safe_free/g for
35386	  Safe_[mc]?alloc()'ed variables
35387	* src/pic16/gen.c (pic16_aopOp,pic16_popGet): added handling
35388	  of (byte sized) temporaries (assign them to WREG for now)
35389	* src/pic16/main.c (_process_pragma): fixed nasty malloc bug
35390	  (used sizeof(set *sectSyms) instead of sizeof(struct sectSym)),
35391	  this might fix SIGSEGVs on MinGW...
35392	* src/SDCCopt.c (killDeadCode): restored original behaviour
35393	  (volatile operands might get thrown away though)
35394
353952005-01-23 Vangelis Rokas <vrokas AT otenet.gr>
35396
35397	* src/pic16/gen.c: fixed bug #1106975,
35398	* src/pic16/gen.c: fixed possible bug #1102572, now during TOS
35399	pointer update, INTCON is saved, global interrupts are disabled and
35400	restored after updateing TOS.
35401	* src/SDCC.y, src/SDCC.lex, src/SDCCsymt.c, src/SDCCsymt.h:
35402	* added function attribute 'shadowregs' to take advantage of shadow
35403	registers,
35404	* added function attribute 'wparam' as an alternative to the wparam
35405	pragma,
35406	* support/Utils/SDCCerr.[ch]: added error E_SHADOWREGS_NO_ISR when
35407	user declares a non-ISR function as 'shadowregs',
35408	* doc/sdccman.lyx: updated to reflect recent changes of pic16 port
35409
354102005-01-22 Vangelis Rokas <vrokas AT otenet.gr>
35411
35412	* .version: bumped version number to 2.4.8
35413	* device/lib/pic16/pics.all: list of PIC18F devices supported by
35414	pic16 port,
35415	* device/lib/pic16/libio/i2c/: I2C module support library,
35416	* device/include/pic16/i2c.h: I2C support library header,
35417	* device/lib/pic16/libc/stdio/: standard IO support sources,
35418	* (printf_small.c): printf_small() source, supports float print,
35419	* (printf_tiny.c): printf_tiny() source, does not support floats,
35420	* device/lib/pic16/Makefile.common.in: added OPT_FLAGS macro to
35421	enable global optimizations for entire library source, other
35422	Makefiles in the source tree are also modified to reflect this,
35423	* device/lib/pic16/libc/stdlib/putchar.c (putchar): dummy putchar()
35424	function,
35425	* doc/sdccman.lyx: updated to reflect new changes,
35426	* src/pic16/gen.c (aopForSym): don't handle sym->iaccess in
35427	sym->onStack if-case,
35428	* src/pic16/main.c (_pic16_keywords): commented out keywords bit,
35429	sbit, idata, _idata, xdata, _xdata,
35430	* added pragma library, to link an external library, (see doc),
35431	* removed command line options, --pomit-config-words, --pomit-ivt,
35432	--pleave-reset-vector,
35433	* (pic16_finaliseOptions): when define macro SDCC_MODEL_{SMALL/LARGE}
35434	when calling assembler to reflect memory model used, also define
35435	macro STACK_MODEL_{SMALL/LARGE} when compiling and assembling to
35436	reflect stack model used,
35437	* src/pic16/ralloc.c (pic16_allocDirReg): when operand is allocated
35438	on stack return NULL,
35439
354402005-01-22 Daniel Winkler <post AT danielwinkler.de>
35441
35442	* src/SDCCopt.c (killDeadCode): do not throw iCodes away if one
35443	  of the operands is volatile. Fixes #1020220
35444
354452005-01-22 Daniel Winkler <post AT danielwinkler.de>
35446
35447	* src/pic16/pcoderegs.c (pCodeOptime2pCodes): reenabled optimization
35448	* (OptimizeRegUsage): make sure that there is really no other flow where
35449	  the first pCode is used
35450
354512005-01-22 Raphael Neider <rneider AT web.de>
35452
35453	* src/pic16/pcoderegs.c (pCodeOptime2pCodes): disabled optimization
35454	  to fix #1106967 (pCode->seq are not set up correctly)
35455
354562005-01-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35457
35458	* src/SDCCglue.c (glue): make sure code area is declared before the
35459	static initialization area.
35460
354612005-01-21 Raphael Neider <rneider AT web.de>
35462
35463	* device/lib/Makefile.in: fixed test for pic16 install dir
35464	* device/lib/pic16/*/Makefile*: modified compile flags to enable
35465	  optimizations
35466	* doc/sdccman.lyx: updated banksel optimization, removed --flr-support and
35467	  added --optimize-goto compiler switch and pragma wparam documentation
35468	* src/pic16/pcode.c (pic16_OptimizeBanksel): removed statistics dump
35469	* src/pic16/pcodepeep.c (pic16_pCodeOpCopy): fixed copying of WREG, PRODL
35470	  and PRODH closing bug #1071770 (peephole optimizer)
35471
354722005-01-19 Raphael Neider <rneider AT web.de>
35473
35474	* src/SDCCglobl.h: ensure that PATH_MAX >= 2048 to guarantee
35475	  cmdLine buffers (used when calling sdcpp...) are large enough
35476	  (MAX_PATH=256 truncates arguments leading to system halts when
35477	  used in MinGW...)
35478	* src/pic16/gen.c (pic16_sameRegs): relaxed size criterion
35479	* (genUminus): rewritten to for efficiency
35480	* (genNearPointer[GS]et): enforce reloading of FSR0 (was still
35481	  used uninitialized in some cases)
35482	* (genCast): upcasting a 16bit int to a 24bit GPOINTER may not
35483	  copy the third byte from the int -- now assumes 0x80 (data memory)
35484	* src/pic16/genarith.c (pic16_genPlus): fixed bug when swapping
35485	  operands (genAddLit expects the iCode's operands to swapped as
35486	  well), fixed leftover bytes (crashed for short left operands)
35487	* (pic16_genMinusDec): performance improvements, removed false
35488	  PIC14 emitSKPNCs
35489	* (pic16_genMinus): fixed to cope with differently sized operands
35490	* src/pic16/glue.c (pic16_glue): added new banksel optimization
35491	  for --obanksel > 1
35492	* src/pic16/pcode.c: implemented (first phase of) banksel optimization
35493	* src/pic16/graph.[ch]: implementation of directed graphs, used by
35494	  new banksel optimization
35495	* src/pic16/pcoderegs.c (pCodeRegMapLiveRangesInFlow): prevented
35496	  analysis for temporary registers (segfaults...)
35497	* src/pic16/peeph.def: added rule
35498
354992005-01-18 Vangelis Rokas <vrokas AT otenet.gr>
35500
35501	* device/lib/pic16/libc/stdlib/x_ftoa.c: it defines x_ftoa function
35502	which converts a float number to its ASCII representation
35503	* device/lib/pic16/libc/utils/cnvfrac.S,cnvint.S: support
35504	functions to convert the fractional and integer part of a float to ASCII,
35505	* device/lib/pic16/libc/stdlib/(calloc.c,free.c, malloc.c,
35506	realloc.c): added _MALLOC_SPEC to explicit place variables in data
35507	ram
35508	* device/include/asm/pic16/features.h: added _CODE, _DATA, _AUTOMEM,
35509	_STATMEM macros,
35510	* device/include/pic16/adc.h: added GPL info,
35511	* src/pic16/gen.c (genIfxpCOpJump): perform an genIfxJump but using
35512	a pCodeOp as tested operand,
35513	* (genNearPointerGet): optimized bit testing, does not use
35514	intermediate register for bit value, test directly instead with
35515	BTFSS, BTFSC, works only for single bits,
35516	* (genpic16Code): dump the name of the iCode in the asm,
35517	* src/pic16/ralloc.c (decodeOp): removed static declaration and
35518	renamed to pic16_decodeOp,
35519	* (serialRegAssign): do not allocate a temporary register for iCode
35520	sequences that test a single bit for 1/0
35521
355222005-01-12 Vangelis Rokas <vrokas AT otenet.gr>
35523
35524	* src/pic16/pcode.[ch]: introduced pic16_stackpnt_*,
35525	pic16_framepnt_*, pic16_stack_*, pic1_frame_* pointer variables to
35526	access stack and frame pointers. They are initially assigned to
35527	point at pic16_pc_fsr1[lh] and pic16_pc_fsr2[lh] variables and other
35528	accessing SFRs. Updated all occurences of modification of stack or
35529	frame pointer in gen.c and pcode.c,
35530	* src/pic16/ralloc.c (serialRegAssign): fixed two bugs with
35531	assigning of a literal value to pointers,
35532	* src/pic16/main.c (pic16_finiliseOptions): set pre-processor define
35533	flag STACK_MODEL_SMALL or STACK_MODEL_LARGE according to the model
35534	selected
35535
355362005-01-11 Vangelis Rokas <vrokas AT otenet.gr>
35537
35538	* doc/sdccman.lyx: update documentation about stack pragma, added
35539	some info for stack memory models
35540
355412005-01-08 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
35542
35543	* src/pic16/gen.c (DEBUGpc): MSVC 6 does not support macro variable arguments
35544
355452005-01-08 Raphael Neider <rneider AT web.de>
35546
35547	* src/pic16/device.c (pic16_dump_usection): changed naming scheme for
35548	  udata sections to fix bug #1097823
35549
355502005-01-05 Raphael Neider <rneider AT web.de>
35551
35552	* src/pic16/gen.c (genGenericShift): added handling of differently
35553	  sized left operand and result
35554
355552005-01-04 Raphael Neider <rneider AT web.de>
35556
35557	* src/pic16/gen.c (genIfxJump): fixed inverted skips on CARRY
35558	* (genIfx): fixed (?) read from uninitialized SPIL_LOC (now assumes CARRY
35559	  to hold the condition bit)
35560	* added new version of genCmp (old code available via #define)
35561	* added new version of genShiftLeft/genShiftRight in a generic
35562	  way, now supports shifting by negative values
35563	* (genLeftShiftLiteral, genRightShiftLiteral): use absolute value of
35564	  shiftCount (expected by genGenericShift)
35565	* src/pic16/genarith.c (genPlus): added code for adding CARRY+literal
35566	* src/pic16/pcode.c (pic16_OptimizeJumps): removed annoying statistics
35567	  dump
35568	* (pic16_newpCodeOpLit): changed to cast to unsigned char (as e.g. -32766
35569	  is an invalid literal too...)
35570
355712005-01-04 Vangelis Rokas <vrokas AT otenet.gr>
35572
35573	* src/pic16/gen.c (aopForSym, genEndFunction): applied some fixes
35574	from Raphael Neider,
35575	* src/pic16/pcode.c (pic16_newpCodeOpLit): removed casting to char
35576	for 8-bit literals. This fixes some literal operands which are sign
35577	extended to 16-bits ints when instruction needs only 8-bits.
35578
355792004-12-31 Paul Stoffregen <paul AT pjrc.com>
35580
35581	* device/lib/logf.c: added mcs51 assembly version
35582	* device/lib/expf.c: added mcs51 assembly version
35583	* device/lib/_logexpf.c: new shared asm code for expf and logf
35584	* device/include/math.h: add defines for assembly math library
35585	* device/lib/Makefile.in: build new _logexpf.c
35586	* device/lib/libfloat.lib: use new _logexpf.c
35587
355882004-12-29 Slade Rich <slade_rich AT users.sourceforge.net>
35589
35590	* src/pic/device.c
35591	* src/pic/pcode.c : adjusted internal stack and pre-allocated registers for
35592	  device types which have less than 0x7f registers.
35593
355942004-12-29 Slade Rich <slade_rich AT users.sourceforge.net>
35595
35596	* src/pic/genarith.c : Fixed problem with subtraction where the result would not be updated when borrowing.
35597
355982004-12-28 Paul Stoffregen <paul AT pjrc.com>
35599
35600	* device/lib/printf_fast.c: only build on supported arch.
35601	* device/lib/printf_tiny.c: only build on supported arch.
35602	* device/lib/printf_fast_f.c: only build if asm float lib
35603	* device/lib/_fsget1arg.c: only build if asm float lib
35604	* device/lib/_fsget2args.c: only build if asm float lib
35605	* device/lib/_fsnormalize.c: only build if asm float lib
35606	* device/lib/_fsreturnval.c: only build if asm float lib
35607	* device/lib/_fsrshift.c: only build if asm float lib
35608	* device/lib/_fsswapargs.c: only build if asm float lib
35609	* device/include/stdio.h: don't provide print_fast,
35610	  print_fast_f, print_tiny prototypes if --xstack used
35611
356122004-12-28 Maarten Brock <sourceforge.brock AT dse.nl>
35613
35614	* device/lib/sincosf.c (sincosf): don't invert bit/bool by ~
35615	* support/regression/ports/mcs51-stack-auto/spec.mk: added new _fs.. files
35616	  to the SOURCES
35617
356182004-12-28 Paul Stoffregen <paul AT pjrc.com>
35619
35620	* device/lib/printf_fast_f.c: same as printf_fast, but
35621	  with floating point enabled
35622	* device/lib/printf_fast.c: minor tweaks
35623	* device/include/stdio.h: add printf_fast_f
35624
356252004-12-27 Paul Stoffregen <paul AT pjrc.com>
35626
35627	* src/SDCCmain.c: make --float-reent default for mcs51
35628	* device/lib/_fsadd.c: added mcs51 assembly version
35629	* device/lib/_fssub.c: added mcs51 assembly version
35630	* device/lib/_fsmul.c: added mcs51 assembly version
35631	* device/lib/_fsdiv.c: added mcs51 assembly version
35632	* device/lib/_fseq.c: added mcs51 assembly version
35633	* device/lib/_fsneq.c: added mcs51 assembly version
35634	* device/lib/_fsgt.c: added mcs51 assembly version
35635	* device/lib/_fslt.c: added mcs51 assembly version
35636	* device/lib/_fscmp.c: shared code for fseq,fsgt,fslt,fsneq
35637	* device/lib/Makefile.in: add _fscmp to build
35638	* device/lib/libfloat.lib: add _fscmp to build
35639
356402004-12-27 Paul Stoffregen <paul AT pjrc.com>
35641
35642	* device/lib/_fs2slong.c: added mcs51 assembly version
35643	* device/lib/_fs2sint.c: added mcs51 assembly version
35644	* device/lib/_fs2schar.c: added mcs51 assembly version
35645	* device/lib/_fs2ulong.c: added mcs51 assembly version
35646	* device/lib/_fs2uint.c: added mcs51 assembly version
35647	* device/lib/_fs2uchar.c: added mcs51 assembly version
35648	* device/lib/_slong2fs.c: added mcs51 assembly version
35649	* device/lib/_sint2fs.c: added mcs51 assembly version
35650	* device/lib/_schar2fs.c: added mcs51 assembly version
35651	* device/lib/_ulong2fs.c: added mcs51 assembly version
35652	* device/lib/_uint2fs.c: added mcs51 assembly version
35653	* device/lib/_uchar2fs.c: added mcs51 assembly version
35654	* device/include/float.h: added #define to select asm vs c
35655
356562004-12-26 Paul Stoffregen <paul AT pjrc.com>
35657
35658	* device/lib/printf_fast.c: improvements to float output
35659	* device/include/float.h: add defines for assembly float library
35660	* device/lib/_fsget1arg.c: receive 1 float arg
35661	* device/lib/_fsget2args.c: receive 2 float args (reentrant)
35662	* device/lib/_fsnormalize.c: normalize a float
35663	* device/lib/_fsreturnval.c: return float, various helper routines
35664	* device/lib/_fsrshift.c: right shift a float's mantissa
35665	* device/lib/_fsswapargs.c: swap 2 floats
35666	* device/lib/Makefile.in: build these 6 new files for mcs51
35667	* device/lib/libfloat.lib: add these 6 files to the library
35668
356692004-12-26 Borut Razem <borut.razem AT siol.net>
35670
35671	* sim/ucsim/avr.src/arith_inst.cc: fixed bug #1088372- savr is not
35672	  built by gcc 3.4.2
35673
356742004-12-25 Paul Stoffregen <paul AT pjrc.com>
35675
35676	* device/lib/printf_tiny.c: printf for mcs51 in only 267 bytes,
35677	  and fully reentrant and register bank neutral.
35678	* device/lib/printf_fast.c: added float (not enabled by default),
35679	  added compact/slower integer (also not enabled by default),
35680	  improved size/speed of fast integer code, other minor changes
35681	* device/include/stdio.h, device/lib/Makefile.in,
35682	  device/lib/libsdcc.lib: integrate printf_tiny into mcs51 build
35683
356842004-12-24 Maarten Brock <sourceforge.brock AT dse.nl>
35685
35686	* src/pic16/pcode.c: declaring variables other than at the start of a
35687	  block is not supported in C by VC6.
35688
356892004-12-22 Vangelis Rokas <vrokas AT otenet.gr>
35690
35691	* applied a previous patch from Raphael Neider that wasn't included
35692	in the previous commits, which fixes infinite loops within jumptable
35693	improvements,
35694	* made some fixes that previous patches introduced
35695
356962004-12-21 Vangelis Rokas <vrokas AT otenet.gr>
35697
35698	* src/pic16/gen.c (pic16_aopGet): applied fix from Raphael Neider
35699	that fixes an issue with AOP_PCODE asmop's offset,
35700	* (pic16_popCopyReg): update instance field too,
35701	* (mov2w): modified to pic16_mov2w because it conflicts with mov2w
35702	function of pic port,
35703	* (genCmp, genAnd, genAssign),
35704	* src/pic16/genarith.c (genAddLit): some fixes from Raphael Neider,
35705
357062004-12-20 Vangelis Rokas <vrokas AT otenet.gr>
35707
35708	* src/SDCCast.c (gatherAutoInit): allow pic16 to emit static
35709	variables initial values to idata section,
35710	* src/SDCCicode.c (geniCodeCall): patch from ### to fix unreferenced
35711	variables in some functions. This utilizes parmBytes field of iCode
35712	structure to hold the offset of the variable in stack. (might be
35713	able to use the stack field too?)
35714	* applied patch from Raphael Neider # ### , # ###
35715	* src/pic16/glue.c (pic16emitRegularMap): fix to print static
35716	variable initial values in idata section,
35717	* src/pic16/ralloc.c (pic16_allocDirReg): don't allocate register
35718	for static variables with initial value
35719	* src/device/lib/pic16/libsdcc/float/ulong2fs.c (__ulong2fs):
35720	applied fix in while loop from Raphael Neider.
35721
357222004-12-19 Maarten Brock <sourceforge.brock AT dse.nl>
35723
35724	* src/ds390/gen.c (genCpl): fixed bit=~(char/bit) bugs, added warning
35725	* src/ds390/main.c (_ds390_regparm): don't pass bit params in registers
35726	* src/ds390/ralloc.c (serialRegAssign): spill bits
35727	* src/mcs51/gen.c (genCpl): fixed bit=~(char) bugs, added warning
35728	* support/Util/SDCCerr.c,
35729	* support/Util/SDCCerr.h: added warning W_COMPLEMENT for using bit=~(bit)
35730	* support/regression/tests/bitvars.c: added tests for bitwise complement(~)
35731	* support/regression/tests/bitwise.c: added test for bitwise complement(~)
35732
357332004-12-09 Maarten Brock <sourceforge.brock AT dse.nl>
35734
35735	* device/include/sdcc-lib.h: inserted LGPL, added includes
35736	  asm/ds390/features.h and asm/mcs51/features.h
35737	* device/include/asm/default/features.h,
35738	* device/include/asm/gbz80/features.h,
35739	* device/include/asm/z80/features.h: added empty _AUTOMEM
35740	  and _STATMEM
35741	* device/include/asm/ds390/features.h,
35742	* device/include/asm/mcs51/features.h: added files with defines for
35743	  _AUTOMEM and _STATMEM indicating automatic and static storage class
35744	* device/lib/printf_large.c (_print_format): optimized & used _AUTOMEM
35745	* doc/sdccman.lyx: version 2.4.7, updated xstack documentation
35746	* src/SDCCicode.c (geniCodeCast),
35747	* src/SDCCsymt.c (compareType): allow cast of data-ptr to idata-ptr
35748	* src/SDCCloop.c (loopInduction): removed unused variable lr
35749	* src/SDCCopt.c (convilong, convertToFcall): moved "easy special case"
35750	  to convertToFcall to include char modulo (RFE 1065037), added check
35751	  if left operand is unsigned and use abs of literal value
35752	* src/SDCCpeeph.c (setFromConditionArgs): removed double quotes option
35753	  as it doesn't work after conversion from peephole.def to peephole.rul
35754	* src/mcs51/gen.c (toBoolean): added check for size,
35755	  (genModOneByte): optimized code for signed char modulo a literal
35756	  power of 2 (thanks to Hubert Sack),
35757	  (genRRC): removed unnecessary "clr c",
35758	  (genRLC): replaced "add a,acc" with cheaper "rlc a"
35759	* src/mcs51/peeph.def: renamed 115 to 115.a, added rule 115.b: another
35760	  jump optimization,
35761	  swapped rules 256.c and 256.d,
35762	  extended 256.d by using new multiple checks (thanks Erik),
35763	  added rules 256.e and 256.f,
35764	  updated rule 261.a and 261.b to new generated code
35765	* support/regression/tests/muldiv.c: added test div/mod by a power of 2
35766
357672004-12-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35768
35769	* src/SDCCloop.c (basicInduction, loopInduction): fixed several
35770	  induction related bugs, including first part of bug #1074377
35771
357722004-12-05 Vangelis Rokas <vrokas AT otenet.gr>
35773
35774	* applied patch from bug-report #1076292,
35775	* applied patches for genAnd and Goto-optimizations for Raphael
35776	Neider,
35777	* src/SDCCicode.c (printOperand): fixed !REGA source to compile and
35778	dump a less iCode information,
35779	* src/pic16/device.h (pic16_options_t): added field debgen,
35780	* src/pic16/gen.h: added macros DUMP_FUNCTION_ENTRY,
35781	DUMP_FUNCTION_EXIT, FENTRY, FENTRY2,
35782	* src/pic16/gen.c (my_powof2): renamed to pic16_my_powof2 and made
35783	puclic,
35784	* (various functions): added macros FENTRY and FENTRY2 to functions,
35785	to emit function prologue,
35786	* (various functions): fixed indentation,
35787	* (genNearPointerGet): fixed loading of FSR0,
35788	* (genPackBits): applied patch from Raphael Neider to fix updating
35789	of FSR0 and touching only the modified bits,
35790	* src/pic16/genarith.c (various functions): added macros FENTRY to
35791	emit function prologue in comments,
35792	* src/pic16/pcode.h: added functions debugf2, debugf3,
35793	* src/pic16/ralloc.c: partial fix for packForPush caused
35794	segmentation fault,
35795
357962004-12-04 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
35797
35798	* src/mcs51/peeph.def: added 261.a,b (16 bit rotate) by Stas Sergeev
35799	  <stsp AT users.sourceforge.net> with reversed byte order
35800	* support/regression/tests/rotate.c: added (ds390 skips some tests)
35801
358022004-12-03 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35803
35804	* src/z80/gen.c (genLeftShift, genRightShift): fixed second part of
35805	  bug #1074377
35806	* src/hc08/gen.c (genrshFour, shiftRLong, shiftLLong),
35807	* src/mcs51/gen.c (shiftLLong): Fixed some shifting bugs Frieder found
35808
358092004-12-02 Slade Rich <slade_rich AT users.sourceforge.net>
35810
35811	* src/pic/pcode.c : fixed a problem where banksel was not being inserted.
35812
358132004-12-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35814
35815	* src/SDCCpeeph.c (callFuncByName): support combined peephole rule
35816	  conditions,
35817	  (setFromConditionArgs): friendly operand parser for peephole rules,
35818	  (operandBaseName, operandsNotRelated): new peephole condition
35819	  "operandsNotRelated" -- similar to "operandsNotSame", but takes
35820	  architecture specific register naming into account, handles n-way
35821	  comparisons, and supports quoted literals
35822	* src/mcs51/peeph.def: restored rule 177.d with an extra condition
35823
358242004-12-02 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
35825
35826	* src/mcs51/peeph.def: fixed bug #1076940
35827
358282004-12-02 Slade Rich <slade_rich AT users.sourceforge.net>
35829
35830	* device/include/pic/pic16f877.h : added an include file for the PIC16F877 device.
35831
358322004-11-28 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
35833
35834	Adding support for replacing ljmps with sjmps in jumptables
35835	generated for switch statements. For now you need to set the
35836	environment variable SDCC_SJMP_JUMPTABLE to enable this.
35837	Now 4 algorithms for mcs51 jumptable generation are used:
35838	ljmp or sjmp jumptables for up to 16 cases, stack-pushing target
35839	addresses loaded pc-relative for up to 112 cases and stack-pushing
35840	target addresses loaded with offset from dptr for up to 256 cases.
35841
35842	* src/SDCCpeeph.c: added peephole conditional labelJTInRange
35843	* src/mcs51/main.c: adapted constants for switch table generation
35844	* src/mcs51/peeph.def: added 260.x for replacing ljmp with sjmp
35845
358462004-11-26 Maarten Brock <sourceforge.brock AT dse.nl>
35847
35848	* device/lib/printf_large.c (_print_format): fixed bug 1073386
35849	* support/regression/tests/bug1057979.c: added test for bug 1073386
35850
358512004-11-25 Vangelis Rokas <vrokas AT otenet.gr>
35852
35853	* src/pic16/pcode.c: fixed bug which may produce error in non-GNU
35854	compilers
35855
358562004-11-25 Vangelis Rokas <vrokas AT otenet.gr>
35857
35858	* src/pic16/device.h,
35859	* src/pic16/genarith.c,
35860	* src/pic16/glue.c,
35861	* src/pic16/main.c,
35862	* src/pic16/pcode.c: applied patches #1068154 and #1070213
35863
358642004-11-24 Vangelis Rokas <vrokas AT otenet.gr>
35865
35866	Large cummulative patch for pic16 port.
35867	* device/lib/pic16/gstack.h: NEW, user can specify its own handler
35868	to call when a stack overflow occurs,
35869	* (malloc.h): added CVS Id tag,
35870	* (pic18f{242,252,442,452}.h): added T0CONbits structure and
35871	variable,
35872	* added libc directory. The current version of LibC contains string
35873	functions, ctype functions and macros and some functions of the
35874	stdlib set (like malloc/free/atof/atoi etc...). All functions are to
35875	be extensively tested in the future. Standard disclaimer here.
35876	Library is not automatically build yet. But one can build it by
35877	invoking 'make' inside the libc directory.
35878	* added ADC library under libio. Preliminary version yet.
35879
35880	* src/pic16/gen.h: added emitTOGC macro, to toggle Carry flag,
35881	* src/pic16/gen.c (aopForRemat): asmop size is filled by
35882	aopForRemat() now and not by pic16_aopOp(),
35883	* (pic16_popGetTempReg): removed warning messgae when allocating
35884	temporary registers, its a buggy feature and will be removed,
35885	* (pic16_popGet): set register instance field in AOP_CRY,
35886	* (pic16_outBitC): fixed for results in size greater than 1,
35887	* (genUminusFloat): fixed for pic16, ported code from mcs51,
35888	* (pic16_storeForReturn): optimized return of 0,
35889	* (genCmp): experimental code for new genCmp which uses PIC18's
35890	special compare&skip instructions. Initial tests fail some times
35891	with variables grater than 1 byte in size, so new code is disabled,
35892	* (genUnpackBits, genPackBits): more optimizations in reading/writing,
35893	a single bit,
35894	* (genCast): began a fix to optimize the casting of a bit to another
35895	bit, now assigning a bitfield to another bitfield will fail, sorry,
35896	* src/pic16/main.c: disabled the use of lr-support feature,
35897	* src/pic16/pcode.h: renamed PCASMDIR to PCAD,
35898	* added some function prototypes, added function _debugf prototype,
35899	* src/pic16/pcode.c: (pic16_get_op): fixed emitting operands of register
35900	bits with offset (case PO_GPR_BIT),
35901	* (genericPrint): don't emit INFO pcode when --pcode-verbose not in
35902	command line,
35903	* (isBankInstruction): modified to return 0 for no banking instruction,
35904	and 1 for banking instruction,
35905	* (pic16_isPCinFlow): check for PCAD (assembler directives) too,
35906	caused stop processing pCodes after a inline assembly block,
35907	* (pic16_popCopyGPR2Bit): updated to match bitfields with offset,
35908	* src/pic16/pcoderegs.c: fixed a bug with eliminating some temporary
35909	registers when it shouldn't,
35910	* src/pic16/ralloc.c (allocReg): add preliminary support for
35911	supporting a limited set of temporary registers,
35912
359132004-11-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35914
35915	* src/hc08/gen.c (genAssign, genPointerGetSetOfs, genDataPointerGet,
35916	  genDataPointerSet): ensure assignments always copy in MSB to LSB
35917	  order,
35918	  (loadRegFromAop): recognize CLRH optimization,
35919	  (genFunction): optimize RECEIVE iCodes in reentrant functions
35920
359212004-11-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35922
35923	* src/SDCCmain.c (parseCmdLine, optionsTable[]): fixed bug with
35924	  --out-fmt-s19 turning into --out-fmt-elf if s19 was already
35925	  selected.
35926	* src/SDCCmain.c (linkEdit): don't define SSEG for HC08
35927	* src/hc08/main.c (_hc08_setDefaultOptions): default xdata to be
35928	  contiguous with data
35929
359302004-11-19 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
35931
35932	* device/lib/_gptrget.c (_gptrget),
35933	* device/lib/_gptrgetc.c (_gptrgetc),
35934	* device/lib/_gptrput.c (_gptrput): _naked allows to use ret
35935	  instead of sjmp to ret
35936	* src/mcs51/peeph.def: added peepholes 3.d-g and 177.g,h provided
35937	  by Hubert Sack <hsack2002 AT arcor.de> in RFE #1067986, thanks
35938
359392004-11-18 Maarten Brock <sourceforge.brock AT dse.nl>
35940
35941	* .version: bumped version to 2.4.7
35942	* device/lib/_gptrget.c (_gptrget): is now _naked
35943	* device/lib/_gptrgetc.c (_gptrgetc): is now _naked
35944	* device/lib/_gptrput.c (_gptrput): is now _naked
35945	* src/SDCCast.c (createBlock): removed ridiculous self-assignment,
35946	  (createFunction): fixed xstack
35947	* src/SDCCglue.c (emitMaps): set allocation required for bit area
35948	* src/SDCCicode.c (geniCodeCast): don't change SPEC_OCLS for literal
35949	  or bit either,
35950	  (geniCodeCritical): store original interrupt state in an iTemp bit
35951	  var unless stack-auto
35952	* src/SDCCicode.h: added CRITICAL and ENDCRITICAL to SKIP_IC2
35953	* src/SDCCmain.c (setIncludePath): added include/target to search path
35954	* src/SDCCmem.c (allocParms): store bit vars in bit space, not overlay
35955	* src/SDCCsymt.c (checkFunction): don't check regbank for isr's against
35956	  prototype,
35957	  (processFuncArgs): put bit vars in bit area
35958	* src/mcs51/gen.c (saveRegisters, unsaveRegisters, genXpush, saveRBank,
35959	  unsaveRBank): fixed xstack,
35960	  (genFunction): bugfix: replaced (global!) reentrant with fReentrant,
35961	  (genFunction, genEndFunction): fixed xstack,
35962	  (genAssign): optimization don't walk backwards through mem
35963	* src/mcs51/main.c (_mcs51_regparm): don't pass bit params in registers
35964	* src/mcs51/ralloc.c (createStackSpil): spill bits to bit area
35965	* support/regression/Makefile: also make library (for stack-auto) when
35966	  making "all" and added "test-mcs51-xstack-auto"
35967	* support/regression/fwk/lib/testfwk.c: added T2_isr prototype for mcs51
35968	* support/regression/ports/mcs51/T2_isr.c: added this file as a stub
35969	* support/regression/ports/mcs51/fwk.lib: added to link T2_isr stub
35970	* support/regression/ports/mcs51/spec.mk: added rules for fwk.lib
35971	* support/regression/ports/mcs51-stack-auto/spec.mk: replaced
35972	  make-library by MAKE_LIBRARY
35973	* support/regression/ports/mcs51-xstack-auto/spec.mk: file added to run
35974	  regression tests for xstack
35975	* support/regression/tests/bitvars.c: test for bit vars (bug 938782)
35976	* support/regression/tests/critical.c: test for critical on mcs51
35977
359782004-11-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35979
35980	* support/regression/ports/ucz80/spec.mk: use include and lib files from
35981	  built version of sdcc instead of installed version
35982
359832004-11-14 Maarten Brock <sourceforge.brock AT dse.nl>
35984
35985	* src/mcs51/gen.c (toBoolean): fixed bug 1065458
35986	* device/lib/Makefile.in: z80 uses printf_large.c, sprintf.c and
35987	  vprintf.c now
35988	* device/lib/printf_large.c (calculate_digit): fixed bug 1057979
35989	* device/lib/z80/Makefile: don't use printf.c as it fails bug 1057979
35990	  WARNING: remove device/lib/build/z80/printf.o by hand when
35991	  updating from previous build!
35992	* device/lib/z80/printf.c: updated comment
35993	* support/regression/tests/bug1057979.c: test all ports now
35994	* support/regression/tests/bug1065458.c: file added
35995
359962004-11-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
35997
35998	* src/z80/gen.c (genFunction, genEndFunction): avoided generating
35999	  *_start and *_end symbols for static functions
36000
360012004-11-11 Maarten Brock <sourceforge.brock AT dse.nl>
36002
36003	* src/SDCCmain.c (linkEdit): don't suppress crt0 if --nostdlib is used
36004	  and search crt0.o in all library paths,
36005	  (setIncludePath): proper handling of --nostdinc,
36006	  (setLibPath): proper handling of --nostdlib
36007	* support/regression/Makefile,
36008	* support/regression/ports/ds390/spec.mk,
36009	* support/regression/ports/gbz80/spec.mk,
36010	* support/regression/ports/hc08/spec.mk,
36011	* support/regression/ports/mcs51/spec.mk,
36012	* support/regression/ports/mcs51-large/spec.mk,
36013	* support/regression/ports/mcs51-stack-auto/spec.mk,
36014	* support/regression/ports/z80/spec.mk: use include and lib files from
36015	  built version of sdcc instead of installed version
36016	* doc/sdccman.lyx: fixed typo in --nostdinc
36017
360182004-11-10 Slade Rich <slade_rich AT users.sourceforge.net>
36019
36020	* src/pic/pcode.c,
36021	* src/pic/device.c,
36022	* src/pic/ralloc.c,
36023	* src/pic/gen.c : added support to generate code for struct bit fields.
36024
360252004-11-06 Maarten Brock <sourceforge.brock AT dse.nl>
36026
36027	* as/xa51/xa_version.h,
36028	* device/include/errno.h,
36029	* device/include/regc515c.h,
36030	* device/lib/_itoa.c,
36031	* device/lib/_ltoa.c,
36032	* device/lib/ser_ir_cts_rts.c,
36033	* sim/ucsim/xa.src/glob.cc,
36034	* sim/ucsim/xa.src/inst_gen.cc,
36035	* sim/ucsim/xa.src/xa_bit.cc,
36036	* sim/ucsim/xa.src/xa_sfr.cc,
36037	* sim/ucsim/z80.src/inst_dd.cc,
36038	* sim/ucsim/z80.src/inst_fdcb.cc,
36039	* support/scripts/keil2sdcc.pl,
36040	* src/pic16/pic16.dsp,
36041	* src/pic16/pic16a.dsp: corrected cvs line endings
36042	* device/lib/printf_large.c: fixed bug 1057979
36043	* src/pic16/gen.c: fixed non-C standard code
36044	* src/SDCCmain.c: made --pack-iram default, added --no-pack-iram
36045	* src/SDCCglobl.h: changed pack_iram to no_pack_iram
36046	* support/regression/ports/mcs51/support.c: reload T1 asap
36047	* doc/sdccman.lyx: updated for options --pack-iram and --no-pack-iram,
36048	  pdata use and clear idata startup behaviour
36049	* support/regression/tests/bug1057979.c: added
36050
360512004-11-04 Maarten Brock <sourceforge.brock AT dse.nl>
36052
36053	* device/examples/ds390/ow390/ad26.h,
36054	* device/examples/ds390/ow390/cnt1d.h,
36055	* device/examples/ds390/ow390/crcutil.c,
36056	* device/examples/ds390/ow390/ownet.h,
36057	* device/examples/ds390/ow390/owsesu.c,
36058	* device/examples/ds390/ow390/swt12.h,
36059	* device/examples/ds390/ow390/swtoper.c,
36060	* device/examples/ds390/ow390/temp10.h,
36061	* device/examples/ds390/ow390/thermodl.c,
36062	* device/examples/ds390/tinitalk/tinitalk.dsp,
36063	* device/examples/ds390/tinitalk/tinitalk.dsw,
36064	* device/examples/mcs51/clock/hw.h,
36065	* device/examples/mcs51/simple2/go.bat,
36066	* device/examples/serialcomm/windows/serial.h,
36067	* device/examples/xa51/dummy.c,
36068	* device/examples/xa51/hello.c,
36069	* device/include/80c51xa.h,
36070	* device/include/at89x051.h: corrected cvs line endings
36071
360722004-11-04 Vangelis Rokas <vrokas AT otenet.gr>
36073
36074	* src/pic16/main.c (options): added command line --gstack, to trace
36075	stack over/under flows,
36076	* added pragma 'wparam' to allow passing first byte of function
36077	parameters via WREG, syntax is #pragma wparam my_function[, func2...]
36078	* src/pic16/gen.c (pic16_testStackOverflow): function which emits a
36079	call to __gstack_test function and sets up the symbol as extern,
36080	* (pic16_pushpCodeOp, pic16_poppCodeOp, pushw, pushaop, popaopidx,
36081	* popaop): added call to pic16_testStackOverflow,
36082	* (wParamCmp, inWparamList): NEW, test existence of a symbol in
36083	wparamList list,
36084	* (genCall, genPcall): now all parameters are passed via stack
36085	except in functions that are pass to wparam pragma in which WREG is
36086	used too,
36087	* (genPcall): REENTRANT flag is checked to see if variable prototype
36088	contains reentrant keyword, don't call a non-reentrant function, via
36089	a reentrant function pointer or vice versa, functions are never
36090	passed via WREG,
36091	* (genJumpTab): applied patch from bug #1057478 by R.Neider and
36092	D.Winkler,
36093	* src/pic16/glue.c (pic16emitRegularMap): fixed bug which caused a
36094	SIGSEGV when accessing a NULL register stucture,
36095	* (pic16_printGPointerType): modified to handle UPPER modifier for
36096	function initializers, changed prototype of function to simpler one,
36097	* (pic16_printIvalFuncPtr): check to see if function is already
36098	added in externs list,
36099	* src/pic16/pcoderegs.c (pCodeOptime2pCodes): fixed bug which
36100	optimized a move from W to SFR with a move to the same register
36101	later after a CALL,
36102	* device/lib/pic16/debug: NEW directory, contains debug features
36103	which are enabled when linking with libdebug.lib, currently command
36104	line option --gstack enables stack pointer tracing for over/under
36105	flow, corresponding sources are in debug/gstack
36106
361072004-10-30 Vangelis Rokas <vrokas AT otenet.gr>
36108
36109	* doc/sdccman.lyx: updated SDCC version,
36110	* (PIC16 port): update list of command line options,
36111	* src/pic16/device.h (structure pic16_options_t): added field gstack
36112	to enable stack overflow tracing on push/pops,
36113	* src/pic16/device.c (statistics structure): added statistics
36114	structure,
36115	* (pic16_dump_access, pic16_dump_usection, pic16_dump_gsection,
36116	pic16_dump_int_registers): increase statistics counters for each
36117	* variable which is encountered
36118	* (pic16_dump_usection): emit each .udata variable to its own udata
36119	section,
36120	* src/pic16/gen.c (assignResultValue, genCall, genPcall, genFunction):
36121	when macro USE_WREG_IN_FUNC_PARAMS is set to 0 pass all function
36122	parameters via stack, otherwise use old scheme,
36123	* src/pic16/glue.c (pic16_emitStatistics): dump statistics in
36124	assembler output file,
36125	* src/pic16/main.c: added command line options --gstack to enable
36126	push/pop tracing for stack overflow,
36127	* src/pic16/pcode.c (all pCodeInstruction records for PIC18F
36128	instructions): added size of each instruction,
36129	* (pic16_countInstruction): estimate size of instructions in
36130	the_pFile list, inline assembly blocks are not counted,
36131	* (pic16_FixRegisterBanking): trace previous register usage, when
36132	banksel optimizations is greater than 0, don't emit a redudant
36133	banksel directive,
36134
361352004-10-26 Slade Rich <slade_rich AT users.sourceforge.net>
36136
36137	* src/pic/ralloc.c : fixed inefficient code produced when compiling a complimented bit operation.
36138	* src/pic16/ralloc.c : applied same fix for pic16.
36139	* src/pic/gen.c : tidied it up a little.
36140
361412004-10-25 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
36142
36143	* src/mcs51/peeph.def: disabled 259.a,b for removing redundant ret,
36144	thanks to Martin Helmling for reporting (mail on sdcc-devel 2004-10-25)
36145
361462004-10-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36147
36148	* src/SDCCast.c (reverseParms): fixed bug #1040577 (part 2)
36149
361502004-10-22 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
36151
36152	* device/lib/ser_ir_cts_rts.c: integer promotion caused a call to the
36153	non-reentrant function __modsint in the interrupt function (thus
36154	corrupting math operations during serial I/O)
36155	* device/lib/ser_ir.c: as above, changed buffersize
36156	* src/mcs51/peeph.def: added 259.a,b for removing redundant ret,
36157	256.c,d for zeroing
36158	* doc/Makefile: added option -t for rsync
36159
361602004-10-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36161
36162	* src/SDCCast.h (struct ast),
36163	* src/SDCCast.c (reverseParms, copyAst): fixed bug #1040577 (part 1)
36164
361652004-10-20 Borut Razem <borut.razem AT siol.net>
36166
36167	* support/scripts/sdcc.nsi: added include/pic16/*.h to the setup
36168	package
36169
361702004-10-20 Vangelis Rokas <vrokas AT otenet.gr>
36171
36172	* device/lib/pic16/libsdcc/Makefile: added lregs directory in
36173	makefile targets,
36174	* device/lib/pic16/libsdcc/lregs/{Makefile,lrst.c,lrrest.c}: NEW
36175	support functions to replace long sequences of MOVFF's from access
36176	bank registers to stack and vice versa,
36177	* src/pic16/device.h: added new field opt_flags, where optimization
36178	flags can be set to enable certain features,
36179	* src/pic16/gen.c (pic16_emitpinfo): NEW to add PC_INFO pCode in
36180	* pBlock, (genFunction, genEndFunction): surroung loop for
36181	saving/loading used registers in stack with PC_INFO pCodes,
36182	INF_LREGS. Code in between can then be optimized by pCode optimizer
36183	to support function calls,
36184	* (genDataPointerSet): fixed bug which loaded float fields in
36185	structures with corrupt data,
36186	* src/pic16/genutils.c (debugf, _debugf): macro/function which emits
36187	in a standard way debug info on stderr. Feature used for developing
36188	and debugging only,
36189	* src/pic16/glue.c (pic16glue): reformatted, deleted some old and
36190	obsolete chunks of code,
36191	* if optimization flag OF_LR_SUPPORT was set, call pic16_OptimizeLocalRegs,
36192	* src/pic16/main.c (_pic16_parseOptions): added handler for --flr-support,
36193	* pic16/src/pcode.c (pic16_newpCodeInfo,
36194	* (pic16_newpCodeOpLocalRegs),
36195	* (pic16_convertLocalRegs2Support): NEW, to support new optimization
36196	feature,
36197	* (pic16_pCodeConstString): printing of the initial value of a
36198	symbol as a comment is inhibited since parsing was already done by
36199	copyStr and output is corrupt,
36200	* (pic16_pCode2str, genericPrint): handle PC_INFO pCode,
36201
362022004-10-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36203
36204	* src/mcs51/ralloc.c (packRegisters): fixed bug #1044601
36205
362062004-10-19 Maarten Brock <sourceforge.brock AT dse.nl>
36207
36208	* as/mcs51/lkarea.c: removed old K&R style,
36209	  (lnksect): changed check on boundary error,
36210	  (lnksect2): changed check on boundary error,
36211	  (lnksect2): extend XSTK to end of page if size = 1
36212	* as/mcs51/lkmain.c: removed old K&R style,
36213	  (Areas51): create l_IRAM symbol
36214	* as/mcs51/lkmem.c (summary2): added report on PSEG and XSTK
36215	* device/lib/Makefile.in: renamed model-mcs51-reentrant to
36216	  model-mcs51-stack-auto, added model-mcs51-xstack-auto
36217	* device/lib/_mullong.c: added version to be compiled with xstack
36218	* device/lib/mcs51/crtclear.asm: clear only upto --iram-size
36219	* device/lib/mcs51/crtxclear.asm: clear pdata as well
36220	* device/lib/mcs51/crtxstack.asm: fixed comment
36221	* src/SDCCglue.c: maxInterrupts defaults to 0,
36222	  (emitMaps): added pdata,
36223	  (createInterruptVect): (re)moved default,
36224	  (glue): added pdata,
36225	  (glue): moved __start__xstack to XSTK with default size 1
36226	* src/SDCCmain.c (parseCmdLine): automatically set options.intlong_rent
36227	  and options.float_rent when options.stackAuto is set,
36228	  (linkEdit): only write XDATA_NAME if provided on command line
36229	* src/SDCCmem.h,
36230	* src/SDCCmem.c: added pdata
36231	* src/port.h: added pdata_name to PORT
36232	* src/mcs51/gen.c (toBoolean): fixed for Acc use of aopGet,
36233	  (saveRegisters, unsaveRegisters): removed usage of B,
36234	  (genMinus): fixed accumulator clash,
36235	  (genJumpTab): added comment, this needs another look
36236	* src/mcs51/gen.c: added check for "B in use" paranoia,
36237	  added pushB() and popB()
36238	* src/mcs51/peeph.def: restart after 177.c so 177.a can get a second
36239	  chance
36240	* src/avr/main.c,
36241	* src/ds390/main.c,
36242	* src/hc08/main.c,
36243	* src/mcs51/main.c,
36244	* src/pic/main.c,
36245	* src/pic16/main.c,
36246	* src/xa51/main.c,
36247	* src/z80/main.c: (reset_regparms) made void parameter explicit and
36248	  added PSEG (PAG,XDATA) or NULL to port specifier
36249	* src/ds390/main.c (_ds390_genIVT): moved implemented default in here
36250	* src/mcs51/main.c (_mcs51_genIVT): moved implemented default in here,
36251	  (_mcs51_genInitStartup): removed __start__xstack equ,
36252	  (mcs51_port): moved xstack from XSEG (XDATA) to XSTK (PAG,XDATA)
36253	* src/pic16/device.c (pic16_dump_usection, pic16_dump_isection),
36254	* src/z80/gen.c (_rleAppend): fixed warnings
36255	* support/regression/tests/zeropad.c: added pdata test
36256	* .version: bumped to 2.4.6
36257
362582004-10-17 Borut Razem <borut.razem AT siol.net>
36259
36260	* support/scripts/sdcc.nsi: cross compiling of WIN32 setup.exe on Linux
36261	as a part of nightly build
36262
362632004-10-16 Vangelis Rokas <vrokas AT otenet.gr>
36264
36265	* src/pic16/gen.c (struct _G): added field useWreg, is set to 1 when
36266	WREG holds the first byte function parameters,
36267	* (aopForSym): take special case for symbols which are in FARSPACE
36268	but in CODESPACE too,
36269	* (assignResultValue): modified to take into account _G.useWreg,
36270	* (genCall): don't use wreg for parameter passing when function is
36271	declared as reentrant, too, added optimization INCF to stack
36272	pointer when stack parameter count is 1,
36273	* (genFunction, genEndFunction): refurnished and fixed to not using
36274	wreg for passing parameters when function has varargs or is
36275	reentrant, fixed bug with symbol name compare for generating
36276	functions in absolute address,
36277	* (pic16_storeForReturn): refurnished,
36278	* (genCmp): began writing a new version of the function, not ready
36279	yet, therefore it is disabled,
36280	* (genAssign): do not read code memory when assigning a function to
36281	a pointer function,
36282	* src/pic16/glue.c (pic16emitStaticSeg): abSym->name is defined an
36283	array of characters, not pointer,
36284	* (pic16initialComments): in debug mode emit an .ident directive for
36285	the assembler,
36286	* (_process_pragma): emit a new warning type (internal to pic16)
36287	when setting stack to default length, emit a similar warning when
36288	placing a function at absolute address and address is not word aligned
36289	* (_pic16_parseOptions): added 'return TRUE' statement,
36290	* (_pic16_linkEdit): if compiling a source, then add the source's
36291	file object, first in the list of objects to link,
36292
362932004-10-13 Slade Rich <slade_rich AT users.sourceforge.net>
36294
36295	* src/pic/pcoderegs.c : increased count on regUsedinRange to prevent unnecessary warning.
36296	* src/pic/main.c : removed VC warning.
36297	* src/pic/gen.c : changed comment.
36298
362992004-10-12 Vangelis Rokas <vrokas AT otenet.gr>
36300
36301	* device/lib/pic16/libsdcc/gptr/gptrput[234].c: an external
36302	reference to a deprecated symbol _GPTRREG was causing failure to
36303	link. Thanks G. M. Gallant for the info.
36304
363052004-10-12 Slade Rich <slade_rich AT users.sourceforge.net>
36306
36307	* src/pic/pcode.c : Applied a code patch supplied by Paul Ashmore in
36308	comments for Bugs item #954788.
36309
363102004-10-10 Vangelis Rokas <vrokas AT otenet.gr>
36311
36312	* src/pic16/device.c (pic16_dump_gsection,
36313	* pic16_groupRegistersInSection): handle symbols declared to be in
36314	access bank differently,
36315	* src/pic16/gen.c (struct _G): added field resDirect,
36316	* (aopForSym): if symbol on stack and iCode is '=' and result exists,
36317	send values read from stack directly to result and don't allocate
36318	temporary values,
36319	* (pic16_sameRegs): fixed bug that allowed MOVFF to move between
36320	same registers,
36321	* (pic16_sameRegsOfs): NEW,
36322	* (freeAsmop): if _G.resDirect is set then do not mark registers as
36323	free because they were not allocated from temporary pool,
36324	* pic16_popRegFromString): workaround to fix a problem with
36325	allocating variables twice or never,
36326	* (genGenPointerGet): using PRODL instead of FSR0H,
36327	* (genGenPointerSet): using POSTDEC1 (that is a stack location)
36328	instead of FSR0H,
36329	* (genAssign): take advantage of the _G.resDirect flag,
36330	* (genCast): around line 11844, use mov2f instead of directly
36331	MOVFF'ing between operands to account for literal values,
36332	* src/pic16/genutils.c: some new debug functions for gpsim have been
36333	added,
36334	* src/pic16/glue.c (pic16_printIvalType): fixed bug that initialized
36335	float with integer part only,
36336	* src/pic16/main.c (_process_pragma): handle pragma udata access to
36337	place variables in access bank
36338	* device/lib/pic16/libsdcc/gptr/gptr*.c: using BRA instead of GOTO,
36339	updated sources to reflect recent changes in gen.c
36340
363412004-10-06 Vangelis Rokas <vrokas AT otenet.gr>
36342
36343	* device/lib/pic16/libsdcc/Makefile.rules: fixed bug concerning
36344	sources that searched for headers in installation path, now the
36345	device/include/pic16 is used,
36346	* src/pic16/glue.c (pic16glue),
36347	* src/pic16/pcode.c (pCode2str, genericPrint): don't print .file or
36348	.line directives if not in debug mode, this suppresses assembler's
36349	warnings for ignored directives
36350
363512004-10-05 Maarten Brock <sourceforge.brock AT dse.nl>
36352
36353	* src/port.h: made reset_regparms prototype void parameter explicit.
36354	* src/SDCCsymt.c (processFuncArgs): removed argument "func".
36355	* src/mcs51/ralloc.c (packRegisters): new fix for bugs 898889 & 979599.
36356	* doc/sdccman.lyx: documented warning disabling and how to use
36357	  printf_large to make it print floats.
36358	* device/include/stdbool.h: NEW
36359	* device/lib/_atof.c,
36360	* device/lib/_divuint.c,
36361	* device/lib/_divulong.c,
36362	* device/lib/expf.c,
36363	* device/lib/printf_large.c,
36364	* device/lib/sincosf.c,
36365	* device/lib/sincoshf.c: used stdbool.h, all compile with stack-auto now
36366	* device/lib/Makefile.in: added target for model-mcs51-reentrant to build
36367	  a completely reentrant lib.
36368
363692004-10-05 Vangelis Rokas <vrokas AT otenet.gr>
36370
36371	* device/lib/pic16/libsdcc/gptr/gptr*.c: added return statements
36372	* device/include/pic16/stdio.h: fixed bug with colon
36373
363742004-10-03 Vangelis Rokas <vrokas AT otenet.gr>
36375
36376	* device/include/pic16/stdio.h,
36377	* device/include/pic16/stdlib.h,
36378	* device/include/pic16/math.h: NEW
36379	* device/lib/pic16/libsdcc/gptr/*.c (gptrget*, gptrput*): functions
36380	declared as _naked to reduce overhead
36381	* device/lib/Makefile.in (target port-specific-objects-pic16):
36382	changed * to *.* so to ignore the CVS directory,
36383	* src/pic16/gen.c (pic16_freeAsmop): added code to store result of
36384	stacked variables back in stack,
36385	* (genEndFunction): fixed bug reported by G.M. Gallant with stack
36386	corruption
36387
363882004-10-01 Vangelis Rokas <vrokas AT otenet.gr>
36389
36390	* .version: bumped version number to 2.4.5
36391	* support/Util/SDCCerr.h: added warning W_POSSBUG2.
36392	* support/Util/SDCCerr.c (messages structure): added entry for
36393	W_POSSBUG2
36394
36395	Large cumulative patch for pic16 port and libraries.
36396	* device/include/pic16/sdcc-lib.h,
36397	* device/include/pic16/stdarg.h,
36398	* device/include/asm/pic16/features.h,
36399	* device/include/lib/pic16/libsdcc/gptr/{*.c, Makefile}: NEW,
36400	* device/include/pic16/float.h: changes reentrant keyword with
36401	_FS_REENTRANT, added prototype for __fsneq, included sdcc-lib.h
36402	* device/lib/pic16/libsdcc/Makefile: added target directory gptr,
36403	updated target build-libraries to include objects from gptr,
36404	* device/lib/pic16/libsdcc/{char,int,long}/*.c: added macro
36405	_IL_REENTRANT to all function headings, included sdcc-lib.h header,
36406	* device/lib/pic16/libsdcc/float/*.c: added macro _FS_REENTRANT to
36407	all function headings,
36408	* src/SDCCmain.c: added global parameter userIncDirsSet,
36409	* (parseCmdLine): when option -I is encountered add directory to
36410	userIncDirsSet too,
36411	* src/version.awk: added space between control and long,
36412	* src/pic16/NOTES: added some notes for the port,
36413	* src/pic16/gen.c: added prototype for mov2fp function,
36414	* (fReturnpic16[]): properly named return value registers,
36415	* (_G structure): added fields stackRegSet, fregsUsed, stack_lat,
36416	* (aopForSym): added code to handle symbols with onStack flag set,
36417	symbols onStack are allocated PTRSIZE bytes,
36418	* (aopFreeAsmop): handles special case where asmops are stack objects,
36419	* (aopGet, pic16_popGet): adde cod to handle new asmop AOP_STA,
36420	* (pic16_popGetTempReg, pic16_popGetTempRegCond, pic16_popReleaseTempReg):
36421	added argument lock to trace flaws in allocating temporary registers
36422	when developing port,
36423	* (pic16_popGetLit, pic16_popGetLit2): changed lit from unsigned to signed
36424	* (pic16_popRegFromString): reenabled allocating a direct register
36425	from string,
36426	* (assignResultValue): various beautifications,
36427	* fixed bug #1037717 (patch from R. Neider & D. Wrinkler) with mistaken
36428	referenced function argument,
36429	* (genIpush): reenabled to allow stacked arguments, handles only
36430	ic->parmPush iCodes,
36431	* (genCall, genPcall): major changes to allow for variable argument
36432	functions, fixed a bug with falsely restoring stack pointer after
36433	returning from call,
36434	* (genFunction): pending code for critical function,
36435	* (shiftR1Left2ResultSigned, shiftR1Left2Result, shiftL2Left2Result,
36436	* (shiftR2Left2Result, shiftLLong) applied patch #1032155 from R.Neider,
36437	* (genNearPointerGet): fixed bug with indirect reading, was always
36438	reading from INDF0
36439	* (genGenPointerGet, genGenPointerSet): rewrote to support generic
36440	pointers,
36441	* (genAddrOf): rewrote code to take address of a stacked function parameter
36442	* (genCast): fixed casting to generic pointer type,
36443	* src/pic16/gen.h: added AOP_STA,
36444	* (struct asmop): added field stk,
36445	* src/pic16/genarith.c (pic16_AopType): handle AOP_STA,
36446	* (pic16_genPlusIncr): changed emitSKPNZ to emitSKPNZ,
36447	* (pic16_genAddLit, pic16_genPlus): applied patch #1034042 by tecodev,
36448	* (pic16_genMinus): fixed bug #1035119 with patch submitted by tecodev,
36449	* src/pic16/genutils.c (pic16_genNot): removed symbol *tlbl,
36450	* src/pic16/glue.c (pic16_printGPPointerType): fixed to support new
36451	generic pointers,
36452	* src/pic16/main.c (_pic16_initPaths): ignores default SDCC include
36453	and library paths,
36454	* (pic16_port structure): generic pointer size is set to 3,
36455	* src/pic16/pcode.c (pic16_newpCodeOpLit): correctly print literal integer,
36456	* (insertBankSwitch): cast to (char *) to prevent 64bit CPUs'
36457	compiler warning,
36458	* src/pic16/ralloc.c (allocReg): prevent allocating register when
36459	operand is an iTemp,
36460
364612004-09-24 Martin Helmling <mh AT octo-soft.de>
36462
36463	* debugger/mcs51/cmd.c: set PC if a symbol at pc reg is set
36464	* debugger/mcs51/simi.c: addapt new syntax of s51
36465
364662004-09-23 Vangelis Rokas <vrokas AT otenet.gr>
36467
36468	* src/pic16/genutils.c (pic16_genNot): fixed bug #1032265,
36469	* src/pic16/pcode.c: commented out some calls to free() in order to
36470	fix bug #989576,
36471
364722004-09-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36473
36474	* src/SDCCicode.h,
36475	* src/SDCCicode.c (isiCodeInFunctionCall),
36476	* src/avr/ralloc.c (selectSpil),
36477	* src/pic/ralloc.c (selectSpil),
36478	* src/pic16/ralloc.c (selectSpil),
36479	* src/ds390/ralloc.c (selectSpil),
36480	* src/hc08/ralloc.c (selectSpil),
36481	* src/xa51/ralloc.c (selectSpil),
36482	* src/mcs51/ralloc.c (selectSpil): Don't use remainSpil to spill to the
36483	stack in the middle of a function call sequence (fixes bug #1020268)
36484	* src/SDCCicode.c (geniCodeJumpTable): fixed error in computing the
36485	costs associated with the minimum switch case.
36486
364872004-09-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36488
36489	* src/SDCC.lex: fixed bug #1030549
36490
364912004-09-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36492
36493	* src/SDCCcse.h (struct cseDef),
36494	* src/SDCCcse.c (cseBBlock, newCseDef, ifFromAddrTaken): purge CSEs
36495	over a function call if the CSE is derived from a symbol whose
36496	address has been taken (fixes bug #1029883)
36497	* support/regression/tests/bug-1029883: a new regression test for
36498	this bug
36499
365002004-09-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36501
36502	* src/hc08/gen.c (emitinline): fixed bug #1029778
36503	* src/SDCC.y (assignment_expr): fixed the grammer so that assignment
36504	to a cast object is no longer a syntax error ("fixes" bug #1030006,
36505	and starts toward RFE #905167)
36506
365072004-09-17 Vangelis Rokas <vrokas AT otenet.gr>
36508
36509	* src/pic16/gen.c (mov2f): New function to move an operand to
36510	another without considering if it is a literal or a register,
36511	* (pic16_sameRegs): don't check if they are both AOP_REG,
36512	* (AccRsh): removed andmask=0 lines,
36513	* (genLeftShift): duplicated to be improved in future versions,
36514	* src/pic16/main.c (_process_pragma): emit stack default size in hex,
36515	* src/pic16/pcode.c: added POC_INFSNZW, updated inverted_op fields
36516	in POC_INCFSZ, POC_INCFSZW, POC_INFSNZ,
36517	* (pic16initMnemonics): added initialization for POC_INFSNZW,
36518	* (insertBankSwitch): fixed inserting banksel directives algorithm
36519	for instructions that follow a skip instruction, this fixes a report
36520	for broken subtraction code generation,
36521	* src/pic16/ralloc.c (deassignLRs): do not free register if current
36522	iCode is a left op, just in case result and right share the same
36523	registers
36524
365252004-09-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36526
36527	* src/hc08/main.c,
36528	* src/hc08/gen.c (genJumpTable): more efficient jump table, supports
36529	preservation of HX
36530	* src/hc08/gen.c (pullRegs): fixed order of HX & XA pairs
36531	* src/mcs51/ralloc.c (packRegisters): removed the patch applied
36532	on 2004-09-12; it was buggy
36533
365342004-09-15 Bernhard Held <bernhard AT bernhardheld.de>
36535
36536	* src/SDCCsymt.h: removed RESULT_CHECK
36537	* src/SDCCast.c,
36538	* src/SDCCglue.c,
36539	* src/SDCCval.c,
36540	* src/pic/glue.c,
36541	* src/pic16/glue.c: replaced RESULT_CHECK with RESULT_TYPE_NONE
36542
365432004-09-15 Vangelis Rokas <vrokas AT otenet.gr>
36544
36545	* src/SDCCicode.c (piCode): applied patch from Raphael Neider,
36546	* src/pic16/device.c (pic16_assignConfigWordValues): wrong
36547	configuration values no more rejected by compiler, they are assigned
36548	to configuration registers with a warning message instead,
36549	* src/pic16/glue.c (pic16_emitConfigRegs): added +1 at top-limit of
36550	the for-loop so last conf register is emitted too,
36551	* (_pic16_initPaths): link library libsdcc.lib by default,
36552	* (_hasNativeMulFor): modified test for multiplication according to
36553	Raphael Neider's remarks. Integer multiplication is also done with
36554	support functions,
36555	* device/include/pic16/pic18fregs.h: corrected type error in while
36556	testing and including 18f6720 header file
36557
365582004-09-14 Vangelis Rokas <vrokas AT otenet.gr>
36559
36560	* src/pic16/device.h (pic16_options): removed field use_crt,
36561	* src/pic16/gen.c (genUnpackBits): added call to pic16_loadFSR0
36562	until an optimization to handle single bits is added,
36563	* (pic16_loadFSR0): moved before genUnpackBits,
36564	* (genAnd): some white lines removed,
36565	* src/pic16/main.c (_pic16_finaliseOptions): set omit_ivt and clear
36566	leave_reset flags in pic16_options when using crt modules,
36567
365682004-09-12 Maarten Brock <sourceforge.brock AT dse.nl>
36569
36570	* src/mcs51/ralloc.c (packRegisters): applied fix by Bernhard Held
36571	  for bugs 898889 & 979599. Also used some safer print instructions.
36572
365732004-09-12 Vangelis Rokas <vrokas AT otenet.gr>
36574
36575	* src/pic16/device.h (pic16_options_t): added field use_crt,
36576	crt_name, no_crt,
36577	* src/pic16/genarith.c (pic16_genPlus): added an assert(0) line to
36578	catch a probable future bug,
36579	* src/pic16/gen.c: aopIdx function commented out,
36580	* (genAssign): commented out old code which used aopIdx,
36581	* src/pic16/glue.c (pic16glue): removed some legacy fragments of
36582	code, added if conditionals to take into account the --use-crt
36583	command line options,
36584	* src/pic16/main.c (pic16_optionsTable): added new command line
36585	options, --use-crt= and --no-crt,
36586	* (_pic16_linkEdit): now the proper crt object is added in the
36587	linker command line except than when --no-crt is specified,
36588	* src/pic16/pcode.c,
36589	* src/pic16/pcode.h: added some structures and functions for a new
36590	optimization scheme to compansate for instruction overhead between
36591	same iCodes, this scheme is currently under development and is not
36592	working in any way,
36593	* src/pic16/gen.c (genAnd): added patch provided by Aaron Collwell
36594	to && operator,
36595	* device/lib/pic16/startup/crt0i.c,
36596	* device/lib/pic16/startup/crt0iz.c: added global char variable
36597	__uflags to force the generation of an idata section
36598
365992004-09-12 Bernhard Held <bernhard AT bernhardheld.de>
36600
36601	* doc/Makefile,
36602	* doc/clean.mk: added support for easy creation of sdcc-doc.tar.bz2
36603	* doc/sdccman.lyx: updated sdcc version to 2.4.4
36604
366052004-09-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36606
36607	* doc/sdccman.lyx: fixed a problem with my new index entries (thanks
36608	Frieder) and clarified the default code optimization mode
36609
366102004-09-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36611
36612	* src/SDCC.lex (doPragma, process_pragma),
36613	* src/SDCCglobl.h (struct optimize): added pragmas "opt_code_speed",
36614	"opt_code_size", and "opt_code_balanced"
36615	* src/SDCCmain.c (optionsTable[], printOptions, scanOptionsTable):
36616	regrouped options by category, added support for category headers
36617	* src/SDCCmain.c (parseCmdLine): added options "--opt-code-speed"
36618	and "--opt-code-size"
36619	* doc/sdccman.lyx: documented these new options and pragmas
36620	* src/hc08/gen.c (AccLsh, AccRsh): take speed/size optimization
36621	preference into account
36622
366232004-09-08 Maarten Brock <sourceforge.brock AT dse.nl>
36624
36625	* src/SDCCicode.c (geniCodePostInc, geniCodePreInc, geniCodePostDec,
36626	  geniCodePreDec): Fixed bug 904237 by generating a warning
36627	* src/SDCCerr.h,
36628	* src/SDCCerr.c: added warning W_SIZEOF_VOID
36629
366302004-09-09 Slade Rich <slade_rich AT users.sourceforge.net>
36631
36632	* src/pic/device.c : When no max ram set validate full memory range.
36633	* src/pic/pcode.c,
36634	* src/pic/pcodepeep.c : Copy C code comments to optimised replacement code.
36635
366362004-09-08 Maarten Brock <sourceforge.brock AT dse.nl>
36637
36638	* device/lib/_gptrget.c,
36639	* device/lib/_gptrput.c: updated comment
36640	* device/lib/calloc.c,
36641	* device/lib/free.c,
36642	* device/lib/malloc.c,
36643	* device/lib/realloc.c: added LGPL, made them reentrant-safe
36644	* src/SDCCcse.c (cseBBlock),
36645	* src/SDCCicode.c (printOperand, geniCodeArray),
36646	* src/SDCCicode.h (struct operand): fixed bug 868103
36647	* support/regression/tests/bug-868103.c: added
36648	* src/SDCCast.c (searchLitOp),
36649	* src/SDCCcse.h (struct cseDef),
36650	* src/SDCCglue.c (printIvalArray, spacesToUnderscores),
36651	* src/SDCCicode.h (struct operand),
36652	* src/SDCCsymt.h (struct sym_link),
36653	* src/avr/gen.c (hasInc),
36654	* src/ds390/gen.c (hasInc),
36655	* src/hc08/gen.c (genPlusIncr, hasInc),
36656	* src/mcs51/gen.c (hasInc),
36657	* src/pic16/glue.c (pic16_printIvalChar),
36658	* src/pic16/ralloc.c (regWithIdx),
36659	* src/xa51/gen.c (hasInc) : removed warnings
36660	* src/SDCCast.c (createBlock): added comment ???
36661	* src/hc08/ralloc.c: updated comments
36662
366632004-09-07 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
36664
36665	* doc/sdccman.lyx: updated section on switch statements, added
36666	section about semaphore locking
36667	* doc/Makefile: added option -info for latex2html
36668	* device/lib/_gptrget.c,
36669	* device/lib/_gptrput.c: __XPAGE instead of P2 in outcommented code
36670
366712004-09-06 Slade Rich <slade_rich AT users.sourceforge.net>
36672
36673	* src/pic/device.h,
36674	* src/pic/device.c,
36675	* src/pic/port.c : Changed PIC14 code to not set bit RP1 when
36676	 maxram is less than 0x100.
36677
366782004-09-06 Slade Rich <slade_rich AT users.sourceforge.net>
36679
36680	* Bug fixes for PIC14 - signed RSHIFT problem. Patch supplied by Allen(agschrum).
36681
366822004-09-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36683
36684	* src/port.h,
36685	* src/mcs51/main.c,
36686	* src/ds390/main.c,
36687	* src/z80/main.c,
36688	* src/hc08/main.c,
36689	* src/pic/main.c,
36690	* src/pic16/main.c,
36691	* src/avr/main.c,
36692	* src/xa51/main.c
36693	* src/SDCCicode.c (geniCodeJumpTable): Better logic to determine if a
36694	a jump table is the best form for a switch statement, including
36695	automatic insertion of missing cases to make the case range
36696	continuous. Developed in collaboration with Frieder Ferlemann.
36697
366982004-09-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36699
36700	* src/hc08/ralloc.c (canDefAccResult): multi-byte shift is unsafe for
36701	accumulator result if it needs sign extension
36702
367032004-09-02 Maarten Brock <sourceforge.brock AT dse.nl>
36704
36705	* src/hc08/ralloc.c (canUseAccOperand): fixed comparison bug
36706
367072004-09-02 Maarten Brock <sourceforge.brock AT dse.nl>
36708
36709	* device/lib/gbz80/printf.c,
36710	* device/lib/z80/printf.c: removed define for NULL
36711
367122004-09-02 Maarten Brock <sourceforge.brock AT dse.nl>
36713
36714	* as/xa51/xa_link.c,
36715	* device/examples/ds390/ow390/ad26.c,
36716	* device/examples/ds390/ow390/cnt1d.c,
36717	* device/examples/ds390/ow390/counter.c,
36718	* device/examples/ds390/ow390/ds2480.h,
36719	* device/examples/ds390/ow390/ds2480ut.c,
36720	* device/examples/ds390/ow390/findtype.c,
36721	* device/examples/ds390/ow390/gethumd.c,
36722	* device/examples/ds390/ow390/owllu.c,
36723	* device/examples/ds390/ow390/ownetu.c,
36724	* device/examples/ds390/ow390/swt12.c,
36725	* device/examples/ds390/ow390/swtloop.c,
36726	* device/examples/ds390/ow390/temp.c,
36727	* device/examples/ds390/ow390/temp10.c,
36728	* device/examples/ds390/ow390/thermo21.c,
36729	* device/examples/ds390/ow390/tinilnk.c,
36730	* device/examples/ds390/ow390/tstfind.c,
36731	* device/examples/serialcomm/windows/serial.cpp,
36732	* device/examples/serialcomm/windows/test_serialcomm.cpp,
36733	* device/include/reg51.h: fixed line endings for cvs
36734
367352004-09-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36736
36737	* src/hc08/ralloc.c (canDefAccResult, canUseAccOperand,
36738	packRegsForAccUse, packRegisters): new accumulator register
36739	packing algorithm
36740	* support/regression/ports/hc08/support.c (_putchar): suppress
36741	warning of unused variable
36742	* src/SDCCicode.c: added SWAP entry to codeTable
36743
367442004-09-01 Maarten Brock <sourceforge.brock AT dse.nl>
36745
36746	* device/lib/sprintf.c: forgot to add this file before previous commit
36747
367482004-09-01 Vangelis Rokas <vrokas AT otenet.gr>
36749
36750	* src/pic16/gen.c (genPackBits): added operand right in function
36751	parameters, load result directly if p_type is POINTER (that is
36752	called by genNearPointerSet)
36753	* (genUnPackBits): added operand left in function parameters,
36754	* (genNearPointerGet, genNearPointerSet): prevent the loading of
36755	FSR0 if accessing bitfields,
36756
367572004-08-31 Maarten Brock <sourceforge.brock AT dse.nl>
36758
36759	* device/include/stdio.h: added NULL, size_t, typedef pfn_outputchar,
36760	  _print_format; updated printf, sprintf, vsprintf
36761	* device/include/asm/default/features.h: corrected comment/define
36762	* device/lib/Makefile.in: added sprintf.c
36763	* device/lib/libsdcc.lib: added sprintf module
36764	* device/lib/printf_large.c,
36765	* device/lib/vprintf.c,
36766	* device/lib/sprintf.c: totally refactored printf_large and vprintf
36767	  into these 3 files
36768	* support/regression/Makefile: changed ALL_PORTS into a usefull default
36769	* support/regression/ports/mcs51-stack-auto/spec.mk: added sprintf
36770	* support/regression/tests/bug-927659.c: removed dummy putchar, enabled
36771	  hc08 test
36772	* support/regression/tests/zeropad.c: define idata as data for hc08
36773
367742004-08-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36775
36776	* src/SDCCpeeph.c (labelIsReturnOnly): support hc08 rts opcode also
36777	* src/SDCCpeeph.c (buildLabelRefCountHash): assume function entry point
36778	labels are referenced at least once (even if a reference is not found)
36779	* src/hc08/gen.c (emitcode): set isComment flag for comments
36780	* src/hc08/peeph.def: added rules 5a..5f (optimize redundant immediate
36781	loads), rules 6a..6b (optimize jumps to return)
36782
367832004-08-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36784
36785	* device/lib/acosf.c (acosf),
36786	* device/lib/asinf.c (asinf),
36787	* device/lib/atanf.c (atanf),
36788	* device/lib/ceilf.c (ceilf),
36789	* device/lib/cosf.c (cosf),
36790	* device/lib/coshf.c (coshf),
36791	* device/lib/cotf.c (cotf),
36792	* device/lib/fabsf.c (fabsf),
36793	* device/lib/floorf.c (floorf),
36794	* device/lib/log10f.c (log10f),
36795	* device/lib/logf.c (logf),
36796	* device/lib/sinf.c (sinf),
36797	* device/lib/sinhf.c (sinhf),
36798	* device/lib/sqrtf.c (sqrtf),
36799	* device/lib/tanf.c (tanf),
36800	* device/lib/tanhf.c (tanhf),
36801	* device/include/math.h: defined _FLOAT_FUNC_REENTRANT macro and
36802	replaced all instances of "reentrant" in the library functions
36803	defined in math.h with this macro.
36804	* support/regression/tests/float_trans.c: reenabled test for hc08
36805
368062004-08-30 Bernhard Held <bernhard AT bernhardheld.de>
36807
36808	* device/lib/pic16/Makefile.common.in: added MODELFLAGS again, it was
36809	erroneously deleted
36810
368112004-08-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36812
36813	* src/hc08/gen.c (loadRegFromAop): better use of clra & clrx
36814	* src/hc08/gen.c (genAnd, genOr): fixed bug with conditional when
36815	multi-byte volatile operands are used
36816	* src/hc08/gen.c (shiftRLong): fixed bug with wrong rotate direction
36817	* src/hc08/main.c (_hc08_genAssemblerPreamble): moved the built-in
36818	initialization to area GSINIT0 so that it would always precede
36819	any static initializers in GSINIT
36820	* support/regression/tests/zeropad.c: fixed idata define for hc08
36821	* support/regression/tests/bug-927659.c,
36822	* support/regression/tests/float_trans.c: disabled tests for hc08
36823	pending missing library routines
36824	* .version: increased version number to 2.4.4 - hc08 port now passes
36825	regression tests
36826
36827
368282004-08-29 Bernhard Held <bernhard AT bernhardheld.de>
36829
36830	* device/lib/pic16/Makefile.common.in: added $(MM) to fix `make clean`
36831	* Makefile.common.in,
36832	* as/Makefile,
36833	* as/hc08/Makefile.in,
36834	* as/mcs51/Makefile.in,
36835	* as/z80/Makefile.in,
36836	* debugger/mcs51/Makefile.in,
36837	* device/include/Makefile.in,
36838	* device/lib/Makefile.in,
36839	* doc/Makefile,
36840	* link/Makefile,
36841	* link/z80/Makefile.in,
36842	* packihx/Makefile.in,
36843	* sim/ucsim/main_in.mk,
36844	* sim/ucsim/avr.src/Makefile.in,
36845	* sim/ucsim/doc/Makefile.in,
36846	* sim/ucsim/gui.src/serio.src/Makefile.in,
36847	* sim/ucsim/hc08.src/Makefile.in,
36848	* sim/ucsim/s51.src/Makefile.in,
36849	* sim/ucsim/xa.src/Makefile.in,
36850	* sim/ucsim/z80.src/Makefile.in,
36851	* src/Makefile.in,
36852	* support/cpp2/Makefile.in,
36853	* support/librarian/Makefile,
36854	* support/makebin/Makefile: added DESTDIR to the install path proposed
36855	by "Maciej 'Agaran' Pijanka" <agaran AT pld-linux.org>
36856	* doc/sdccman.lyx: added DESTDIR documentation
36857
368582004-08-29 Vangelis Rokas (vrokas AT otenet.gr>
36859
36860	* src/pic16/gen.c (genFunction, genEndFunction): fixed return
36861	instruction for interrupt handlers, use fast returns when returning
36862	from high priority interrupts
36863
368642004-08-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36865
36866	* src/hc08/gen.c (genAnd, genOr, transferAopAop, rmwWithAop): optimized
36867	code generation
36868	* src/hc08/gen.c (genrshFour, genCpl): fixed bugs
36869	* src/hc08/gen.c (genMultOneByte, genDivOneByte, genModOneByte): fixed
36870	bugs, ported much of Bernhard's code from mcs51
36871	* src/mcs51/gen.c (genSend),
36872	* src/hc08/gen.c (genSend): fixed bug with lost SEND iCodes if more
36873	than one when calling a reentrant function
36874	* device/lib/_mullong.c: defined an alternate struct layout for big
36875	endian ports (hc08)
36876
368772004-08-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36878
36879	* src/hc08/gen.c (shiftL2Left2Result): fix for bug-500536 regression
36880	test
36881
368822004-08-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36883
36884	* src/SDCCsymt.c (processFuncArgs): make sure parameter types
36885	are sane and complete before asking the port its prefered parameter
36886	passing method (fixes bug #1017633)
36887	* device/lib/hc08/_ret.c: added "data" storage class to _ret2
36888	and _ret3
36889
368902004-08-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36891
36892	* src/hc08/gen.c (genPackBitsImmed, genUnpackBitsImmed): fix offset
36893	problem in bitfields >= 8 bits.
36894
368952004-08-27 Maarten Brock <sourceforge.brock AT dse.nl>
36896
36897	* src/SDCCsymt.c: undid changes that were not meant to be committed
36898
368992004-08-27 Maarten Brock <sourceforge.brock AT dse.nl>
36900
36901	* support/regression/ports/hc08spec.mk: REENTRANT must be reentrant
36902
369032004-08-27 Maarten Brock <sourceforge.brock AT dse.nl>
36904
36905	* src/hc08/gen.c (genUminusFloat): fixed bug where only 3 bytes were
36906	  copied and wrong bit got inverted
36907
369082004-08-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36909
36910	* src/hc08/gen.c (genPointerSet, genFarPointerSet): moved code from
36911	genFarPointerSet into genPointerSet; eliminated genFarPointerSet
36912	* src/hc08/gen.c (genPointerGet, genFarPointerGet): moved code from
36913	genFarPointerGet into genPointerGet; eliminated genFarPointerGet
36914	* src/hc08/gen.c (genPackBitsImmed): generate optimized code for
36915	assignments to bitfields at known addresses
36916	* src/hc08/gen.c (genUnpackBitsImmed): generate optimized code for
36917	reads from bitfields at known addresses
36918	* src/hc08/ralloc.c (packRegisters),
36919	* src/hc08/gen.c (genPointerGet, genUnpackBits, genUnpackBitsImmed,
36920	genhc08Code): optimize pointer get values used as conditionals
36921	* src/hc08/peeph.def: added rules 2e & 2f to optimize bit test
36922	and branch
36923
369242004-08-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36925
36926	* src/mcs51/gen.c (genPointerGet, genNearPointerGet, genPagedPointerGet,
36927	genFarPointerGet, genCodePointerGet, genGenPointerGet, genUnpackBits),
36928	* src/mcs51/ralloc.c (packRegisters): optimize pointer get values used
36929	as conditionals
36930
369312004-08-22 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
36932
36933	* src/mcs51/peeph.def: peepholes 248.i-m for xdata bitfields
36934
369352004-08-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36936
36937	* src/mcs51/ralloc.c (packRegsForOneuse): fixed bug #1012650 and some
36938	related problems
36939
369402004-08-21 Bernhard Held <bernhard AT bernhardheld.de>
36941
36942	* sim/ucsim/cmd.src/Makefile.in: run lex only if $(PRJDIR)/devel exists
36943
369442004-08-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36945
36946	* src/z80/ralloc.c (packRegsForAssign): ported some bug fixes from the
36947	mcs51 port
36948
369492004-08-16 Slade Rich <slade_rich AT users.sourceforge.net>
36950
36951	* src/pic/gen.c: Restored fn genRet as previous fix was incorrect.
36952
369532004-08-14 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
36954
36955	* src/mcs51/gen.c (genJumpTab): jumptables for more than 16 switch
36956	cases use more compact code.
36957
369582004-08-13 Slade Rich <slade_rich AT users.sourceforge.net>
36959
36960	* src/pic/gen.c: Fixed problem with fn returning a variable bigger than a char.
36961
369622004-08-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36963
36964	* src/SDCClrange.c (findPrevUse): fixed bug #1007371
36965
369662004-08-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36967
36968	* src/SDCCsymt.h,
36969	* src/SDCCsymt.c (changePointer, checkDecl, addSymChain): changed
36970	parameter of changePointer() from symbol* to sym_link*
36971	* src/SDCCast.c (decorateType): call changePointer() for CAST op
36972	* src/SDCCsymt.c (compareType): void* type is castable to other
36973	pointers, but not necesarily an exact match.
36974	* src/SDCCicode.c (geniCodeCast): allow void* casting here since it
36975	is no longer blindly treated as an exact match.
36976	* src/SDCCval.c (valCastLiteral): treat missing type as cast to void
36977
369782004-08-12 Slade Rich <slade_rich AT users.sourceforge.net>
36979
36980	* src/pic/glue.c: Added struct initialisation fn printIvalStruct.
36981
369822004-08-11 Slade Rich <slade_rich AT users.sourceforge.net>
36983
36984	* src/pic/gen.c,
36985	* src/pic/pcode.c,
36986	* src/pic/ralloc.h,
36987	* src/pic/ralloc.c: Printing rIdx on internal verbose debug.
36988
369892004-08-10 Slade Rich <slade_rich AT users.sourceforge.net>
36990
36991	* src/pic/device.c,
36992	* src/pic/device.h,
36993	* src/pic/device.c: Will no longer exit if #pragma maxram has not been defined.
36994
369952004-08-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
36996
36997	* src/mcs51/gen.c (emitcode): fixed bug #992819
36998
369992004-08-05 Maarten Brock <sourceforge.brock AT dse.nl>
37000
37001	* src/pic/ralloc.c (deassignLR): allthough pic port is buggy already,
37002	  there's no need to make it worse
37003
370042004-08-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37005
37006	* src/mcs51/ralloc.c (deassignLR),
37007	* src/ds390/ralloc.c (deassignLR),
37008	* src/hc08/ralloc.c (deassignLR),
37009	* src/z80/ralloc.c (deassignLR),
37010	* src/pic/ralloc.c (deassignLR),
37011	* src/pic16/ralloc.c (deassignLR),
37012	* src/avr/ralloc.c (deassignLR),
37013	* src/SDCClrange.c (findRecursiveSucc, findRecursivePred, findPrevUse,
37014	rlivePoint): fixed another part of bug #971834
37015
370162004-08-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37017
37018	* src/z80/main.c: enabled "critical" keyword
37019	* src/z80/mappings.i,
37020	* src/z80/gen.c (genFunction, genEndFunction): support for interrupt
37021	functions (fixes bug #979646)
37022	* doc/sdccman.lyx: added a subsection explaining z80 interrupt support
37023
370242004-08-04 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
37025
37026	* src/mcs51/gen.c (genInline): Add \n for labels, not DOS/WIN dirs
37027	  such as c:\mydir.
37028
370292004-08-03 Maarten Brock <sourceforge.brock AT dse.nl>
37030
37031	* src/SDCCloop.c (loopInvariants): fixed bug 983545, hope this
37032	  doesn't disable too much optimizations
37033
370342004-08-02 Slade Rich <slade_rich AT users.sourceforge.net>
37035
37036	* src/pic/glue.c Disabled "WARNING: function 'main' undefined" when -S option is used.
37037
370382004-08-02 Maarten Brock <sourceforge.brock AT dse.nl>
37039
37040	* src/SDCClrange.c (rlivePoint): fixed bug 988568, thanks to anonymous
37041
370422004-08-02 Slade Rich <slade_rich AT users.sourceforge.net>
37043
37044	* src/pic/gen.c tidied up tabs
37045	* src/pic/genarith.c tidied up tabs and fixed bug with literal multiple where same register was used for hi and low byte
37046	* src/pic/main.c tidied up tabs
37047	* src/pic/pcode.c tidied up tabs and disabled verbose code generation
37048	* src/pic/pcoderegs.c tidied up tabs
37049	* src/pic/ralloc.c tidied up tabs
37050
370512004-07-30 Vangelis Rokas <vrokas AT otenet.gr>
37052
37053	* src/SDCCmem.c (allocGlobal): don't turn S_REGISTER storage class
37054	to S_FIXED for pic16 port and when symbol is not in level 0,
37055	allocate for S_REGISTER storage class and pic16 port, too,
37056	* src/pic16/device.h: prototype for checkSym,
37057	* src/pic16/device.c (pic16_dump_access, checkSym): NEW,
37058	* (pic16_assignConfigWordValue): test the value and the mask to
37059	validate that the value is suitable for the configuration word,
37060	* src/pic16/glue.c (pic16_printIvalFuncPtr): use 'externs' to
37061	collect extern declared symbols, don't emit symbol twice, check
37062	first if symbol is in publics set first,
37063	* src/pic16/main.c (_pic16_keywords[]): added keyword 'register',
37064	* added command line '--fstack' which enables an experimental
37065	feature for stack access, too buggy to be used yet...
37066	* src/pic16/ralloc.c (pic16_accessregWithName): NEW,
37067	* (pic16_allocDirReg): when register has storage class S_REGISTER
37068	allocate in pic16_dynAccessRegs,
37069	* device/include/pic16/pic18f????.h: modified configuration word
37070	naming convention, words started as CONFIG0H but should be CONFIG1H
37071
370722004-07-29 Maarten Brock <sourceforge.brock AT dse.nl>
37073
37074	* device/include/mcs51reg.h: fixed bug 970993
37075
370762004-07-27 Maarten Brock <sourceforge.brock AT dse.nl>
37077
37078	* added lib/calloc.c, lib/free.c, lib/realloc.c, include/stddef.h
37079	* updated lib/malloc.c, lib/libsdcc.lib, lib/Makefile.in, include/malloc.h
37080	* src/SDCC.lex (doPragma): added pragma disable_warning <nnn>
37081	* src/SDCCmain.c (parseCmdLine): added option --disable-warning <nnn>
37082	* src/ds390/gen.c (genPlusIncr): fixed bug when incrementing generic pointers
37083	* support/Util/SDCCerr.c (vwerror): suppress disabled warnings and output
37084	  error/warning numbers,
37085	  added function setWarningDisabled()
37086	* support/Util/SDCCerr.h: added setWarningDisabled() and MAX_ERROR_WARNING
37087	* support/regression/ports/mcs51-stack-auto/spec.mk: added dependencies
37088	  _memcmp.c _memmove.c calloc.c realloc.c free.c
37089	* support/regression/tests/malloc.c: added tests for new functionality
37090	* support/regression/tests/zeropad.c: added tests for truncated initializers
37091	  and initialized char arrays starting with '\x0'
37092	* src/mcs51/peeph.def: fixed regression, added peephole 177.f
37093
370942004-07-26 Bernhard Held <bernhard AT bernhardheld.de>
37095
37096	* support/valdiag/tests/overflow.c: fixed warning on (1 >> 40)
37097
370982004-07-26 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
37099
37100	* doc/sdccman.lyx: updated example in section "Absolute Addressing"
37101	* src/mcs51/peeph.def: added contributed fix for "bug" #995347 as
37102	peephole 177.e. Thanks to anonymous
37103
371042004-07-25 Vangelis Rokas <vrokas AT otenet.gr>
37105
37106	* src/pic16/glue.c (pic16_printIvalFuncPtr): when an extern
37107	function isn't used in the source but referenced as a
37108	variable initializer then declare it as extern in .asm file
37109
371102004-07-24 Vangelis Rokas <vrokas AT otenet.gr>
37111
37112	* .version: increased version number to 2.4.3
37113
37114	Adding version extension according to ChangeLog CVS revision
37115	* src/Makefile.in (target all): added dependency 'version.h'
37116	* (rule version.h): added rule to create version.h from ChangeLog,
37117	* (rule dep): added dependency version.h,
37118	* src/version.awk: AWK script to create version.h
37119	* src/SDCCdwarf2.c (dwWriteModule),
37120	* src/SDCCglue.c (initialComments),
37121	* src/SDCCmain.c (printVersionInfo): modified to write after
37122	version string the version extension number,
37123	* src/SDCCutil.c: included "version.h"
37124	* (getBuildNumber): NEW, returns SDCC's ChangeLog minor revision
37125	number,
37126	* src/SDCCutil.h: added prototype for getBuildNumber
37127
37128	* src/SDCCmain.c (parseCmdLine): when sOpt is 'I' add rest in
37129	includeDirsSet, too,
37130	* src/SDCCsymt.c (checkSClass): don't emit error when a variable,
37131	const char [] is found in function prototype...
37132
37133	* src/pic16/genarith.c (pic16_genUMult8XLit_8): optimization to omit
37134	moving to WREG with source is already in WREG,
37135	* src/pic16/gen.h: added AOP_FSR0 and AOP_FSR2 in enum,
37136	* src/pic16/gen.c (getFreePtr): updated to look for FSR0 and FSR2,
37137	* (aopForSym): stack'ed symbols are partially supported, added
37138	if-clause to support symbols in FARSPACE,
37139	* (sameRegs): added test for AOP_ACC to see if registers are same,
37140	* (pic16_freeAsmop): added case for AOP_FSR0 and AOP_FSR2,
37141	* (pic16_aopGet): added case for AOP_FSR0 and AOP_FSR2,
37142	* (pic16_popRegFromString): will not allocate a new register if it
37143	doesn't find one by name, bug may have introduced...
37144	* (pic16_popGet): added case for AOP_FSR0 and AOP_FSR2,
37145	* (genIpush): revived to use pic16 port's stack,
37146	* (genAddrOf): added incomplete case for stack'ed operand,
37147	* (genCast): optimized a pair of MOVFW,MOVWF to MOVFF
37148	* src/pic16/genutils.c (pic16_genNot): almot new vesrion for NOT,
37149	can handle multibyte operands,
37150	* src/pic16/glue.c (pic16_printIval*): some debug info added,
37151	* (pic16initialComments): added message for MPLAB compatibility
37152	mode enabled,
37153	* src/pic16/main.h: prototype for pic16_mplab_comp,
37154	* src/pic16/main.c (pic16_optionsTable): new option --mplab-comp,
37155	which enabled MPLAB compatibility mode (i.e. no #LINE/#FILE, BANKED)
37156	* (_pic16_linkEdit): NEW, handles link stage, transferred here
37157	because of increased complexity of procedure,
37158	* (_process_pragma): stack pragma changed to format 'stack pos len',
37159	emit symbol '_stack_end' to conform with gplink,
37160	* src/pic16/pcode.c (pic16_newpCodeOpBit): using pic16_regWithName
37161	to search for register,
37162	* (pic16_get_op, pic16_get_op2): added case for PO_W, PO_WREG and
37163	PO_GPR_REGISTER,
37164	* (pic16_pCode2str): when in MPLAB compatibility mode, comment out
37165	#LINE directives and replace 'B' with 'BANKED' in instruction opcodes
37166	* (pic16_getRegFromInstruction, pic16_getRegFromInstruction2): added
37167	case for PO_GPR_REGISTER,
37168	* (pic16_AnalyzeBanking): removed the old message for inc2h.pl, past
37169	dies, the new era is ahead !...
37170	* src/pic16/ralloc.c: added hash reposits pic16_dynAllocRegNames and
37171	pic16_dynInternalRegs,
37172	* (pic16_allocregWithName, pic16_procregWithName, pic16_regWithname): NEW,
37173	* (pic16_allocDirReg): minor optimizations and bug fixes,
37174	* (pic16_allocWithIdx): when searching pic16_dynProcessorRegs use fixed,
37175
37176	* device/lib/pic16/startup/crt0*.c: extern definition of stack_end,
37177	load stack and frame pointer with address of 'stack_end' symbol
37178
371792004-07-23 Vangelis Rokas <vrokas AT otenet.gr>
37180
37181	* src/pic16/glue.c (pic16emitStaticSeg): fixed bug with files
37182	without source code but only variable initializers
37183
371842004-07-20 Vangelis Rokas <vrokas AT otenet.gr>
37185
37186	* src/pic16/glue.c (pic16emitRegularMap): unused functions marked as
37187	external are not declared as extern to reduce overhead while linking
37188
371892004-07-20 Maarten Brock <sourceforge.brock AT dse.nl>
37190
37191	* src/SDCCast.c (decorateType): removed buggy fix for bug #979599
37192
371932004-07-11 Maarten Brock <sourceforge.brock AT dse.nl>
37194
37195	* src/SDCCglue.c (printIvalArray): fixed bug #984229, thanks to Phuah
37196	  Yee Keat for the patch
37197	* src/SDCCast.c (decorateType): fixed bug #979599
37198	* src/ds390/gen.h: removed local fReturnSizeDS390
37199	* src/ds390/gen.c: made fReturnSizeDS390 signed short to remove a warning
37200	* src/ds390/gen.c (genAnd, genOr, genXor),
37201	* src/mcs51/gen.c (genAnd, genOr, genXor): generate better optimized code
37202
372032004-07-04 Vangelis Rokas <vrokas AT otenet.gr>
37204
37205	* src/SDCCmain.c (linkEdit): modifications only for pic16 port,
37206	add relFilesSet to $3, manipulate $2 to handle linking of object
37207	files without source files in command line,
37208	* device/include/pic16 (all headers): added ID location macros,
37209	* src/pic16/device.c (struct PIC16_device Pics16[]): added field
37210	entries for ID location bytes,
37211	* (pic16_assignIdByteValue): NEW,
37212	* src/pic16/device.h: new structures idRegInfo_t and idBytesInfo_t,
37213	added field dumpcalltree to pic16_options_t,
37214	* src/pic16/gen.c (genCmp): fixed bug case so a temporary register
37215	is used instead of pic16_Gstack_base_addr, check if (ifx) before
37216	emitting rFalseIfx label after check_carry label,
37217	* src/pic16/glue.c (PIC16_IS_IDLOC_ADDRESS, PIC16_IS_HWREG_ADDRESS,
37218	pic16_emitDIRegs), NEW
37219	* (pic16glue): dump .calltree file when option --calltree found,
37220	* src/pic16/main.c (OPTION _pic16_optionsTable): new option --calltree
37221	* (_pic16_genAssemblerPreamble): emit ID locations after
37222	configuration registers,
37223	* (pic16_linkCmd): modifications of the link command,
37224	* src/pic16/pcode.c (pic16_pciMOVFF): PCC_REGISTER replaces PCC_REGISTER2
37225	* (pic16_pCodeInitRegisters): don't init stack registers,
37226	* (pic16_findPrevInstruction): fixed bug,
37227	* (pic16_getRegFromInstruction, pic16_getRegFromInstruction2): fixed
37228	bug with immediate registers,
37229	* (buildCallTree): traces stack push and pop,
37230	* (pct2): dump also stack usage for each function,
37231	* src/pic16/ralloc.c (dynrIdx): registers names start from 0x00
37232	* (pic16_allocDirReg): various modifications,
37233	* (pic16_typeRegWithIdx): when searching pic16_dynProcessorRegs set
37234	fixed to 1,
37235
372362004-07-02 Vangelis Rokas <vrokas AT otenet.gr>
37237
37238	* src/pic16/pcode.c: removed buggy double colon
37239
372402004-07-01 Borut Razem <borut.razem AT siol.net>
37241
37242	* support/scripts/sdcc.nsi: added include/pic16 to setup
37243
372442004-06-30 Vangelis Rokas <vrokas AT otenet.gr>
37245
37246	* device/lib/Makefile.in: fixed bug in target objects-pic16,
37247	* device/lib/pic16/Makefile: prefixed with dash (-) command under
37248	target 'clean',
37249	* doc/sdccman.lyx: changed version to 2.4.2 and added some port
37250	specific command line arguments. Also added sample lkr script
37251	for placing a variable at a specific memory bank.
37252	* src/pic16/device.c (pic16_dump_gsection): NEW, to dump variables
37253	at a specific memory bank,
37254	* (pic16_dump_isection): fixed bug which caused string literals to
37255	be omitted when dumping idata section,
37256	* (pic16_groupRegistersInSection): added code to handle registers
37257	in specific memory banks,
37258	* src/pic16/gen.c: labelOffset is prefixed with pic16_ and made
37259	public, all references are renamed too,
37260	* (pic16_aopGet): removed switch cases for AOP_R0,AOP_R1,AOP_DPTR,
37261	AOP_DPTR2,
37262	* (pic16_storeForReturn): added case to handle when dest is WREG,
37263	* src/pic16/genarith.c (pic16_pCodeOpSubType): NEW,
37264	* src/pic16/glue.c (pic16emitRegularMap): when adding a register in
37265	pic16_rel_udata, check to see if that register is marked as being
37266	a member of a specific memory bank,
37267	* (pic16_printIvalCharPtr): added code to add string literals either
37268	to code or the idata sections,
37269	* src/pic16/main.c (_process_pragma): added \n to WHITE constant,
37270	also accept the 'udata' pragma,
37271	* src/pic16/main.h: new structure types sectName and sectSym
37272	* src/pic16/pcode.c: added new pCodeInstruction entry for BANKSEL
37273	* (newpCodeOpBit): added PIC_OPTYPE subt in function prototype,
37274	* (pic16_findPrevInstruction): fixed, it returned nothing,
37275	* (insertBankSwitch): fixed to emit banksel/skip and skip/banksel
37276	instruction combinations,
37277	* (pic16_FixRegisterBanking): heavily reorganised,
37278	* (pic16_AnalyzeBanking): if generating banksel directives is
37279	disabled, then don't call FixRegisterBanking at all,
37280	* src/pic16/ralloc.c (bitEQUs, aliasEQUs, allDefsOutOfRange):
37281	completely removed,
37282	* (pic16_writeUsedRegisters): added call to pic16_dump_gsection
37283
372842004-06-29 Bernhard Held <bernhard AT bernhardheld.de>
37285
37286	* src/SDCCglue.c (printChar): fixed bug #973350, patch provided by
37287	Phuah Yee Keat <yk.phuah AT nestac.com>
37288
372892004-06-28 Vangelis Rokas <vrokas AT otenet.gr>
37290
37291	* src/pic16/glue.c (pic16createInterruptVect): function now emits
37292	correctly the IVT even if it is relocated to some other location
37293
372942004-06-28 Vangelis Rokas <vrokas AT otenet.gr>
37295
37296	* device/include/pic16/pic18fregs.h: added case for pic18f2220.h
37297	* device/include/pic16/pic18f2220.h: NEW,
37298	* device/lib/pic16/libdev/pic18f2220.c: NEW,
37299	* device/lib/pic16/libdev/Makefile: added 18f2220 in DEVS,
37300	* src/pic16/device.c (struct Pics16): added info for 18f2220,
37301	* src/pic16/device.h (struct pic16_options): added ivt_loc and
37302	nodefaultlibs, ivt_loc is the location of the interrupt vector
37303	table, and nodefaultlibs signs that default libraries should not be
37304	linked in link stage,
37305	* src/pic16/gen.c (genFunction): relocate interrupt vector functions
37306	according to --ivt-loc argument,
37307	* src/pic16/main.c (_process_pragma): emit '_stack' as public symbol
37308	when pragma stack is found,
37309
373102004-06-25 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
37311
37312	* src/mcs51/peeph.def: added peepholes 182.d (return 0.0),
37313	256 (range check), 257 (do while), 258.a-f (bit banging
37314	f.e. on 3-wire SPI bus)
37315
373162004-06-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37317
37318	* src/SDCClrange.c (findNextUseSym): fixed a live range bug with
37319	variables used exclusively within a loop
37320
373212004-06-21 Bernhard Held <bernhard AT bernhardheld.de>
37322
37323	* src/mcs51/gen.c (genCpl): quick fix for bug #974835
37324
373252004-06-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37326
37327	* src/SDCClrange.c (computeClash): fixed bug #971834
37328
373292004-06-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37330
37331	* src/mcs51/gen.c (genCmp): fixed bug #975903
37332	* src/hc08/gen.c (operandsEqu),
37333	* src/ds390/gen.c (operandsEqu),
37334	* src/z80/gen.c (operandsEqu),
37335	* src/pic/gen.c (operandsEqu),
37336	* src/pic16/gen.c (operandsEqu),
37337	* src/mcs51/gen.c (operandsEqu): fixed bug #976283
37338	* src/SDCCmain.c (parseCmdLine): report --unknown-option only once
37339
373402004-06-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37341
37342	* src/SDCCcse.c (cseBBlock): fixed bug #966963
37343
373442004-06-12 Vangelis Rokas <vrokas AT otenet.gr>
37345
37346	* src/pic16/gen.c (genPointerGet): added E_INTERNAL_ERROR for
37347	default case in switch statement,
37348	* glue.c (pic16_initPointer): expr is initialised via decoarteType
37349	to eliminate problem with initialisation of pointers, but problem
37350	still exists,
37351	* (pic16_pointerTypeToGPByte): removed, no needed for pic16,
37352	* (emitStaticSegment): removed various lines emitting debug info,
37353	* src/pic16/pcode.c, src/pic16/pcode.h, src/pic16/ralloc.h:
37354	added processor registers for utilizing EEPROM,
37355	* src/pic16/pcode.c (pic16_emitDB): number of DBs emitted is not
37356	configurable and set 8
37357
373582004-06-08 Vangelis Rokas <vrokas AT otenet.gr>
37359
37360	* .version: increased version number to 2.4.2,
37361
37362	Cumulative patch for pic16 port
37363	* src/pic16/device.c: changed scheme to dump initial values for
37364	variables in idata segment, all print_idata* functions were removed,
37365	now the pic16_printIval* will be called,
37366	* src/pic16/glue.c: (pic16_initPointer, pic16_pointerTypeToGPByte,
37367	* _pic16_printPointerType, pic16_printPointerType,
37368	* pic16_printGPointerType, pic16_printIvalArray, pic16_printIvalStruct,
37369	* pic16_printIvalBitFields, pic16_printIvalFuncPtr, pic16_printIvalPtr:
37370	NEW, similar to the respective functions in SDCCglue.c,
37371	* src/pic16/pcode.c (pic16_emitDB, pic16_flushDB): reverted to old
37372	way, emitting hex bytes,
37373	* (pic16_emitDS): NEW, emits a string for pointer initialisation,
37374
373752004-06-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37376
37377	* src/avr/ralloc.c (serialRegAssign),
37378	* src/xa51/ralloc.c (serialRegAssign),
37379	* src/pic/ralloc.c (serialRegAssign),
37380	* src/pic16/ralloc.c (serialRegAssign),
37381	* src/hc08/ralloc.c (serialRegAssign),
37382	* src/z80/ralloc.c (serialRegAssign),
37383	* src/ds390/ralloc.c (serialRegAssign),
37384	* src/mcs51/ralloc.c (serialRegAssign): fixed bug #964479
37385
373862004-06-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37387
37388	* src/SDCCicode.c (geniCodeJumpTable): fixed bug #967601
37389	* src/SDCCpeeph.c (labelIsReturnOnly): fixed bug #966505
37390
373912004-06-07 Vangelis Rokas <vrokas AT otenet.gr>
37392
37393	Cumulative patch for pic16 port:
37394	* src/pic16/device.h (typedef PIC16_device) modified fields for
37395	defining microcontrollers,
37396	* src/pic16/device.c: added new info for all devices in Pics16 array,
37397	* src/pic16/gen.c (genPcall): fixed bug that caused the return label
37398	to be optimised out by the pCode optimiser,
37399	* src/pic16/glue.c (pic16emitRegularMap): treat implicit aggragates
37400	specially, bug reported by G.M. Gallant,
37401	* src/pic16/pcode.c (pic16_newpCodeLabelFORCE): NEW, marks a label
37402	as force'd so that cannot be optimised out by pCode optimiser,
37403	* src/pic16/pcode.c,
37404	* src/pic16/pcodepeeph.c,
37405	* src/pic16/pcoderegs.c: many modifications to re-enable peepholes,
37406	they are disabled by default, but can be enabled explicit with
37407	command argument --denable-peeps, for testing,
37408	* device/lib/pic16/startup/Makefile: added --no-peep,--pomit-config-words,
37409	--pomit-ivt in COMPILE_FLAGS
37410
374112004-06-06 Maarten Brock <sourceforge.brock AT dse.nl>
37412
37413	* src/pic16/pcode.c (pic16_emitDB): removed double semicolon which fails
37414	  compilation on MSVC
37415
374162004-06-06 Maarten Brock <sourceforge.brock AT dse.nl>
37417
37418	* device/include/sab80515.h: added sfr P6, changed GPL to LGPL
37419
374202004-06-06 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
37421
37422	device/include/sab80515.h: fixed bug #967492, DAPR is defined at adress
37423	0xd8, but the correct adress is 0xda. Thanks to anonymous for reporting
37424
374252004-06-06 Vangelis Rokas <vrokas AT otenet.gr>
37426
37427	* src/pic16/device.c (pic16_assignConfigWord): fixed bug that
37428	would only assign 0x300001 register.
37429
374302004-06-05 Vangelis Rokas <vrokas AT otenet.gr>
37431
37432	* device/lib/pic16/startup/Makefile: added $(MODELFLAGS)
37433	in COMPILE_FLAGS. Thanks to G. Gallant for report.
37434
374352004-06-05 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
37436
37437	* doc/sdccman.lyx: minor changes, mentioned beta vendor support
37438	for ds80c400
37439	* src/mcs51/peeph.def: ran unexpand -a over peeph.def
37440	* src/mcs51/peeph.def: removed obsolete peephole 100.a,
37441	added peephole 254 (left shift), 255 (jump table)
37442
374432004-06-04 Vangelis Rokas <vrokas AT otenet.gr>
37444
37445	* device/lib/Makefile.in: removed comment line with model-pic16,
37446	* (target port-specific-objects-pic16): the libraries and objects
37447	are copied to the build directory form the device/lib/pic16/bin
37448	directory
37449
37450	Cumulative patch concerning pic16 port:
37451	* library directory has been re-organized,
37452	* added support for PIC18F1220,
37453	* added headers and library sources for chips 18f1220,18f6520,
37454	18f6620,18f6680,18f6720,18f8520,18f8620,18f8680,18f8720
37455
37456	* configuration registers setting has changed, now each supported
37457	device has a complete description of the registers it uses,
37458	* all initialisations are moved to idata sections, these section
37459	can be absolute or relocatable,
37460	* fixed initialisation of codespace variables,
37461	* fixed warning about PCLATU and gpsim,
37462	* src/pic16/gen.c (genCmp): now can handle partially iCodes with no ifx,
37463	* (genAssign): use table reads when assigning from variables in codespace,
37464	* src/pic16/glue.c (pic16emitStaticSeg): fixed to correctly initialise
37465	char/int variables placed in codespace,
37466	* (pic16_emitConfigRegs): NEW, emits a list with configuration
37467	registers set in .asm file, no need for --pomit-config-words anymore,
37468	* (pic16glue): some 8051 legacy segments are commented out
37469	(to be removed completely),
37470	* added support for alternative assembler and linker with --asm=
37471	and --link= command line arguments,
37472	* peepholes are disabled automatically in the port, no need to
37473	specify on command line,
37474	* port supports natively char/int/long multiplication, but converts
37475	all divisions to support functions,
37476	* main.c: pic16_linkCmd and pic16_asmCmd changed to force output
37477	to the file set in variable $2,
37478	* pcode.c (pic16_emitDB, pic16_flushDB): modified to print printable
37479	strings in ASCII format and not in hex,
37480	* ralloc.c (serialRegAssign): added a triplet of conditional calls
37481	to pic16_allocDirReg for IC_RESULT, IC_LEFT and IC_RIGHT so to
37482	allocate proper register if iCodes aren't temporary,
37483
374842004-06-02 Maarten Brock <sourceforge.brock AT dse.nl>
37485
37486	* support/regression/tests/zeropad.c: added TEST_G macro for alpha
37487
374882004-06-02 Vangelis Rokas <vrokas AT otenet.gr>
37489
37490	* src/pic16/gen.c (genPcall): warning about gpsim and PCLATU
37491	is commented out
37492
374932004-06-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37494
37495	* src/hc08/gen.c (genPointerGetSetOfs): disabled optimization if
37496	computed address is reused
37497	* src/hc08/gen.c (genPackBits): fixed offsets in assignments to
37498	multi-byte bitfields
37499
375002004-06-01 Maarten Brock <sourceforge.brock AT dse.nl>
37501
37502	* src/z80/gen.c: (genArrayInit): must check for pointers too
37503
375042004-06-01 Maarten Brock <sourceforge.brock AT dse.nl>
37505
37506	* support/regression/tests/zeropad.c: never meant to commit the
37507	  nestedstruct test: removed, added check for GCC version
37508
375092004-05-31 Maarten Brock <sourceforge.brock AT dse.nl>
37510
37511	* src/SDCCast.c (createIvalArray): fixed bug 770487 SIGSEGV
37512	* src/SDCCglue.c (emitRegularMap): fixed bug 770484 allocation problem
37513	* src/SDCCglue.c (initPointer, printIvalType, printIvalStruct,
37514	  printIvalArray, printIvalFuncPtr, printIvalPtr, printIval): fixed
37515	  bugs 928906 and 954082 half-empty initializers
37516	* src/SDCCsymt.h,
37517	* src/SDCCsymt.c (getAllocSize): added for above fix
37518	* src/z80/gen.c (genArrayInit): fixed bug 741044
37519	* support/regression/tests/zeropad.c: added tests
37520
375212004-05-30 Vangelis Rokas <vrokas AT otenet.gr>
37522
37523	* src/pic16/device.c (pic16_dump_section): corrected bug which
37524	caused some symbols of the libraries to be misplaced
37525
375262004-05-28 Vangelis Rokas <vrokas AT otenet.gr>
37527
37528	* src/pic16/glue.c,
37529	* src/pic16/ralloc.h,
37530	* src/pic16/ralloc.cc: prefixed IS_CONFIG_ADDRESS with PIC16_
37531	to fix conflict with pic port
37532
375332004-05-28 Vangelis Rokas <vrokas AT otenet.gr>
37534
37535	* src/pic16/glue.c (pic16emitStaticSeg): do not print as publics or
37536	externs configuration variables,
37537	* src/pic16/ralloc.h,
37538	* src/pic16/ralloc.cc: IS_CONFIG_ADDRESS is made public and added
37539	prototype in header, commented out some debug messages
37540
375412004-05-26 Vangelis Rokas <vrokas AT otenet.gr>
37542
37543	* src/pic16/glue.c,
37544	* src/pic16/main.c,
37545	* src/pic16/pcode.c: added gpasm directives #FILE/#LINE
37546	for gpasm COFF object generation. Thanks to D. Hawkins for
37547	his patch info
37548
375492004-05-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37550
37551	* src/ds390/main.c,
37552	* src/mcs51/main.c: fixed sort order of mnemonics (thanks to Maarten
37553	Brock for spotting this)
37554	* src/ds390/gen.c (genEndFunction),
37555	* src/mcs51/gen.c (genEndFunction): always save psw if function is an
37556	interrupt handler and critical. Disable push/pop optimizations when
37557	peephole optimizations disabled.
37558
375592004-05-25 Vangelis Rokas <vrokas AT otenet.gr>
37560
37561	Updated pic16 library sources and headers.
37562	* device/lib/pic16/pic18f*/ ,
37563	* device/include/pic16/*.h: modified to handle structured SFR
37564	definitions
37565
375662004-05-25 Vangelis Rokas <vrokas AT otenet.gr>
37567
37568	* src/port.h (PORT structure): added hook initPaths, now each
37569	port can declare its own default search paths,
37570	which can been seen with the --print-search-dirs option,
37571	see pic16 port for example,
37572	* src/SDCCmain.c (setBinPaths, setIncludePaths, setLibPath,
37573	setDataPaths): test to options.printSearchDirs is ifdef'ed out,
37574	* (doPrintSearchDirs): NEW, replaces in a central manner the
37575	printing of search dirs which was split in set*Paths functions,
37576	* (main): added call to port->initPaths and doPrintSearchDirs,
37577	* src/avr/main.c,
37578	* src/ds390/main.c,
37579	* src/hc08/main.c,
37580	* src/izt/i186.c,
37581	* src/izt/tlcs900h.c,
37582	* src/mcs51/main.c,
37583	* src/pic/main.c,
37584	* src/pic16/main.c: modified port structures to reflect addition of
37585	initPaths hook,
37586
37587	* src/pic16/device.c (regCompare): registers are finally sorted by name,
37588	* (pic16_dump_section): for registers in same address reserve memory once,
37589	* src/pic16/device.h (struct PIC16_device): changed variable gen_banksel
37590	to no_banksel,
37591	* src/pic16/genarith.c (pic16_genPlus): added code to handle cases where
37592	result is greater in size than right or left,
37593	* (pic16_genUMult8X8_8): there are some cases where the result can
37594	be 16 bits size, so handle these,
37595	* src/pic16/gen.c: changed some pic16_emitpcomment to DEBUGpic16_emitcode,
37596	* (pic16_outBitC): modified to emit pcodes,
37597	* (pic16_storeForReturn): using is_LitOp to see if operand is literal
37598	or not,
37599	* (genDivOneByte): implemented algorithm to divide 8-bits,
37600	* (genCmp): uncommented goto, but issues still exist,
37601	* (genAnd): fixed a bug with variables >8bits,
37602	* (genPackBits): optimization added that uses BCF/BSF to change a
37603	single bit,
37604	* (genAssign): fixed bug when assigning floating point literals,
37605	* src/pic16/glue.c (pic16glue): added assembler directive 'code' before
37606	__sdcc_gsinit_startup label,
37607	* src/pic16/main.c (_pic16_init): removed search directory
37608	initialisations,
37609	* (_pic16_initPaths): NEW, used to initialise search directories,
37610	* (_hasNativeMulFor): support functions for all except char/int
37611	multiplication, and char division,
37612	* (PIC16_port struct): modified entry for native mul support,
37613	* src/pic16/pcode.c (insertBankSwitch): modified to support the renamed
37614	no_banksel option,
37615	* (buildCallTree): call to register_usage is ifdef'ed out,
37616
376172004-05-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37618
37619	* device/include/string.h: applied Stas Sergeev's patch to make this
37620	header file compatible with the preprocessor -Wundef option
37621	* src/SDCCmain.c (main): abort compilation if preprocessor reports
37622	failure (fixes bug #941458)
37623
376242004-05-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37625
37626	* src/SDCCopt.c (killDeadCode): fixed bug #907733
37627	* support/Util/SDCCerr.c: reworded E_AUTO_ASSUMED diagnostic to clarify
37628	that the variable, not the function, should be static
37629	* src/SDCCval.c (valCastLiteral): fixed bit initialization from literal
37630	to be consistent with non-literal case
37631
376322004-05-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37633
37634	* src/SDCCast.c (isConformingBody): fixed bug #949967
37635	* src/SDCCopt.c (cnvToFcall, cnvToFloatCast, cnvFromFloatCast,
37636	convilong): fixed bug #952086
37637
376382004-05-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37639
37640	* src/SDCCmem.c (allocVariables): fixed bug #955321
37641
376422004-05-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37643
37644	* src/hc08/main.c (_hc08_genAssemblerEnd),
37645	* src/SDCCdwarf2.c (dwOpenFile, dwCloseFile, dwWriteFunction,
37646	dwWriteModule, dwWriteCLine, dwWriteALine, dwarf2FinalizeFile):
37647	completely eliminated the use of a temporary file
37648	* src/SDCCdwarf2.c (dwWriteAttr): fixed bug with location list offset
37649	when more than one file linked
37650	* src/SDCCloop.c (pointerAssigned): fixed bug #954163
37651
376522004-05-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37653
37654	* src/SDCCval.c (valForArray): applied Maarten Brock's patch #947682
37655	which fixes bug #543481
37656	* support/regression/tests/bug-751703.c: fixed comments left from a
37657	cut and paste error
37658	* src/SDCCdwarf2.c (dwCloseFile): don't explicitly close a temp file
37659	* src/SDCCdwarf2.c (dwTagFromType): added bitfield support
37660	* src/SDCCdwarf2.c (dwWriteSymbolInternal): handle extern within local
37661	scopes
37662	* src/SDCCdwarf2.c (dwWriteLineNumber): line number deltas are signed
37663	* src/SDCCmain.c (processFile, parseCmdLine): non-alphanumeric chars
37664	are now	changed to underscores in moduleName
37665
376662004-05-15 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
37667
37668	* as/mcs51/lkmem.c: better fix for bug #954173
37669
376702004-05-15 Maarten Brock <sourceforge.brock AT dse.nl>
37671	committed by Frieder Ferlemann <Frieder.Ferlemann AT web.de>
37672
37673	* device/include/c8051f020.h: newly added SiLabs (Cygnal) header file
37674	* device/include/c8051f000.h,
37675	* device/include/c8051f120.h,
37676	* device/include/c8051f300.h,
37677	* device/include/c8051f310.h,
37678	* device/include/c8051f320.h: updated (added _XPAGE, CAPN, CAPP,
37679	PWM16) and detab'ed
37680
376812004-05-15 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
37682
37683	* doc/sdccman.lyx: mentioned sourceforge's delay between web frontend
37684	and mailing lists, doc'ed --no-peep-comments, removed reference
37685	to knoppix (newest version has no LyX/LaTeX), other minor changes
37686	* src/SDCCglue.c (glue): save 2 bytes stack space with
37687	option --main-return. The ljmp could probably be avoided too
37688
376892004-05-14 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
37690
37691	* as/mcs51/lkmem.c, as/mcs51/lkaomf51: fixed bug 954173
37692
376932004-05-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37694
37695	* src/SDCCsymt.h: added IS_AUTO(symbol) test macro
37696	* src/SDCCopt.c (isLocalWithoutDef),
37697	* src/SDCCicode.c (operandFromSymbol): use the IS_AUTO test macro
37698	which adds a !IS_EXTERN codition. Fixes bugs #877426 and #751703.
37699	(credit to Maarten Brock for patch #949363, on which this is based)
37700	* support/regression/tests/bug-751703.c: some test cases of extern used
37701	within inner scopes.
37702
377032004-05-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37704
37705	* src/SDCCdwarf2.c (dwMatchTypes): structs must have matching
37706	SPEC_STRUCT
37707	* src/SDCCdwarf2.c (dwTagFromType): fix to handle recursive
37708	struct definitions
37709	* src/SDCCdwarf2.c (dwWriteModule, dwNewDebugSymbol, dwWriteEndFunction,
37710	dwWriteLabel): fix to create valid debugger symbols even when
37711	the module name has non-alphanumeric symbols in it
37712	* src/SDCCdwarf2.c (dwWriteSymbolInternal): better detection for
37713	when a variable's allocation has been optimized away
37714
37715
377162004-05-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37717
37718	* src/hc08/gen.c (hc08_emitDebuggerSymbol),
37719	* src/hc08/main.c,
37720	* src/mcs51/gen.c (mcs51_emitDebuggerSymbol),
37721	* src/mcs51/main.c,
37722	* src/ds390/gen.c (ds390_emitDebuggerSymbol),
37723	* src/ds390/main.c,
37724	* src/z80/gen.c (z80_emitDebuggerSymbol),
37725	* src/z80/main.c,
37726	* src/pic/gen.c (pic14_emitDebuggerSymbol),
37727	* src/pic/main.c,
37728	* src/pic16/gen.c (pic14_emitDebuggerSymbol),
37729	* src/pic16/main.c,
37730	* src/avr/gen.c (avr_emitDebuggerSymbol),
37731	* src/avr/main.c,
37732	* src/xa51/gen.c (xa51_emitDebuggerSymbol),
37733	* src/xa51/main.c,
37734	* src/SDCCdebug.c (emitDebuggerSymbol),
37735	* src/SDCCdebug.h,
37736	* src/port.h: added a debugger struct to the port struct. Added a
37737	callback for defining debugger symbols
37738
37739	* src/SDCCast.c (createLabel),
37740	* src/SDCC.y (labeled_statement): mark all compiler generated labels
37741	with isitmp = 1
37742	* src/SDCCicode.h,
37743	* src/SDCCicode.c (geniCodeFunctionBody): added a link from the FUNCTION
37744	iCode back to the ast for the function
37745
37746	* src/hc08/ralloc.c (hc08_assignRegisters),
37747	* src/hc08/ralloc.h: define a regs struct for the stack pointer. Removed
37748	unneeded fields from the regs struct.
37749	* src/hc08/gen.c (transferRegReg, genFunction, genEndFunction): use the
37750	pushReg() & pullReg() functions instead of emitcode()
37751
37752	* src/hc08/gen.c (genLabel, genhc08Code),
37753	* src/SDCCdebug.h: Added additional debugger hooks needed for DWARF
37754
37755	* src/cdbFile.c (cdbWriteLabel, cdbWriteScope): Added stubs for unneeded
37756	debugger hooks
37757
37758	* src/hc08/gen.c (genEndFunction, genhc08Code),
37759	* src/hc08/gen.h,
37760	* src/mcs51/gen.c (genEndFunction, gen51Code),
37761	* src/mcs51/gen.h,
37762	* src/ds390/gen.c (genEndFunction, gen390Code),
37763	* src/ds390/gen.h,
37764	* src/z80/gen.c (genEndFunction, genZ80Code),
37765	* src/z80/gen.h,
37766	* src/z80/z80.h,
37767	* src/pic/gen.c (genEndFunction, genpic14Code),
37768	* src/pic/gen.h,
37769	* src/pic16/gen.c (genEndFunction, genpic16Code),
37770	* src/pic16/gen.h,
37771	* src/avr/gen.c (genEndFunction, genAVRCode),
37772	* src/avr/gen.h,
37773	* src/xa51/gen.c (genEndFunction, genXA51Code),
37774	* src/xa51/gen.h,
37775	* src/cdbFile.c (cdbWriteFunction, cdbWriteEndFunction): moved cdb
37776	specific code to cdbFile.c and out of the backend code generators
37777
37778	* as/hc08/lkmain.c (main): removed OMF51 support from link-hc08
37779	* as/hc08/lkarea.c (lnkarea): areas with NOLOAD attribute default
37780	starting address is now 0
37781
37782	* as/hc08/asm.h,
37783	* as/hc08/m08pst.c,
37784	* as/hc08/asmain.c (asmbl): implemented the .sleb128 and .uleb128
37785	assembler directive for DWARF support
37786	* as/hc08/lkelf.c (elf): only increment address when rtflg[] set
37787
37788	* src/src.dsp,
37789	* src/Makefile.in,
37790	* src/SDCCdwarf2.c: preliminary DWARF (ver 2) debugger data generator
37791
377922004-05-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37793
37794	* src/hc08/gen.c (genJumpTab, emitcode, genhc08code): fixed stack error
37795	and inappropriate peephole optimization in jump tables
37796
377972004-04-30 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
37798
37799	* as/hc08/m08pst.c,
37800	* src/SDCCglue.c: sdccopt works for the hc08 port now
37801
378022004-04-27 Bernhard Held <bernhard AT bernhardheld.de>
37803
37804	* src/SDCCicode.c (geniCodePreInc, geniCodePreDec): fixed bug #942130
37805
378062004-04-27 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
37807
37808	* as/hc08/lkelf.c: sdccconf.h is not available in WIN32
37809
378102004-04-24 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37811
37812	* src/SDCCpeeph.c (replaceRule): support empty replacement peephole
37813	rules
37814	* src/SDCCmain.c,
37815	* src/SDCCglobl.h,
37816	* src/SDCCpeeph.c (getPeepLine): new option --no-peep-comments omits
37817	comments from the peephole optimizer replacement rules
37818	* src/SDCCmem.c (printAllocInfoSeg): give actual location of spilled
37819	symbols
37820	* src/SDCCcse.c (updateSpillLocation),
37821	* src/SDCCopt.c (killDeadCode, findReqv): better tracking of register
37822	equivalents
37823	* src/hc08/ralloc.c (regTypeNum): pseudo symbols must be in DATA only
37824	* src/hc08/main.c (_hc08_finaliseOptions): made pointers to stack
37825	objects far pointers
37826
378272004-04-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37828
37829	* src/SDCCsymt.h: a missing part of my last change
37830	* src/pic/ralloc.c (regTypeNum),
37831	* src/pic16/ralloc.c (regTypeNum): fixed statement/declaration order
37832
378332004-04-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37834
37835	* src/SDCCicode.h,
37836	* src/SDCCicode.c (aggrToPtrDclType),
37837	* src/SDCCptropt.h,
37838	* src/SDCCptropt.c (ptrBaseRematSym, ptrPseudoSymSafe,
37839	ptrPseudoSymConvert),
37840	* src/pic/ralloc.c (regTypeNum),
37841	* src/pic16/ralloc.c (regTypeNum),
37842	* src/hc08/ralloc.c (regTypeNum),
37843	* src/ds390/ralloc.c (regTypeNum),
37844	* src/mcs51/ralloc.c (regTypeNum): check for dependancy hazards before
37845	creating pseudo symbols (fixed bugs #777768, #930484, and #933966)
37846
378472004-04-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37848
37849	* link/z80/lkmain.c (afile),
37850	* as/hc08/lkmain.c (afile),
37851	* as/mcs51/lkmain.c (afile): fix suggested by Maarten Brock to
37852	prevent a pointer problem when a filename has no directory and
37853	no extension specified.
37854
378552004-04-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37856
37857	* link/z80/lkmain.c (afile): allow periods in directory names
37858	* link/z80/lkmain.c (afile),
37859	* as/mcs51/lkmain.c (afile),
37860	* as/hc08/lkmain.c (afile): allow linker script file to have an
37861	extension other than ".lnk"
37862	* link/z80/lklex.c (getfid),
37863	* link/z80/lkmain.c (parse),
37864	* as/mcs51/lklex.c (getfid),
37865	* as/mcs51/lkmain.c (parse),
37866	* as/hc08/lklex.c (getfid),
37867	* as/hc08/lkmain.c (parse): Support comments in the linker script
37868	file on lines by themselves and after filenames
37869
378702004-04-20 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
37871
37872	* as/link_hc08.dsp: Added as/hc08/lkelf.c to project.
37873
378742004-04-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37875
37876	* src/z80/peeph-z80.def: removed some peephole rules that don't
37877	work with multibyte arithmetic (fixed bug #937126)
37878	* src/mcs51/peeph.def: fixed peephole rules 150-158 to apply only
37879	to registers and not global variables
37880	* src/SDCCicode.c (geniCodeAssign, ast2iCode, geniCodePostInc,
37881	geniCodePreInc, geniCodePostDec, geniCodePreDec,
37882	geniCodeLogicAndOr, geniCodeConditional): enforce strict lvalue
37883	checking for assignments not internally generated (fixed bug #931895)
37884	* src/SDCC.y (postfix_expr): ignore typedefs when looking for a
37885	structure member (fixed bug #930072)
37886
378872004-04-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37888
37889	* src/SDCCmain.c (linkEdit),
37890	* src/hc08/main.c (_hc08_parseOptions),
37891	* as/hc08/Makefile.in,
37892	* as/hc08/aslink.h,
37893	* as/hc08/asm.h,
37894	* as/hc08/m08pst.c,
37895	* as/hc08/lkrloc.c (relr, rele),
37896	* as/hc08/lkarea.c (lnkarea)
37897	* as/hc08/lkmain.c (afile, parse),
37898	* as/hc08/lkelf.c: support for ELF output
37899	* as/hc08/lks19.c (s19),
37900	* as/hc08/lkihx.c (ihx): ignore areas with the NOLOAD attribute
37901
379022004-04-17 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
37903
37904	* as/mcs51/lkihx.c: Fixed bug #899105.
37905
379062004-04-16 Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
37907
37908	* doc/sdccman.lyx: Added instructons on how to convert MSVC .dsw and
37909	.dsp files from Unix to DOS.
37910
379112004-04-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37912
37913	* doc/sdccman.lyx: removed the ANSI-C noncompliance note regarding
37914	function pointers; we have been compliant for several months now.
37915	* src/mcs51/ralloc.c (serialRegAssign): enabled part of my 2004-04-13
37916	change that was accidently commented out
37917	* src/mcs51/gen.c (freeAsmop, getFreePtr, freeForBranchAsmop, genIfxJump,
37918	genCmpEq, jmpTrueOrFalse, genCmp, genAnd, genOr, genXor, genIfx): fixed
37919	bug #922319
37920
379212004-04-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37922
37923	* src/hc08/gen.c: output of all of the internal debugging information
37924	is now controlled by the D() macro; it is disabled by default
37925
379262004-04-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37927
37928	* src/mcs51/ralloc.c (serialRegAssign, fillGaps, allocThisReg): try
37929	harder to keep the same registers during a CAST iCode
37930	* src/SDCCopt.c (optimizeCastCast, eBBlockFromiCode): casts of char to
37931	long via int can be done in a single cast, if the signedness is
37932	correct.
37933	* support/regression/tests/bug-927659.c: fixed to avoid conflict with
37934	putchar() in tinibios.c in ds390's library
37935
379362004-04-12 Bernhard Held <bernhard AT bernhardheld.de>
37937
37938	* src/SDCCast.c (decorateType): fixed bug #898889,
37939	cast result of a literal complement too
37940	* src/mcs51/ralloc.c (packRegsForAssign): fixed bug #930931,
37941	fixed check for bitfields
37942
379432004-04-11 Bernhard Held <bernhard AT bernhardheld.de>
37944
37945	* src/SDCCicode.c (geniCodeLogic): made it static,
37946	(geniCodeLogicAndOr): added in order to fix bug #905492,
37947	(ast2iCode): fixed bug #905492
37948	* support/regression/tests/bug-905492.c: added
37949	* src/SDCCast.c (decorateType): don't decorate/process parms twice,
37950	(processParms): fixed bug #927659: don't copy parms, this will clear
37951	decorated flag
37952	* support/regression/tests/bug-927659.c: added
37953
379542004-03-29 Bernhard Held <bernhard AT bernhardheld.de>
37955
37956	* src/SDCCast.c (addCast): don't cast float to char
37957	* device/lib/libsdcc.lib: added _memmove
37958
379592004-03-28 Bernhard Held <bernhard AT bernhardheld.de>
37960
37961	* device/lib/large/Makefile: fixed parallel execution by
37962	replacing `make` by `$(MAKE)`
37963
379642004-03-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
37965
37966	* src/hc08/gen.c (genPointerGetSetOfs): correctly handle 1 byte array
37967	offsets (fixes bug #923936)
37968
379692004-03-26 Bernhard Held <bernhard AT bernhardheld.de>
37970
37971	* device/lib/small/Makefile: fixed parallel execution by
37972	replacing `make` by `$(MAKE)`
37973
379742004-03-23 Bernhard Held <bernhard AT bernhardheld.de>
37975
37976	* device/lib/vprintf.c (vsprintf): minor optimization, see bug #801101
37977
379782004-03-23  Scott Dattalo  <scott AT dattalo.com>
37979
37980	* src/pic/gen.c (genCpl): multi-byte complements were not working.
37981	* src/regression/Makefile: Regression test was not running.
37982
379832004-03-23 Bernhard Held <bernhard AT bernhardheld.de>
37984
37985	* src/SDCCast.c (resultTypePropagate, decorateType): avoid promotion to int for
37986	complement if possible
37987	* src/SDCCval.c (valComplement),
37988	* src/SDCCicode.c (operandOperation): fixed complement of literal
37989	* support/regression/tests/onebyte.c (testComplement): added
37990
379912004-03-22 Bernhard Held <bernhard AT bernhardheld.de>
37992
37993	* src/SDCCast.c (processParms): fixed bug #920866; decorateType() can
37994	return an optimized tree; actually replace actParm with the new tree
37995	* src/SDCCast.h: added some parantheses to remove side effects
37996	* support/regression/tests/bug-920866.c
37997
379982004-03-21  Scott Dattalo  <scott AT dattalo.com>
37999	* src/pic/gen.c, src/pic/gen.h, src/pic/genarith.c, src/pic/pcode.c:
38000	Bit operands were not being handled properly in the pic14 port.
38001	(now src/regression/add.c passes again).
38002
380032004-03-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38004
38005	* src/SDCC.y (labeled_statement): case and default no longer require
38006	a following statement (RFE #893037)
38007
380082004-03-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38009
38010	* src/mcs51/gen.c (pushSide, genSignedRightShift, genDjnz, geniPush):
38011	use MOVA macro to avoid "mov a,acc" when peephole optimizer is
38012	disabled (fixes bug #916294)
38013	* sim/ucsim/s51.src/mov.cc (inst_mov_a_addr): Throw an error on
38014	"mov a,acc"; patch provided by Lenny Story
38015	* device/include/mc68hc908gp32.h: header contibuted by Juan Gonzalez
38016
380172004-03-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38018
38019	* src/mcs51/gen.c (genFunction): optimize RECEIVE in reentrant
38020	functions
38021	* src/ds390/gen.c (genFunction, genEndFunction),
38022	* src/ds390/ralloc.c (ds390_assignRegisters),
38023	* src/mcs51/gen.c (genFunction, genEndFunction, mcs51_assignRegisters):
38024	* src/mcs51/ralloc.c (mcs51_assignRegisters): Skip optimizing registers
38025	pushed if there are parameters passed on the stack. Also, a cleaner
38026	way to decide if r0/r1 should be pushed/popped. (Together they fix
38027	bug #918693)
38028
380292004-03-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38030
38031	* doc/sdccman.lyx,
38032	* device/lib/mcs51/crtpagesfr.asm,
38033	* device/lib/mcs51/crtxinit.asm,
38034	* device/lib/mcs51/crtxstack.asm: Changed name of _PAGESFR to _XPAGE
38035	to avoid confusion with Si Lab's SFRPAGE register.
38036
380372004-03-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38038
38039	* src/SDCCglue.c (emitMaps): allow public sfr variables
38040	* src/SDCCglue.c (initialComments): include compiler build date
38041	with compiler version and put the timestamp of the generated
38042	assembly file on a serperate line to be less confusing.
38043	* src/port.h: added genInitStartup hook
38044	* src/avr/main.c,
38045	* src/ds390/main.c,
38046	* src/hc08/main.c,
38047	* src/pic/main.c,
38048	* src/pic16/main.c,
38049	* src/xa51/main.c,
38050	* src/z80/main.c: genInitStartup initialize as NULL (default to
38051	historical behaviour)
38052	* src/SDCCglue.c (glue): _sdcc_gsinit_startup is now port specific.
38053	* src/mcs51/main.c: (_mcs51_genInitStartup, _mcs51_genExtraAreas,
38054	_mcs51_genXINIT, _mcs51_genRAMCLEAR): link initialization code from the
38055	library instead of hard coding it into the compiler.
38056	* support/regression/ports/mcs51-stack-auto/spec.mk,
38057	* src/SDCCmain.c (linkEdit): added mcs51.lib to the link libraries
38058	* device/lib/mcs51/Makefile,
38059	* device/lib/small/Makefile,
38060	* device/lib/large/Makefile,
38061	* device/lib/mcs51/crtpagesfr.asm,
38062	* device/lib/mcs51/crtstart.asm,
38063	* device/lib/mcs51/crtxclear.asm,
38064	* device/lib/mcs51/crtxinit.asm,
38065	* device/lib/mcs51/crtclear.asm,
38066	* device/lib/mcs51/crtxstack.asm: move most of the mcs51 C runtime
38067	startup/initialization out of src/SDCCglue.c and src/mcs51/main.c
38068	and into user configurable files.
38069	* device/lib/clean.mk: clean mcs51 directory too
38070	* support/regression/tests/longlit.c: added static to T1 declaration
38071	* doc/sdccman.lyx: documented _PAGESFR sfr for customizing pdata
38072	accesses in the initialization code
38073
380742004-03-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38075
38076	* device/include/mc68hc908qy.h: corrected declarations of FLBPR and
38077	OSCTRIMVAL as noted in bug #916008
38078
380792004-03-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38080
38081	* src/SDCCloop.c (basicInduction): fixed bug with loop induction
38082	in loops with multiple exits (reported as incorrect registers
38083	used by Martin Helmling in Sdcc-user list)
38084
380852004-03-12 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
38086
38087	* src/ds390/main.c (_ds390_genAssemblerPreamble): cosmetic change,
38088	made ds390 register extensions look less like error messages
38089
380902004-03-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38091
38092	* src/SDCCglue.c (printIvalPtr): fixed bug with pointer initializer
38093	reported by Adam Wozniak in Sdcc-user list
38094
380952004-03-10 Bernhard Held <bernhard AT bernhardheld.de>
38096
38097	* src/SDCCast.c (decorateType): fixed with bug and promotion in
38098	arithmetic optimizations, added debug output
38099
381002004-03-09 Bernhard Held <bernhard AT bernhardheld.de>
38101
38102	* device/lib/time.c (mktime): fixed bug reported by Bert Thomas
38103	* sdcc.spec: updated and split sdcc into 3 rpms
38104	* src/SDCCast.c (decorateType): &|^ don't need addCast(); addCast() is
38105	needed for literals of LEFT_OP and '+'
38106	* src/SDCCicode.c (geniCodeLogic): I must have been braindead when I
38107	introduced RESULT_TYPE_NOPROM
38108	(geniCodeMultiply): fixed logic for decision if mul is optimized to
38109	left shift
38110	* src/SDCCsymt.c (computeType): op is int; added RESULT_TYPE_OTHER;
38111	limited promotion to int only for '*'
38112	* src/SDCCsymt.h (computeType): op is int, removed RESULT_TYPE_NOPROM
38113
381142004-03-09 Hans Dorn <hjdorn AT users.sourceforge.net>
38115
38116	* src/pic16/gen.c (genSkip),
38117	(genc16bit2lit), (gencjneshort): commented out
38118	(is_LitOp): new helper function, checks operand type
38119	(genCmpEq): rewritten
38120
381212004-03-08 Bernhard Held <bernhard AT bernhardheld.de>
38122
38123	* support/regression/tests/bug-908454.c: added
38124
381252004-03-07 Bernhard Held <bernhard AT bernhardheld.de>
38126
38127	* src/SDCCast.c (addCast): fixed bug #908454 by promoting bits to char
38128	* src/SDCCicode.c (usualBinaryConversions): op needs int type
38129	(geniCodeCast): cosmetic, don't preserve bit storage class
38130	(geniCodeLeftShift): added promotion
38131	(geniCodeLogic): fixed regression
38132	* src/SDCCsymt.c (computeTypeOr): accept bits too
38133	(compareType): 2nd part of fix for bug #908454, needed for bitfields
38134
381352004-03-07  Borut Razem <borut.razem AT siol.net>
38136
38137	* support/Util/findme.c: alloca() replaced with malloc()/free() pair
38138
381392004-03-06 Vangelis Rokas <vrokas AT otenet.gr>
38140
38141	* src/pic16/ralloc.c (pic16_genPackRegisters): reverted to old
38142	version of pic16_genPackRegisters which does not check if ic is a
38143	CAST operator,
38144	* src/pic16/gen.c (ifxForOp): disabled new and untested code in
38145	function cause string1.c regression test fails
38146
381472004-03-06 Bernhard Held <bernhard AT bernhardheld.de>
38148
38149	* sim/ucsim/configure.in,
38150	* sim/ucsim/configure,
38151	* sim/ucsim/doc/Makefile.in: use docdir
38152	* src/SDCC.y: fixed sbit atrributes
38153	* src/SDCCast.c (getResultTypeFromType): added support for bitfields
38154	* src/SDCCast.c (decorateType): |^& need special promotion handling
38155	* src/SDCCast.h,
38156	* src/SDCCsymt.h: moved definition of RESULT_TYPE
38157	* src/SDCCsymt.h (computeType),
38158	* src/SDCCicode.c: computeType() needs op
38159	* src/SDCCsymt.c (checkTypeSanity),
38160	* doc/sddman.lyx: "plain" bitfields are unsigned
38161	* src/SDCCsymt.c (computeTypeOr): added
38162	* src/SDCCsymt.c (computeType): added support for bitfields, fixed
38163	|^& ops
38164	* src/SDCCval.c (val*): computeType() needs op
38165	* src/SDCCval.c (valCastLiteral): fixed casting of bitfields
38166	* support/regression/tests/onebyte.c: added tests for |^&
38167
381682004-03-06 Hans Dorn <hjdorn AT users.sourceforge.net>
38169
38170	* src/pic16/gen.c: (genpic16Code) use copy of printILine's output
38171	for writing icode into asm output.
38172
381732004-03-05 Vangelis Rokas <vrokas AT otenet.gr>
38174
38175	* src/pic16/device.c: added some debug lines enabled
38176	with macro DEBUG_CHECK,
38177	* src/pic16/genarith.c: more debug in genPlus,
38178	* (pic16_genUMult8XLit_16, pic16_genUMult8X8_16): removed,
38179	* (pic16_genUMult16X16_16, pic16_genUMult16XLit_16): NEW,
38180	* src/pic16/gen.c: added prototypes for pic16_genMult16X16_16,
38181	* (aopForSym): onStack symbols are re-placed in data memspace,
38182	and onStack flag is cleared,
38183	* (pic16_popGetTempReg, pic16_popReleaseTempReg): modified to
38184	copy temporary pcodeop,
38185	* (genPcall): added warning for not updating PCLATU,
38186	* (genFunction): removed test with IFFUNC_CALLEESAVES, its
38187	always true for pic16 port,
38188	* (genMultOneWord): NEW, supports integer multiplication,
38189	* (genMult): modified to call genMultOneWord,
38190	* (ifxForOp): added warning when return NULL,
38191	* src/pic16/glue.c (pic16emitRegularMap): symbol implicit
38192	flag is set before call to operandFromSymbol for implicit
38193	added structures,
38194	* src/pic16/main.c (_pic16_finaliseOptions): options.float_rent,
38195	options.intlong_rent are set by default,
38196	* (_hasNativeMulFor): modified to allow port generation of integer
38197	multiplication,
38198	* src/pic16/ralloc.c (pic16_allocDirReg): commented out line which
38199	set regtype to REG_SFR for all registers, restricting seting the
38200	accessBank flag for registers 0<= r < 0x80 and 0xf80<=r<=0xfff,
38201
382022004-03-05 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
38203
38204	* src/mcs51/peephole.def: added 251.b and 253.x. 253.x are applied
38205	more than 500 times in the regression tests
38206
382072004-03-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38208
38209	* support/Util/SDCCerr.h,
38210	* support/Util/SDCCerr.c,
38211	* src/SDCC.y (struct_or_union_specifier, enum_specifier,
38212	enumerator_list),
38213	* src/SDCCsymt.c (addSymChain): show location of oriignal definition
38214	for symbol conflicts.
38215	* support/valdiags/tests/enum.c,
38216	* support/valdiags/tests/tentdecl.c,
38217	* support/valdiags/tests/struct.c: expect possible error messages
38218	referring to original symbol definitions.
38219	* src/SDCC.y (struct_or_union_specifier, struct_declarator),
38220	* src/SDCCsymt.h,
38221	* src/SDCCsymt.c (promoteAnonStructs): support anonymous struct/union
38222
382232004-03-03 Hans Dorn <hjdorn AT users.sourceforge.net>
38224
38225	* src/pic16/gen.c (gencjne): fixed for right=REG / left=LIT
38226
382272004-02-03 Vangelis Rokas <vrokas AT otenet.gr>
38228
38229	* src/pic16/ralloc.c (newReg): fixed bug #908929
38230
382312004-03-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38232
38233	* src/ds390/gen.c: added missing #include "main.h"
38234
382352004-03-02 Vangelis Rokas <vrokas AT otenet.gr>
38236
38237	* src/pic16/device.c (checkAddSym): NEW, adds a symbol to set while
38238	checking if symbol is already in set,
38239	* src/pic16/device.h: prototype for checkAddSym,
38240	* src/pic16/gen.c: (_G): added entry interruptvector,
38241	* (assignResultValue): removed some commented out lines,
38242	* (genFunction): check for ISR via sym->type, absolute section for
38243	interrupt code is created via a new pBlock, the goto instruction is
38244	placed now correctly at the interrupt vector position, changed all
38245	references from ivec to _G.interruptvector,
38246	* WREG,STATUS,BSR are not saved in stack upon an entry to interrupt
38247	is the interrupt is a high priority one, same for return from ISR,
38248	* src/pic16/glue.c: changed all calls of addSetHead for publics and
38249	externs to calls of checkAddSym,
38250	* src/pic16/pcode.c (pic16_pBlockConvert2*): emit warning when
38251	pic16_pcode_verbose flag is set,
38252	* src/pic16/pcode.h: extern to pic16_pcode_verbose,
38253	* src/pic16/pcoderegs.c: message about how many registers are saved
38254	will only be emitted if pic16_pcode_verbose flag is set,
38255
382562004-03-02 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38257
38258	* src/ds390/ralloc.h,
38259	* src/ds390/ralloc.c (ds390_regWithIdx),
38260	* src/ds390/gen.c (emitcode),
38261	* src/ds390/main.h,
38262	* src/ds390/main.c (instructionSize, ds390newAsmLineNode, updateOpRW,
38263	ds390opcodeCompare, asmLineNodeFromLineNode, getInstructionSize,
38264	ds390operandCompare, getRegsRead, getRegsWritten,
38265	initializeAsmLineNode): customized instruction size calculation for
38266	ds390, started basis for some register optimizations
38267	* src/ds390/gen.c (gen390Code, emitcode): associate iCodes with
38268	corresponding assembly output
38269	* src/ds390/gen.c (genFunction, genEndFunction): added case to handle
38270	missing push/pop of r0/r1. Optimized push/pops
38271
382722004-03-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38273
38274	* src/mcs51/main.c (instructionSize): fixed ACALL size
38275	* src/mcs51/main.c (updateOpRW): fixed bug with @dptr, @a+dptr operands
38276
382772004-03-01 Vangelis Rokas <vrokas AT otenet.gr>
38278
38279	* src/pic16/device.c (pic16_dump_section): fixed a bug that allowed
38280	the sorting of rlist with NULL elements
38281	* (print_idataType, print_idata): NEW to create idata sections
38282	* src/pic16/device.h: idataSymSet new variable
38283	* src/pic16/gen.c (genFunction): fixed some bugs in string
38284	comparing, improved the absolute section creation for ISRs,
38285	added FSR0L/FSR0H in registers that are saved in an ISR,
38286	* (genInline): fixed the processing of inline snippets,
38287	now they undergo no process by the peephole optimizer
38288	* src/pic16/glue.c (pic16emitRegularMap): symbols with initialiser
38289	are placed in idataSymSet,
38290	* (pic16emitStaticSeg): extern symbols are added in externs,
38291	* src/pic16/ralloc.c (pic16_allocDirReg): work around to reduce bank
38292	switching when aboslute variables are placed in access bank memory
38293	* (pic16_writeUsedRegs): added call to pic16_dump_idata,
38294	* (packRegsForSupport,packRegsForAccUse,packRegsForOneuse):
38295	commented out with #if,
38296	* (pic16_packRegisters): reintroduce the check for CAST because some
38297	symbols are not correctly handled,
38298	* src/pic16/pcode.h: changed the definition of pCodeAsmDir to hold a
38299	pCodeInstruction instead of pCode,
38300	* src/pic16/pcode.c (pic16_newpCodeAsmDir): modified for the new
38301	pCodeAsmDir definition,
38302	* (pic16_pCode2str, genericPrint): when an AsmDir pcode has a NULL
38303	directive, then the argument directive is emitted without the leading
38304	tab, hack for inline labels which must be in the first column,
38305	* (compareLabel,pic16_findNextInstruction),
38306	* (pic16_findPrevInstruction): added case for PO_ASMDIR,
38307	* (insertBankSwitch): modified for the new pCodeAsmDir,
38308
383092004-03-01 Hans-Juergen Dorn <hans.dorn AT apl-landau.de>
38310	patch applied by Vangelis Rokas <vrokas AT otenet.gr>
38311
38312	* src/pic16/gen.c (pic16_popGet): case PO_DIR, adds the offset to
38313	instance,
38314	* (pushSide): commented out with #if,
38315	* (assignResultValue): fixed some typos in saving
38316	registers,
38317	* (genPcall): FIXED and sync'ed with genCall,
38318	* (genDataPointerGet,genDataPointerSet): using offset not leoffset
38319	* (genNearPointerGet): fixed to handle some more cases,
38320	implementation scheme via table reads,
38321	* (genConstPointerGet): modified to access code memory correct,
38322	* (genCodePointerGet,genNearPointerSet,genGenPointerSet): modified
38323	and improved to handle some cases
38324	* glue.c (printIvalType,printIvalChar,emitStaticSeg): use "DB"
38325	instead of "RETLW" for init data
38326	* src/pic16/ralloc.c (pic16_allocDirReg): warning when a symbol is
38327	not IN_DIRSPACE, work around to reduce bank switching when aboslute
38328	variables are placed in access bank memory (<0x80 and >=0xf80),
38329	* src/pic16/pcode.c: added SFRs TBLPTR, TABLAT, added opcodes TBLRD,
38330	TBLRD_POSTINC,TBLRD_POSTDEC,TBLRD_PREINC,TBLWT,TBLWT_POSTINC,
38331	TBLWT_POSTDEC,TBLWT_PREINC
38332	* Fixed initialisation of BSR, set "alias" for SSAVE to "0"
38333	* (pic16_emitDB,pic16_flushDB): New functions to generate "DB"
38334	directives
38335	* (pic16_pCodeConstString): use "DB" instead of "RETLW"
38336	* src/pic16/pcode.h: added TBLRD*,TBLWT*, added pic16_emitDB,
38337	pic16_flushDB, made pic16_newpCodeAsmDir public, added TBLPTR, TABLAT
38338	* src/pic16/ralloc.h: added IDX_BSR,IDX_TBLPTR*,IDX_TABLAT
38339
383402004-02-29  Borut Razem <borut.razem AT siol.net>
38341
38342	* src/Makefile.in, src/SDCCutil.c, support/Util/findme.c,
38343	support/Util/findme.h, support/Util/system.h: enhance binary relative
38344	search for lib and include by using findProgramPath()
38345
383462004-02-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38347
38348	* src/SDCCpeeph.h,
38349	* src/SDCCpeeph.c (pcDistance),
38350	* src/port.h,
38351	* src/mcs51/ralloc.h,
38352	* src/mcs51/ralloc.c (mcs51_regWithIdx),
38353	* src/mcs51/main.h,
38354	* src/mcs51/main.c (instructionSize, asmLineNode, updateOpRW,
38355	mcs51opcodeCompare, asmLineNodeFromLineNode, getInstructionSize,
38356	mcs51operandCompare, getRegsRead, getRegsWritten): made instruction
38357	size calculation port specific,	started basis for some register
38358	optimizations
38359	* src/mcs51/gen.c (genFunction, genEndFunction): added case to handle
38360	missing push/pop of r0/r1. Optimized push/pops
38361	* src/mcs51/ralloc.c (packregisters): fixed bug #727095
38362	* device/lib/_modsint.c (_modsint),
38363	* device/lib/_modslong.c (_modslong): fixed sign of result in non-asm
38364	and stack version so regression tests pass
38365
383662004-02-26 Bernhard Held <bernhard AT bernhardheld.de>
38367
38368	* src/Makefile.in (dep): include SLIBOBJS in dependency check
38369	* src/SDCCast.c (decorateType): catch another small optimization
38370	with '?' operator
38371	* src/SDCCsymt.c (computeType): added comments and cosmetic changes
38372	* src/SDCCval.c (valMult, valDiv, valMod, valPlus, valMinus, valShift):
38373	modified to finally use computeType() all over SDCC,
38374	see Feature Request #877103
38375	* src/SDCCval.h: cosmetic
38376	* src/SDCCicode.c (operandOperation): fixed EQ_OP bug, now same as in
38377	valCompare(); regression tested in muldiv.c
38378	* support/regression/tests/muldiv.c (testMod): mod sign follows
38379	dividend only
38380
383812004-02-23 Bernhard Held <bernhard AT bernhardheld.de>
38382
38383	* src/SDCCast.c (decorateType): fixed bug #902362
38384	* doc/INSTALL.txt: fixed install instructions for win32
38385
383862004-02-21 Bernhard Held <bernhard AT bernhardheld.de>
38387
38388	* device/include/Makefile.in (install): fixed by replacing spaces
38389	by tabs
38390	* doc/README.txt,
38391	* doc/INSTALL.txt: updated for release
38392	* doc/sdccman.lyx: added warning for --xstack being buggy
38393
383942004-02-20 Bernhard Held <bernhard AT bernhardheld.de>
38395
38396	* src/pic16/ralloc.c (packRegsForAccUse):  disabled functions with #if
38397	to eliminate build warnings.
38398	* src/pic16/gen.c (pic16_popGet): fixed for gcc 2.95.4
38399
384002004-02-20 Vangelis Rokas <vrokas AT otenet.gr>
38401	   Hans-Juergen Dorn <hans.dorn AT apl-landau.de>
38402
38403	* doc/sdccman.lyx: removed PIC16 from PIC16 Port Specific Options,
38404	removed -penable-stack, added comment for stack pragma, added
38405	warning for not initializing the stack/frame registers, removed
38406	comment at interrupts section
38407
38408	Stack is made permanent, there is no ability to disable stack usage.
38409	* src/pic16/device.h,
38410	* src/pic16/device.c: removed all references to USE_STACK macro,
38411	* src/pic16/device.c (pic16_dump_section): when no elements in
38412	rlist, free rlist before return,
38413	* (pic16_dump_int_registers): NEW, internal registers are a new set
38414	of general purpose registers reused by each function,
38415	* (checkAddReg): returns 1 if registers is added to set,
38416	* (pic16_groupRegistersInSection): when a registers is of type
38417	PO_GPR_TEMP add it in pic16_int_regs and not in pic16_rel_udata,
38418	* src/pic16/device.h: memRange and Assigned Memory are deleted,
38419	SRCASECMP macro is moved here from device.c
38420	* src/pic16/genarith.c (pic16_pCodeOpType): added cases for
38421	PO_PCLATU, PO_PRODL, PO_PRODH,
38422	* (pic16_pCodeOpType, genMinus,
38423	changed compares to "a" register, with AOP_ACC,
38424	* (pic16_genPlus): fixed some bugs and indented properly,
38425	* (pic16_addSign): changed size to size+offset in the MOVWF
38426	instruction,
38427	* (pic16_genUMult8XLit_8): NEW, uses processor MULLW instruction to
38428	multiply 8-bit operand by literal, result is 8-bit,
38429	* (pic16_genUMult8X8_8): NEW, uses processor MULWF instruction to
38430	multiply 2 8-bit operand, result is 8-bit,
38431	* (pic16_genMult8X8_8): modified to call genUMult8X*_8 functions and not
38432	genUMult8X*_16,
38433	* src/pic16/gen.c: changed accUse to contain WREG only,
38434	* (pic16_emitcomment): renamed to pic16_emitpcomment,
38435	* (aopForSym): allocated dir register when IN_DIRSPACE(space) is,
38436	true, do not use immediate addressing any more unless sym is a
38437	pointer in codespace,
38438	* (aopForRemat): do not use immediate addressing when symbol not in
38439	codespace and when symbol's address is requested,
38440	* (aopOp): for-loop in if(sym->accUse) is modified for the new
38441	accUse size (= 1),
38442	* (aopGet): added case for AOP_ACC and don't return "accumulator
38443	bug" but WREG instead,
38444	* (popGetTempReg): pushes contents of temporary register in stack,
38445	* (popReleaseTempReg): pops contents of temporary register from
38446	stack. Use popGetTempReg/popReleaseTempReg in aligned pairs,
38447	* (pic16_popGet): separated case AOP_ACC to return register WREG
38448	from processor registers, AOP_PCODE not checks if pcop is PO_DIR
38449	or PO_IMMEDIATE and initializes their instance/offset appropriately,
38450	* The whole issue with aopForSym,aopForRemat,popGet) is to minimize
38451	the use of immediate pointers to certain cases only.
38452
38453	* (pic16_pushpCodeOpReg, pic16_poppCodeOpReg): use pic16_popGet2p,
38454	* (pic16_loadFromReturn, pic16_storeForReturn: NEW,
38455	* (assignResultValue, genCall, genRet): modified to use the new
38456	function return value scheme with WREG,PRODL,PRODH,FSR0L and FSR0,
38457	genPcall is still broken,
38458	* (genFunction): added code to create 'A' type pBlocks when
38459	interrupt functions are generated, code not extensively tested yet,
38460	ISRs push WREG,STATUS,BSR,PRODL,PRODH,FSR0L,FSR0H registers on stack,
38461	* (genEndFunction): modified so ISRs pop stored registers from stack,
38462	* (genMultOneByte): cleanup,
38463	* (AccRsh): added flag andmask, to and result with appropriate mask,
38464	* (genUnpackBits,genPackBits): fixed and can handle bit fields,
38465	* (genDataPointerGet): fixed and reenabled its use,
38466	* (genNearDataPointerGet): bugs fixed,
38467	* (genDataPointerSet): bugs fixed,
38468	* src/pic16/genutils.c: added functions pic16_DumpValue,pic16_DumpAop,
38469	pic16_DumpSymbol, pic16_DumpOp,
38470	* src/pic16/genutils.h: function prototypes for the above functions,
38471	* src/pic16/glue.c: new flags initsfpnt, to initialize stack/frame
38472	pointers,
38473	* (pic16emitRegularMap): many many many improvements, but needs a
38474	major cleanup,
38475	* src/pic16/main.c: enable_stack in pic16_options is removed,
38476	* (_pic16_parseOptions): removed command line options -penable-stack,
38477	* (_process_pragma): emit stack symbol only when stack pragma is
38478	processed,
38479	* src/pic16/pcode.c: pic16_pc_fsr0 is removed, all operations are
38480	redirected to FSR0L/FSR0H pair,
38481	* (pic16_get_op, pic16_get_op2): modifications and improvements,
38482	* (pic16_getRegFromInstruction, pic16_getRegFromInstruction2): added
38483	cases PO_PRODL,PO_PRODH, pic16_getRegFromInstruction2 returns sane
38484	for immediates,
38485	* (insertBankSwitch): modified to handle cases like: (alfa + 1)
38486	* (dumpPicOptype): NEW,
38487	* src/pic16/pcode.h: added PO_PCLATU,PO_PRODL,PO_PRODH in enum,
38488	* src/pic16/pcoderegs.c (pCodeRegMapLiveRangesInFlow): fixed bug
38489	with movff instruction,
38490	* src/pic16/ralloc.c: renamed typeRegWithIdx to pic16_typeRegWithIdx,
38491	added pic16_int_regs, some packRegsFor* functions are commented out,
38492	because produce errors,
38493	* src/pic16/NOTES: minor modifications
38494
384952004-02-18  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
38496
38497	* as/mcs51/aslink.h, as/mcs51/lkarea.c, as/mcs51/lkdata.c, as/mcs51/lkmain.c,
38498	as/mcs51/lkmem.c, src/SDCCglob.h, src/SDCCmain.c: added options --stack-size and
38499	--pack-iram.
38500	* doc/sdccman.lyx: described options --stack-size and --pack-iram.
38501	* as/mcs51/lkaomf51.c: fixed bug #895763
38502
385032004-02-17 Bernhard Held <bernhard AT bernhardheld.de>
38504
38505	* device/include/c8051f320.h: added. Contributed by Maarten Brock.
38506
385072004-02-17 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38508
38509	* doc/sdccman.lyx: added details about the HC08 storage classes and
38510	interrupts, fixed the register usage info for z80 & gbz80
38511
385122004-02-17 Vangelis Rokas <vrokas AT otenet.gr>
38513
38514	* doc/sdccman.lyx: added more pic16 port documentation
38515	* device/include/pic16/: added header pic18fregs.h
38516
385172004-02-16 Bernhard Held <bernhard AT bernhardheld.de>
38518
38519	* doc/sdccman.lyx: added Vangelis' contribution
38520
385212004-02-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38522
38523	* src/SDCClrange.c (rlivePoint): live range of SEND operand should
38524	extend to the next CALL or PCALL, not just to the next CALL.
38525
385262004-02-16 Vangelis Rokas <vrokas AT otenet.gr>
38527
38528	* src/pic16/gen.c (genInline): fixed bug #896482 with inline assembly
38529
385302004-02-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38531
38532	* src/mcs51/ralloc.c (packRegsForAssign, reassignAliasedSym): fixed
38533	bug #895752 and a better fix for bug #716790
38534
385352004-02-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38536
38537	* src/SDCCsymt.c (processFuncArgs): fixed bug #896796
38538
385392004-02-14 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
38540
38541	* doc/sdccman.lyx: minor changes, minor changed
38542
385432004-02-13 Bernhard Held <bernhard AT bernhardheld.de>
38544
38545	* src/SDCCicode.c (usualBinaryConversions): removed pic16 from ports
38546	which can't handle SDCC_NEWONEBYTEOPS,
38547	(geniCodeMultiply): removed conversion from mult to shift for pic14
38548	and pic16
38549
385502004-02-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38551
38552	* src/hc08/gen.h,
38553	* src/hc08/gen.c (storeRegToAop, aopOp, aopAdrStr, accopWithAop,
38554	rmwWithAop): Ported my 2003-10-02 fix for bug #663539 to the hc08,
38555	thus fixing bug #895406
38556
385572004-02-11 Bernhard Held <bernhard AT bernhardheld.de>
38558
38559	* device/lib/_modsint.c,
38560	* device/lib/_modslong.c: sign follows divisor only
38561	* src/hc08/gen.c (genMultOneByte): if result size is 1,
38562	signs or signedness can be ignored
38563	* src/SDCCast.c (addCast): cosmetic - added lineno to CAST
38564	* src/SDCCast.c (resultTypePropagate): added even more ops: +, - and *,
38565	added optimization for IFX,
38566	(decorateType): Mult/Div/ModOneByte ops can handle all kind of signed
38567	arguments;
38568	reenabled optimization for IFX, which was removed on 2004-01-11
38569	* src/SDCCast.h: added return type IFX
38570	* src/SDCCicode.c: Mult/Div/ModOneByte ops can handle all kind of signed
38571	arguments with 8 or 16 bit results; pic14 and pic16 ports use old
38572	promotion behaviour; env. var. SDCC_NEWONEBYTEOPS selects the new,
38573	SDCC_OLDONEBYTEOPS selects the old behaviour
38574	* src/SDCCsymt.c (computeType): type2 can be NULL (for LEFT_OP);
38575	changed again and commented promotion rule
38576	* src/SDCCval.c (valDiv): promotion no longer necessary
38577	* src/ds390/gen.c (genMultOneByte) (genDivOneByte) (genModOneByte),
38578	* src/mcs51/gen.c (genMultOneByte) (genDivOneByte) (genModOneByte):
38579	rewritten
38580	* support/regression/tests/onebyte.c: added
38581
385822004-02-11 Vangelis Rokas <vrokas AT otenet.gr>
38583
38584	* gen.c (genInline): reverted to old code for assemnling inline
38585	code because of bug reported James Chadd
38586
385872004-02-10 Vangelis Rokas <vrokas AT otenet.gr>
38588
38589	* ralloc.h: missing declarations from previous patch,
38590	seems that patch for ralloc.h was never applied, fixed
38591
385922004-02-10 Hans-Juergen Dorn <hans.dorn AT apl-landau.de>
38593	   patch committed by Vangelis Rokas <vrokas AT otenet.gr>
38594
38595	* pcode.c,
38596	* pcode.h,
38597	* ralloc.h: added FSR0L, FSR0H and other missing PIC16 SFR's for
38598	indirect addressing. Marked FSR0 as deprecated
38599	* gen.c (pointerCode): commented out, not needed now
38600	(pic16_popGet2p): new MOVFF helper function
38601	(genGenPointerGet),
38602	(genGenPointerSet): reimplemented with MOVFF and POSTINC0
38603	(shiftRLong): removed duplicate debugging info
38604
386052004-02-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38606
38607	* src/ds390/gen.c (genNearPointerGet),
38608	* src/mcs51/gen.c (genNearPointerGet): allow the genDataPointerGet()
38609	optimization with bits, but not bitfields.
38610	* src/ds390/ralloc.c (packRegisters),
38611	* src/mcs51/ralloc.c (packRegisters): fixed bug #884453 & #880832
38612
386132004-02-09 Bernhard Held <bernhard AT bernhardheld.de>
38614
38615	* src/SDCCcse.c (algebraicOpts): copy operands before modification
38616
386172004-02-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38618
38619	* src/SDCCsymt.h,
38620	* src/SDCCicode.c (operandFromSymbol),
38621	* src/mcs51/ralloc.c (verifyRegsAssigned, serialRegAssign),
38622	* src/ds390/ralloc.c (verifyRegsAssigned, serialRegAssign),
38623	* src/z80/ralloc.c (verifyRegsAssigned, serialRegAssign),
38624	* src/hc08/ralloc.c (verifyRegsAssigned, serialRegAssign),
38625	* src/pic/ralloc.c (verifyRegsAssigned, serialRegAssign),
38626	* src/pic16/ralloc.c (verifyRegsAssigned, serialRegAssign): fixed
38627	bug #892038
38628	* src/SDCCast.c (createIvalStruct, createIvalArray, gatherAutoInit),
38629	* src/SDCCglue.c (emitRegularMap, printIvalStruct, printIvalArray,
38630	printIvalCharPtr, printIvalPtr, printIval, emitStaticSeg, emitOverlay)
38631	* src/SDCCsymt.c (newSymbol),
38632	* src/SDCC.y (struct_or_union_specifier, enum_specifier,
38633	enumerator_list),
38634	* src/SDCCval.h,
38635	* src/SDCCval.c (newiList): fixed bug #885705
38636
386372004-02-08  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
38638
38639	* doc/sdccman.lyx: added section 3.1.4: sdcclib.
38640	* as/mcs51/lkmem.c: report the size of the stack in .mem file.
38641
386422004-02-08 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
38643
38644	* device/include/c8051f120.h,
38645	* device/include/c8051f300.h,
38646	* device/include/c8051f310.h: added/updated header files for Silicon
38647	Laboratories (formerly Cygnal) CPUs. Contributed by Maarten Brock.
38648	* doc/sdccman.lyx: minor changes, recommended diff -Naur and diff -u
38649	in new section Submitting patches
38650
386512004-02-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38652
38653	* src/mcs51/gen.c (genNearPointerGet, genPagedPointerGet,
38654	genFarPointerGet, genCodePointerGet, genGenPointerGet,
38655	genNearPointerSet, genPagedPointerSet, genFarPointerSet,
38656	genGenPointerSet),
38657	* src/ds390/gen.c (genNearPointerGet, genPagedPointerGet,
38658	genFarPointerGet, genCodePointerGet, genGenPointerGet,
38659	genNearPointerSet, genPagedPointerSet, genFarPointerSet,
38660	genGenPointerSet),
38661	* src/pic16/gen.c (genNearPointerGet, genPagedPointerGet,
38662	genFarPointerGet, genCodePointerGet, genGenPointerGet,
38663	genNearPointerSet, genPagedPointerSet, genFarPointerSet,
38664	genGenPointerSet),
38665	* src/pic/gen.c (genNearPointerGet, genPagedPointerGet,
38666	genFarPointerGet, genCodePointerGet, genGenPointerGet,
38667	genNearPointerSet, genPagedPointerSet, genFarPointerSet,
38668	genGenPointerSet): fixed bug #892400
38669	* src/pic16/gen.c (genSkipz, AccRol): disabled functions with #if 0
38670	to eliminate build warnings.
38671	* src/SDCCast.c (processParms),
38672	* src/SDCC.y (function_declarator2, declarator2_function_attributes):
38673	fixed bug 751859
38674	* support/valdiag/valdiag.py: added GCC to the list of defines active
38675	when compiling with gcc
38676
386772004-02-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38678
38679	* support/Util/SDCCerr.h,
38680	* support/Util/SDCCerr.c,
38681	* src/SDCCast.c (decorateType, sizeofOp): complain when sizeof is used
38682	with an incomplete type (fixed bug #883734)
38683	* src/SDCCicode.c (geniCodeCast): fixed bug #890510
38684
386852004-02-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38686
38687	* src/pic16/gen.c (genCmpEq, shiftRLong): fixed declarations
38688
386892004-02-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38690
38691	* src/SDCCast.c (decorateType),
38692	* src/SDCCicode.c (geniCodeParms, geniCodeCall): fixed bugs in my ANSI
38693	function pointer implementation
38694	* support/regression/tests/funptrs.c: added tests to verify both forms
38695	of function pointers work correctly. Added tests to verify parameters
38696	are passed in the correct order.
38697
386982004-02-06  Vangelis Rokas <vrokas AT otenet.gr>
38699
38700	* device.c (regCompare): registers are sorted by ascending
38701	address and increasing size,
38702	* main.c (_pic16_finaliseOptions): removed the declaration
38703	of compiler macro MCU. Now a macro of the format pic18fxxxx
38704	will be defined from the command line
38705
387062004-02-06  Hans-Juergen Dorn <hans.dorn AT apl-landau.de>
38707	    patch committed by Vangelis Rokas <vrokas AT otenet.gr>
38708
38709	* pcode.c (pic16initMnemonics): fixed typo in assignment to PCOP_RLNCF
38710	PCOP_RLCF was overwritten!
38711	* gen.c (genSkip): commented out calls to pic16_emitcode,
38712	* (genCmpEQ): fixed "long" compares, only high word did get compared,
38713	* (genlshTwo),
38714	* (genRRC): added debugging info,
38715	* (shiftL2Left2Result): Fixed bug, if offr > offl. Result got
38716	overwritten while shifting,
38717	* (shiftR2Left2Result): Fixed bug, if offr < offl. Result got
38718	overwritten while shifting,
38719	* (AccLsh),
38720	* (AccRsh),
38721	* (shiftLLeftOrResult),
38722	* (shiftRLeftOrResult),
38723	* (shiftRLong),
38724	* (shiftLLong): Implemented with pic16_emitpcode
38725	* (genlshFour): Replaced pic16_aopPut with pic16_emitpcode,
38726	* (genLeftShift): Fixed bug, operand for shift by variable always
38727	was "and"ed with 0x0f,
38728	* (genLeftShiftLiteral),
38729	* (genrshTwo),
38730	* (genRightShiftLiteral): added debugging info,
38731	* (genrshFour): added comment,
38732	* (genRightShift): determined signedness from operand "left"
38733	instead of "result"
38734
387352004-02-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38736
38737	* src/SDCCicode.c (geniCodeParms),
38738	* src/SDCCast.c (decorateType, processParms): support for ANSI-style
38739	function pointers, fixed function pointer bugs #861242 and #861896
38740
387412004-01-31 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
38742
38743	* device/include/c8051f000.h,
38744	* device/include/c8051f120.h,
38745	* device/include/c8051f300.h: added header files for Silicon
38746	Laboratories (formerly Cygnal) CPUs. Contributed by Maarten Brock.
38747
387482004-01-31 Bernhard Held <bernhard AT bernhardheld.de>
38749
38750	* src/SDCCast.c (processParams): added new type flow and restructured
38751	(gatherAutoInit): added new type flow
38752	(addCast): cosmetic changes
38753	(getLeftResultType): added new type flow for array indices, patch
38754	provided by Stas, see FR #877103
38755	(decorateType): SDCC_NEWTYPEFLOW removed, new type flow is now standard;
38756	array index patch by Stas
38757	* src/SDCCast.h: added prototype getResultTypeFromType()
38758	* src/SDCCval.h,
38759	* src/SDCCval.c (resolveIvalSym) (resolveIvalSym),
38760	* src/pic/glue.c (pic14emitStaticSeg),
38761	* src/pic16/glue.c (pic16emitStaticSeg),
38762	* src/SDCCglue.c (emitRegularMap) (emitStaticSeg): added new type flow
38763	for initialization of symbols
38764	* src/SDCCicode.c (geniCodeArray): removed warning W_ARRAY_BOUND
38765	* support/Util/SDCCerr.h:
38766	* support/Util/SDCCerr.c: replaced W_ARRAY_BOUND by W_IDX_OUT_OF_BOUNDS
38767	* .version: bumped version number to 2.3.8
38768	* device/include/Makefile.in (install),
38769	* doc/Makefile (install): changed to 'rm `find ...`' construct to
38770	avoid warnings
38771
387722004-01-30 Bernhard Held <bernhard AT bernhardheld.de>
38773
38774	* support/regression/tests/libmullong.c: fixed for 64 bit hosts
38775	Slade Rich fixed an optimization bug
38776	* src/pic/pcodepeep.c,
38777	* src/pic/pcoderegs.c
38778	* doc/Makefile (install): added test for directory
38779
387802004-01-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38781
38782	* src/mcs51/ralloc.c (getRegPtr, getRegGpr),
38783	* src/ds390/ralloc.c (getRegPtr, getRegGpr),
38784	* src/pic/ralloc.c (getRegPtr, getRegGpr),
38785	* src/pic16/ralloc.c (getRegPtr, getRegGpr),
38786	* src/z80/ralloc.c (getRegGpr): fixed bug #883361
38787	* as/mcs51/asexpr.c (term),
38788	* as/hc08/asexpr.c (term): fixed bug #887146
38789
387902004-01-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38791
38792	* src/z80/gen.c (genMult): handle single byte result product
38793	* src/SDCCopt.c (killDeadCode): never convert ADDRESS_OF iCode to
38794	DUMMY_READ_VOLATILE (fixed bug #886367)
38795
387962004-01-27 Bernhard Held <bernhard AT bernhardheld.de>
38797
38798	* support/regression/tests/libmullong.c: fixed logic, on little endian
38799	hosts we ended without a mullong_wrapper()
38800
388012004-01-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38802
38803	* ChangeLog: changed "@" to " AT " in hopes of reducing spam and
38804	virus/worm forged address usage.
38805
388062004-01-27 Bernhard Held <bernhard AT bernhardheld.de>
38807
38808	Fixed promotion, it should be done on AST level:
38809	* src/SDCCast.c (addCast): added promotion to int
38810	(decorateType): updated call to upCast()
38811	* src/SDCCicode.c (geniCodeLeftShift): removed call to
38812	usualUnaryConversions()
38813
388142004-01-26  Michael Hope  <michaelh AT juju.net.nz>
38815
38816	* support/regression/tests/literalop.c (mulWrapper): Added a
38817	wrapper to remove integer overflow warnings.
38818
38819	* support/regression/tests/float_trans.c: Made work on host.
38820
38821	* support/regression/ports/ucz80/spec.mk (UCZ80): Made detect the
38822	location of sz80.
38823
38824	* support/regression/generate-cases.py (main): Changed from inline
38825	to a main method.
38826
38827	* doc/Makefile (install): Changed to depth first to get rid of
38828	missing directory install warning.
38829
38830	* as/Makefile (install-doc): Made work on Mac.
38831
388322004-01-25 Bernhard Held <bernhard AT bernhardheld.de>
38833
38834	* src/SDCCast.c: added an additional type flow in decorateType() of
38835	opposite direction, see feature request #860006; it's enabled at runtime
38836	by setting the environment variable SDCC_NEWTYPEFLOW
38837	* src/SDCCast.h: changed prototype of decorateType()
38838	* src/SDCCglue.c (emitRegularMap): updated call of decorateType()
38839	* src/SDCCicode.c (geniCodeDivision) (geniCodeModulus): promotion from
38840	'char' to 'int' can be omitted, if both operands are 'unsigned char';
38841	see feature request #877103
38842	* src/SDCCval.c: updated call of decorateType()
38843	(valBitwise): fixed bug #882876
38844	(valMinus): added promotion
38845	(valLogicAndOr): result is unsigned
38846	(cheapestVal) (constVal): literals from 0...255 are 'unsigned char' now
38847	* src/SDCCsymt.c (computeType),
38848	* src/mcs51/gen.c (genCmpGt) (genCmpLt): literal 'unsigned char'
38849	must not cause an unsigned operation
38850	* src/pic/glue (pic14emitRegularMap),
38851	* src/pic16/glue.c (pic16emitRegularMap): updated call of decorateType()
38852
388532004-01-23 Bernhard Held <bernhard AT bernhardheld.de>
38854
38855	* src/pic/pcode.c (PCodeID): commented out left over debug code
38856
388572004-01-20 Bernhard Held <bernhard AT bernhardheld.de>
38858
38859	* support/valdiag/tests/overflow.c: added shift tests
38860	* src/pic/device.c,
38861	* src/pic/gen.c,
38862	* src/pic/gen.h,
38863	* src/pic/glue.c,
38864	* src/pic/main.c,
38865	* src/pic/pcode.c,
38866	* src/pic/pcode.h,
38867	* src/pic/pcodepeep.c,
38868	* src/pic/pcoderegs.c,
38869	* src/pic/ralloc.c,
38870	* src/pic/ralloc.h: applied patch from Slade Rich;
38871	added support for multiple code pages and multiple RAM banks on the
38872	PIC 14 port. The ASM files now no longer simply assume all the
38873	code / RAM are in the same page / bank. This means the linker can
38874	safely allocate code/RAM of separate ASM files to different pages/banks.
38875	* doc/sdccman.lyx: added Slade's tips
38876	* src/mcs51/peeph.def: fixed bug #880768
38877
388782004-01-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38879
38880	* src/hc08/ralloc.c (rematStr): fixed bug #879282
38881	* src/SDCCast.c (decorateType): fixed bug #880197
38882
388832004-01-20  Michael Hope  <michaelh AT juju.net.nz>
38884
38885	* sim/ucsim/gui.src/serio.src/main.cc: Fixed unconditional use of
38886	getopt.h.
38887
38888	* debugger/mcs51/cmd.c (getValBasic): Changed strtof to strtod as
38889	strtof is not part of C89 and isn't included with Mac OS X.
38890
388912004-01-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38892
38893	* src/hc08/gen.c (genPlusIncr, genUminus, genMinusDec, genCmp,
38894	shiftL2Left2Result): fixed bug #879326
38895	(genAnd, genOr, genXor): fixed bug when result was of type AOP_CRY
38896	(genMultOneByte): fixed bug in signed vs unsigned multiplication
38897	* sim/ucsim/hc08.src/inst.cc (inst_clr): added missing effective
38898	address fetch for clr instruction
38899	* device/lib/hc08/_mulint.c: created optimized assembly version
38900	* src/SDCCdflow.c (computeDataFlow): fixed bug #878209
38901
389022004-01-19 Bernhard Held <bernhard AT bernhardheld.de>
38903
38904	* src/SDCCicode.c (geniCodeArray): applied patch from Stas Sergeev
38905	proposed in FR #877103
38906
389072004-01-18 Bernhard Held <bernhard AT bernhardheld.de>
38908
38909	* src/SDCCval.c (cheapestVal): added missing checks
38910	* src/SDCCicode.c (usualBinaryConversions): fixed condition
38911	* src/SDCCicode.c (geniCodeAdd): fixed part of bug #877103
38912
389132004-01-16 Klaus Flittner <klaus_flittner AT gmx.de>
38914
38915	* src/ds390/gen.c (aopOp3): fixed the assignment of different dptrs to
38916	equal operands
38917
389182004-01-16 Vangelis Rokas <vrokas AT otenet.gr>
38919
38920	* src/SDCCmain.c (linkEdit): variable $3 of the linker command is
38921	loaded with the linker search paths (-L arguments) and the libraries
38922	to be linked with the current source (-l arguments). Changes
38923	currently will affect only the pic16 port.
38924	* src/pic16/main.c (_pic16_finaliseOptions): add to the linker
38925	include path the port specific paths and port specific libraries,
38926	* gplink command now contains the $3 argument,
38927	* src/pic16/device.h,
38928	* src/pic16/device.c,: structure PIC_device is made public and
38929	renamed to PIC16_device, the same for variable Pics which is renamed
38930	to Pics16. Updated all references to them.
38931	* src/pic16/glue.c (pic16glue): corrected bug with code
38932	initialization which bypassed the variable initializations block.
38933
38934	* device/lib/pic16/Makefile.rules: removed --penable-stack from
38935	COMPILE_FLAGS and added the --nostdinc option
38936
389372004-01-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38938
38939	* device/include/mc68hc908jb8.h: Register defs for another member
38940	of the hc08 family. Contributed by Bjorn Bringert - thanks!
38941
389422004-01-14 Vangelis Rokas <vrokas AT otenet.gr>
38943
38944	Documenting changes from previous commits.
38945	* configure.in (version 1.56),
38946	* configure: initially I've added AC_CONFIG_SUBDIRS(device/lib/pic16)
38947	when generating output files to configure the pic16 library,
38948	but now I've commented it out, since gputils aren't installed in the
38949	SF compile farm, so library won't compile
38950
38951	* device/lib/Makefile.in (version 1.56): initially I've added in
38952	target 'all' the prerequestive 'model-pic16' so it compiled the
38953	pic16 library, but now I've commented it out for the same reasons
38954	above,
38955	* added targets 'model-pic16' and 'objects-pic16' to compile the
38956	library
38957	* added target 'port-specific-objects-pic16' to handle the
38958	generated libraries and copy them into the build/ directory
38959	* added target 'clean-intermediate-pic16' to clean intermediate
38960	files into pic16 directory
38961	* in target 'installdirs' added line to create directory pic16 in
38962	the installation path
38963
38964	* device/include/Makefile.in (version 1.11): in target 'install'
38965	added lines to copy all header files to installation path,
38966	* in target 'installdirs' added line create directory for pic16
38967	headers in the installation path
38968
389692004-01-13 Klaus Flittner <klaus_flittner AT gmx.de>
38970
38971	* src/ds390/gen.c (genCall): fixed a double use of acc and b after
38972	 a function call
38973
389742004-01-13 Bernhard Held <bernhard AT bernhardheld.de>
38975
38976	* configure,
38977	* device/lib/configure.in,
38978	* device/lib/configure: fixed for autoconf 2.57
38979
389802004-01-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38981
38982	* src/z80/main.c (_parseOptions): fixed the portmode= command line
38983	option so that it actually works. Made it specific to the z80, since
38984	the gbz80 doesn't have these kinds of I/O ports.
38985
389862004-01-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
38987
38988	* device/include/z180.h,
38989	* device/lib/_memcpy.c,
38990	* device/lib/_memmove.c,
38991	* device/lib/_mulint.c,
38992	* device/lib/ser_ir.c,
38993	* device/lib/ser_ir_cts_rts.c,
38994	* device/lib/_strcmp.c,
38995	* device/lib/_strtok.c: fixed pragmas to non-deprecated form
38996	* src/z80/main.c (_process_pragma): add support for pragmas bank and
38997	portmode; added deprecation warning for bank= and protmode= forms.
38998	Also, guard against buffer overflow.
38999	* src/z80/gen.c (aopGet): generate better code for sfr banked read
39000
390012004-01-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39002
39003	* src/hc08/main.c (_hc08_genAssemblerPreamble): fixed bug #875487. Also
39004	changed interrupt vector table generation to only emit declared vectors.
39005	* device/include/Makefile.in: added missing backslash
39006	* device/lib/pic16/Makefile.rules: add $(MODELFLAGS) to $(CFLAGS)
39007
390082004-01-13 Vangelis Rokas <vrokas AT otenet.gr>
39009
39010	Mainly changes to support compilation of the device libraries
39011	* src/pic16/device.c: stack is allocated via symbol and not
39012	via literal number. The symbol is placed in the corresponding
39013	position of the data ram
39014	* (pic16_dump_section): relocatable and absolute uninitialized
39015	data are now emitted in sorted order to reduce section naming,
39016	* src/pic16/ralloc.c (newReg): fixed bug with SFR's that
39017	weren't marked as being in the access bank,
39018
390192004-01-13 Vangelis Rokas <vrokas AT otenet.gr>
39020
39021	Added portion of GNU PIC Library under the directory
39022	device/include/pic16 and device/lib/pic16. These files
39023	contain the declarations of SFRs for the PIC18Fxx2 devices.
39024	The directory is initialized via configure from toplevel.
39025
390262004-01-12 Klaus Flittner <klaus_flittner AT gmx.de>
39027
39028	* src/ds390/gen.c (operandsEqu): fixed a little typo, that prevented
39029	the spilllocations to be compared correctly
39030
390312004-01-12 Bernhard Held <bernhard AT bernhardheld.de>
39032
39033	* src/SDCCast.c (decorateType): fixed bug introduced today
39034
390352004-01-12  Borut Razem <borut.razem AT siol.net>
39036
39037	* src/SDCC.lex, support/Util/SDCCerr.h, support/Util/SDCCerr.c,
39038	doc/sdccman.lyx: upper case pragmas are deprecated
39039
390402004-01-12 Bernhard Held <bernhard AT bernhardheld.de>
39041
39042	* src/SDCCast.c (decorateType): replacing 'ul > 0' by  '!ul' results
39043	in simpler and even better code
39044
390452004-01-11 Bernhard Held <bernhard AT bernhardheld.de>
39046
39047	* src/SDCCicode.c (operandOperation): fixed bug #874819
39048	* src/SDCCast.c (decorateType): fixed
39049	char foo (unsigned long ul) { return ul > 0; }
39050
390512004-01-11 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39052
39053	* doc/sdccman.lyx: Moved and added some sections, small changes
39054	all over. Telling LaTeX to be less strict with word spacing
39055	to better keep the right margin. Changed some notes about
39056	maintainance of the ports in section 3.2.1 - is it OK like this?
39057
390582004-01-11 Vangelis Rokas <vrokas AT otenet.gr>
39059
39060	SDCC source changes:
39061	* src/SDCCopt.c (cntToFcall, cnvToFloatCast, cnvFromFloatCast,
39062	convilong): modified to inform the pic16 port that builtin functions
39063	are external
39064
39065	PIC16 PORT specific changes:
39066	* src/pic16/device.c pic16_dump_equates() added,
39067	processor registers declared internally by the port are emitted in
39068	the translation as equates,
39069	* src/pic16/gen.c: inline code is passed unprocessed to the
39070	translation,
39071	* (pic16_popGetLit2): fnuction modified to take second operand as
39072	pCodeOp pointer and not as literal,
39073	* (popRegFromIdx): prefixed with pic16_,
39074	* (pic16_popCombine2): modified to receive already allocated pCode
39075	operands,
39076	* (pic16_pushpCodeOpReg, pic16_poppCodeOpReg): added
39077	* (genFunction): initializes local stack frame and pushes on stack
39078	all the registers used by this function,
39079	* (genEndFunction): restores all registers from stack and restores
39080	stack frame,
39081	* src/pic16/glue.c (pic16emitRegularMap): various changes and
39082	improvements,
39083	* (pic16glue): changed the program startup sequence,
39084	* added new dbName code 'A' for functions placed in absolute section
39085	* src/pic16/main.c: added function attribute _naked,
39086	* added pragma 'code' to place a fnuction at an absolute address,
39087	* added command line arguments --debug-ralloc and --pcode-verbose,
39088	* (_pic16_finiliseOptions): options.all_callee_saves is set by default
39089	* src/pic16/pcode.c (pic16_pBlockConvert2Absolute) added,
39090	* (pic16_newpCodeOpLit2): modified to take the second operand as
39091	pCodeOp pointer,
39092	* (pic16_printpBlock): modified to emit each function in a separate
39093	section,
39094	* (pic16_get_op): modified to use the gpasm modifiers LOW,HIGH and
39095	UPPER for immediate operands,
39096	* src/pic16/pcodepeeph.c: added peephole support for the LFSR
39097	instruction,
39098	* src/pic16/peeph.def: all peepholes with movff are commented out,
39099	because there is a problem in the pcode peep optimizer,
39100	* src/pic16/ralloc.c: the register allocator can now reuse local
39101	function symbols for another function. This saves register usage.
39102	* src/pic16/ralloc.h: added flag isLocal in structure regs,
39103
39104	Added file src/pic16/NOTES with information about program writing on
39105	the current port version.
39106
391072004-01-11 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39108
39109	* src/mcs51/peephole.def: added peepholes 177.c,d (redundant moves)
39110	and peephole 252 (array access)
39111
391122004-01-09  Borut Razem <borut.razem AT siol.net>
39113
39114	* src/SDCCmain.c : fixed #872250: -l command line defined library
39115	  files are scanned before standard library files
39116
391172004-01-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39118
39119	* src/SDCCast.c (decorateType): fixed bug #874046
39120
391212004-01-09  Borut Razem <borut.razem AT siol.net>
39122
39123	* support/scripts/sdcc.nsi: remove previous installation
39124
391252004-01-09 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39126
39127	* src/SDCCglue.c (createInterruptVect): don't append 7(5) padding
39128	bytes for last interrupt vector (mcs51)
39129	* sdcc.spec: fixed typo
39130
391312004-01-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39132
39133	* src/mcs51/gen.c (genFunction, genEndFunction, genReceive, getTempRegs,
39134	gen51Code): more efficient parameter receive for --model-large
39135	("bug" #845294)
39136
391372004-01-09 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39138
39139	* src/ds390/main.c,
39140	* src/z80/main.c: added missed needLinkerScript flags (more than
39141	one port structure defined in these file)
39142	* src/ds390/gen.c (aopForSym, aopOp, operandsEqu, aopOp3): fixed
39143	bug #795325
39144
391452004-01-08 Vangelis Rokas <vrokas AT otenet.gr>
39146
39147	* src/SDCCmain.c: removed various references to DEFAULT_PORT
39148	* src/port.h: added flag needLinkerScript in port->linker
39149	structure to inform whether to create a .lnk file or not,
39150	* src/avr/main.c,
39151	* src/ds390/main.c,
39152	* src/hc08/main.c,
39153	* src/mcs51/main.c,
39154	* src/pic/main.c,
39155	* src/pic16/main.c,
39156	* src/xa51/main.c,
39157	* src/z80/main.c: changed appropriately to configure
39158	needLinkerScript flag
39159	* src/pic/gen.c,
39160	* src/pic16/gen.c (genAddrOf): fixed bug #863624
39161	* src/pic/glue.c: added variable udata_section_name to
39162	override default uninitialized data segment definition for
39163	devices only with SHAREBANK memory (reported from Erik Epetrich)
39164	* (pic14emitOverlay): modified to emit a commented overlay segment
39165	directive when no overlay data exist
39166	* (picglue): modified to emit uninitialized data segment
39167	according to udata_section_name
39168	* src/pic/main.c (_pic14_parseOptions): added command line
39169	options --udata-section-name=[name] to override default
39170	udata definition name
39171	* modified _linkCmd and _asmCmd to include compiler passed
39172	arguments via -W option
39173	* src/pic16/main.c: added $l in _asmCmd, changed extension for
39174	object file from '.rel' to '.o' in port->linker structure,
39175	changed size of fptr from 2 to 3 in port structure
39176
391772004-01-07  Borut Razem <borut.razem AT siol.net>
39178
39179	* support/scripts/sdcc.nsi: update PATH
39180	* support/scripts/sdcc.ico: craeted
39181
391822004-01-07 Bernhard Held <bernhard AT bernhardheld.de>
39183
39184	* device/include/Makefile.in: fix install
39185	* doc/Makefile: fix install
39186
391872004-01-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39188
39189	* src/SDCCsymt.c (processFuncArgs): fixed superflous allocation noted
39190	in bug #860505
39191	* src/SDCCmem.c (printAllocInfoSeg, printAllocInfo): minor changes to
39192	how the function variable allocation summary is displayed; also
39193	include information about variables allocated to the overlay
39194	segment
39195
391962004-01-06  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
39197
39198	* as/mcs51/lkmain.c: Help about -Y option
39199	* as/mcs51/lkarea.c: Fixed gcc warnings
39200
392012004-01-06 Bernhard Held <bernhard AT bernhardheld.de>
39202
39203	* src/SDCCval.c (valShift): changed from 16 to 32 bit shift count,
39204	fixed warning
39205	* support/valdiag/tests/overflow.c: added
39206	* src/SDCCast.c (decorateType),
39207	* src/SDCCicode.c (geniCodeLeftShift): added promotion to int for
39208	LEFT_OP (left shift)
39209
392102004-01-06  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
39211
39212	* as/mcs51/lkmain.c: stack must be after data when option -Y is not used
39213	(default behaviour).
39214
392152004-01-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39216
39217	A python script to validate compiler diagnostic messages. It can be
39218	used to verify that sdcc complains about bad c source code and
39219	gives a good location of the error.
39220	* support/valdiag/Makefile,
39221	* support/valdiag/valdiag.py,
39222	* support/valdiag/tests/*
39223
392242004-01-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39225
39226	* src/SDCC.y (enum_specifier, enumerator_list, opt_assign_expr),
39227	* src/SDCCsymt.c (newEnumType),
39228	* src/SDCCsymt.h
39229	* support/Util/SDCCerr.c,
39230	* support/Util/SDCCerr.h: fixed bug #871258 and some other unreported
39231	enum related bugs.
39232	* support/regression/tests/enum.c: added test for enum values that
39233	require at least 2 bytes of storage.
39234
392352004-01-06 Vangelis Rokas <vrokas AT otenet.gr>
39236
39237	* src/common.h: added ifndef/define/endif macros
39238	around the header file.
39239	Bug reported from Jesus Calvino-Fraga
39240
392412004-01-06 Bernhard Held <bernhard AT bernhardheld.de>
39242
39243	* sdcc.spec: updated
39244	* device/include/Makefile.in: don't install CVS directories
39245	* device/lib/Makefile.in: added removal of CVS directories after install
39246	* doc/Makefile: fixed install, added local_icons
39247	* sim/ucsim/gui.src/Makefile.in: fixed an old typo
39248	* src/mcs51/gen.c (genRightShift): fixed bug #870788
39249	* src/ds390/gen.c (genRightShift): fixed bug #870788
39250	* src/SDCCast.c (decorateType): fixed bug #870781
39251
392522004-01-06 Vangelis Rokas <vrokas AT otenet.gr>
39253
39254	PIC16 port related changes:
39255	* device.c: removed pic16_finalMapping and pic16_finalMappingSize,
39256	added variable stackPos,
39257
39258	* gen.c: genCall, assignResultValue: added support for
39259	pushing/retrieving function parameters to/from stack,
39260	genFunction,genEndFunction: setup stack frame for the
39261	generated function,
39262	genAddrOf: will be changed according to bug 863624
39263
39264	* added files genutils.c and genutils.h which contain gen*
39265	debugged and optimised functions extracted from gen.c
39266
39267	* glue.c: added variable 'externs' which holds extern symbols,
39268	pic16emitRegularMap: is modified to properly handle relocatable
39269	 symbols under the new scheme,
39270	pic16createInterruptVect: is modified
39271	pic16printPublics: is modified to emit 'global'	assembler directives,
39272	added pic16_printExterns to print extern symbols,
39273	pic16glue: initializes stack/frame pointer in the beginning of
39274	the assembly output. Temporary hack, will be corrected later,
39275	because gplink yet does not support stack and SDCC does not
39276	yet support a type of crt0.o object to create the final binary.
39277
39278	* Removed many lines that contain 8051 legacy code.
39279	* The code is finally placed under a 'code' directive.
39280	* Added port specific options.
39281
39282	* _process_pragma: simplified since now we do not need *special*
39283	include file to define SFR registers. But a separate header
39284	will be needed. This will be developed later.
39285	* _pic16_parseOptions: added, parses port specific options:
39286	--pgen-banksel,	--obanksel=, --pomit-config-words, --pomit-ivt,
39287	--pleave-reset-vector, --penable-stack, --pstack-model, --debug-xtra
39288	--preplace-udata-with=
39289
39290	* _pic16_setDefaultOptions: modified to initialize section names,
39291	but hack is temporarly out of order since it needs improvement.
39292	* _pic16_genAssemblerPreamble: configuration words are emitted by
39293	their address instead of their name. This part is incomplete and
39294	supports only the 18Fxx2 devices. Other devices will emit an error
39295	during assembly since they do not contain the same set of config
39296	registers
39297	* _pic16_genIVT: is modified,
39298
39299	* pcode.c: added definitions for some hardware registers that are needed
39300	for stack support
39301	* added flag is2LitOp and variable pci_magic in pCodeInstruction.
39302	All PCI entries are updated. Now LFSR is supported.
39303	* Removed pic16_pciTRIS is mentioned by mdubuc in source
39304	* added pic16_newpCodeOpLit2 to support instructions with
39305	two literal arguments
39306	* pic16_pCode2str: corrected code that emits assembler instructions
39307	with two literal operands and those that have an access bit modifier
39308	* genericPrint: now PC_ASMDIR pCodes, can emit a label if it exists,
39309	this fixes a bug which caused some labels to be lost, when an
39310	assembler directive was added, i.e. banksel,
39311	* pic16_FixRegisterBanking: improved logic that causes the insertion
39312	of bank switching,
39313	* InlineFunction: functions that are called once, are not any more
39314	inlined. This can be a port option in the future,
39315
39316	* pcode.h: added pCodeOpLit2 and added variable label in pCodeAsmDir
39317
39318	* ralloc.c: added pic16_rel_udata and pic16_fix_udata variables which
39319	hold the corresponding uninitialized symbols,
39320	* pic16_allocProcessorRegister: registers have explicit marked the
39321	accessBank field,
39322	* pic16_allocInternalRegister: registers are explicit marked as
39323	not used,
39324	* pic16_writeUsedRegs: pic16_dynDirectBitRegs was missing from the
39325	processing list, so bit registers were lost,
39326	*
39327
39328	* ralloc.h: added field 'accessBank' and original symbol operand
39329	in register definition,
39330	* removed the field isMapped from register definition,
39331
39332	** Several functions have been removed from various sources:
39333	BanksUsedFlow2,BanksUsedFlow,FixBankFlow,InstructionRegBank,
39334	pic16_addMemRange,pic16_isREGinBank,pic16_dump_map,pic16_dump_cblock
39335	isSFR,validAddress,mapRegister,assignRegister,pic16_assignFixedRegisters
39336	pic16_assignRelocatableRegisters
39337
39338	** others have been introduced:
39339	pic16_areRegsSame,pic16_dump_section,checkAddReg,pic16_groupRegistersInSection
39340	pic16_popGetLit2,pic16_popCombine2,pushw,pushaop
39341
393422004-01-05 Vangelis Rokas <vrokas AT otenet.gr>
39343
39344	* support/scripts/inc2h.pl: changed definition of BIT_AT
39345	to emit 'sbit at' instead of 'bit at'. This was a request.
39346
39347	PIC16 port related preliminary changes:
39348	* gen.c: prefixed function popRegFromString with
39349	pic16_ and all references to it corrected
39350	* pcode.c: all pic16_pc_* hardware registers prefixed
39351	with underscore (_),
39352	pic16_popCopyGPR2Bit(): function sets register wasUsed=1
39353	* ralloc.c: newReg(): when register is REG_SFR then
39354	set address to rIdx,
39355	pic16_allocProcessorRegister(): marks register wasUsed=0
39356	pic16_writeUsedRegs(): added a call to assign processor
39357	registers via pic16_assignFixedRegisters
39358
393592004-01-04  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
39360
39361	* as/mcs51/aslink.h, as/mcs51/lkarea.c, as/mcs51/lkdata.c,
39362	as/mcs51/lkmain.c, as/mcs51/lkmem.c: 8051 linker can now pack
39363	variables in unused register banks.  Also the SSEG is placed
39364	wherever there is enough space for it, and IDATA can be anywhere
39365	in internal RAM.  For now compile using	-Wl-Y[stack_size].
39366	The mem file is different for this option as well, since it
39367	makes no sense of talking about DSEG length.
39368
393692004-01-02 Vangelis Rokas <vrokas AT otenet.gr>
39370
39371	* src/SDCClrange.c: fixed bug 869095 that caused segfault
39372	in certain cases, e.g. when ROM assignment, patch provided
39373	from Albert den Haan.
39374
393752004-01-01 Bernhard Held <bernhard AT bernhardheld.de>
39376
39377	Many signedness and type propagation fixes:
39378	* src/SDCCicode.c: made geniCodeCast() static
39379	replaced SPEC_ by IS_ (cosmetic)
39380	(operandOperation): fixed div and mod operation
39381	(usualBinaryConversions): added support for promotion of char
39382	(geniCodeMultiply): replaced (unsigned long) by (TYPE_UDWORD)
39383	(geniCodeDivision): replaced (unsigned long) by (TYPE_UDWORD)
39384	(geniCodeAdd): an array index will stay unsigned, even if promoted
39385	from char to int
39386	(geniCodeArray): ditto
39387	* src/SDCCicode.h: made geniCodeCast() static: removed prototype
39388	* src/SDCCsymt.c (computeType): added more support for char;
39389	promotion of char is selectable by promoteCharToInt, fixed signedness
39390	for all cases
39391	(powof2): replaced (unsigned long) by (TYPE_UDWORD)
39392	* src/SDCCsymt.h (powof2): replaced (unsigned long) by (TYPE_UDWORD)
39393	* src/SDCCval (val*): replaced signedness calculation by
39394	computeType()
39395	rearranged if-branches (cosmetic)
39396	(valShift): added warning W_SHIFT_CHANGED
39397	(valCompare): fixed problem with different types
39398	* src/hc08/rallo.c (leastUsedLR): fixed gcc 3.3 warning
39399	* support/regression/tests/literalop.c: added many cases
39400	* support/regression/tests/ast_constant_folding.c: changed finally to
39401	'unsigned int'
39402	* .version: new year, new version: 2.3.7
39403	* src/SDCCmain.c (main): applied patch #866468
39404	* debugger/mcs51/sdcdb.c (parseCmdLine): added -k for ucsim, patch
39405	provided by Scott Bronson
39406	* doc/sdccman.lyx: updated documentation for sdcdb
39407	updated and added chapter tips
39408
394092004-01-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39410
39411	* src/SDCCsymt.h: missing from yesterday's commits
39412
394132003-12-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39414
39415	* src/SDCC.y (struct_or_union_specifier),
39416	* support/Util/SDCCerr.c,
39417	* support/Util/SDCCerr.h: verify that struct & union tags are used
39418	as declared.
39419
394202003-12-29 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39421
39422	* src/SDCCglobl.h: missing from yesterday's commits
39423
394242003-12-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39425
39426	* src/SDCC.y (external_definition, type_specifier2, sfr_reg_bit,
39427	sft_attributes, struct_declaration, parameter_declaration,
39428	type_name, start_block, declaration_list),
39429	* src/SDCC.lex (check_type): support redefinition of typedef names
39430
394312003-12-22 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39432
39433	* src/mcs51/gen.c (genPlus): added special handling for 256 byte
39434	aligned xdata arrays. Erik helped me with the if clause.
39435
394362003-12-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39437
39438	* device/lib/ds390/tinibios.c (CpuSpeed): suppress unreachable code
39439	warning
39440
394412003-12-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39442
39443	* src/SDCCast.h,
39444	* src/SDCCast.c (newAst_),
39445	* src/SDCCicode.h,
39446	* src/SDCCicode.c (ast2iCode, newiCode),
39447	* src/SDCCglobl.h,
39448	* src/SDCC.y (logical_and_expr, logical_or_expr, conditional_expr,
39449	expr, statement, expression_statement, selection_statement,
39450	iteration_statement, expr_opt, jump_statement): foundation for tracking
39451	sequence points
39452	* src/SDCCopt.c (killDeadCode): fixed bug #861580 (needs the sequence
39453	point code too)
39454
394552003-12-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39456
39457	* support/Util/SDCCerr.c,
39458	* src/SDCCast.h,
39459	* src/SDCCast.c (createCase, createDefault, decorateType),
39460	* src/SDCClabel.c (labelUnreach),
39461	* src/SDCC.y (labeled_statement, jump_statement): More improvements
39462	to error messages.
39463	* support/Util/SDCCerr.c (werrorfl): fixed a non-standard declaration
39464	(with thanks to Stas Sergeev)
39465	* device/include/time.h,
39466	* device/lib/time.c (CheckTime): suppress unreachable code warning
39467
394682003-12-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39469
39470	* src/SDCCast.c (createIvalCharPtr),
39471	* src/SDCCglue.c (printChar): fixed bug #862241 (an error in my fix for
39472	bug #753752)
39473	* support/regression/tests/nullstring.c: tests for these two bugs
39474
394752003-12-18 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39476
39477	* support/Util/SDCCerr.h,
39478	* support/Util/SDCCerr.c (E_NOT_ALLOWED),
39479	* src/SDCC.y (struct_declaration, struct_or_union_specifier): complain
39480	about storage class and 'at' used inside struct or union
39481	* src/SDCCBBlock.c (iCodeFromeBBlock),
39482	* src/SDCCcse.c (ifxOptimize),
39483	* src/SDCCglue.c (emitRegularMap, initPointer, printIvalStruct,
39484	printIvalArray, printiValFuncPtr, printIvalCharPtr, printIvalPtr,
39485	printIval, emitStaticSeg, emitOverlay),
39486	* src/SDCClabel.c (deleteIfx),
39487	* src/SDCCopt.c (replaceRegEqv, eBBlockFromiCode),
39488	* src/SDCCast.c (resolveSymbols, createIvalStruct, createIvalArray,
39489	gatherAutoInit, processParms),
39490	* support/Util/SDCCerr.h,
39491	* support/Util/SDCCerr.c (werrorfl): Support for better error location
39492	reporting for post-parse errors.
39493
394942003-12-16 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39495
39496	* src/SDCCval.c (valPlus, valMinus, valShift): fixed some problems with
39497	implicit casts via union; they don't work on big endian systems
39498	(possible fix for bug #861138)
39499
395002003-12-16 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39501
39502	(committed by Erik Petrich <epetrich AT ivorytower.norman.ok.us> on Frieder's behalf)
39503	* src/mcs51/main.c: fixed the fix for bug #737001
39504
395052003-12-15  Borut Razem <borut.razem AT siol.net>
39506
39507	* support/scripts/sdcc.nsi: updated for NSIS 2.0 beta 4
39508
395092003-12-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39510
39511	* support/makebin/makebin.c: put output in binary mode
39512
395132003-12-13 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39514
39515	* src/mcs51/main.c: fixed bug #737001 for the mcs51. SDCC clears
39516	xdata and data memory on startup. Set the environment variable
39517	SDCC_NOGENRAMCLEAR to disable this.
39518	* src/mcs51/peephole.def,
39519	* src/ds390/peephole.def: using the atomic test and clear instruction jbc
39520	(allows non-interrupt and interrupt code to safely compete for a resource
39521	without the non-interrupt code having to disable interrupts)
39522
395232003-12-13 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39524
39525	* src/SDCCicode.c (geniCodeAdd),
39526	* src/SDCCast.c (decorateType): fixed bug #857753 (need to be careful
39527	with valFromType if type might be a pointer and host is big endian).
39528	* src/SDCCast.c (decorateType): unary plus compatible with all arithmetic
39529	types, not just integer types.
39530	* src/SDCCsymt.c (addSymChain): clarified error message when symbol is
39531	multiply defined with mismatching "at" address.
39532
395332003-12-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39534
39535	* src/ds390/main.c (PORT tininative_port): fixed bug #858416
39536	* src/SDCCglue.c (printChar, printIvalChar, emitStaticSeg),
39537	* src/SDCCast.c (createIvalCharPtr, stringToSymbol): handle strings
39538	with embedded nulls (fixed bug #753752)
39539
395402003-12-12 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39541
39542	* src/mcs51/main.c(_mcs51_genRAMCLEAR): using r0 instead of r1/r2.
39543	Apparently this did not see much testing (endless loop)
39544
395452003-12-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39546
39547	* src/z80/ralloc.c: set DISABLE_PACK_HL = 1 as a temporary fix to bug #855165
39548
395492003-12-10 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39550
39551	* src/SDCCdebug.c (outputDebugSymbols, outputDebugStackSymbols, dumpSymInfo):
39552	gracefully handle NULL memmap pointers
39553
395542003-12-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39555
39556	* src/SDCCopt.c (killDeadCode): change iCode type to DUMMY_READ_VOLATILE
39557	instead of deleting the iCode when an operand is volatile
39558	* src/z80/gen.c (genDummyRead),
39559	* src/mcs51/gen.c (genDummyRead),
39560	* src/ds390/gen.c (genDummyRead),
39561	* src/hc08/gen.c (genDummyRead): handle operands in IC_LEFT and/or IC_RIGHT,
39562	not just IC_RIGHT
39563	* src/SDCCicode.c (geniCodeCall): fixed bug #851607
39564	* src/SDCC.y: fixed bug #850420
39565
395662003-12-05 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39567
39568	Applied z80 i/o port patch from Peter Townson and fixed some operators
39569	to better handle operands in A register.
39570	* device/include/z180.h
39571	* src/SDCC.y
39572	* src/SDCCglue.c
39573	* src/z80/gen.c
39574	* src/z80/gen.h
39575	* src/z80/main.c
39576	* src/z80/peeph-z80.def
39577	* src/z80/peeph.def
39578	* src/z80/z80.h
39579
395802003-12-03 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39581
39582	* src/SDCCsymt.c (addSymChain, compareTypeExact): fixed bug #838241 again
39583
395842003-12-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39585
39586	* device/lib/hc08/_mullong.c: Removed extra #endif
39587
395882003-12-01 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39589
39590	* sim/ucsim/hc08.src/inst.cc,
39591	* sim/ucsim/hc08.src/hc08mac.h: fixed some problems with CC flag bits and
39592	carries from x to h
39593	* src/hc08/gen.c (aopAdrStr): fixed problem with 16 bit immediate
39594	* src/hc08/gen.c (XAccRsh): fixed problem with right shift
39595	* device/include/stdarg.h: fixed varargs for hc08
39596	* device/lib/Makefile.in,
39597	* device/lib/hc08/Makefile,
39598	* device/lib/hc08/_mulint.c,
39599	* device/lib/hc08/_mullong.c: fixed some endian problems
39600
396012003-11-28 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39602
39603	* sdcc/src/mcs51/gen.c (genMultOneByte): help peephole 105
39604	* sdcc/src/mcs51/peeph.def: added peephole 186.e array access in code space
39605	* device/lib/_gptrget.c,
39606	* device/lib/_gptrput.c: P2 not used any more (related to #850747, #785979)
39607
396082003-11-27 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39609
39610	* src/SDCClrange.c (findNextUseSym, rlivePoint): fixed bug #849795
39611	* src/SDCCast.c (astErrors): fixed bug #846007
39612	* src/SDCCsymt.c (checkFunction): fixed follow-up bug on bug #846007
39613
396142003-11-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39615
39616	* src/SDCCast.c (decorateType): disabled a transformation I added in
39617	revision 1.188 (access to fields of a structure at an absolute address);
39618	it breaks with bitfields, extern declarations, and gcse analysis.
39619	* src/SDCCopt.c (isLocalWithoutDef): if ADDRESS_OF applied to a symbol, it
39620	could be assigned through a pointer, so don't complain.
39621	* src/SDCCast.c (astErrors),
39622	* src/SDCCast.h,
39623	* src/SDCCglue.c (emitRegularMap): fixed bug #847813
39624
396252003-11-26 Vangelis Rokas <vrokas AT otenet.gr>
39626
39627	* src/pic16/main.c (_pic16_genIVT): fixed interrupt vector table
39628	* src/pic16/main.c (_pic16_genAssemblerPreamble): re-enabled the
39629	output of __config directives, since gpasm now supports them
39630	* src/pic16/main.c (_pic16_finaliseOptions): define MCU
39631	pre-processor macro, i.e. -DMCU=p18f452
39632	* src/pic16/ralloc.c: renamed packRegisters to pic16_packRegisters,
39633	and modified to handle 'cast' icode similarly to '=' icode
39634	* src/pic16/device.h (typedef struct PIC_device): added field
39635	'extMIface' to indicate that chip has external memory interface
39636	* src/pic16/device.c: added chips 18F248, 18F258, 18F448, 18F458,
39637	18F6520, 18F6620, 18F6680, 18F6720, 18F8520, 18F8620, 18F8680,
39638	18F8720
39639
396402003-11-26 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39641
39642	* src/SDCC.y (pointer): fixed bug #846006
39643	* support/Util/SDCCerr.c: made W_PTR_TYPE_INVALID message clearer
39644	* src/SDCCast.c (decorateType): fixed bug #846009
39645	* src/ds390/peeph.def,
39646	* src/ds390/gen.c (genAnd, genOr),
39647	* src/mcs51/peeph.def,
39648	* src/mcs51/gen.c (genAnd, genOr): fixed bug #846777
39649
396502003-11-25 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39651
39652	Fixed several common-sub-expression bugs (#772861, #768380, & #755323)
39653	* src/SDCCdflow.c
39654	* src/SDCCcse.c
39655	* src/SDCCcse.h
39656	* src/SDCCBBlock.h
39657	* src/SDCCBBlock.c
39658
396592003-11-23 Klaus Flittner <klaus_flittner AT gmx.de>
39660
39661	fixed bug #845089
39662	* src/SDCCbitv.h,
39663	* src/SDCCbitv.c: added function to free a bitvector
39664	* src/SDCClrange.h,
39665	* src/SDCClrange.c: added function to recompute the liveranges
39666	* src/avr/ralloc.c,
39667	* src/ds390/ralloc.c,
39668	* src/hc08/ralloc.c,
39669	* src/mcs51/ralloc.c,
39670	* src/pic/ralloc.c,
39671	* src/pic16/ralloc.c,
39672	* src/xa51/ralloc.c,
39673	* src/z80/ralloc.c: recompute the liveranges after register packing
39674
396752003-11-21 Klaus Flittner <klaus_flittner AT gmx.de>
39676
39677	* src/SDCCloop.c (newInduction): fixed bug #845630
39678
396792003-11-21 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39680
39681	* src/SDCCsymt.c (compareTypesExact): disabled debugging output
39682	inadvertantly left behind from my 2003-11-12 change
39683
396842003-11-20 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39685
39686	Updated headers I neglected to commit yesterday.
39687	* src/SDCClrange.h,
39688	* src/SDCCicode.h
39689
396902003-11-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39691
39692	* src/SDCCcse.c (algebraicOpts): fixed bug #773153
39693	* src/SDCClrange.c (rlivePoint): need to mark IC_RESULT used if POINTER_SET op
39694	* src/SDCCopt.c (eBBlockFromiCode),
39695	* src/SDCClrange.c (hashiCodeKeys, sequenceiCode, computeLiveRanges): seperated
39696	the creation of the key hash table from the sequencing so it can be used
39697	earlier (for some GCSE bug fixes still pending)
39698
396992003-11-15 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39700
39701	* src/mcs51/gen.c (genPlus): generate shortcut for adding 0xab00
39702	* support/regression/tests/addsub.c: testing genPlus shortcut
39703
397042003-11-15  Borut Razem <borut.razem AT siol.net>
39705
39706	* src/SDCCmain.c: fixed bug #841645: -MM command line option passed to sdcpp
39707
397082003-11-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39709
39710	* src/SDCCcse.c (cseBBlock): fixed bug #527779
39711	* src/SDCCcse.c (deleteGetPointers): rewrote so that the set
39712	ordering is immaterial.
39713	* src/SDCCdflow.c (mergeInExprs): fixed bug #587536
39714
397152003-11-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39716
39717	* src/SDCCicode.c (geniCodeAddressOf): fixed part of bug #840381
39718	* src/SDCCopt.c (replaceRegEqv, isLocalWithoutDef): fixed other part
39719	(SIGSEV) of bug #840381
39720	* src/SDCCmain.c (linkEdit, assemble): fixed bug #841606 (don't
39721	unlink new file before rename if new and old filenames are the same)
39722
397232003-11-13 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39724
39725	* src/mcs51/main.c: started fixing bug #737001 (SDCC not clearing
39726	uninitialized variables) for the mcs51. Set environment variable
39727	SDCC_GENRAMCLEAR to test.
39728	xdata initialization slightly shorter
39729
397302003-11-12 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39731
39732	* src/SDCCsymt.h,
39733	* src/SDCCsymt.c (addSymTypeChain, compareTypesExact): fixed bugs
39734	#838241 & 780691 (basicly the same bug)
39735	* src/SDCCBBlock.c (iCode2eBBlock): fixed bug #840148
39736	* src/SDCCBBlock.c (iCodeFromeBBlock): fixed bug #840162
39737
397382003-11-11 Bernhard Held <bernhard AT bernhardheld.de>
39739
39740	* src/SDCCmain.c (linkEdit): "fix" #834252
39741
397422003-11-11 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39743
39744	* src/SDCCast.c (removePostIncDecOps, removePreIncDecOps),
39745	* src/SDCCast.h,
39746	* src/SDCC.y: fixed bug #819403
39747
397482003-11-08 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39749
39750	* support/regression/fwk/lib/testfwk.c: printn is recursive and thus needs
39751	the reentrant attribute.
39752	* src/hc08/gen.c (genPackBits): added missing stack readjustment
39753	* sim/ucsim/hc08.src/inst.cc (inst_mov): fixed bugs with mov instruction
39754	simulation
39755	* src/SDCCast.c (decorateType): fixed bug with storage class not being
39756	updated during pointer dereference; f.e. ~(((char *)1)*) was being
39757	erroneously reduced to a literal.
39758	* src/hc08/ralloc.c (packRegisters, rematStr),
39759	* src/hc08/gen.c (aopForRemat): allow literals to be rematerialized in
39760	some cases
39761
397622003-11-08 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39763
39764	* src/mcs51/main.c: fixed bug #838385. Thanks to Josef Pavlik for finding and fixing
39765	* doc/sdccman.lyx: changed from 'article' to 'book'
39766	* doc/Makefile: readded test_suite_spec and cdbfileformat
39767
397682003-11-08 Bernhard Held <bernhard AT bernhardheld.de>
39769
39770	* device/include/stdlib.h: include malloc.h to comply with ANSI
39771	* support/regression/tests/malloc.c: include stdlib.h instead of malloc.h
39772
397732003-11-07 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39774
39775	* doc/Makefile: sdccman.pdf should build with correct references (more info in commit msg)
39776	* doc/clean.mk: also remove *.out files
39777	* doc/sdccman.lyx: some additions, larger top/bottom margins
39778
397792003-11-07 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39780
39781	* src/SDCC.y: fixed bug #837365
39782	* support/regression/tests/bitopcse.c
39783	* src/hc08/gen.c (genPointerGet): Don't assume pointer operand is
39784	a symbol (might be valop instead)
39785	* device/lib/Makefile.in: added errno.c to HC08SOURCES
39786	* device/lib/clean.mk: added hc08 to the cleaning list
39787
397882003-11-04  Borut Razem <borut.razem AT siol.net>
39789
39790	* configure, configure.in, sdcc_vc_in.h, sdcconf_in.h: reverted changes,
39791	  made 2003-11-04
39792	* support/Util/NewAlloc.c, as/hc08/lklibr.c, as/mcs51/lklibr.c,
39793	  as/z80/aslist.c, as/z80/assym.c: removed inclusion of nonstandard malloc.h;
39794	  malloc is declared in standard stdlib.h
39795
397962003-11-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39797
39798	* device/lib/hc08/Makefile: need to clean .rel not .o files
39799	* src/hc08/gen.c (genDjnz): can't use djnz with extended addressing mode
39800
398012003-11-06 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39802
39803	* src/port.h,
39804	* src/hc08/main.c,
39805	* src/mcs51/main.c,
39806	* src/ds390/main.c,
39807	* src/z80/main.c,
39808	* src/avr/main.c,
39809	* src/pic/main.c,
39810	* src/pic16/main.c,
39811	* src/xa51/main.c: added hasExtBitOp & oclsExpense functions to ports
39812	* src/SDCCicode.c: changed several IS_FARSPACE tests to isOclsExpensive
39813	tests (which uses the port's oclsExpense function)
39814	* src/SDCC.y,
39815	* src/SDCCast.c,
39816	* src/SDCCicode.c,
39817	* src/hc08/gen.c,
39818	* src/ds390/gen.c,
39819	* src/mcs51/gen.c: added support for the SWAP iCode (RFE #834167)
39820
398212003-11-04 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39822
39823	* src/SDCCcse.c (ifxOptimize),
39824	* src/SDCClabel.c (labelIfx, deleteIfx): When the condition to
39825	an IFX iCode is volatile, convert to DUMMY_READ_VOLATILE instead
39826	deleting the IFX iCode.
39827	* src/hc08/ralloc.c: reduced unneeded slocs
39828	* src/hc08/gen.c: fixed bug in asmopToBoolean
39829
398302003-11-04  Borut Razem <borut.razem AT siol.net>
39831
39832	* configure, configure.in, sdcc_vc_in.h, sdcconf_in.h,
39833	  support/Util/NewAlloc.c, as/hc08/lklibr.c, as/mcs51/lklibr.c,
39834	  as/z80/aslist.c, as/z80/assym.c: decision to include malloc.h
39835	  transferred to configure
39836
398372003-11-03 Bernhard Held <bernhard AT bernhardheld.de>
39838
39839	Use headers defined in the C[++] standards:
39840	* sim/ucsim/gui.src/serio.src/fileio.cc
39841	* sim/ucsim/gui.src/serio.src/frontend.cc
39842	* sim/ucsim/gui.src/serio.src/main.cc
39843	* sim/ucsim/gui.src/serio.src/posix_signal.cc
39844	* support/Util/NewAlloc.c
39845	* as/hc08/lklibr.c
39846	* as/mcs51/lklibr.c
39847	* as/z80/aslist.c
39848	* as/z80/assym.c
39849
398502003-11-03  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
39851
39852	* Added MSVC projects for hc08 assembler and linker:
39853	all.dsp, config.dsp, sdcc.dsw, /as/hc08/as_hc08.dsp,
39854	/as/hc08/link_hc08.dsp
39855
398562003-11-03 Martin Helmling <Martin.Helmling AT octo-soft.de>
39857
39858	* debugger/mcs51/cmd.c: allows filename starting with digit(+ some debug)
39859
398602003-11-02 Bernhard Held <bernhard AT bernhardheld.de>
39861
39862	* src/SDCCmain.c (linkEdit): "fixed" again bug #833605
39863
398642003-11-01 Frieder Ferlemann <Frieder.Ferlemann AT web.de>
39865
39866	* src/mcs51/main.c: xdata initialization is 13 bytes shorter now
39867
398682003-10-31  Borut Razem <borut.razem AT siol.net>
39869
39870	* support/cpp2/cpplib.h,
39871	  support/cpp2/cpplib.c,
39872	  support/cpp2/cpplex.c,
39873	  support/cpp2/cppinit.c: introduced #pragma preproc_asm [ + | - ]
39874	  to switch _asm block preprocessing on / off. Default is
39875	  #pragma preproc_asm +
39876
398772003-10-31  Borut Razem <borut.razem AT siol.net>
39878
39879	* support/cpp2/cpplex.c: Fixed _WIN32 problem with CR-CR-LF sequences
39880	  when outputting comment blocks (when executed with -C option) and
39881	  _asm (SDCPP specific) blocks
39882
398832003-10-31 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39884
39885	* as/hc08/lkrloc.c (relr): Fixed ihx output, fixed lastAreaIndex warning
39886
398872003-10-31 Klaus Flittner <klaus_flittner AT gmx.de>
39888
39889	* src/SDCCcse.c (updateSpillLocation): fixed bug #808027
39890
398912003-10-31 Bernhard Held <bernhard AT bernhardheld.de>
39892
39893	* src/SDCCmain.c (linkEdit): "fixed" bug #833605
39894	* src/SDCCast.c (decorateType): fixed bug #832664
39895
398962003-10-31  Borut Razem <borut.razem AT siol.net>
39897
39898	* support/cpp2/cpplex.c: fixed for SDCPP:
39899	  comments(when executed with -C option) and _asm blocks
39900	  were included even if they where in skipped #if block.
39901	  Applied solution from GCC cpp 3.3.2
39902
399032003-10-31  Borut Razem <borut.razem AT siol.net>
39904
39905	* src/SDCC.lex: sdcc now understands both formats:
39906	  '# <line_number> <file_name>' and
39907	  '#line <line_number> <file_name>'
39908	* support/cpp2/cppmain.c: sdcpp now generates the standard
39909	  '# <line_number> <file_name>' instead of former
39910	  '#line <line_number> <file_name>'
39911
399122003-10-30  Borut Razem <borut.razem AT siol.net>
39913
39914	* support/cpp2/cpphash.h,
39915	* support/cpp2/cpplib.h
39916	* support/cpp2/cpplex.c,
39917	* support/cpp2/cppmain.c,
39918	* support/cpp2/cppinit.c: fixed bug #828015 - Syntax variation for _asm character constants
39919
399202003-10-30 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39921
39922	Fixed a number of problems revealed by bug #827883.
39923	* src/SDCCloop.c (loopInvariants): Spill location of the
39924	result operand should be recomputed if extracted from
39925	a loop. Also, don't extract assignments of an iTemp
39926	from a literal.
39927	* src/SDCCast.c (isConformingBody): loop reversal should
39928	not occur if the control variable is involved with a
39929	relational operator.
39930
399312003-10-28 Bernhard Held <bernhard AT bernhardheld.de>
39932
39933	* .version: bumped to 2.3.6 to reflect the big improvements
39934	made by Erik and Klaus. Thanks!
39935
399362003-10-28 Klaus Flittner <klaus_flittner AT gmx.de>
39937
39938	Replaced the livrange code.
39939	* src/SDCClrange.c: added new LR code
39940	* src/SDCCloop.c,
39941	* src/SDCCBBlock.h: removed remainig parts from old LR code
39942	* src/ds390/ralloc.c,
39943	* src/ds390/gen.c: minor fixes to make it work with new code
39944
399452003-10-28 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39946
39947	* as/hc08/asm.h,
39948	* as/hc08/lkrloc.c,
39949	* src/hc08/gen.c,
39950	* src/hc08/ralloc.c: Fix various warnings related to the hc08
39951	* src/SDCCicode.c (geniCodePreInc, geniCodePreDec): Fixed bug #829717
39952	(tweaked fix for bug #818696)
39953
399542003-10-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39955
39956	* src/z80/ralloc.c (joinPushes): Fixed bug #828742
39957
399582003-10-23 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39959
39960	* src/SDCCmain.c,
39961	* sdccconf_in.h: Fixed bug #828387 (--disable-hc08-port didn't work)
39962	* src/mcs51/gen.c (gencjneshort),
39963	* src/ds390/gen.c (gencjneshort): Made comparison with AOP_IMMD operand
39964	more efficient (per Scott Bronson's suggestion)
39965
399662003-10-22 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39967
39968	Extended the semantics of the critical keyword to include
39969	individual statements. See RFE #827755 and #799831
39970	* src/SDCC.y
39971	* src/SDCCicode.c
39972	* src/SDCCopt.c
39973	* src/SDCCast.c
39974	* support/Util/SDCCerr.c
39975	* support/Util/SDCCerr.h
39976	* src/mcs51/gen.c
39977	* src/ds390/gen.c
39978	* src/hc08/gen.c
39979
399802003-10-19  Borut Razem <borut.razem AT siol.net>
39981
39982	* src/SDCC.lex: fixed bug #825944 - defined yytext_ptr to make it compile with flex 2.5.31
39983
399842003-10-19 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39985
39986	* src/SDCCicode.c (geniCodePreInc, geniCodePreDec, ast2iCode):
39987	Fixed bug #818696
39988	* src/SDCCast.c (ast_print): Fixed --dumptree so that preincrement
39989	and predecrement operand is displayed
39990
399912003-10-13 Bernhard Held <bernhard AT bernhardheld.de>
39992
39993	* src/SDCCval.c (valMinus): fixed bug #826041
39994
399952003-10-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
39996
39997	Some hc08 related updates that I missed earlier
39998	* sim/ucsim/stypes.h
39999	* support/regression/ports/hc08/spec.mk
40000
400012003-10-15 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40002
40003	New target "hc08" for the Motorola 68hc08 family of micros
40004
40005	* configure
40006	* configure.in
40007	* Makefile
40008	* src/hc08/*
40009	* src/SDCCmain.c
40010	* src/port.h
40011	* sim/ucsim/hc08.src/*
40012	* sim/ucsim/configure.in
40013	* src/ucsim/configure
40014	* sim/ucsim/packages_in.mk
40015	* as/hc08/*
40016	* as/Makefile
40017	* device/include/mc68hc908qy.h
40018	* device/lib/hc08/*
40019	* device/lib/Makefile.in
40020	* support/regression/ports/hc08/*
40021	* support/regression/Makefile
40022
400232003-10-14 Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40024
40025	* src/z80/gen.c: fixed bug revealed by ast_constant_folding.c
40026	regression test
40027	* src/ds390/gen.c (genCast): fixed bug #821957
40028
400292003-10-13 Bernhard Held <bernhard AT bernhardheld.de>
40030
40031	* device/lib/logf.c: "fixed" overlay bug
40032	* support/regression/ports/host/spec.mk: added m library
40033	* support/regression/ports/mcs51-stack-auto/spec.mk: added float funcs
40034	* support/regression/tests/float_trans: added (for Eric)
40035
400362003-10-12 Bernhard Held <bernhard AT bernhardheld.de>
40037
40038	* src/mcs51/gen.c (genCpl): fixed bug
40039	http://sf.net/mailarchive/message.php?msg_id=6263915
40040
400412003-10-10 Bernhard Held <bernhard AT bernhardheld.de>
40042
40043	* src/SDCCast.c (decorateType): added extended constant folding
40044	* src/SDCCsymt.c (computeType): cleanup
40045	* src/SDCCval.c (valShift): minor optimization
40046	* support/regression/tests/ast_constant_folding.c: added
40047
400482003-10-09  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40049
40050	* src/SDCCmain.c: removed some unintended changes
40051
400522003-10-09  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40053
40054	* src/SDCCmain.c (setParseWithComma): fixed bug #816685
40055	* src/z80/gen.c: fixed part of bug #817589
40056	* src/SDCCsymt.c (checkFunction): fixed bug #817895
40057
400582003-10-08 Bernhard Held <bernhard AT bernhardheld.de>
40059
40060	Replaced cast (void **) with (void *) to avoid gcc 3 warning:
40061	* src/SDCCcflow.c
40062	* src/SDCCcse.c
40063	* src/SDCCdflow.c
40064	* src/SDCClabel.c
40065	* src/SDCClrange.c
40066	* src/SDCCmem.c
40067	* src/SDCCopt.c
40068	* src/SDCCpeeph.c
40069	* src/SDCCset.c
40070	* src/avr/ralloc.c
40071	* src/ds390/ralloc.c
40072	* src/izt/ralloc.c
40073	* src/mcs51/ralloc.c
40074	* src/pic/ralloc.c
40075	* src/pic16/ralloc.c
40076	* src/xa51/ralloc.c
40077	* src/z80/ralloc.c
40078	* src/z80/gen.c: removed unused label "release:"
40079
400802003-10-06  Borut Razem <borut.razem AT siol.net>
40081
40082	* src/SDCC.lex: removed definition of unused variables
40083	  save_optimize and save_options
40084
400852003-10-06 Bernhard Held <bernhard AT bernhardheld.de>
40086
40087	* clean.mk: removed '=' in "-maxdepth=1"
40088	* src/SDCCloop.c: replace LRKLAUS with SDCC_LRKLAUS
40089	* src/SDCClrange.c: replace LRKLAUS with SDCC_LRKLAUS
40090
400912003-10-06  Borut Razem <borut.razem AT siol.net>
40092
40093	* src/SDCC.lex, src/SDCC.lex: use dbuf for "_asm" definitions;
40094	  my_unput() replaced by unput()
40095
400962003-10-05 Bernhard Held <bernhard AT bernhardheld.de>
40097
40098	* src/SDCCloop.c (assignmentsToSym, loopInduction): cast argument of
40099	setToNull() to (void *) to avoid gcc3.x's warning: "dereferencing
40100	type-punned pointer will break strict-aliasing rules"
40101	Old LR behaviour is again default; Klaus' LR can be choosen by
40102	defining the environment variable LRKLAUS
40103	* src/SDCCBBlock.h
40104	* src/SDCCloop.c
40105	* src/SDCClrange.c
40106	* src/ds390/ralloc.c (spillThis): applied Klaus' patch
40107	* clean.mk: fixed removal of files in bin/CVS/
40108	* device/lib/clean.mk: fixed removal of directories small and large
40109	* support/Util/SDCCerr.c: changed W_INT_OVL to ERROR_LEVEL_PEDANTIC
40110	* src/SDCCicode.c,
40111	* src/SDCCval.c: removed superflous test for pedantic
40112
401132003-10-05  Borut Razem <borut.razem AT siol.net>
40114
40115	* src/SDCC.lex, support/Util/SDCCerr.c, sdcc/support/Util/SDCCerr.h:
40116	  Fixed bug #816692: introduced new ERROR_LEVEL_PEDANTIC warning
40117	  message "unmatched #pragma SAVE and #pragma RESTORE"
40118
401192003-10-04  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
40120
40121	* doc/sdccman.lyx: various additions and updates (interrupts, inline
40122	  assembly, critical functions, atomic, nojtbound)
40123
401242003-10-04 Bernhard Held <bernhard AT bernhardheld.de>
40125
40126	Applied liferange patch from Klaus Flittner <klaus_flittner AT gmx.de>
40127	* src/SDCCBBlock.h
40128	* src/SDCCloop.c
40129	* src/SDCCloop.h
40130	* src/SDCClrange.c
40131
401322003-10-03  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40133
40134	* src/z80/gen.h,
40135	* src/z80/gen.c (aopOp, aopGet, aopPut, genDummyRead),
40136	* src/mcs51/gen.h
40137	* src/mcs51/gen.c (aopOp, aopGet, aopPut, genDummyRead),
40138	* src/ds390/gen.h
40139	* src/ds390/gen.c (aopOp, aopGet, aopPut, genDummyRead),
40140	* src/SDCCicode.c (ast2iCode, geniCodeDummyRead): Fixed bug #663539
40141	* src/SDCCopt.c (killDeadCode): Fixed bugs #663539 & #816705
40142
401432003-10-02  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40144
40145	* src/z80/gen.c (genRet): fixed bug #524753
40146	* src/z80/gen.c (genCast): fixed internal error on cast from
40147	pointer to long
40148	* src/z80/gen.c (_saveRegsForCall, emitCall): adapted Johan's
40149	fix for bug #477835 to the z80
40150	* src/z80/gen.c (genZ80code, _vemit2, _emit2): added support
40151	for tracking iCodes in the peephole optimizer for z80
40152
401532003-10-01  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40154
40155	* src/SDCCicode.c (geniCodeJumpTable, geniCodeSwitch): fixed
40156	the other part of bug #814548
40157	* src/SDCCpeeph.c (labelInRange): fixed bug #814558
40158
401592003-09-30  Bernhard Held <bernhard AT bernhardheld.de>
40160
40161	* src/SDCCcse.c: fixed part of bug #814548
40162
401632003-09-28  Borut Razem <borut.razem AT siol.net>
40164
40165	* src/asm.c: rewrite of printILine() to use temporary file instead
40166	  a pipe
40167	* src/xa51/main.c: commented out declaration of int rewinds
40168
401692003-09-27  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40170
40171	* src/SDCCicode.c (geniCodeJumpTable): Fixed bug #813206
40172
401732003-09-26  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40174
40175	* src/SDCCdflow.c (computeDataFlow): Fixed bug #810746
40176	* src/asm.c (printILine): Fixed bug #811015
40177
401782003-09-22  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40179
40180	*link/z80/lklibr.c, as/mcs51/lklibr.c: Improved memory allocation and
40181	freeing.
40182
401832003-09-21  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40184
40185	* src/z80/gen.c (setupToPreserveCarry): Fixed bug #796955
40186	* src/z80/gen.c (setupPair, genMovePairPair): Fixed setupPair
40187	to correctly handle general case of AOP_PAIRPTR
40188	* src/z80/gen.c (aopGet, aopPut): Generalized AOP_PAIRPTR handling
40189
401902003-09-21  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40191
40192	* src/mcs51/ralloc.c (fillGaps),
40193	* src/ds390/ralloc.c (fillGaps): fixed bug #810093 (yet another
40194	register positioning bug)
40195
401962003-09-21  Bernhard Held <bernhard AT bernhardheld.de>
40197
40198	* device/lib/_fsdiv.c: replaced (1<<31) by (1ul<<31)
40199
402002003-09-19  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40201
40202	* src/mcs51/gen.c (loadDptrFromOperand, genFarPointerGet,
40203	genCodePointerGet, genGenPointerGet, genFarPointerSet,
40204	genGenPointerSet): handle AOP_DPTR correctly when loading dptr
40205	(ralloc doesn't intentionally do this now, but perhaps later)
40206	* src/mcs51/ralloc.c (serialRegAssign, fillGaps),
40207	* src/ds390/ralloc.c (serialRegAssign, fillGaps): fixed some
40208	register positioning bugs (Fixed bug #762602 and #795325)
40209	* src/SDCCicode.c (geniCodeDerefPtr): Track output class correctly
40210	(Fixed bug #808779)
40211	* src/z80/gen.c: increased _vemit2's buffer[] to handle long
40212	lines that --i-code-in-asm generates
40213
402142003-09-18  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40215
40216	*link/z80/lklibr.c, as/mcs51/lklibr.c: Fixed Linux segfaults when
40217	trying to fclose a FILE* that was already closed.
40218
402192003-09-18  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40220
40221	* src/SDCCsymt.c (structElemType): fixed bug #808291 (members
40222	of const struct should be treated as if const themselves)
40223
402242003-09-18  Bernhard Held <bernhard AT bernhardheld.de>
40225
40226	* src/SDCCval.c (valPlus, valMinus): fixed bug #808337
40227
402282003-07-06  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40229
40230	* support/librarian/sdcclib.c: Generate correct offsets for libraries with
40231	Unix (/n) and DOS (/r/n) line terminations.
40232
402332003-09-17  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40234
40235	* src/SDCCopt.c (cnvFromFloatCast, cnvToFloatCast): fixed
40236	bug #613775
40237
402382003-09-16  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40239
40240	* src/mcs51/gen.c (genFunction, genEndFunction),
40241	* src/ds390/gen.c (genFunction, genEndFunction): Moved save
40242	and restore of EA so that stack offsets to parameters are
40243	correct when using both critical and reentrant/stack-auto.
40244	* src/z80/gen.c (aopOp): removed erroneous assertion about sloc
40245	size (can be triggered in error if sloc is shared between
40246	different sized objects)
40247	* device/include/float.h: fixed macros to explicitly use
40248	unsigned long where needed
40249
402502003-09-15  Bernhard Held <bernhard AT bernhardheld.de>
40251
40252	Feature req. 799831: added code to allow nesting of critical functions
40253	* src/mcs51/gen.c (genFunction, genEndFunction)
40254	* src/ds390/gen.c (genFunction, genEndFunction)
40255
402562003-09-14  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40257
40258	* src/SDCCsymt.c (sclsFromPtr),
40259	* src/SDCCsymt.h,
40260	* src/SDCCast.c (decorateType): fixed bug #462971. Also, better
40261	support for standard C idiom of memory mapped variables; for
40262	example, *((xdata int*)0x1234) = 1 is now internally equivalent
40263	to xdata int at 0x1234 tempvar = 1.
40264	* sim/ucsim/z80.src/inst_xd.cc: fixed bug #805483 with patch
40265	provided by Akiya ISHIDA
40266
402672003-09-13  Bernhard Held <bernhard AT bernhardheld.de>
40268
40269	* src/SDCCval.c (cheapestVal): reenabled to reduce int to char
40270	* src/SDCCval.c (constVal): added reduction from int to char
40271	* src/SDCCval.c (valMult, valDiv): fixed sign handling
40272	* src/SDCCval.c (valShift): fixed after change of cheapestVal()
40273	* src/SDCCval.c (valCompare): fixed EQ_OP and NE_OP; they have
40274	to ignore the sign
40275	* support/regression/tests/shifts.c: fixed
40276
402772003-09-13  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40278
40279	* src/z80/gen.c (genXor): Fixed bug #805445
40280
402812003-09-12  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40282
40283	Fixed bug #621531 (const & volatile confusion in the type chain).
40284	DCL_PTR_CONST, DCL_PTR_VOLATILE, & IS_PTR_CONST now exclusively
40285	refer to the const or volatile state of the pointer itself.
40286
40287	* src/SDCCast.c
40288	* src/SDCCglue.c
40289	* src/SDCCicode.c
40290	* src/SDCCsymt.c
40291	* src/SDCCval.c
40292	* src/SDCC.y
40293	* src/SDCCsymt.h
40294	* src/pic/gen.c
40295	* src/pic/ralloc.c
40296	* src/pic16/gen.c
40297	* src/pic16/ralloc.c
40298	* support/regression/tests/const.c
40299
403002003-09-10  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40301
40302	When checking for duplicated modules, use absolute paths
40303	instead of relative paths.  Files changed:
40304
40305	* as/mcs51/lklib.c
40306	* link/z80/lklib.c
40307
403082003-09-09  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40309
40310	* src/SDCCicode.c (geniCodeLogic): fixed bug #797572
40311
403122003-09-07  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40313
40314	* device/include/string.h: added size_t typedef, changed
40315	prototypes to use size_t, eliminated separate reentrant and
40316	non-reentrant declarations, added _memmove declaration
40317	* device/lib/_memcpy.c: changed to use size_t instead of int,
40318	changed /4 to >>2 to avoid division library call
40319	* device/lib/_memcmp.c,
40320	* device/lib/_memset.c,
40321	* device/lib/_strncat.c,
40322	* device/lib/_strncpy.c,
40323	* device/lib/_strncmp.c: changed to use size_t instead of int
40324	* device/lib/_memmove.c: new file (fixed bug #772294)
40325	* device/lib/Makefile.in: added _memmove.c
40326	* device/lib/z80/asm_strings.s: fixed bug #772290
40327	* support/regression/tests/bitfields.c: attempt to fix host assertion
40328	failure on amd64-unknown-linux2.2
40329
403302003-09-06  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40331
40332	* src/z80/gen.c (aopPut, spillPairReg): fixed bug #800998
40333	* src/z80/gen.c (genFunction, genEndFunction): fixed "bug" #774700
40334	* as/z80/asmain.c (main): fixed bug #801766
40335
403362003-09-06  Bernhard Held <bernhard AT bernhardheld.de>
40337
40338	* src/SDCCicode.c (ast2iCode): fixed differences in iCode with different
40339	compilers
40340
403412003-09-05  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40342
40343	* src/SDCCast.c (isConformingBody): fixed loop reversal bug
40344	reported in bug #800609
40345
403462003-09-04  Vangelis Rokas <vrokas AT otenet.gr>
40347
40348	* Top header beautifications in src/pic16 directory:
40349	  device.c, device.h, gen.c, gen.h, genarith.c, glue.c, pcode.c,
40350	  pcodeflow.c, pcodeflow.h, pcode.h, pcodepeep.c, pcoderegs.c,
40351	  pcoderegs.h, ralloc.c, ralloc.h
40352	* main.c: added top header and GPL license notice
40353	* pcode.c: fixed the if-conditional warning
40354
403552003-09-04  Bernhard Held <bernhard AT bernhardheld.de>
40356
40357	* device/lib/_mullong.c: replaced int by short for gcc
40358
403592003-08-31  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40360
40361	* src/SDCCpeeph.c (notVolatile, notVolatileVariable): handle IFX
40362	and JUMPTABLE iCodes properly now (worked by accident before)
40363	* src/mcs51/gen.c (leftRightUseAcc),
40364	* src/ds390/gen.c (leftRightUseAcc): handle IFX and JUMPTABLE
40365	iCode properly now. Use getSize instead of nRegs since a & b
40366	aren't part of the nRegs tally.
40367
403682003-08-31  Vangelis Rokas <vrokas AT otenet.gr>
40369
40370	* src/pic16/main.c: corrected offsets of interrupt vectors in _pic16_genIVT()
40371	* src/pic16/pcode.c: fix to disable inserting BANKSEL directive
40372	  before instructions that use the _STATUS register
40373
403742003-08-31  Bernhard Held <bernhard AT bernhardheld.de>
40375
40376	* src/mcs51/gen.c (freeAsmop): fixed off by one in stack offset (AOP_STK)
40377	* src/mcs51/gen.c (genNearPointerSet): added missing opcode for
40378	fetching of the pointer
40379	* src/mcs51/gen.c (genNearPointerGet): added reuse of PREG,
40380	copied from genNearPointerSet()
40381	* src/mcs51/gen.c (genNearPointerGet): don't pop r0/r1, if RESULTONSTACK
40382	* src/mcs51/gen.c: changed order of freeAsmop(left/right/result)-calls.
40383	If they pop r0/r1 they must be called in the opposite order than aopOp().
40384	* device/lib/_mullong.c: fixed for "--model-large --int-long-reent"
40385	(resp. --stack-auto), prepared for --xstack
40386
403872003-08-28  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
40388
40389	* doc/sdccman.lyx: reverted tables to those in cvs 1.64
40390
403912003-08-28  Bernhard Held <bernhard AT bernhardheld.de>
40392
40393	* device/lib/_startup.c: quick & dirty fix for ds390/ds400;
40394	these ports have their own __sdcc_external_start()
40395
403962003-08-26  Bernhard Held <bernhard AT bernhardheld.de>
40397
40398	pic patch provided by Slade Rich <slade_rich AT yahoo.com>
40399	* src/pic/glue.c (pic14printPublics): fixed bug introduced when symbol
40400	type for bits was changed. It resulted in bit variables becoming
40401	global, which is not permitted in PIC 14 assembly output.
40402
404032003-08-23  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
40404
40405	* doc/sdccman.lyx: various additions and updates. Rearranged sections
40406
404072003-08-22  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40408
40409	Z80 and MCS51 linkers complaint if a public symbol is defined
40410	in more than one library module:
40411
40412	* as/mcs51/lklib.c
40413	* link/z80/lklib.c
40414	* as/mcs51/Makefile.in
40415
404162003-08-22  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40417
40418	A few small changes that speed up the peephole optimizer.
40419
40420	* src/SDCCpeeph.c
40421
404222003-08-22  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40423
40424	Try to make the peephole optimizer smarter by maintaining
40425	an association between the assembly source code and the
40426	iCodes that originated them. Put this information to use
40427	with a new peephole rule condition "notVolatile" so that
40428	the rules can be aggressive yet still safe.
40429
40430	* src/SDCCpeeph.c
40431	* src/SDCCpeeph.h
40432	* src/mcs51/gen.c
40433	* src/mcs51/peeph.def
40434
404352003-08-20  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40436
40437	Fixed bug #741761
40438
40439	* src/mcs51/gen.c (aopForSym, leftRightUseAcc),
40440	* src/ds390/gen.c (aopForSym, leftRightUseAcc): preserve A and B
40441	if the left or right operand symbols have the accuse flag set.
40442
404432003-08-20  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40444
40445	Changed the type of the result of the ! (NOT) operator to char;
40446	previously it returned the same type as the source. This allows
40447	us to eliminate all the genFloatNot functions (all of its target
40448	implementations were very buggy) since !float can use the same
40449	code as !long now.
40450
40451	* src/SDCCicode.c (ast2iCode): ! returns char
40452	* src/mcs51/gen.c (genNot, genNotFloat),
40453	* src/ds390/gen.c (genNot, genNotFloat),
40454	* src/z80/gen.c (genNot, genNotFloat),
40455	* src/pic/gen.c (genNot, genNotFloat),
40456	* src/pic16/gen.c (genNot, genNotFloat): eliminated genNotFloat
40457
404582003-08-19  Bernhard Held <bernhard AT bernhardheld.de>
40459
40460	pic patch provided by Slade Rich <slade_rich AT yahoo.com>
40461	1. Interrupt would not compile properly. Ensure PCLATH register is saved
40462	   during interrupts. Ensure WSAVE is located at a shared bank address.
40463	2. Fixed page selection in some places
40464	3. Fixed BTFSS/C to where necessary use registers directly and not simply
40465	   the registers name strings.
40466	4. Fixed "signed / unsigned compare" compiler warnings.
40467	5. The PIC port manages its own allocation of the general purpose
40468	   registers, but makes no attempt to reuse them. As a result when
40469	   compiling it soon runs out of general purpose registers. Some
40470	   additional code was added to the files pcode.c and device.c to walk
40471	   through the function call tree and rename the registers so that they
40472	   get reused.
40473
40474	* src/pic/device.c
40475	* src/pic/gen.c
40476	* src/pic/glue.c
40477	* src/pic/pcode.c
40478	* src/pic/pcode.h
40479	* src/pic/ralloc.c
40480	* src/pic/ralloc.h
40481	* src/pic/genarith.c: Fixed problems with PIC 14 port in functions
40482	genPlus() & genMinus() when the result is the same as left or right
40483
404842003-08-18  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40485
40486	* src/z80/gen.c (isUnsplitable, fetchPairLong): fixed bug #770454
40487
404882003-08-18  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40489
40490	Made bitfield a distinct type from bit so that bitfields
40491	convert as per ANSI C and bits retain their traditional
40492	boolean style behaviour. Implemented bitfield support in
40493	the z80 port.
40494
40495	* src/SDCCsymt.h,
40496	* src/SDCCsymt.c,
40497	* src/SDCCast.c,
40498	* src/cdbFile.c,
40499	* src/mcs51/gen.c,
40500	* src/ds390/gen.c: bit v bitfield split
40501	* src/z80/gen.c: New support for bitfields
40502	* support/regression/tests/bitfields.c: reenabled z80,
40503	added more tests
40504
405052003-08-17  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
40506
40507	Rules 246.x, 247.x relate to bitfields, the others speed up
40508	access to xdata mapped I/O devices.
40509
40510	* src/mcs51/peeph.def: added 26 peepholes 246.x - 248.x, 180.x
40511
405122003-08-16  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40513
40514	Cleaned up genPackBits and genUnpackBits and added two helper
40515	functions, emitPtrByteGet & emitPtrByteSet. Added optimizations
40516	for literal assignments in genPackBits (thanks to Frieder for
40517	reminding me).
40518
40519	* src/mcs51/gen.c
40520	* src/ds390/gen.c
40521
405222003-08-16  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40523
40524	Fixed bug #748310 (pointer to function type mishandled when the
40525	function name is omitted). Also fixed a SIGSEGV when a function
40526	attribute (reentrant, etc) is used on a non-function or on a
40527	function but misplaced before the parameter list.
40528
40529	* src/SDCC.y (abstract_declarator, abstract_declaractor2): fixed
40530	bug #748310
40531	* src/SDCC.y (declarator2_function_attributes): avoided SIGSEGV
40532	* support/Util/SDCCerr.h,
40533	* support/Util/SDCCerr.c: Added func attr misuse error msg
40534
405352003-08-13  Bernhard Held <bernhard AT bernhardheld.de>
40536
40537	Fixed bug #787649 by anonymous
40538	* src/SDCCglue.c (emitRegularMap): added emission of sloc for func ptr
40539	* src/ds390/gen.c (aopForSym): fixed func ptr in sloc
40540
405412003-08-14  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40542
40543	Fixed numerous bitfield problems.
40544
40545	* src/SDCC.y: More bitfield related error checking
40546	* src/SDCCsymt.h,
40547	* src/SDCCsymt.c (compStructSize): fixed bitfield offset calc
40548	* support/Util/SDCCerr.h,
40549	* support/Util/SDCCerr.c: Added & edited some bitfield err msgs
40550	* src/mcs51/gen.c (genPackBits, genUnpackBits): fixed mask bugs
40551	* src/ds390/gen.c (genPackBits, genUnpackBits): fixed mask bugs
40552	* support/regression/tests/bitfields.c: tests added
40553
405542003-08-13  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40555
40556	Made the constant following the "interrupt" keyword optional. If
40557	omitted, the function will not automatically be given an entry
40558	in the interrupt vector table (similar to #pragma NOIV, but
40559	less syntacticly kludgy). The interrupt number is also now
40560	range checked. Also fixed a bug in the high order bit example
40561	in the manual.
40562
40563	* src/SDCC.y
40564	* src/SDCCmem.c
40565	* src/SDCCglue.c
40566	* src/SDCCsymt.h
40567	* support/Util/SDCCerr.c
40568	* support/Util/SDCCerr.h
40569	* doc/sdccman.lyx
40570
405712003-08-13  Bernhard Held <bernhard AT bernhardheld.de>
40572
40573	* src/SDCCcse.c (algebraicOpts): fix bug converting op from value to type
40574	* src/SDCCicode.c (operandOperation): rewritten some ops
40575	(*, ==, unary_minus) to fix possible overflows and to accord with ANSI
40576	* src/SDCCsymt.c (computeType): literals are handled the same way as any
40577	other type
40578	* src/SDCCval.c (cheapestVal): removed, it doesn't accord with ANSI (can
40579	be re-activated by defining REDUCE_LITERALS)
40580	* src/SDCCval.c (constVal): fixed; hex and octal constants can be
40581	unsigned, but are signed by default
40582	* src/SDCCval.c (constVal): rearranged
40583	* src/SDCCval.c (valMod): preliminary fix
40584	* src/SDCCval.c (valCastLiteral): use TYPE_* types
40585	* support/regression/literalop.c: added, work in progress
40586
405872003-08-12  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40588
40589	Generate warnings for useless declarations like "char data;"
40590	that don't do what new users expect.
40591
40592	* src/SDCC.y
40593	* support/Util/SDCCerr.h
40594	* support/Util/SDCCerr.c
40595
405962003-08-09  Bernhard Held <bernhard AT bernhardheld.de>
40597
40598	* src/SDCCval.c (valMult): fix overflow detection of negative int
40599
406002003-08-07  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40601
40602	* src/z80/ralloc.c (joinPushes): made compatible with new signedness
40603
40604	Changes to support big endian targets:
40605
40606	* src/ports.h
40607	* src/SDCCglue.c
40608	* src/avr/main.c
40609	* src/ds390/main.c
40610	* src/izt/i186.c
40611	* src/mcs51/main.c
40612	* src/pic/main.c
40613	* src/pic16/main.c
40614	* src/xa51/main.c
40615	* src/z80/main.c
40616
406172003-08-06  Bernhard Held <bernhard AT bernhardheld.de>
40618
40619	* src/SDCCval.c (cheapestVal): changed behaviour to the same as constVal()
40620	* device/lib/time.c: fixed warning "integer overflow in expression"
40621
406222003-08-05  Bernhard Held <bernhard AT bernhardheld.de>
40623
40624	* src/SDCCval.c (cheapestVal, valueFromLit): use TYPE_* types
40625	* src/SDCCval.c (constVal): changed default to signed; hex and octal
40626	constants are unsigned; added recognition of "u" flag for unsigned
40627	* src/SDCCval.c (valMult): fixed signdness, added warning for overflow
40628	* src/SDCCval.c (valDiv, valMod): fixed signdness
40629	* src/SDCCicode.c (operandOperation): fixed critical typo; fixed
40630	signedness of modulo, left and right shift
40631	* support/Util/SDCCerr.c: added warning "integer overflow in expression"
40632	* support/Util/SDCCerr.h: added warning W_INT_OVL
40633	* src/SDCCast.c (decorateType): fixed gcc3.3 warning
40634	* src/SDCCast.c (ast_print): improved output of constants
40635
406362003-08-04  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40637
40638	Fixed some warnings when building with MSVC:
40639
40640	* as/mcs51/asdata.c
40641	* as/z80/asdata.c
40642	* as/mcs51/asm.h
40643	* as/z80/asm.h
40644	* link/z80/aslink.h
40645	* link/z80/lkdata.c
40646	* link/z80/lkeval.c
40647	* link/z80/lkgb.c
40648	* link/z80/lkihx.c
40649	* link/z80/lks19.c
40650	* link/z80/lksym.c
40651	* support/cpp2/cpplib.c
40652	* src/ds390/gen.c
40653	* src/mcs51/gen.c
40654
406552003-08-03  Bernhard Held <bernhard AT bernhardheld.de>
40656
40657	* src/SDCCast.c (constExprTree): fix bug #781827 by Carl Worth <cworth AT isi.edu>
40658
406592003-08-01  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40660
40661	* support/librarian/clean.mk: Do not remove Makefile.
40662	* support/librarian/Makefile: added.
40663
406642003-08-01  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40665
40666	Added librarian to MSVC build:
40667	* all.dsp
40668	* sdcc.dsw
40669	* support/librarian/librarian.dsp
40670
40671	'configure' not needed for librarian, removed:
40672	* support/librarian/configure
40673	* support/librarian/configure.in
40674	* support/librarian/config_in.h
40675	* support/librarian/Makefile.in
40676
40677	Hopefully these ones built the librarian and the rest of sdcc properly:
40678	* Makefile
40679	* Makefile.common.in
40680
40681	Messed up 'configure', so revert to previous version:
40682	* configure
40683	* configure.in
40684
406852003-07-31  Bernhard Held <bernhard AT bernhardheld.de>
40686
40687	* src/SDCCicode.c (operandOperation): 3. fix, this time for Alpha; ULONG has 64 bits
40688	there, while the mantissa of a double is "only" 53 bits wide.
40689
406902003-07-31  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40691
40692	Adding sdcclib to the build.  MSVC project coming soon.
40693	Files added/changed:
40694
40695	* support/librarian/clean.mk
40696	* support/librarian/configure
40697	* support/librarian/configure.in
40698	* support/librarian/config_in.h
40699	* support/librarian/Makefile.bcc
40700	* support/librarian/Makefile.in
40701	* support/librarian/sdcclib.c
40702	* Makefile.bcc
40703	* Makefile
40704	* Makefile.common.in
40705	* configure
40706	* configure.in
40707
407082003-07-29  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40709
40710	Linker now complaints if linked modules have conflicting options, for
40711	example, one compiled using --model-large and another one compiled with
40712	--model-small.  The following files were modified:
40713
40714	* as/mcs51/asdata.c
40715	* as/mcs51/aslink.h
40716	* as/mcs51/asm.h
40717	* as/mcs51/asmain.c
40718	* as/mcs51/asout.c
40719	* as/mcs51/i51pst.c
40720	* as/mcs51/lkdata.c
40721	* as/mcs51/lklibr.c
40722	* as/mcs51/lkmain.c
40723	* as/z80/asdata.c
40724	* as/z80/asm.h
40725	* as/z80/asmain.c
40726	* as/z80/asout.c
40727	* as/z80/z80pst.c
40728	* link/z80/aslink.h
40729	* link/z80/lkdata.c
40730	* link/z80/lklibr.c
40731	* link/z80/lkmain.c
40732	* src/SDCCglue.c
40733
407342003-07-28  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40735
40736	*link/z80/aslink.h, link/z80/lklibr.c, as/mcs51/aslink.h,
40737	as/mcs51/lklibr.c: Generate a warning when a library is not found.
40738
407392003-07-28  Bernhard Held <bernhard AT bernhardheld.de>
40740
40741	* src/z80/mappings.i: fix _mul[us][int,long] entries
40742
407432003-07-26  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40744
40745	*src/SDCCmain.c: do not search for crt0.o when using --nostdlib
40746
407472003-07-24  Bernhard Held <bernhard AT bernhardheld.de>
40748
40749	* src/SDCCicode.c (operandOperation): really fixed problem with bitops
40750	* support/regression/tests/bitopcse.c: added
40751	fixed warning:
40752	* src/avr/gen.c:
40753	* src/pic/gen.c:
40754	* src/pic16/gen.c:
40755	* src/z80/gen.c:
40756	* src/xa51/gen.c:
40757
407582003-07-24  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40759
40760	added support for new library format to z80, gbz80 linkers:
40761	*link/z80/aslink.h
40762	*link/z80/lklex.c
40763	*link/z80/lklib.c
40764	*link/z80/lklist.c
40765
407662003-07-24  Bernhard Held <bernhard AT bernhardheld.de>
40767
40768	* src/SDCCicode.c (operandOperation): fixed problem with bitops and 0xffffffff;
40769	after {double d = 0xffffffff; long l = d;} l will be 0x80000000 (LONG_MIN)
40770
407712003-07-23  Bernhard Held <bernhard AT bernhardheld.de>
40772
40773	added DUMMY_READ_VOLATILE:
40774	* src/SDCC.y:
40775	* src/avr/gen.c:
40776	* src/xa51/gen.c:
40777	* src/z80/gen.c:
40778	* src/pic/gen.c:
40779	* src/pic16/gen.c:
40780	* src/mcs51/gen.c:
40781	* src/ds390/gen.c:
40782	* src/SDCCcse.c (algebraicOpts): many improvements
40783	* src/SDCCcse.h: removed algebraicOpts()
40784	* src/SDCCicode.c (picDummyRead): added
40785
407862003-07-23  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40787
40788	* as/mcs51/lkmem.c: Changed message "Insufficient DRAM memory" to
40789	"Insufficient space in data memory".
40790
407912003-07-20  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40792
40793	* src/mcs51/gen.c: fixed bug #771358
40794	* src/z80/gen.c: fixed bug #759087
40795
407962003-07-20  Bernhard Held <bernhard AT bernhardheld.de>
40797
40798	* src/pic16/glue.c: minor cleanup by Vangelis
40799
408002003-07-19  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
40801
40802	* device/include/regc515c.h: fixed #758477
40803	* device/lib/_gptrget.c: saving some cycles in generic pointer get
40804	* device/lib/_gptrput.c: saved a few bytes
40805	* my tab spacing is 8, yours too?)
40806	* device/lib/_ser.c: process RX bytes earlier than TX bytes
40807	* device/lib/serial.c: process RX bytes earlier than TX bytes
40808	* src/mcs51/gen.c(genGenPointerGet/Set): removed writing of type after postincrement
40809
408102003-07-18  Erik Petrich <epetrich AT ivorytower.norman.ok.us>
40811
40812	* src/z80/gen.c: fixed some right shift bugs (#772726 among them)
40813
408142003-07-17  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40815
40816	* link/z80/lklibr.c: fixed bug when there is a '.' in a library path.
40817
408182003-07-17  Bernhard Held <bernhard AT bernhardheld.de>
40819
40820	* device/lib/Makefile.in: bad fix, reverted to 1.43
40821
408222003-07-16  Bernhard Held <bernhard AT bernhardheld.de>
40823
40824	* device/lib/Makefile.in: added missing z80 object files
40825
408262003-07-14  Bernhard Held <bernhard AT bernhardheld.de>
40827
40828	* src/SDCCcse.c (algebraicOpts): CSE fun with &|^ and 0x00/0xff literals
40829	pic16 progress by Vangelis:
40830	* src/SDCCglobl.h:
40831	* src/SDCCmain.c:
40832	* src/pic/Makefile:
40833	* src/pic:
40834	* pic/Makefile:
40835	* pic16/device.c:
40836	* pic16/device.h:
40837	* pic16/gen.c:
40838	* pic16/gen.h:
40839	* pic16/genarith.c:
40840	* pic16/glue.c:
40841	* pic16/main.c:
40842	* pic16/pcode.c:
40843	* pic16/pcode.h:
40844	* pic16/pcodepeep.c:
40845	* pic16/peeph.def:
40846
408472003-07-13  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40848
40849	* src/SDCCmain.c, src/SDCCglobl.h: added option --no-std-crt0
40850
408512003-07-12  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40852
40853	* sdcc.dsw, all.dsp, link/z80/linkgbz80.dsp, as/z80/as-gbz80.dsp:
40854	added gbz80 build to MSVC project.
40855	* src/SDCCmain.c, src/SDCCglue.c, src/z80/main.c, src/z80/z80.dsp,
40856	link/z80/aslink.h, linkz80.dsp: cleaned up z80 and gbz80 asm files
40857	from 8051 stuff and setup so it links using a .lnk file.
40858
408592003-07-06  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40860
40861	* support/librarian/sdcclib.c: sdcc librarian.
40862	* as/mcs51/aslink.h, as/mcs51/lklib.c: Support for libraries created
40863	with sdcclib.
40864
408652003-07-03  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40866
40867	* as/mcs51/lkmain.c: properly handle extensions in function afile.
40868
408692003-07-02  Borut Razem <borut.razem AT siol.net>
40870
40871	* src/port.h, src/SDCCmain.c, src/pic/glue.h, src/pic/main.c,
40872	src/pic16/glue.h, sdcc/src/pic16/main.c, src/izt/i186.c,
40873	src/izt/tlcs900h.c, src/avr/main.c, src/ds390/main.c, src/mcs51/main.c,
40874	src/xa51/main.c, src/z80/main.c:
40875	virtualization of glue() function: each port has it's own glue function,
40876	which is accessed by do_glue function pointer in PORT.general structure
40877
408782003-07-01 Kevin Vigor <kevin AT vigor.nu>
40879
40880	* DS800C400 fun, improved ROM interface and tinibios.
40881
408822003-06-27 Kevin Vigor <kevin AT vigor.nu>
40883
40884	* More support for DS80C400. Now includes beginning of interface to ROM.
40885
408862003-06-25  Bernhard Held <bernhard AT bernhardheld.de>
40887
40888	* src/mcs51/gen.c (gencjneshort): fixed bug #760345
40889
408902003-06-20  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40891
40892	* as/mcs51/lkaomf51.c: Make sure the size of the last procedure is correct.
40893
408942003-06-19  Borut Razem <borut.razem AT siol.net>
40895
40896	* src/z80/main.c: fixed Z80 port again: missing -k library paths in linker command line
40897
408982003-06-19  Borut Razem <borut.razem AT siol.net>
40899
40900	* src/SDCCutil.h, src/SDCCutil.c, src/SDCCglobl.h, src/SDCCmain.c, src/z80/main.c:
40901	fixed Z80 port - crt0.o: cannot open.
40902
409032003-06-19  Bernhard Held <bernhard AT bernhardheld.de>
40904
40905	* support/Util/MySystem.c (merge_command): revert bad fix
40906
409072003-06-18  Borut Razem <borut.razem AT siol.net>
40908
40909	* src/SDCC.lex, src/SDCCmain.c: fixed some warnings, introduced with changes made 15.06.1003
40910
409112003-06-18  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40912
40913	* src/SDCCglobl.h, src/SDCCmain.c, doc/sdccman.lyx:
40914	option --use-stdout sends errors to stdout instead of stderr.
40915
409162003-06-18  Bernhard Held <bernhard AT bernhardheld.de>
40917
40918	* support/Util/MySystem.c (merge_command): quick fix for Linux segfault with \"cmd\" arg
40919
409202003-06-15  Borut Razem <borut.razem AT siol.net>
40921
40922	* support/cpp2/sdcc.h: HAVE_DOS_BASED_FILE_SYSTEM defined for _WIN32
40923	* src/SDCC.lex: cloneXxx and copyAndFreeXxx functions for options and optimize stack handling
40924	* src/SDCCglobl.h, src/SDCCmain.c, src/ds390/main.c, src/mcs51/main.c, src/z80/main.c:
40925	fixed width array of pointers replaced with sets;
40926	multiple include and lib paths ared transferred to preprocessor and linker
40927	* src/SDCCset.c, src/SDCCset.h: added function setFromSetNonRev() and mergeSets()
40928	* src/SDCCsymt.c: reimplemented function inCalleeSaveList() by using sets instead
40929	fixed width array of pointers
40930	* src/SDCCutil.c, src/SDCCutil.h: added functions fputStrSet(), appendStrSet(), joinStrSet();
40931	removed functions addToList(), join(), joinn(), pathCharsEquivalent(), pathCharTransform(),
40932	fixupPath(), getPathDifference()
40933	* src/ds390/gen.c, src/mcs51/gen.c: reimplemented function  inExcludeList() by using sets instead
40934	fixed width array of pointers
40935
409362003-06-11  Bernhard Held <bernhard AT bernhardheld.de>
40937
40938	* src/pic16/ralloc.c: fix warnings
40939	* src/pic16/pcode.c: fix warning
40940
409412003-06-10  Scott Dattalo  <scott AT dattalo.com>
40942
40943	 Scott D. for Vangelis Rokas (vrokas AT otenet.gr). I (scott) don't
40944	know all the details, but essentially this set of changes enable
40945	the pic16 port to generate movff instructions and generate assembler
40946	directives,
40947	* src/SDCCmain.c:
40948	* src/pic16/gen.c:
40949	* src/pic16/glue.c:
40950	* src/pic16/pcode.c:
40951	* src/pic16/device.c:
40952	* src/pic16/main.c:
40953	* src/pic16/pcode.h:
40954	* src/pic16/pcoderegs.c:
40955	* src/pic16/ralloc.c:
40956	* src/pic16/ralloc.h:
40957
409582003-06-08  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40959
40960	* support/Util/SDCCerr.c, src/SDCCglobl.h, src/SDCCmain.c, doc/sdccman.lyx:
40961	added option --vc, so sdcc errors and warnings are compatible with
40962	Microsoft Visual Studio.
40963
409642003-06-07  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
40965
40966	* device/lib/_atof.c, device/lib/Makefile.in, device/include/stdlib.h,
40967	  device/lib/libfloat.lib: added atof function.
40968
409692003-06-04  Bernhard Held <bernhard AT bernhardheld.de>
40970
40971	* doc/sdccman.lyx: updated to Lyx 1.3
40972	* doc/cdbfileformat.lyx: updated to Lyx 1.3
40973	* doc/test_suite_spec.lyx: updated to Lyx 1.3
40974	* doc/Makefile: added fix for the \tabularnewline problem, thanks to Jesus
40975
409762003-06-03  Bernhard Held <bernhard AT bernhardheld.de>
40977
40978	* src/SDCCpeeph.c: separate peepRules2pCode() for pic16 by "Vangelis Rokas" <vrokas AT otenet.gr>
40979
409802003-06-02  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
40981
40982	* doc/sdccman.lyx: cvs revision keywords, passing pdf information in latex preamble,
40983	  additions to the "related tools/documentation" section
40984
409852003-06-02  Bernhard Held <bernhard AT bernhardheld.de>
40986
40987	* src/SDCCglue.c (tempfileandname): added check for missing TMP/TEMP/TMPDIR variable
40988
409892003-05-29  Bernhard Held <bernhard AT bernhardheld.de>
40990
40991	* src/pic/device.c: added 16F819, patch by "David I. Lehn" <dlehn AT vt.edu>
40992	* src/SDCCcse.c (algebraicOpts): fixed "c * 1"
40993
409942003-05-28  Bernhard Held <bernhard AT bernhardheld.de>
40995
40996	* doc/sdccman.lyx: fix double dash and other minor things
40997	* doc/Makefile: fix double dash
40998
409992003-05-28  Karl Bongers(patches from Martin Helmling)
41000	* debugger/mcs51/sdcdb.c,cmd.c,break.c and .h files. Martin adds
41001	  condition and ignore commands.
41002
410032003-05-28  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
41004
41005	* doc/sdccman.lyx: Changes all over, index improved, smaller margins. The manual
41006	  is in parts still quite out of date, I did changes as far as I felt makes sense
41007	  for a non-native english speaker.
41008	  Please feel free to add to the manual or to correct my changes.
41009	* doc/Makefile: undid touching the date of intermediate tex files.
41010
410112003-05-26  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
41012
41013	* doc/sdccman.lyx: Manual has an index now
41014
410152003-05-25  Bernhard Held <bernhard AT bernhardheld.de>
41016
41017	Finalize muluint/mulsint and mululong/mulslong merging:
41018	* device/lib/_mulint.c
41019	* device/lib/_mullong.c
41020	* device/lib/gbz80/mul.s
41021	* device/lib/gbz80/stubs.s
41022	* device/lib/z80/mul.s
41023	* device/lib/z80/stubs.s
41024	* src/SDCCsymt.c (initCSupport)
41025
410262003-05-25  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
41027
41028	* as/mcs51/lkaomf51.c: Address space 'z' was missing.
41029	* src/avr/avr.dsp, src/ds390/ds390.dsp, src/mcs51/mcs51.dsp,
41030	  src/pic/pic.dsp, src/pic16/pic16.dsp, src/xa51/xa51.dsp,
41031	  src/x80/z80.dsp: peep.rul is bigger now, so /Zm1000 is used
41032	  instead of /Zm500.
41033
410342003-05-25  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
41035
41036	* src/mcs51/peeph.def: added rules 244.x, 245.x. Although they pass
41037	  the regression tests I'm not brave enough to enable 245.b, 245.c
41038	* doc/sdccman.lyx: added latex preamble for hyperref package.
41039	  Using pdflatex this will give you a hyperlinked pdf file with
41040	  bookmarks. (prepend '%' before /usepackage if this breaks something)
41041
410422003-05-24  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
41043
41044	 * doc/sdccman.lyx: updated information about .adb files (fixed bug 742649)
41045
410462003-05-22  Bernhard Held <bernhard AT bernhardheld.de>
41047
41048	* src/pic16/pcode.c (pic16_get_op_from_instruction): fixed a gcc 3.x warning
41049
410502003-05-21    <johan AT balder>
41051
41052	* src/SDCCglue.c (printIval): fixed bug #739934
41053
410542003-05-19  Bernhard Held <bernhard AT bernhardheld.de>
41055
41056	Applied patch from bug 737905 (renamed yylineo to mylineno):
41057	* src/altlex.c
41058	* src/SDCCast.c
41059	* src/SDCglobl.h
41060	* src/SDCC.lex
41061	* src/SDCCsymt.c
41062	* src/SDCCval.c
41063	* src/pic16/pcode.c: Cleaned warnings
41064	* src/pic16/pcodeflow.c: Cleaned warnings
41065	* src/pic16/pcoderegs.c: Cleaned warnings
41066
410672003-05-19  Scott Dattalo  <scott AT dattalo.com>
41068
41069	* src/pic16/pcode.c: Cleaned warnings
41070	* src/pic16/pcodepeep.c: Cleaned warnings
41071	* src/pic16/ralloc.c: Cleaned warnings
41072
410732003-05-19  Bernhard Held <bernhard AT bernhardheld.de>
41074
41075	* doc/sdccman.lyx: fixed bug 739745
41076	* src/pic16/pcode.c (pic16_get_op): fixed warning on alpha
41077
410782003-05-18  Bernhard Held <bernhard AT bernhardheld.de>
41079
41080	* src/port.h: removed DEFAULT_PORT, it's not yet pic16 ;-)
41081	it can be defined with CFLAGS when running configure
41082	* src/SDCCmain.c: fixed compiling + linking with object files
41083
410842003-05-18  Vangelis Rokas (vrokas AT otenet.gr)
41085
41086	* configure.in: configure for pic16 port,
41087	    added --disable-pic16-port
41088	* sdccconf_in.h: added macro OPT_DISABLE_PIC16
41089	* src/SDCCmain.c: linkOptions is changed to set *,
41090	    added if/endif conditional macros to remove options help
41091	    messages from optionsTable when a port is not configured, added
41092	    support for the PIc16 port in the ports table, when executing
41093	    the compiler with no port specified on command line, a default
41094	    port is selected with the new macro DEFAULT_PORT which is
41095	    defined in port.h, in setDefaultOptions() linkOptions is removed
41096	    from initialization assignment, since now it is a set,
41097	    parseCmdLine uses setParseWithComma for linkOptions, in
41098	    linkEdit() linkOptions are accessed with new function indexSet()
41099	    which returns the i'th item of a set variable. See SDCCset.c, in
41100	    linkEdit() when calling buildCmdLine(), added linkOptions as
41101	    last argument. Now users can pass arguments to gplink via the
41102	    -Wl option, main() uses pic16glue() to glue up pic16 programs
41103	* src/SDCCpeeph.c: various changes to support pic16
41104	* src/SDCCset.c: added function  void *indexSet(set *, int)  to
41105	    return the i'th item of the set
41106	* src/SDCCset.h: added function prototype for indexSet()
41107	* src/SDCCsymt.c: in checkSClass(), added support for PIC16
41108	* src/clean.mk: added pic16 in CLEANALLPORTS variable
41109	* src/port.h: added TARGET_ID_PIC16,TARGET_IS_PIC16 macro,
41110	    added macro DEFAULT_PORT
41111	* src/pic/main.c: corrected arguments of gplnk in _linkCmd
41112	* src/pic16/gen.c: bug fix in genCpl(), now the correct code is
41113	    generated
41114	* src/pic16/glue.c: commented out some error producing lines
41115	* src/pic16/main.c: __config directives are commented out to stop
41116	    gpasm complaining and test the linkage with gplink, _linkCmd and
41117	    _asmCmd changed to be more gplink and gpasm friendly
41118	* src/pic16/peeph.def: peep rule 3 is commented out, since it
41119	    produced an error when parsed, peep rule 12 is added to utilize
41120	    movff, but it is commented out since the pCode does not support
41121	    yet a command with 2 address arguments
41122
411232003-05-18    <johan AT balder>
41124
41125	* src/ds390/gen.c (genArrayInit): removed obsolete and buggy ARRAYINIT
41126	* src/ds390/main.c (genArrayInit): removed obsolete and buggy ARRAYINIT
411272003-05-17  Karl Bongers(apply patches from Martin Helmling)
41128
41129	* debugger/mcs51/sdcdb.c,cmd.c,break.c and .h files.
41130	Added feature to script commands from file.
41131
411322003-05-14  Bernhard Held <bernhard AT bernhardheld.de>
41133
41134	* device/lib/_strtok.c: fixed bug #734355 by Lenny Story and Tim Woodall
41135	* src/SDCCutil.c: include ctype.h for win32
41136
411372003-05-13  Bernhard Held <bernhard AT bernhardheld.de>
41138
41139	* src/pic16/*: removed CR from many files, reported by Vangelis Rokas
41140
411412003-05-12  Karl Bongers(apply development patches from Martin Helmling)
41142
41143	* debugger/mcs51/sdcdb.c,simi.c,cmd.c,break.c and .h files.
41144	Fixed so you can set breakpoints prior to run, run does not stop
41145	on entry now.  Add tbreak.  Other enhancements and fixes for use
41146	with ddd.
41147
411482003-05-12  Borut Razem <borut.razem AT siol.net>
41149
41150	* src/SDCCmain.c: fixed the problem with searching the DATADIR as the last resort on *nix
41151
411522003-05-11  Borut Razem <borut.razem AT siol.net>
41153
41154	* src/SDCCutil.c: WIN32 version of getBinPath() calls GetModuleFileName() to determine
41155	the path of bin directory, so that PATH is the only env. variable, which has to be set
41156	in case of standard installation.
41157	* src/ds390/ds390.dsp: increased value of /Zm option to 1000
41158	* src/pic/main.c: add quotes to file name parameters for gplink and gpasm
41159	* src/SDCCglobl.h, src/SDCCmain.c, doc/sdccman.lyx: added --print-search-dirs command line option
41160
411612003-05-04  Bernhard Held <bernhard AT bernhardheld.de>
41162
41163	* src/SDCCmain.c (linkEdit): fixed buffer overflow for gbz80
41164	* support/regression/Makefile: inter-port-clean is no longer nesessary, the
41165	temp files are in the port dir; clean the gen/test directory when
41166	generating new test.c
41167	* support/regression/ports/host/spec.mk: defined OBJEXT for target clean
41168	* support/regression/tests/vaargs.c: fixed gcc 3.3 warning
41169	* support/regression/tests/zeropad.c: added
41170
411712003-05-09    <johan AT balder>
41172
41173	* src/SDCCglue.c: fixed bug #597940
41174
411752003-05-05  Karl Bongers(apply patches from Martin Helmling)
41176
41177	* debugger/mcs51/sdcdb.c,simi.c,cmd.c,symtab.c and .h files.
41178	cache sfr, optimize next,step, fix off by one sourceline,
41179	support ddd list function.
41180	* sim/ucsim/cmd.src/newcmd.cc - small fix for sdcdb use.
41181
411822003-05-04  Bernhard Held <bernhard AT bernhardheld.de>
41183
41184	* support/regression/HTMLgen.py: added compare_s2f()
41185	* support/regression/Makefile: redo 1.27
41186	* support/regression/generate-cases.py: redo 1.5
41187
411882003-04-30  Bernhard Held <bernhard AT bernhardheld.de>
41189
41190	* support/regression/tests/float.c: workaround 33 bit hex constant
41191	* support/regression/tests/simplefloat.c: fix division for host
41192
411932003-04-29  Scott Dattalo  <scott AT dattalo.com>
41194
41195	* src/pic/pcoderegs.c Applied patch from Jim Hawkridge <jim AT jimhawkridge.uk.eu.org>
41196	that tame's the PIC's over-aggressive optimizer.
41197
411982003-04-29  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
41199
41200	 * src.dsw, link/z80/aslink.h, link/z80/linkz80.dsp: z80 linker
41201	 support for MSVC.
41202
412032003-04-29  Kevin Vigor <kevin AT vigor.nu>
41204
41205	Initial support for DS80C400. "Hello world" runs on TINIm400
41206	(with polled I/O).
41207
412082003-04-28  Karl Bongers(apply patches for Martin Helmling)
41209
41210	 * debugger/mcs51/sdcdb.c,simi.c,cmd.c,symtab.c and .h files.
41211	 * Some notes on ddd usage added in debugger/README
41212	 Martin Helmling adding more features and fixes for ddd GUI debugger.
41213	 Code added for nexti, stepi, up, down, and other adjustments.
41214
412152003-04-28  Scott Dattalo  <scott AT DATTALO.COM>
41216
41217	* src/pic/pCodepeep.c non-wildcard asmops are now handled
41218	* src/pic/peeph.def Added two rules to optimize carry manipulation
41219	* src/pic/* removed debug printfs
41220
412212003-04-28  Bernhard Held <bernhard AT bernhardheld.de>
41222
41223	* debugger/mcs51/cmd.c: added header newalloc.h
41224
412252003-04-26  Bernhard Held <bernhard AT bernhardheld.de>
41226
41227	* as/Makefile: new EXEEXT
41228	* as/z80/Makefile: remove trailing slash of BUILDIR
41229	* as/z80/clean.mk: new EXEEXT
41230	* Makefile.common.in: add to CFLAGS (and others), don't replace it
41231	* support/cpp2/Makefile.in: new EXEEXT
41232	* src/pic/glue.c (pic14emitRegularMap): fixed warning
41233
412342003-04-24  Bernhard Held <bernhard AT bernhardheld.de>
41235
41236	Cygwin's gcc always appends .exe: 'gcc -o a a.c' creates a.exe;
41237	EXEEXT was introduced to fix all related problems with targets
41238	"clean", "install" and "uninstall"; a couple of further flaws
41239	especially with "clean" have been fixed too
41240	* as/mcs51/Makefile.in
41241	* as/mcs51/clean.mk
41242	* as/z80/Makefile
41243	* Makefile
41244	* clean.mk
41245	* debugger/mcs51/Makefile.in
41246	* debugger/mcs51/clean.mk
41247	* link/z80/Makefile
41248	* link/z80/Makefile.in
41249	* link/z80/clean.mk
41250	* link/Makefile
41251	* packihx/Makefile.in
41252	* packihx/clean.mk
41253	* sim/ucsim/Makefile
41254	* sim/ucsim/clean.mk
41255	* sim/ucsim/avr.src/Makefile.in
41256	* sim/ucsim/avr.src/clean.mk
41257	* sim/ucsim/s51.src/Makefile.in
41258	* sim/ucsim/s51.src/clean.mk
41259	* sim/ucsim/xa.src/Makefile.in
41260	* sim/ucsim/xa.src/clean.mk
41261	* sim/ucsim/z80.src/Makefile.in
41262	* sim/ucsim/z80.src/clean.mk
41263	* sim/ucsim/main_in.mk
41264	* sim/ucsim/packages_in.mk
41265	* sim/ucsim/gui.src/Makefile.in
41266	* sim/ucsim/gui.src/serio.src/Makefile.in
41267	* sim/ucsim/gui.src/serio.src/clean.mk
41268	* src/Makefile.in
41269	* src/clean.mk
41270	* support/cpp2/Makefile.in
41271	* support/cpp2/clean.mk
41272	* support/makebin/Makefile
41273	* support/makebin/clean.mk
41274	* support/scripts/sdcc_mingw32: --program-suffix no longer needed
41275	* doc/sdccman.lyx: --program-suffix no longer needed
41276
412772003-04-23  Karl Bongers(apply patches for Martin Helmling)
41278
41279	 * debugger/mcs51/sdcdb.c,simi.c,cmd.c,..
41280	 Martin Helmling added support for ddd GUI debugger.
41281	 Code added to display assembly, set variables, and other commands
41282	 to interface to ddd.
41283
412842003-04-23  Bernhard Held <bernhard AT bernhardheld.de>
41285
41286	* as/Makefile: fix target clean
41287	* as/clean.mk: fix target clean
41288	* as/z80/clean.mk: fix target clean
41289
412902003-04-22  Bernhard Held <bernhard AT bernhardheld.de>
41291
41292	* Makefile.common.in: added  AT EXEEXT AT
41293	* configure.in: removed all mingw32 stuff
41294	* configure: rebuilt from configure.in
41295	* doc/sdccman.lyx: updated section "installation"
41296	* support/scripts/sdcc_mingw32: adapted to configure
41297	* support/scripts/sdcc_cygwin_mingw32: added
41298
412992003-04-22  Scott Dattalo  <scott AT dattalo.com>
41300
41301	* src/pic Added object file support for the PIC port
41302	* src/pic Applied patch from Craig Franklin (this started the object file support)
41303	* src/regression Updated the PIC regression tests for object files
41304
413052003-04-20  Borut Razem <borut.razem AT siol.net>
41306
41307	* sdcc/as/mcs51/lklex.c: make getfid() more robust and fixed gcc warning:
41308	  lklex.c: In function `getfid':
41309	  lklex.c:203: warning: array subscript has type `char'
41310	* src/SDCCglobl.h: small change in stack handling macros, to avoid crash when compiled
41311	  with MSVC with global optimization enabled (probably an cl compiler bug ;-)
41312	* support/Util/SDCCerr.c, support/Util/SDCCerr.h: added function fatal(), called from
41313	  stack handling macros
41314
413152003-04-19  Borut Razem <borut.razem AT siol.net>
41316
41317	* "handling space characters in file path" task:
41318	* src/SDCCmacro.c: fixed bug in handlig quote at the end of line
41319	* support/Util/BuildCmd.c: define par as NULL if parameter value is invalid
41320	* support/Util/MySystem.h: make it self-sufficient
41321	* src/avr/main.c, src/ds390/main.c, src/mcs51/main.c, src/pic/main.c, src/xa51/main.c,
41322	  src/z80/main.c, sdcc/as/mcs51/lklex.c:
41323	  handling space characters in file path
41324	* src/SDCCmain.c: introduced setDataPaths() function, {datadir} macro
41325	  (it will be used by assemblers, which have their own includes, e.g. gpasm)
41326	* support/Util/MySystem.c: handling space characters in executable's path
41327
413282003-04-19  Bernhard Held <bernhard AT bernhardheld.de>
41329
41330	* as/z80/Makefile: fix permanent rebuild of z80
41331	* sim/ucsim/gui.src/Makefile.in: target "install" builds the same packages as target "all"
41332	* support/regression/tests/bitfields.c: added Johan's bitfields.c
41333
413342003-04-18 	Kevin Vigor <kevin AT vigor.nu>
41335
41336	* src/SDCCopt.c: add special case optimization to replace modulo by
41337	  a power of two with a bitwise AND.
41338
413392003-04-18    <johan AT balder>
41340
41341	* src/mcs51/gen.c (getFreePtr): fixed bug #635354
41342
413432003-04-17    <johan AT balder>
41344
41345	* src/mcs51/ralloc.c (packRegsForAssign): fixed bug #716790 and removes lot's of redundant register usage around function calls
41346	* src/mcs51/ralloc.c (packRegisters): fixed bug #720667
41347
413482003-04-13  Borut Razem <borut.razem AT siol.net>
41349
41350	* doc/sdccman.lyx: updated info about #pragma SAVE/RESTORE nesting
41351	* configure.in, configure: fixed problems on cygwin/WinCVS environmet with ports.* line endings;
41352	  fixed mingw problem in adl_NORMALIZE_PATH
41353
413542003-04-12  Borut Razem <borut.razem AT siol.net>
41355
41356	* fixed "#pragma SAVE/RESTORE can not be nested":
41357	* src/SDCC.lex: reworked pragma handling functions
41358	* sdcc/src/SDCCglobl.h: reworked stack handling macros
41359	* support/Util/SDCCerr.c, support/Util/SDCCerr.h: added E_STACK_VIOLATION error
41360
413612003-04-12  Bernhard Held <bernhard AT bernhardheld.de>
41362
41363	* src/SDCCutil.c (pathEquivalent): defined but not used
41364	* debugger/mcs51/sdcdb.c: replace SDCC_LIB_DIR
41365	* configure.in: remove sdcc_datadir, sdcc_lib_dir and sdcc_include_dir
41366	* configure: rebuilt from configure.in
41367	* sdccconf_in.h: remove SDCC_LIB_DIR and SDCC_INCLUDE_DIR
41368	* sdcc_vc_in.h: remove SDCC_LIB_DIR and SDCC_INCLUDE_DIR
41369	* device/include/Makefile.in: replace sdcc_datadir
41370	* device/lib/Makefile.in: replace sdcc_datadir
41371	* Makefile.common.in: add LDFLAGS from configure
41372	* packihx/Makefile.in: use LDFLAGS
41373	* src/Makefile.in: use LDFLAGS
41374	* support/cpp2/Makefile.in: add LDFLAGS from configure
41375	* support/makebin/Makefile: use LDFLAGS
41376	* .version: bumped version number to 2.3.5
41377
413782003-04-12  Borut Razem <borut.razem AT siol.net>
41379
41380	* completed "different paths" task:
41381	* src/SDCCmacro.c: fixed bug in handling quotes
41382	* src/SDCCutil.c, src/SDCCutil.c: rewritten getPrefixFromBinPath()
41383	* src/SDCCmain.c: _discoverPaths() replaced with setBinPaths(), setIncludePath() and setLibPath()
41384
413852003-04-12  Bernhard Held <bernhard AT bernhardheld.de>
41386
41387	* src/pic/pcoderegs.c (Remove1pcode): fix warning on alpha
41388
413892003-04-11 kevin Vigor <kevin AT vigor.nu>
41390
41391	* ds390/gen.c ds390/peeph.def: fix bug 706781
41392
413932003-04-11  Borut Razem <borut.razem AT siol.net>
41394
41395	* support/Util/dbuf.c, support/Util/dbuf.h: update to version 1.1.1 - re-added C++ stuff to make it still more portable
41396
413972003-04-10  Scott Dattalo  <scott AT dattalo.com>
41398
41399	* src/pic/* Applied the pointer-to-function patch from Steve Tell.
41400	* src/pic/* Fixed several pointer bugs. (PIC port broke when the ruonly bit was
41401	 set - this bit used to not be set...).
41402	* src/pic/gen.c Fixed buf 609268 ==> x = (x+1) & 0xf; generated
41403	  bad code in PIC Port
41404	* src/regression/and2.c added to test bug 609268
41405	* src/regression/Makefile added and2.c to regression test
41406
41407
414082003-04-08    <johan AT CP255758-A>
41409
41410	* src/mcs51/gen.c (gen51Code): display reg usage in --icode-in-asm
41411	* src/mcs51/ralloc.c (serialRegAssign): update the registers in use and save some slocs
41412	* src/SDCCicode.h: added riu to show the register usage in --icode-in-asm
41413
414142003-04-07  Bernhard Held <bernhard AT bernhardheld.de>
41415
41416	* configure.in: fully support prefix, exec_prefix, datadir, docdir;
41417	fix bug #487815
41418	* support/cpp2/Makefile.in: fix bug #487815
41419	* configure: rebuilt from configure.in
41420	* Makefile.common.in: docdir changed, new path suffixes
41421	* sdccconf_in.h: new RETSIGTYPE, and other PATHs
41422	* sdcc_vc_in.h: reflect changes from sdccconf.h
41423	* src/SDCCglobl.h: remove *SEPARATOR_CHARS, they are now in sdccconf.h
41424	* src/SDCCutil.h: remove BINDIR hack
41425	* doc/sdccman.lyx: update new path hierarchy
41426
414272003-04-06    Paul Stoffregen <paul AT pjrc.com>
41428
41429	* src/SDCCpeeph.c: added okToRemoveSLOC test
41430
414312003-04-06    Paul Stoffregen <paul AT pjrc.com>
41432
41433	* device/lib/printf_fast.c: added leading zero format ("%06d", etc)
41434
414352003-04-06    Paul Stoffregen <paul AT pjrc.com>
41436
41437	* src/SDCCpeeph.c: added labelIsReturnOnly test
41438	* src/mcs51/peeph.def: Peephole 244: replace ljmp to ret with ret
41439
414402003-04-05    <johan AT balder>
41441
41442	* src/SDCCcse.c (cseAllBlocks): fixed bug #460088
41443	* src/SDCCloop.c (DEFSETFUNC): fixed bug #460088
41444	* src/SDCCopt.c (eBBlockFromiCode): fixed bug #460088
41445	* src/SDCCast.c: fixed a warning
41446	* src/SDCCast.h: fixed a warning
41447	* src/SDCCicode.c (operandFromAst): fixed a warning
41448
414492003-04-04    <johan AT balder>
41450
41451	* src/SDCCloop.c (DEFSETFUNC): undid the fix for bug #519584
41452	* src/SDCCast.c (decorateType): fixed bug #715076
41453	* src/SDCC.y: fixed bug #702907
41454
414552003-04-03    <johan AT balder>
41456
41457	* device/lib/_mulint.c (_muluint): new #pragma LESS_PEDANTIC
41458	* src/SDCCopt.c (eBBlockFromiCode): new #pragma LESS_PEDANTIC
41459	* src/SDCCglobl.h (PRAGMA_LESSPEDANTIC): new #pragma LESS_PEDANTIC
41460	* src/SDCC.lex (doPragma): new #pragma LESS_PEDANTIC
41461	* src/SDCCmain.c (parseCmdLine): new #pragma LESS_PEDANTIC
41462
414632003-04-03  Bernhard Held <bernhard AT bernhardheld.de>
41464
41465	* _decdptr.c: fix return values
41466	* _gptrget.c: fix return values
41467	* _gptrgetc.c: fix return values
41468	* _gptrput.c: fix return values
41469	* _mulint.c: fix return values
41470	* as/z80/Makefile: fix 'make -j' problem
41471
414722003-04-02  Bernhard Held <bernhard AT bernhardheld.de>
41473
41474	* Makefile.common.in: unused PORT, SCC and SAS removed, fixed docdir
41475	* configure.in: big cleanup, updated to autoconf 2.5x
41476	* configure: rebuilt from configure.in
41477	* sdccconf_in.h: new RETSIGTYPE, and other PATHs
41478	* sdcc_vc_in.h: reflect changes from sdccconf.h
41479	* doc/Makefile: fixed a flaw in "make install"
41480
414812003-04-02    <johan AT balder>
41482
41483	* src/ds390/gen.c (genCmp): no comments
41484	* src/mcs51/gen.c (genCmp): no comments
41485	* src/SDCCopt.c (eBBlockFromiCode): detect missing return values
41486	* src/SDCCast.c (ast_print): fixed the function type in --dumptree
41487
414882003-04-01  Bernhard Held <bernhard AT bernhardheld.de>
41489
41490	* support/regression/generate-cases.py: place generated file in given sub directory
41491	* support/regression/ports/host/spec.mk: prevent removal of testfwk.o
41492	* support/regression/Makefile: improvements for 'make -j';
41493	side effect: it's simpler and faster now
41494
414952003-03-31  Borut Razem <borut.razem AT siol.net>
41496
41497	* src/z80/main.c: link-{port} and as-{port} defined without path
41498	* src/src.dsp: support/Util/MySystem.h and src/SDCCutil.h added to project
41499
415002003-03-31  Bernhard Held <bernhard AT bernhardheld.de>
41501
41502	* Makefile, src/Makefile.in: add dependencies, so that 'make -j' works
41503
415042003-03-30  Borut Razem <borut.razem AT siol.net>
41505
41506	* support/Util/BuildCmd.c, support/Util/BuildCmd.h: rewrite buildCmdLine(),
41507	  changed type of list parameter to set
41508	* src/ds390/main.c: changed type of parameter asmOptions to set in _tininative_do_assemble()
41509	* src/port.h: changed type of do_assemble() parameter to set
41510	* src/SDCCmain.c: type of asmOptions changed to set, introduced setParseWithComma(),
41511	  sdcpp defined without path, removed variable VersionString, introduced set binPathSet,
41512	  definition of "cppoutfilename" macro with NULL value in preProcess()
41513	* src/SDCCglobl.h: included "SDCCset.h", added declaration of setParseWithComma()
41514	* src/SDCCglue.c: removed variable VersionString, inroduced spacesToUnderscores()
41515	* support/Util/MySystem.c, support/Util/MySystem.h: rewrite, char *ExePathList[]
41516	  replaced with set *binPathSet
41517	* shash_add() deallocates the item, if allready exsists, before adding the new one
41518	* src/SDCCmacro.c: handling macros with empty or NULL values in _evalMacros()
41519
415202003-03-30  Scott Dattalo  <scott AT dattalo.com>
41521
41522	* src/pic/gen.c: Commit patch from Steve Tell <tell AT telltronics.org> that fixes
41523	  a nested for loop bug in the PIC port
41524	* src/regression/nestfor.c: new regression test file Steve wrote to test nested
41525	  for loops
41526
415272003-03-29  Bernhard Held <bernhard AT bernhardheld.de>
41528
41529	* support/Util/dbuf.h: remove C++ stuff to make it portable
41530
415312003-03-28  Borut Razem <borut.razem AT siol.net>
41532
41533	* src/SDCC.lex: Fix for bug #711240: dynamic buffer handling of C
41534	  literal strings in stringLiteral()
41535	* support/Util/dbuf.c, support/Util/dbuf.h: added: dynamic buffer handling
41536	* src/Makefile.bcc, src/Makefile.in, src/src.dsp: added support/Util/dbuf.c
41537	  to the project
41538
415392003-03-27  Paul Stoffregen <paul AT pjrc.com>
41540
41541	* src/SDCCpeeph.c (pcDistance): accurate byte distance for mcs51
41542
415432003-03-26    <johan AT balder>
41544
41545	* src/mcs51/gen.c (saveRegisters): catched symbol abuse
41546	* src/ds390/gen.c (saveRegisters): catched symbol abuse
41547	* src/SDCCast.c (decorateType): fixed " -v < 3"
41548
415492003-03-23  Bernhard Held <bernhard AT bernhardheld.de>
41550
41551	* doc/cdbfile.html: removed, replaced by cdbfileformat.lyx
41552	Added Lenny Story's debug infrastructure changes:
41553	* src/Makefile.in:  added new files cdbFile.c and SDCCdebug.c
41554	* src/Makefile.bcc: added new files cdbFile.c and SDCCdebug.c
41555	* src/cdbFile.c: added
41556	* src/SDCCdebug.c: added
41557	* src/SDCCdebug.h: added
41558	* src/SDCCast.c (createFunction)
41559	* src/SDCCglue.c (emitRegularMap, emitStaticSeg, emitOverlay, glue)
41560	* src/SDCCmain.c (parseCmdLine, main)
41561	* src/SDCCmem.c (redoStackOffsets)
41562	* src/SDCCsymt.c (cdbStructBlock, cdbTypeInfo, cdbSymbol, cdbStruct, cdbStructBlock)
41563	* src/SDCCsymt.h
41564	* src/common.h
41565	* src/avr/gen.c (genAVRCode)
41566	* src/ds390/gen.c (gen390Code)
41567	* src/mcs51/gen.c (gen51Code)
41568	* src/pic/gen.c (genpic14Code)
41569	* src/pic/glue.c (pic14emitRegularMap, pic14emitStaticSeg, pic14emitOverlay, picglue)
41570	* src/xa51/gen.c (genXA51Code)
41571	* src/SDCCast.c: fixed "void foo(void){char c; -c < 0;}"
41572
415732003-03-22  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
41574
41575	* src/mcs51/gen.c (genCodePointerGet): quicker code for bug #700797
41576	* src/mcs51/peeph.def: added rules 177, 241.x to 243, touched 181, 182.x, 193.x
41577
415782003-03-22    <johan AT balder>
41579
41580	* src/SDCCicode.c (geniCodeDerefPtr): fixed bug #698231
41581
415822003-03-21  Bernhard Held <bernhard AT bernhardheld.de>
41583
41584	* support/scripts/sdcc_mingw32: adapted to configure from autoconf 2.54
41585	* doc/cdbfileformat.lyx: added, written by Lenny Story
41586	* doc/Makefile: added cdbfileformat.lyx
41587	* doc/clean.mk: added cdbfileformat.lyx
41588
415892003-03-20  Bernhard Held <bernhard AT bernhardheld.de>
41590
41591	* src/mcs51/peeph.def: fix bug #705773
41592
415932003-03-20    <johan AT balder>
41594
41595	An sfr/sbit can have an "at #" AND an initializer
41596	* src/SDCCsymt.c (checkSClass):
41597	* src/SDCCmem.c (allocGlobal):
41598	* src/SDCCmem.c (allocLocal):
41599	* src/SDCCast.c (createBlock):
41600
416012003-03-17  Bernhard Held <bernhard AT bernhardheld.de>
41602
41603	* src/ds390/peeph.def: fix bug #704878: added rule 213.b suggested by Jan Rejlek
41604
416052003-03-16    <johan AT balder>
41606
41607	Undid the hackup of const and volatile, the problem is much bigger
41608	* src/SDCC.y:1.65
41609	* src/SDCCast.c:1.171
41610	* src/SDCCglue.c:1.138
41611	* src/SDCCicode.c:1.146
41612	* src/SDCCsymt.c:1.150
41613	* src/SDCCval.c:1.65
41614
416152003-03-15  Bernhard Held <bernhard AT bernhardheld.de>
41616
41617	* src/mcs51/ralloc.c (packRegsForAssign): fixed bug #703541
41618	* src/ds390/gen.c (genAddrOf): fixed bug #704087
41619
416202003-03-13    <johan AT balder>
41621
41622	Hackup const and volatile modifiers in type chains a bit:
41623	* src/SDCC.y:1.63
41624	* src/SDCCast.c:1.169
41625	* src/SDCCglue.c:1.136
41626	* src/SDCCicode.c:1.143
41627	* src/SDCCsymt.c1.146
41628	* src/SDCCsymt.h1.59
41629	* src/SDCCval.c:1.63
41630
416312003-03-12    <johan AT balder>
41632
41633	* src/SDCCBBlock.h: more LRH debugging junk
41634	* src/SDCCcflow.h: more LRH debugging junk
41635	* src/SDCCloop.c: more LRH debugging junk
41636	* src/SDCC.y (struct_declaration): fixed bug #697590
41637	* src/SDCCsymt.[hc] (cloneSpec): NEVER EVER use this again
41638	* src/ds390/gen.c (aopForRemat): fixed bug #700031
41639	* src/SDCCglue.c (emitStaticSeg): fixed bug #700797
41640
416412003-03-11 Kevin Vigor <kevin AT vigor.nu>
41642	* src/SDCCpeeph.c: quit being lazy and made proper fix (peephole
41643	test function names must now match exactly).
41644	* src/SDCCcse.c: added special case in findCheaperOp to allow
41645	extending a short integer. Makes less awful code for bug 700121 test case.
41646
416472003-03-11  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
41648
41649	* as/mcs51/lkmain.c: Added ASlink-Warning to messages
41650	* as/mcs51/lkaomf51.c: Fixed bug when linking asmblink example
41651
416522003-03-11 Kevin Vigor <kevin AT vigor.nu>
41653
41654	* src/SDCCpeeph.c: fix so that operandsNotEqualX functions are
41655	actually called (operandsNotEqual() was called for all
41656	operandsNotEqualX tests).
41657
416582003-03-11 Kevin Vigor <kevin AT vigor.nu>
41659
41660	* src/SDCCcse.c: fix findCheaperOp to prevent replacing int types
41661	with shorter literals. Fixes bug 700121.
41662
416632003-03-11    <johan AT balder>
41664
41665	* src/SDCCsymt.c (compareType): a (void *) can be assigned to any pointer
41666
416672003-03-11  Bernhard Held <bernhard AT bernhardheld.de>
41668
41669	* src/SDCCloop.c (mergeRegions): an evil beast is dead
41670	* src/SDCCmain.c (preProcess): minor cleanup: eliminate preOutName
41671
416722003-03-10  Borut Razem <borut.razem AT siol.net>
41673
41674	* src/SDCCmain.c: pipe preprocessor's output
41675	* support/Util/MySystem.c, support/Util/MySystem.h: added my_popen()
41676	* sdcc_vc_in.h: define pclose as _pclose for WIN32
41677	* src/SDCCglue.c, src/SDCCglue.h: added set pipeSet, added function closePipes,
41678	which closes all pipes in pipeSet set
41679	* src/SDCCset.c: free deleted item in function deleteSetItem()
41680	* src/src.dsp, src/z80/z80.dsp: files support/Util/BuildCmd.c and support/Util/MySystem.c
41681	moved from z80 to src subproject
41682	* .version: increased version number to 2.3.4
41683
416842003-03-10  Bernhard Held <bernhard AT bernhardheld.de>
41685
41686	* support/regression/ports/mcs51/spec.mk: increase timeout for CF's sparc to 30s
41687	* support/regression/ports/ds390/spec.mk: increase timeout for CF's sparc to 25s
41688	* support/regression/ports/xa51/spec.mk: fix typo
41689
416902003-03-09  Bernhard Held <bernhard AT bernhardheld.de>
41691
41692	* src/SDCCglobl.h: PATH_MAX is already defined in mingw32 headers
41693
416942003-03-09  Borut Razem <borut.razem AT siol.net>
41695
41696	* src/SDCCmain.c: pipe preprocessor's output
41697	* support/Util/MySystem.c, support/Util/MySystem.h: added my_popen()
41698	* sdcc_vc_in.h: define pclose as _pclose for WIN32
41699	* src/SDCCglue.c, src/SDCCglue.h: added set pipeSet, added function closePipes,
41700	which closes all pipes in pipeSet set
41701	* src/SDCCset.c: free deleted item in function deleteSetItem()
41702	* src/src.dsp, src/z80/z80.dsp: files support/Util/BuildCmd.c and support/Util/MySystem.c
41703	moved from z80 to src subproject
41704
417052003-03-09  Borut Razem <borut.razem AT siol.net>
41706
41707	* src/SDCCglue.c: re-implemented tempfilename() and tempfile(): using mkstemp() if available
41708	* src/SDCCsymt.h: fixed MSVC and BORLANDC compilation (included SDCCglobl.h instead srccconf.h)
41709	* sdcc_vc_in.h: explicitly undefined HAVE_MKSTEMP which is not available on BORLANDC and MSVC
41710	* src/SDCCset.h: removed inclusion of sdccconf.h or sdcc_vc.h
41711	* src/SDCCglobl.h: unification of WIN32 native definitions
41712
417132003-03-09  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
41714
41715	* src/mcs51/gen.c: applied in-/dec patch mentioned on sdcc-devel 2003-03-01
41716
417172003-03-08  Bernhard Held <bernhard AT bernhardheld.de>
41718
41719	* src/configure.in:   check for endianess (even while cross-compiling)
41720	* src/configure:      check for endianess (even while cross-compiling)
41721	* src/configure_in.h: check for endianess (even while cross-compiling)
41722	* src/avr/gen.c:        remove old endianess stuff
41723	* src/mcs51/gen.c:      remove old endianess stuff
41724	* src/ds390/gen.c:      remove old endianess stuff
41725	* src/pic/gen.c:        remove old endianess stuff
41726	* src/pic/genarith.c:   remove old endianess stuff
41727	* src/pic/glue.c:       fix endianess check
41728	* src/pic16/gen.c:      remove old endianess stuff
41729	* src/pic16/genarith.c: remove old endianess stuff
41730	* src/pic16/glue.c:     fix endianess check
41731	* src/xa51/gen.c:       remove old endianess stuff
41732	* src/z80/gen.c:        fix endianess check
41733	* src/SDCCglue.c:       fix endianess check
41734	* src/ds390/peeph.def: fix bug 700036
41735
417362003-03-08  Bernhard Held <bernhard AT bernhardheld.de>
41737
41738	* src/SDCCsymt.h: use appropriate data-types on host for SDCC's int and long
41739	* src/configure: find appropriate data-types on host for SDCC's int and long
41740	* src/configure.in: find appropriate data-types on host for SDCC's int and long
41741	* src/sdccconf_in.h: find appropriate data-types on host for SDCC's int and long
41742	* src/xa51/gen.c: use %d, not %ld for 4 byte variables
41743
417442003-03-07    <johan AT balder>
41745
41746	Just a big NOOP:
41747		some minor cleanups before the big shot
41748		OP_DEFS and OP_USES now use Kevin's protection
41749		new option --nolabelopt
41750
41751	* src/SDCCBBlock.c:
41752	* src/SDCCast.c,:
41753	* src/SDCCcflow.c:
41754	* src/SDCCcse.c:
41755	* src/SDCCicode.c:
41756	* src/SDCCicode.h:
41757	* src/SDCClabel.c:
41758	* src/SDCCloop.c:
41759	* src/SDCCmain.c:
41760	* src/ds390/ralloc.c:
41761	* src/mcs51/ralloc.c:
41762	* src/pic/ralloc.c:
41763	* src/xa51/ralloc.c:
41764	* src/z80/ralloc.c:
41765
417662003-03-06  Bernhard Held <bernhard AT bernhardheld.de>
41767
41768	* src/pic/pcode.c (get_op): fix 64 bit warnings
41769	* src/pic/pcode.c (pCode2str): fix 64 bit warnings
41770	* src/SDCChasht.c (newHashTable): fix 64 bit warnings
41771	* src/SDCCsymt.c (checkTypeSanity): fix 64 bit warnings
41772	* support/regression/tests/malloc.c: fix 64 bit warnings
41773
417742003-03-04  Bernhard Held <bernhard AT bernhardheld.de>
41775
41776	* src/mcs51/gen.c (genMinus): fixed bug 696436
41777
417782003-03-02  Borut Razem <borut.razem AT siol.net>
41779
41780	* src/SDCCmain.c: added BORLANDC, corrected MSVC in printVersionInfo()
41781
417822003-02-26  Bernhard Held <bernhard AT bernhardheld.de>
41783
41784	* configure.in: test for mkstemp
41785	* sdccconf_in.h: add HAVE_MKSTEMP
41786
417872003-02-24  Bernhard Held <bernhard AT bernhardheld.de>
41788
41789	* device/include/ctype.h: removed warning while using --stack-auto
41790	* device/include/malloc.h: removed warning while using --stack-auto
41791	* device/include/string.h: removed warning while using --stack-auto
41792
417932003-02-23  Borut Razem <borut.razem AT siol.net>
41794
41795	* src/asm.h: corrected assertion in function printILine(): _pipe() was not executed on MSVC,
41796	because NDEBUG is defined (see man assert)
41797	* sdcc_vc_in.h: vsnprintf is defined as _vsnprintf on MSVC
41798
417992003-02-23  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
41800
41801	* src/mcs51/gen.c (genUminusFloat): avoided dptr in-/decrement for xdata variables
41802	* src/mcs51/peeph.def: added rule suggested by Gernot Fink, white space/comment changes
41803
418042003-02-18  Frieder Ferlemann <Frieder.Ferlemann AT web.de>
41805
41806	* src/SDCCpeeph.c: added peephole conditions testing for same arguments
41807	* src/mcs51/peeph.def: added rules 238a-d which remove redundant moves
41808
418092003-02-18    <johan AT balder>
41810
41811	* as/mcs51/asmain.c (asmbl): module can start with a digit
41812	* as/z80/asmain.c (asmbl): module can start with a digit
41813
418142003-02-16  Bernhard Held <bernhard AT bernhardheld.de>
41815
41816	* sim/ucsim/mkecho: inserted #!/bin/sh for Cygwin, so that it's executable
41817	* src/asm.c: fix pipe() for Mingw32
41818
418192003-02-15  Bernhard Held <bernhard AT bernhardheld.de>
41820
41821	* src/SDCCglue.h: make tmpfileNameSet available for preOutName
41822	* src/SDCCmain.c (preProcess): make sure, that preOutName will be deleted;
41823	make -V work again; --c1mode reads now from stdin
41824	* doc/sdccman.lyx: added --c1mode
41825	* support/Util/SDCCerr.c: new messages for c1 mode
41826	* support/Util/SDCCerr.h: new messages for c1 mode
41827	* src/SDCC.lex (checkCurrFile): test if fullSrcFileName is NULL for c1mode
41828
418292003-02-15    <johan AT balder>
41830
41831	* src/asm.c: new options: --no-c-code-in-asm and --i-code-in-asm
41832
418332003-02-14  Bernhard Held <bernhard AT bernhardheld.de>
41834
41835	* doc/sdccman.lyx: Environment variables, -o and other minor things
41836
418372003-02-14    <johan AT balder>
41838
41839	* src/xa51/main.c: before anyone really tries to use it :)
41840
41841	* Install doc's in share/sdcc/doc
41842	* removed some obsolete files
41843	* Do a proper make distclean and uninstall
41844	M Makefile.common.in
41845	R sdccbuild.sh
41846	M as/Makefile
41847	M device/include/Makefile.in
41848	M device/lib/Makefile.in
41849	M doc/sdccman.lyx
41850	M link/Makefile
41851	M sim/ucsim/doc/Makefile.in
41852	M src/clean.mk
41853	R src/avr/peeph.rul
41854	R src/xa51/peeph.rul
41855	M support/cpp2/Makefile.in
41856	M support/makebin/Makefile
41857
41858
418592003-02-13  Bernhard Held <bernhard AT bernhardheld.de>
41860
41861	* support/regression/ports/host/spec.mk: use cc as host compiler for max osx
41862
418632003-02-10  Borut Razem <borut.razem AT siol.net>
41864
41865	* doc/bccinst.txt, packihx/packihx.c, sdcc_vc_in.h, src/SDCCset.h,
41866	support/cpp2/config.in: Borland C++ build doesn't depend on Cygwin configure
41867	* Bcc.ini, Makefile.bcc, as/mcs51/Makefile.bcc,
41868	device/examples/ds390/tinitalk/Makefile.bcc, packihx/Makefile.bcc,
41869	support/cpp2/Makefile.bcc, src/Makefile.bcc, src/avr/Makefile.bcc,
41870	src/ds390/Makefile.bcc, src/izt/Makefile.bcc, src/mcs51/Makefile.bcc,
41871	src/pic/Makefile.bcc, src/pic16/Makefile.bcc, src/xa15/Makefile.bcc,
41872	src/z80/Makefile.bcc: Borland Makefile cleanup
41873	* as/z80/Makefile.bcc: Added Borland Makefile
41874	* support/cpp2/borland.h: Removed
41875
418762003-02-10  Bernhard Held <bernhard AT bernhardheld.de>
41877
41878	* doc/sdccman.lyx: new pragma NOIV by "Johannes Stezenbach" <js AT convergence.de>
41879	* src/SDCC.lex: new pragma NOIV
41880	* src/SDCCglobl.h: new pragma NOIV
41881	* src/SDCCmem.c: new pragma NOIV
41882
418832003-02-09  Bernhard Held <bernhard AT bernhardheld.de>
41884
41885	* src/SDCCmain.c: signal handling is switched off by SDCC_LEAVE_SIGNALS
41886
418872003-02-09  Bernhard Held <bernhard AT bernhardheld.de>
41888
41889	* src/SDCCmain.c: signal handling is switched off by --debug
41890	* doc/Makefile: small fix for install; use clean.mk again
41891	* doc/clean.mk: clean *.pdf and *.html too
41892
418932003-02-08  Bernhard Held <bernhard AT bernhardheld.de>
41894
41895	* device/lib/_mulint.c: small fix for large/ds390 --int-long-reent resp. --stack-auto
41896	* device/lib/printfl.c: fix a ds390 bug by making it portable
41897	* src/SDCCsymt.c (initCSupport): fix compile warning on Cygwin
41898	* src/SDCCopt.c (cnvToFloatCast): fix compile warning on Cygwin
41899	* src/SDCCopt.c (cnvFromFloatCast): fix compile warning on Cygwin
41900	* debugger/mcs51/cmd.c: converted multi-line string literals
41901	* sim/ucsim/globals.cc: converted multi-line string literals
41902	* src/SDCCmain.c: introduced signal handler to remove temp files
41903	* doc/Makefile: small tweaks, implement clean
41904	* doc: removed generated files
41905
419062003-02-05  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
41907
41908	* as/mcs51/aslink.h, as/mcs51/lkihx.c, as/mcs51/lkrloc.c:  Applied
41909	patch from Jan Rejlek <jr AT apex-lib.cz> to fix Bug 677692: "Extended
41910	Address Record is not correctly generated for DS390."
41911
419122003-02-02  Borut Razem <borut.razem AT siol.net>
41913
41914	* Makefile.bcc: removed non existing cpp project and non compilable izt project from makefile
41915	* as/mcs51/asm.h: fixed compilation with Borland C
41916	* support/cpp2/Makefile.bcc: added rule to generate auto-host.h
41917	* support/cpp2/auto-host_vc_in.h: fixed compilation with Borland C
41918	* src/mcs51/mcs51a.dsp: corrected misspelled project name from msc51a to mcs51a
41919	* src/avr/Makefile.bcc, src/ds390/Makefile.bcc, src/izt/Makefile.bcc,
41920	src/mcs51/Makefile.bcc, src/pic16/Makefile.bcc, src/xa51/Makefile.bcc,
41921	src/z80/Makefile.bcc: delete $(LIB) only if exist
41922	* src/Makefile.bcc, src/pic/Makefile.bcc:  fixed compilation with Borland C
41923
419242003-02-02  Bernhard Held <bernhard AT bernhardheld.de>
41925
41926	* device/include/malloc.h: introduced NULL
41927	* device/include/string.h: introduced NULL
41928	* device/include/stdlib.h: introduced NULL
41929	* device/lib/_memcpy.c: removed NULL
41930	* device/lib/_strcat.c: removed NULL
41931	* device/lib/_strchr.c: removed NULL
41932	* device/lib/_strcmp.c: removed NULL
41933	* device/lib/_strcpy.c: removed NULL
41934	* device/lib/_strcspn.c: removed NULL
41935	* device/lib/_strlen.c: removed NULL
41936	* device/lib/_strncat.c: removed NULL
41937	* device/lib/_strncmp.c: removed NULL
41938	* device/lib/_strncpy.c: removed NULL
41939	* device/lib/_strpbrk.c: removed NULL
41940	* device/lib/_strrchr.c: removed NULL
41941	* device/lib/_strspn.c: removed NULL
41942	* device/lib/_strstr.c: removed NULL
41943	* device/lib/_strtok.c: removed NULL
41944	* device/lib/malloc.c: removed NULL, include own header
41945
419462003-02-02    <johan AT balder>
41947
41948	* 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
41949	* support/regression/fwk/lib/testfwk.c: div and mod isn't broken anymore
41950	* regressions ds390/spec.mk and mcs51/spec.mk (timeout): my good old balder isn't fast enough for some tests
41951	* src/z80/gen.c (genZ80Code): added c-lines in asm comments
41952	* as/z80/asm.h (NINPUT): increased for long c-comments in regression tests
41953	* src/z80/gen.c (genRightShiftLiteral): fixed the (char)(-3)>>8 (I think)
41954
419552003-02-01  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
41956
41957	* src/SDCCmain.c: Fixed bug 678574: "ds390: ASlink-Error-Stack overlaps
41958	area 'DATA'"
41959
419602003-02-01    <johan AT balder>
41961
41962	* src/SDCCval.c (valBitwise): fixed Karl's "2 | (1<<8)"
41963
419642003-01-31    <johan AT CP255758-A>
41965
41966	* src/ds390/main.c (_ds390_genAssemblerPreamble): applied Jan Rejlek's >64K startup patch
41967
419682003-01-30    <johan AT balder>
41969
41970	* src/SDCCBBlock.c: automatic bug detection
41971	* src/SDCCicode.c: automatic bug detection
41972
419732003-01-29  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
41974
41975	* src/SDCCglobl.h:   now --xram-size 0 works
41976	* src/SDCCmain.c:    now --xram-size 0 works
41977
419782003-01-29    <johan AT balder>
41979
41980	* src/almosteverything: changed OP_DEFS and OP_USES from macros to functions to catch symbol abuse (a hot topic in the bug list :)
41981
419822003-01-29  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
41983
41984	* as/mcs51/aslink.h: Added options --xram-size and --code-size
41985	* as/mcs51/lkdata.c: Added options --xram-size and --code-size
41986	* as/mcs51/lkmain.c: Added options --xram-size and --code-size
41987	* as/mcs51/lkmem.c:  Added options --xram-size and --code-size
41988	* src/SDCCglobl.h:   Added options --xram-size and --code-size
41989	* src/SDCCmain.c:    Added options --xram-size and --code-size
41990
419912003-01-28  Bernhard Held <bernhard AT bernhardheld.de>
41992
41993	* src/ds390/gen.c: fix deps by replacing <common.h> with "common.h"
41994	* src/SDCC.lex: rename P_OVERLAY to P_OVERLAY_ for cross-gcc 3.2 MINGW32
41995
419962003-01-27    <johan AT balder>
41997
41998	* src/SDCC.y: fixed bug #613764
41999
420002003-01-26    <johan AT balder>
42001
42002	* src/SDCClrange.c:  fixed Bernhard's "char * code ptr = &c"
42003	* src/SDCCsymt.h: fixed bug #673374
42004	* src/SDCCglue.c: fixed bug #661910
42005	* src/SDCCast.c: fixed bug #458099 and 673374
42006
420072003-01-26  Bernhard Held <bernhard AT bernhardheld.de>
42008
42009	* as/mcs51/strcmpi.c: added, provides Aurelien Jarno's as_strcmpi(); strcmpi() is not ANSI
42010	* as/mcs51/strcmpi.h: added
42011	* as/mcs51/asm.h: remove ugly "#define strcmpi strcmp"
42012	* as/mcs51/aslink.h: remove ugly "#define strcmpi strcmp"
42013	* as/mcs51/asmain.c: strcmpi -> as_strcmpi
42014	* as/mcs51/assym.c: strcmpi -> as_strcmpi
42015	* as/mcs51/lkmem.c: strcmpi -> as_strcmpi
42016	* as/mcs51/lknoice.c: strcmpi -> as_strcmpi
42017	* as/mcs51/lksym.c: strcmpi -> as_strcmpi
42018	* as/mcs51/Makefile.aslink: new module strcmpi
42019	* as/mcs51/Makefile.asx8051: new module strcmpi
42020	* as/mcs51/Makefil.bcc: new module strcmpi
42021	* as/mcs51/Makefile.in: new module strcmpi
42022	* sim/ucsim/s51.src/uc390.cc (get_mem_size): make RAM big enough for tinibios
42023
420242003-01-26    <johan AT balder>
42025
42026	* src/SDCCglue.c: reverted back to 1.124
42027	* src/SDCCast.c: reverted back to 1.156
42028	* src/mcs51/gen.c (aopGet): applied Frieder's efficiency patch
42029
420302003-01-25    <johan AT balder>
42031
42032	* src/SDCCglue.c: A better fix for bug #661910
42033	* src/SDCCast.c: A better fix for bug #661910
42034	* src/SDCCglue.c (emitRegularMap): That was a little too efficient
42035
420362003-01-24  Bernhard Held <bernhard AT bernhardheld.de>
42037
42038	* src/Makefile.in: remove spawn.o
42039	* src/SDCCmain.c: remove spawn.h
42040	* src/SDCCmain.c (printVersionInfo): report MINGW32 instead of UNIX
42041	* src/spawn.c: removed
42042	* src/spawn.h: removed
42043	* support/regression/ports/ds390/spec.mk: link with -r
42044
420452003-01-24    <johan AT CP255758-A>
42046
42047	* src/ds390/gen.c (aopOp): fixed bug #667458
42048	* src/SDCCglue.c (emitRegularMap): fixed bug #458099 again
42049	* src/SDCCast.c (createIvalCharPtr): fixed bug #661910
42050	(createIvalCharPtr): an ival doesn't always have a storage class anymore
42051
420522003-01-24  Bernhard Held <bernhard AT bernhardheld.de>
42053
42054	* src/mcs51/peeph.def: better assembler identation by Frieder
42055	* src/mcs51/gen.c: better assembler identation by Frieder
42056
420572003-01-22  Bernhard Held <bernhard AT bernhardheld.de>
42058
42059	* as/z80/string.h: removed for gcc 3.2
42060	* support/makebin/makebin.c: #include <string.h> for gcc 3.2
42061	* src/pic/pcode.c (get_op_from_instruction): fix concatenation of string literals with __FUNCTION__ for gcc 3.2
42062
420632003-01-19  Bernhard Held <bernhard AT bernhardheld.de>
42064
42065	* src/SDCCmain.c (linkEdit): rename mem and map files even in case of failure
42066	* src/SDCCpeeph.c (replaceRule): fix bug #663503
42067	* support/regression/Makefile: separate temp files for ports
42068	* support/regression/generate-cases.py: separate temp files for ports
42069	* src/mcs51/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
42070	* src/ds390/peeph.def: Frieder: removed 237 (obsolete by 236g and 105); added 237 a/b
42071
420722003-01-19  Bernhard Held <bernhard AT bernhardheld.de>
42073
42074	* moved tinitalk to device/examples/ds390
42075
420762003-01-14  Bernhard Held <bernhard AT bernhardheld.de>
42077
42078	* as/mcs51/lkmem.c: rflag is for DS390
42079	* src/SDCCglobl.h: removed out_name and options stackOnData, genericPtr
42080	* src/SDCCmain.c (optionsTable, setDefaultOptions): removed --stack-after-data and --generic
42081			 (linkEdit): move mem- and map-files the same way as ihx-files
42082	* src/z80/main.c (_setDefaultOptions): removed --generic
42083	* src/SDCCmain.c (_processC1Arg, parseCmdLine, main): --c1mode works again
42084	* src/SDCCglue.c (createInterruptVect, glue): --c1mode works again
42085	* src/pic/glue.c (picglue): --c1mode works again
42086	* src/pic16/glue.c (pic16glue): --c1mode works again
42087	* src/asm.c (printCLine): fix #660034
42088
420892003-01-13  Bernhard Held <bernhard AT bernhardheld.de>
42090
42091	* src/ds390/peeph.def: fix #123; add 14 rules by Fiorenzo D. Ramaglia <fd.ramaglia AT tin.it>, 1 by Frieder
42092	* src/mcs51/peeph.def: fix #123; add 14 rules by Fiorenzo, 1 by Frieder
42093	* src/mcs51/gen.c (genFunction): emit r0 instead of ar0 by Fiorenzo
42094	* as/mcs51/lkmem (summary): better fix for sp problem
42095	* src/SDCCglue.c (glue): __start_stack - 1, saves 1 byte!
42096	* src/ds390/main.c (_ds390_finaliseOptions, _tininative_finaliseOptions): stack_loc = 0x400008
42097	* support/regression/ports/*/spec.mk: moving testfwk-object to port dir allow parallel execution of regression tests
42098					      remove --stack-after-data
42099
421002003-01-12  Bernhard Held <bernhard AT bernhardheld.de>
42101
42102	* src/SDCCmain.c (main): port->finaliseOptions() moved for z80 linking
42103	* src/SDCCutil.c (join): ugly bug: missing '\0'
42104	* as/mcs51/lkmem.c (summary): sp on address 7 is safe
42105
421062003-01-11  Bernhard Held <bernhard AT bernhardheld.de>
42107
42108	* src/SDCCmain.c (assemble, linkEdit): preparations for -o
42109	* src/port.h: typo
42110	* src/pic/main.c (_asmCmd): gpasm supports -o
42111	* src/z80/main.c: more general macros
42112	* device/lib/Makefile.in: remove intermediate files
42113
421142003-01-11  Bernhard Held <bernhard AT bernhardheld.de>
42115
42116	* .version: Bumped version number to 2.3.3
42117	* src/SDCCBBlock.c: new option -o
42118	* src/SDCCglobl.h: new option -o
42119	* src/SDCCglue.c: new option -o
42120	* src/SDCCmain.c: new option -o
42121	* src/asm.c: new option -o
42122	* src/ds390/main.c: new option -o
42123	* src/pic/glue.c: new option -o
42124	* src/pic/pcode.c: new option -o
42125	* src/pic/ralloc.c: new option -o
42126	* src/pic16/glue.c: new option -o
42127	* src/pic16/pcode.c: new option -o
42128	* src/pic16/ralloc.c: new option -o
42129	* src/z80/main.c: new option -o
42130	* device/lib/Makefile.in: use -o
42131	* support/regression/ports/ds390/spec.mk: use -o
42132	* support/regression/ports/gbz80/spec.mk: use -o
42133	* support/regression/ports/mcs51/spec.mk: use -o
42134	* support/regression/ports/mcs51-stack-auto/spec.mk: use -o
42135	* support/regression/ports/z80/spec.mk: use -o
42136	* support/regression/ports/ucz80/spec.mk: use -o
42137	* support/regression/ports/xa51/spec.mk: use -o
42138	* support/regression/fwk/lib/timeout.c: fix usage string
42139
421402003-01-09  Bernhard Held <bernhard AT bernhardheld.de>
42141	* src/mcs51/gen.c (genPlus): replaced "mov b,acc" by "mov b,a" Fiorenzo D. Ramaglia <fd.ramaglia AT tin.it>
42142
421432003-01-07    <johan AT balder>
42144
42145	* src/SDCCast.c (decorateType): fixed bug #600035
42146
421472003-01-07  Bernhard Held <bernhard AT bernhardheld.de>
42148	* as/mcs51/lkmem.c: added several l-modifiers to printf to remove warnings
42149	* as/mcs51/lkaomf51.c: #include <ctype.h> to remove warnings
42150	* src/pic/main.c (_hasNativeMulFor): outcommented unused variables to remove warnings
42151	* src/pic/pcode.c: outcommented unused variable to remove warnings
42152	* src/pic/ralloc.c: outcommented unused variable to remove warnings
42153
421542003-01-06    <karl AT turbobit.com>
42155	* sim/ucsim/cmd.src/command.cc: fixed so "break xram r 0x7654" works again in
42156	regression tests.
42157
421582003-01-06    <johan AT balder>
42159
42160	* src/SDCCicode.c: fixed array add
42161
421622002-01-05  Bernhard Held <bernhard AT bernhardheld.de>
42163	* src/SDCCmacro.c: MAX_STRING_LENGTH increased to 2048; was too small for regression tests
42164	* support/regression/ports/host/support.c: #include <stdarg.h> for gcc 3.2
42165
421662003-01-04    <johan AT balder>
42167
42168	* src/SDCCval.c (getNelements): fixed the initialized array of structures
42169
421702002-12-29  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
42171	* as/mcs51/Makefile.bcc: fixed typo lkomf51.o -> lkaomf51.o
42172
421732002-12-28  Bernhard Held <bernhard AT bernhardheld.de>
42174	* src/mcs51/peeph.def: added rules 234 and 235 from Frieder Ferlemann <frieder.ferlemann AT web.de>
42175	* support/regression/tests/bug-524697.c: fit mem usage into 8032
42176
421772002-12-28  Bernhard Held <bernhard AT bernhardheld.de>
42178	* src/mcs51/gen.c (aopGetUsesAcc): inserted missing "return FALSE"
42179
421802002-12-27  Bernhard Held <bernhard AT bernhardheld.de>
42181	* as/mcs51/Makefile.in: fixed typo lkomf51.o -> lkaomf51.o
42182
421832002-12-26  Bernhard Held <bernhard AT bernhardheld.de>
42184	* src/mcs51/main.c: removed {bindir}{sep} from aslink
42185
421862002-12-10  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
42187
42188	* in /sdcc/as/mcs51/ changed these files in order to create an
42189	aomf51 file: aslink.h, lkdta.c, lklex.c, lklibr.c, lklist.c,
42190	lkmain.c.  Also added: lkmem.c and lkaomf51.c.  Changed the
42191	following files to include the previous two files: aslink.dsp,
42192	Makefile.aslink, Makefile.bcc, and Makefile.in.
42193
42194	* Changed /sdcc/src/SDCCmain.c so it creates files with extension
42195	.adb instead of .cdb
42196
421972002-11-09  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
42198
42199	* /sdcc/as/mcs51/lklist.c: Now reports memory usage using the
42200	value from option --iram-size.
42201
422022002-09-20  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
42203
42204	* /sdcc/as/mcs51/lklist.c: added boundary check before using
42205	dram[] array.
42206
422072002-09-18    <wiml AT hhhh.org>
42208
42209	* SDCClrange.h: exposed setFromRange() and setToRange()
42210	* mcs51/ralloc.c: fixed over-eager packRegsForSupport() and
42211	  packRegsForAccUse() (bug 542397)
42212	* mcs51/gen.c: MOVA() is now a function to avoid calling aopGet()
42213	  multiple times and emitting the fetch operations more than once
42214	  added aopGetUsesAcc() function to allow binary operators to
42215	  fetch their operands in the correct order; made genMinus() emit
42216	  compact code for X = LITERAL - Y
42217
422182002-09-00  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
42219	* /sdcc/as/mcs51/lklist.c: Fixed incorrect number of parameters to
42220	sprintf() in line 1267.
42221
422222002-09-08  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
42223	* /sdcc/src/SDCCglue.c: Generate areas REG_BANK_[0-3] only for 8051
42224	like ports.
42225
422262002-09-04  Jesus Calvino-Fraga <jesusc AT ece.ubc.ca>
42227	Changes to aslink (All the changes are marked with 'JCF'):
42228
42229	* /sdcc/as/mcs51/aslink.h: External definition of sflag and
42230	summary().
42231
42232	* /sdcc/as/mcs51/lkarea.c: Computes the size of area BSEG_BYTES from
42233	area BSEG.  Also moves, if possible, the DATA area down into the internal
42234	ram so more space is available.
42235
42236	* /sdcc/as/mcs51/lkdata.c: Definition of memory summary output flag
42237	sflag.
42238
42239	* /sdcc/as/mcs51/lklist.c: For the BSEG area report the size in bits,
42240	not bytes.  Function summary() which creates a memory usage summary
42241	file with extension .mem.  Reports of overlaping stack and small stack
42242	size.  If the space for the stack is less than 16 bytes aslink trows a
42243	warning.
42244
42245	* /sdcc/as/mcs51/lkmain.c: Creation of some of the default areas for
42246	the 8051.  Option 'y' for memory summary output file.
42247
42248	Changes to sdcc (All the changes are marked with 'JCF'):
42249
42250	* /sdcc/src/SDCCglobl.h: External definition of RegBankUsed[4].
42251
42252	* /sdcc/src/SDCCglue.c:  If a register bank is used, creates an
42253	overlaying area	for it (uses RegBankUsed[4]).
42254
42255	* /sdcc/src/SDCCmain.c: Definition RegBankUsed[4]; marks register
42256	bank zero as used by default.  By default aslink locates the stack
42257	(equivalent to --stack-after-data).  Pass option 'y' to aslink for
42258	the creation of the .mem file.  Delegates the allocation of data area
42259	to aslink (it is not longer 0x30 by default).  If --stack-loc passes
42260	the begining of the stack area to aslink.
42261
42262	* /sdcc/src/SDCCmem.c:  If a register bank is used, marks it so
42263	glue() in SDCCglue.c creates an area for it.
42264
422652002-09-03  Borut Razem <borut.razem AT siol.net>
42266	* sdcc/src/SDCCglue.c, sdcc/src/SDCCglue.h, sdcc/src/SDCCmain.c,
42267	sdcc/src/pic/glue.c:
42268	introduced atexit() handler for teporay files removal in case of
42269	errors, assertions, ...
42270
422712002-08-29  Borut Razem <borut.razem AT siol.net>
42272	* sdcc/support/cpp2/auto-host_vc_in.h:
42273	re-definition of O_BINARY and other O_XXX as _O_BINARY and _O_XXX, so the problem
42274	with the returned value from read() in sdcc/support/cpp2/cppfiles.c is solved for MSC.
42275	Maybe there is a similar problem with BORLANDC? It should be checked!
42276
42277	* sdcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c, sdcc/src/z80/ralloc.c:
42278	corrected improper use of assert: the assignment to clr variable was done inside the assert.
42279	In case that NDEBUG was defined, the assert macro was substituted with no-op, so the assignment
42280	was not executed, and the compiler (cl) launched a warning:
42281	ralloc.c(1442) : warning C4700: local variable 'clr' used without having been initialized
42282
422832002-08-28  Bernhard Held <bernhard AT bernhardheld.de>
42284	* src/SDCCglue.c (printIvalArray): iterative calculation of array length
42285
422862002-08-28  Jesus Calvino-Fraga and Borut Razem <borut.razem AT siol.net>
42287	* sdcc/sdcc.dsw: added sdcpp, sdcppa, yacc, conf projects
42288
42289	* sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
42290	  sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp,
42291	  sdcc/src/xa51/xa51.dsp, sdcc/src/avr/avra.dsp,
42292	  sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
42293	  sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp,
42294	  sdcc/src/xa51/xa51a.dsp, sdcc/as/as_z80.dsp,
42295	  sdcc/as/aslink.dsp, sdcc/as/asx8051.dsp, sdcc/packihx/packihx.dsp:
42296	- added Release configuration in VS projects
42297	- review of compiler an linker options
42298	- VC .exe files are generated in bin_vc directory, not to interfere
42299	  with binaries generated from other projects (cygwin, mingw, bcc ...)
42300
42301	* sdcc/src/yacc.dsp: added
42302
42303	* sdcc/config.dsp, sdcc/configure_vc.awk, sdcc/sdcc_vc_in.h:
42304	added - genarate sdcc_vc.h using sdcc_vc_in.h as template
42305	and insert the version number definitions from .version
42306
42307	* sdcc/support/cpp2/sdcpp.dsp: added - VC project for sdcpp
42308
42309	* sdcc/support/cpp2/sdcppa.dsp, sdcc/support/cpp2/auto-host_vc_in.h:
42310	added - genarate auto-host.h using auto-host_vc_in.h as template
42311
42312	* sdcc/sdcc_vc.h,
42313	removed from CVS, generated automatically
42314
423152002-08-25  Bernhard Held <bernhard AT bernhardheld.de>
42316	* support/scripts/inc2h.pl: use gputils or gpasm (from Nathan Hurst)
42317
423182002-08-11  Borut Razem <borut.razem AT siol.net>
42319	* support/Util/NewAlloc.c: removed unneeded #include "sdccconf.h" (suggested by Jesus Calvino-Fraga)
42320
423212002-08-10  Borut Razem <borut.razem AT siol.net>
42322	* src/SDCCmain.c (main):
42323	file preOutName was unlinked before closed. This seems to be OK on UNIX and cygwin
42324	platforms, but it doesn't work with Visual Studio: the opened file can not be removed.
42325	The consequence was that some temporary files were not removed.
42326
42327	* src/SDCCglue.c:
42328	unification of code in functions tempfilename() and tempfile():
42329	function tempnam() is defined in Visual Studio 6.0 and .NET
42330
42331	* sdcc/sdcc.dsw: removed project sdcpp, added project xa51a
42332
42333	* sdcc/src/src.dsp, sdcc/src/avr/avr.dsp, sdcc/src/ds390/ds390.dsp,
42334	  sdcc/src/mcs51/mcs51.dsp, sdcc/src/pic/pic.dsp, sdcc/src/z80/z80.dsp:
42335	- removed compiler command line option /WX: Treats all warnings as errors
42336	- update a list of source files, included into the project
42337
42338	* sdcc/src/avr/avra.dsp, sdcc/src/ds390/ds390a.dsp, sdcc/src/mcs51/mcs51a.dsp,
42339	  sdcc/src/pic/pica.dsp, sdcc/src/z80/z80a.dsp:
42340	changed project type to Generic Project so that can be correcly converted to VS.NET project
42341
42342	* sdcc/as/mcs51/asm.h: definition of PATH_MAX for MSC
42343
42344	* sdcc/src/SDCCast.c: solved MSC error in function decorateType()
42345
42346	* sdcc/src/SDCC.y: added missing ending ';' to rules to get rid of bison warnings
42347
42348	* dcc/src/ds390/ralloc.c, sdcc/src/mcs51/ralloc.c:
42349	added return 0 statements after assert() to make compiler happy
42350
42351	* sdcc/src/xa51/peeph.rul, sdcc/src/xa51/peeph.def, sdcc/src/z80/ralloc.c:
42352	added newline in the def file to keep MSC compiler satisfied
42353
42354	* sdcc/src/z80/gen.c:
42355	- function strcasecmp() is not defined in MSC (and probably also in BORLANDC),
42356	  so it is replaced with STRCASECMP, which is defined as stricmp in case of MSC and BORLANDC
42357	- solved MSC error in function aopDump()
42358
42359	* sdcc_vc.h: define PREFIX as "\\sdcc"
42360
423612002-07-18  Bernhard Held <bernhard AT bernhardheld.de>
42362	* src/SDCCast.c (decorateType): fixed access to array of structures http://sourceforge.net/mailarchive/forum.php?thread_id=902690&forum_id=4107
42363
423642002-06-22  Scott Dattalo <scott AT dattalo.com>
42365	* src/pic/*: Numerous bug fixes. Flow analysis has been enhanced.
42366	- Rewrote the register banking algorithm.
42367	- Added pCode live-range analysis to registers (for now, only non-used and
42368	singly-used registers optimized away)
42369
42370	* src/pic/pcoderegs.[ch]: Added new files for pCode live-range analysis
42371
42372	* support/scripts/inc2h.pl Kevin L. Pauba <klpauba AT cox.net> submitted this perl script for converting MicroChip include files into SDCC Pic include files.
42373
423742002-05-10  Scott Dattalo <scott AT dattalo.com>
42375	* src/pic/*: Added support for multiplication. Fixed many,many bugs.
42376
423772002-04-22  Michael Hope  <michaelh AT vroom>
42378
42379	* device/lib/z80/printf.c: Changed emitter to volatile to work around a pcall bug.
42380
42381	* configure.in (DD_COPT): Added include support required for gbdk.
42382
42383	* .version: Bumped version number just to increase it.
42384
42385	* src/SDCCmain.c: Added -nostdinc to the default options.
42386
423872002-04-15  Michael Hope  <michaelh AT vroom>
42388
42389	* device/lib/z80/printf.c (sprintf): Added.
42390
42391	* src/z80/ralloc.c (packRegisters): Disabled pack HL use for GB as it's broken.
42392
42393	* src/z80/peeph.def: Added transpose redundent load rule.
42394
42395	* src/z80/main.c: Added force callee saves for jaune.
42396
42397	* src/port.h: Removed the i186 and tlcs-900h ports as they weren't being being developed.
42398
42399	* src/SDCCmain.c: Pulled the options definition out so that you can add port specific options without changing the main file.
42400
424012002-03-28  Johan Knol  <johan AT balder>
42402
42403	* src/SDCCval.c: fixed bug #532436
42404
424052002-03-14  Scott Dattalo <scott AT dattalo.com>
42406	* /src/port.h:
42407	Added "char *Processor" field to the port structure.
42408
42409	* /src/SDCCmain.c:
42410	Added -p option. Allows port dependent processor to be specified.
42411
42412	* all ports:
42413	Initialized the new field char *Processor field to NULL in all ports
42414
42415	* /src/pic/*:
42416	Compiler generated registers for interrupt context saving
42417	were not getting allocated.
42418
424192002-03-16  Sandeep Dutta  <sandeep AT ddi.com>
42420
42421	* /src/SDCCast.c:
42422	Fixed left shift. Will promote the left side of a left shift
42423	if a) left shifting more than size of operand or b) when assigned
42424	to something size > size of left side
42425
424262002-03-14  Scott Dattalo <scott AT dattalo.com>
42427	* src/pic/*
42428	tons of changes. Register allocation has been
42429	rewritten. Added customization for the various PICs. Flow
42430	analysis is restructured. ...
42431
42432	* src/pic/device.h:
42433	Added
42434
42435	* src/pic/device.c:
42436	Added. device.c is a PIC port hack to accomodate variations
42437	in PIC devices.
42438
424392002-03-13  Michael Hope  <michaelh AT vroom>
42440
42441	* src/z80/gen.c (genGenPointerGet): Fixed a bug where a pointer in HL is dereferenced into HL but HL is not spilled.  Yeah.
42442
424432002-03-04  johanknol  <johanknol AT manik>
42444
42445	* /src/SDCCval.c: fixed
42446
42447	const unsigned char arr[][2] = { { 0, 1 } };
42448	t18.c:1: error: Initializer element is not constant
42449
424502002-03-04  bela  <bela AT manik>
42451
42452	* /device/include/mcs51reg.h:
42453	ds89c420 register definition update
42454
424552002-03-03    <johan AT FRIJA>
42456
42457	* support/Util/SDCCerr.c: did something, but don't no why anymore
42458
42459	* support/regression/tests/bug-524691.c: made it a little less shy
42460
42461	* src/SDCCast.c (decorateType): fixed bug #524697
42462
42463	* src/SDCCast.c: made some lineno improvements
42464
42465	* src/SDCCval.c (getNelements): changed warning to error
42466
42467	* src/SDCCglue.c (printIvalArray): changed warning to error
42468
42469	* src/SDCCicode.c: fixed a warning for mingw
42470
42471	* src/SDCCast.c (decorateType): fixed the << promotion for ops
42472
42473	* src/SDCCicode.c (geniCodeDivision): divide is shift only for unsigned (bug #524685)
42474
424752002-03-02  Sandeep Dutta  <sandeep AT ddi.com>
42476
42477	* src/ds390/peeph.def:
42478	Added some more peephole rules
42479
42480	* src/ds390/gen.c: Various fixes & enhancements
42481
42482	* src/SDCClrange.c, src/SDCClrange.h:
42483	functions "alldefsoutofrange" and "notusedinblock" moved to SDCClrange.c
42484
42485	* src/ds390/ralloc.c:
42486	various fixes & enhancements (ds390) specific
42487
42488	* src/avr/ralloc.c, src/mcs51/ralloc.c, src/pic/ralloc.c, src/xa51/ralloc.c, src/z80/ralloc.c:
42489	Functions "allDefsOutOfRange" & "notUsedinBlock" moved to SDCClrange.c
42490	from rallocs.
42491
42492	* sdcc/src/SDCCcse.c: Better fix for bug # 514308
42493
424942002-03-02    <johan AT FRIJA>
42495
42496	* src/SDCCast.c (decorateType): fixed bug #524708
42497
42498	* src/SDCCval.c (floatFromVal): fixed the literal void (whatever that may be)
42499
42500	* src/SDCCicode.c (geniCodePtrPtrSubtract): fixed bug #524691
42501
425022002-03-01  Michael Hope  <michaelh AT vroom>
42503
42504	* src/SDCCsymt.c (initCSupport): Removed managling of support function names.
42505
42506	* src/z80/ralloc.c (packRegsForIYUse): Fixed fp bug where four byte operands were packed into IY.
42507
425082002-03-01    <johan AT FRIJA>
42509
42510	* src/SDCCglue.c (printIvalPtr): fixed bug #524211
42511
42512	* src/SDCCast.c (decorateType): fixed bug #524209
42513
42514	* src/SDCCval.c (valNot): fixed bug #524195
42515
425162002-02-26    <johan AT balder>
42517
42518	* src/xa51/gen.c: fixed a warning
42519
42520	* src/SDCCglue.c (printIvalFuncPtr): fixed bug #522534
42521
42522	* src/SDCCast.c (decorateType): fixed bug #522534
42523
425242002-02-23    <johan AT balder>
42525
42526	* src/SDCCdflow.c (computeDataFlow): fixed bug #460088
42527
425282002-02-22    <johan AT balder>
42529
42530	* src/SDCCast.c: fixed bug #514865
42531
42532	* src/SDCCy.c ("SDCC.y"): fixed bug #516625
42533
425342002-02-21  Sandeep Dutta  <sandeep AT ddi.com>
42535
42536	* sdcc/src/SDCCloop.c:
42537	Previous fix was not good. basic blocks that have "break" or "return" are
42538	not really partof a loop , but live ranges used in these blocks should
42539	be live thru the entire loop, so set partOfLoop but don't add them to
42540	loop region
42541
425422002-02-21    <johan AT FRIJA>
42543
42544	* src/SDCCcse.c: fixed bug #514308
42545
425462002-02-20  Sandeep Dutta  <sandeep AT ddi.com>
42547
42548	* src/SDCCloop.c:
42549	Fixed BUG #519583. If a conditional block ended in a return/break
42550	statement inside a loop, it was not being considered part of the loop.
42551
42552	* src/SDCCcflow.c: Removed fix (Fixed in SDCCloop.c)
42553
425542002-02-10  Karl Bongers <karl AT turbobit.com>
42555
42556	* debugger/*:
42557	Fixed up SDCDB debugger somewhat.  Updated debugger/README
42558	with lots of comments and notes.
42559
42560	* device/examples/test2.c:
42561	Fix bug, "red" variable not being initialized(compiler complained).
42562
42563	* device/examples/Makefile, examples/test3.c:
42564	Add Makefile in device/examples folder, compiles test3.c
42565	for use as a multiple module SDCDB test case.
42566
42567	* sim/ucsim/cmd.src/cmdset.cc:
42568	Took out debug printfs in ucsim "next" command.
42569
42570	* sim/ucsim/xa.src:
42571	Karl and Johan start ucsim XA support.  Most dissassembly working,
42572	about 75% emulation done(plenty of work remaining).
42573
42574	* sim/ucsim/z80.src:
42575	Add Z80 support to ucsim, add test-ucz80 regression test,
42576	notice ucsim/z80 emulation fails on examples/test3.c/itoa code.
42577	Notice z80 compiler fails on examples/test3.c/crc code.
42578
425792002-01-30  Sandeep Dutta  <sandeep AT ddi.com>
42580
42581	* src/mcs51/gen.c, src/mcs51/main.c, src/mcs51/ralloc.c:
42582	Added support for --parms-in-bank1
42583
42584	* src/ds390/peeph.def:
42585	added a few more peephole optimzations
42586
42587	* src/ds390/main.c:
42588	1) added __builtin_inp & __builtin_outp used to read in data of given length
42589	   from a memory mapped port
42590	2) added __builtin_memcmp
42591	3) added __builtin_swapw swap bytes of a short
42592
42593	* src/ds390/gen.c, src/ds390/gen.h, src/ds390/ralloc.c:
42594	1) handle multiple send & receives from register bank1
42595	2) ralloc can now allocate DPTR1 to some liveRanges
42596
42597	* src/SDCCsymt.c, src/SDCCsymt.h:
42598	changes to handle multiple sends & receives
42599
42600	* src/SDCCptropt.h:
42601	added some pointer arithmetic optimization
42602
42603	* src/SDCCptropt.c:
42604	added some pointer arithmetic optimizations but not stable yet so not
42605	called from anywhere (will get this working shortly)
42606
42607	* src/SDCCopt.c: fixed for multiple sends & receives
42608
42609	* src/SDCCmain.c:
42610	1) added options --parms-in-bank1 (ds390/mcs51) & --protect-sp-update
42611	2) preprocessing done AFTER port->finalizeoptions . This allows ports to
42612	   set preprocessor defines (depending on options)
42613
42614	* src/SDCCicode.c, src/SDCCicode.h:
42615	changes made to handle multiple sends & receives
42616
42617	* src/SDCCglobl.h:
42618	Added options --protect-sp-update (ds390) and --parms-in-bank1 (ds390/mcs51)
42619
42620	* src/SDCCcse.c, src/SDCCcse.h:
42621	added function findbackward def (to be used in upcoming optimization)
42622
42623	* src/SDCCcflow.c, src/SDCCcflow.h:
42624	added function returnAtEnd - to determine if a basic block terminates with
42625	a RETURN iCode
42626
42627	* src/SDCCast.c, src/SDCCast.h:
42628	added option parms-in-bank1
42629
42630	* device/lib/_divsint.c, device/lib/_divslong.c, device/lib/_divuint.c
42631	* device/lib/_divulong.c, device/lib/_modsint.c, device/lib/_modslong.c
42632	* device/lib/_modulong.c, device/lib/_mulint.c, device/lib/_mullong.c:
42633	adjusted for --parms-in-bank1 option
42634
42635	* device/include/string.h:
42636	donot redefine "reentrant" keyword
42637
42638	* device/include/ds80c390.h: Added some more SFRs
42639
426402002-01-28  Bernhard Held  <bernhard AT bernhardheld.de>
42641
42642	* sim/ucsim: Merged branch ucsim-034-pre3 to main trunk; new version 0.4
42643
426442002-01-26  Bernhard Held  <bernhard AT bernhardheld.de>
42645
42646	* src/SDCCast.c (funcOfType): fix usage of double --float-reent
42647
426482002-01-22  Bernhard Held  <bernhard AT bernhardheld.de>
42649
42650	* support/regression/fwk/lib/testfwk.c (main): Removed workaround for bug #505387
42651
426522002-01-18  Paul Stoffregen  <paul AT pjrc.com>
42653
42654	* Added --xram-movc option
42655
426562002-01-13  Bernhard Held  <bernhard AT bernhardheld.de>
42657
42658	* support/regression/Makefile: don't include test-mcs51-stack-auto in target all
42659
426602002-01-11  Johan Knol
42661
42662	* Added math lib of Jesus Calvino-Fraga
42663
426642002-01-08  Bernhard Held  <bernhard AT bernhardheld.de>
42665
42666	* src/SDCCmain.c (processFile): fix processing of ../../src.c
42667	* support/regression/Makefile: new target test-mcs51-stack-auto
42668	* support/regression/ports/mcs51-stack-auto/spec.mk: added
42669
426702002-01-04  Bernhard Held  <bernhard AT bernhardheld.de>
42671
42672	* src/SDCCglue.h: printIvalCharPtr(), not printIvalChar()
42673
426742002-01-04  Bernhard Held  <bernhard AT bernhardheld.de>
42675
42676	* support/regression/ports/mcs51/support.c: correct setup of timer / UART
42677
426782002-01-03  Bernhard Held  <bernhard AT bernhardheld.de>
42679
42680	* src/SDCCsymt.c (processFuncArgs): fix #498307 by Johan
42681
42682	* src/SDCCglue.h: add definition for printIvalChar()
42683
426842002-01-02  Bernhard Held  <bernhard AT bernhardheld.de>
42685
42686	* src/SDCCast.c: fix #498138 by Johan
42687
42688	* src/SDCCglue.c: fix #498138 by Johan
42689
426902002-01-02  Bernhard Held  <bernhard AT bernhardheld.de>
42691
42692	* support/regression/Makefile: fix clean
42693
42694	* support/regression/ports/ds390/support.c: fix transmission of last character
42695
426962001-12-29  Sandeep Dutta  <sandeep AT ddi.com>
42697
42698	* /sdcc/src/ds390/gen.c:
42699	a) improved computing address of stack variable
42700	b) took out some #if 0 code
42701	c) improved parmBytes adjustment
42702	d) improved genPlusIncr & genMinusIncr
42703	e) genCmp could generate bad code (when left assigned to DPTR)
42704	f) Fixed bug in hasInc
42705
42706	* /sdcc/src/ds390/ralloc.c:
42707	a) packRegsForSupport could mess up live information (Fixed)
42708	b) packRegsDPTRuse could be incorrect for left & right shift
42709
42710	* /sdcc/src/mcs51/ralloc.c:
42711	packRegsForSupport could mess up the live information (Fixed)
42712
42713	* /sdcc/src/mcs51/gen.c: Fixed a bug in hasInc
42714
42715	* /sdcc/src/SDCCast.c:
42716	can reverse a loop even if function call is present as long
42717	as the loop control variable is local & is not passed as parameter
42718
427192001-12-24  Sandeep Dutta  <sandeep AT ddi.com>
42720
42721	* /sdcc/ChangeLog: *** empty log message ***
42722
42723	* /sdcc/src/ds390/gen.c, /sdcc/src/ds390/main.c:
42724	More builtin function additions for TININative
42725
42726	* /sdcc/src/ds390/ralloc.c:
42727	Had broken the regression testsuite
42728
42729	* /sdcc/src/SDCCast.c: Fixed a bug in dumptree
42730
42731	* /sdcc/src/SDCCsymt.c, /sdcc/src/SDCCsymt.h:
42732	Added funcattr hasStackParms will be set for reentrant functions when there
42733	are paramteres on the stack, this helps in minimizing frame pointer generation
42734	typeFromStr can handle function pointers now
42735
42736	* /sdcc/doc/builtins.txt, /sdcc/doc/TININative.txt:
42737	*** empty log message ***
42738
427392001-12-24  Sandeep Dutta  <sandeep AT ddi.com>
42740
42741	* /src/ds390/gen.c, /src/ds390/main.c:
42742	More builtin function additions for TININative
42743
42744	* /src/ds390/ralloc.c:
42745	Had broken the regression testsuite
42746
42747	* /src/SDCCast.c: Fixed a bug in dumptree
42748
42749	* /src/SDCCsymt.c, /src/SDCCsymt.h:
42750	Added funcattr hasStackParms will be set for reentrant functions when there
42751	are paramteres on the stack, this helps in minimizing frame pointer generation
42752	typeFromStr can handle function pointers now
42753
42754	* /doc/builtins.txt, /doc/TININative.txt:
42755	*** empty log message ***
42756
42757
427582001-12-24  Sandeep Dutta  <sandeep AT ddi.com>
42759
42760	* /src/ds390/gen.c, /src/ds390/main.c, /src/ds390/peeph.def, /src/ds390/ralloc.c:
42761	ALPHA version for -mTININative
42762
42763	* /src/izt/i186.c, /src/izt/tlcs900h.c, /src/mcs51/main.c, /src/pic/main.c, /src/z80/main.c, /src/avr/main.c:
42764	updated to reflect changes in the port structure
42765
42766	* /src/port.h:
42767	added function do_assemble (similar to do_link) if non-null this function
42768	will be called to do assembly (-mTININative) requires a multi command
42769	assembly
42770	added function genAssemblerEnd will be called to generate assembler Epilogue
42771
42772	* /src/SDCCsymt.c:
42773	added _JavaNative to debug info printing
42774
42775	* /src/SDCCmain.c: added option --tini-libid
42776	added port->do_assemble function (-mTININative) has a multi command assemble
42777
42778	* /src/SDCCglue.c: Disabled "constExpr" check
42779	added port->genAssemblerEnd function
42780
42781	* /src/SDCCglobl.h: Added option --tini-libid value
42782
42783	* /src/SDCCast.h:
42784	tookout optimizeCompare from the header (has no external references)
42785
42786	* /src/SDCCast.c: made one more function "static"
42787
427882001-12-23  Michael Hope  <michaelh AT juju.net.nz>
42789
42790	* src/z80/mappings.i: Added z80asm support.
42791
42792	* src/z80/main.c: Added z80asm support on --asm=z80asm
42793
42794	* src/z80/gen.c: Fixed asm portability issues.
42795
42796	* src/asm.c (tvsprintf): Removed old code, added 'N' for function name.  For extern support.
42797
42798	* src/SDCCglue.c (printExterns): Added global/extern split.
42799
428002001-12-17  Bernhard Held  <bernhard AT bernhardheld.de>
42801
42802	* support/regression/Makefile: added test for mcs51 model large
42803
42804	* support/regression/ports/mcs51-large/spec.mk: added test for mcs51 model large
42805
42806	* support/regression/ports/gbz80/spec.mk: added -mgbz80
42807
428082001-12-05  Michael Hope  <michaelh AT juju.net.nz>
42809
42810	* src/diff.1 (Index): Many, many optmisiations.  Dhrystone up to 201.
42811
428121904-01-06  Michael Hope  <michaelh AT juju.net.nz>
42813
42814	* src/z80/ralloc.c (packRegsForIYUse): Fixed the case where an operand is in direct space.
42815
42816	* src/z80/gen.c (makeFreePairId): Optimised IY load by using a spare pair.
42817
428182001-12-02  Bernhard Held  <bernhard AT bernhardheld.de>
42819
42820	* src/mcs51/gen.c (genFunction): avoid excess "inc sp"
42821
42822	* support/regression/tests/simplefloat.c: Port to mcs51.
42823
428242001-11-25  Michael Hope  <michaelh AT juju.net.nz>
42825	* support/regression/tests/bug-485362.c: Added.
42826
42827	* support/regression/tests/simplefloat.c (testDivNearOne): Added.
42828
42829	* src/z80/gen.c (aopOp): Fixed case where left and result are in the same spill loc and they have different sizes.
42830
42831	* src/z80/peeph.def: Added rules for optimising two byte compares on the same thing, and to optimise two ptr assign.
42832
42833	* src/z80/gen.c (aopDump): Added a dump function.
42834
428352001-11-25  Bernhard Held  <bernhard AT bernhardheld.de>
42836	* sim/ucsim/s51.src/glob.cc: DS390 SFRs and bits added.
42837
42838	* sim/ucsim/s51.src/port.cc: Port 4 and 5 added.
42839
42840	* sim/ucsim/s51.src/regs51.h: DS390 SFRs added.
42841
42842	* sim/ucsim/s51.src/uc390.cc: Some details improved, CKRDY works for tinibios.
42843
42844	* sim/ucsim/s51.src/uc390cl.h: Work in progress.
42845
42846	* sim/ucsim/sim.src/uccl.h: 6 ports for DS390.
42847
42848	* support/regression/fwk/lib/testfwk.c: Run with tinibios.
42849
42850	* support/regression/ports/mcs51/spec.mk: Fine tuninig.
42851
42852	* support/regression/ports/ds390/support.c: Use tinibios.
42853
42854	* support/regression/ports/ds390/spec.mk: Fine tuning, use tinibios.
42855
428562001-11-23  Michael Hope  <michaelh AT juju.net.nz>support/regression/tests/bug-460010.c
42857
42858	* src/z80/ralloc.c (packRegsForHLUse3): Changed to not pack into HL if anything is in direct space.
42859	(packRegsForHLUse3): Added packing support for send, cast, and return value from a call.
42860
42861	* src/z80/peeph.def: Added rules for optimising pushes of part of a pair.
42862
42863	* src/z80/gen.c (emitCall): Changed the stack fixup to not use HL.
42864
428652001-11-18  Michael Hope  <michaelh AT juju.net.nz>
42866
42867	* src/z80/gen.c (genCmp): Fixed compare on unsigned.
42868
42869	* src/z80/ralloc.c (packRegsForHLUse3): Created and optimised.
42870	(packRegsForIYUse): Created and optimised.
42871
428722001-11-07  Michael Hope  <michaelh AT juju.net.nz>
42873
42874	* support/regression/tests/float.c (testFloatAdd): Fixed up warning.
42875
428762001-11-18  Bernhard Held  <bernhard AT bernhardheld.de>
42877
42878	* sdcc/support/regression/tests/bug-460010.c: fix seg violation on host
42879
42880	* sdcc/support/regression/tests/muldiv.c: fix output on mcs51
42881
42882	* sdcc/support/regression/tests/stacks.c: fix DSEG overflow on mcs51
42883
428842001-11-07  Bernhard Held  <bernhard AT bernhardheld.de>
42885
42886	* sdcc/sim/device/lib/_gptrget.c: mem region 5 (idata) added
42887
42888	* sdcc/sim/device/lib/_gptrput.c: mem region 5 (idata) added
42889
428902001-11-07  Bernhard Held  <bernhard AT bernhardheld.de>
42891
42892	* sdcc/sim/ucsim/globals.cc: New: IXRAM.
42893
42894	* sdcc/sim/ucsim/stypes.h: New: IXRAM.
42895
42896	* sdcc/sim/ucsim/s51.src/uc390.cc: New: IXRAM.
42897
428982001-11-07  Michael Hope  <michaelh AT juju.net.nz>
42899
42900	* src/z80/ralloc.c (packRegsForHLUse): Banned IFXs from being packed into HL.
42901	(packRegsForHLUse): Added rule to pack address of/pointer get for itemps into HL for the Z80.
42902	(packRegsForAccUse2): Added rule to pack hbit IFXs into A.
42903
42904	* src/z80/main.c (_setDefaultOptions): Made float code re-entrant by default.
42905
42906	* src/z80/gen.c (aopGetLitWordLong): Added word support for floats.
42907	(genNotFloat): Added.
42908	(genUminusFloat): Added.
42909
42910	* device/lib/z80/Makefile: Added floating pt stubs.
42911
42912	* device/lib/Makefile.in (Z80SOURCES): Added floating pt support.
42913
42914	* src/z80/gen.c (genIpush): Fixed up a push of one byte when left is in a pair.
42915
42916	* device/lib/_fsadd.c (__fsadd): Fixed up return where the numbers are hugely different.
42917
429182001-11-07  Bernhard Held  <bernhard AT bernhardheld.de>
42919
42920	* sdcc/sim/ucsim/s51.src/glob.cc: Minor fix.
42921
42922	* sdcc/sim/ucsim/s51.src/regs51.h: Minor fix.
42923
42924	* sdcc/support/regression/Makefile: Add port ds390.
42925
42926	* sdcc/support/regression/ports/mcs51/spec.mk: Minor change.
42927
42928	* sdcc/support/regression/ports/z80/spec.mk: Minor change.
42929
42930	* sdcc/support/regression/ports/ds390/spec.mk: Added.
42931
42932	* sdcc/support/regression/ports/ds390/support.c: Added.
42933
42934	* sdcc/support/regression/ports/ds390/uCsim.cmd: Added.
42935
42936	* sdcc/support/regression/ports/mcs51/timeout.c: Cut.
42937
42938	* sdcc/support/regression/fwk/lib/timeout.c: Paste.
42939
429402001-11-04  Michael Hope  <michaelh AT juju.net.nz>
42941
42942	* device/include/malloc.h: Added z80 and gbz80 support.
42943
42944	* device/lib/gbz80/heap.s: Added.
42945
42946	* device/lib/z80/heap.s: Added.
42947
42948	* device/lib/malloc.c: Added z80 and gbz80 support.
42949
42950	* support/regression/tests/malloc.c (testMalloc): Added.
42951
42952	* src/SDCCmain.c (parseCmdLine): Added support for -Wp.
42953
42954	* support/regression/tests/bug-478094.c: Added.
42955
42956	* src/z80/gen.c (commitPair): Fixed silly gbz80/z80 commit to static bug.
42957
429582001-11-04  Bernhard Held  <bernhard AT bernhardheld.de>
42959
42960	* sdcc/sim/ucsim/s51.src/uc390cl.h: Improvement for ds390 to run regression tests
42961
42962	* sdcc/sim/ucsim/s51.src/uc390.h: Improvement for ds390 to run regression tests
42963
42964	* sdcc/sim/ucsim/s51.src/regs51.h: Improvement for ds390 to run regression tests
42965
42966	* sdcc/sim/ucsim/s51.src/glob.cc: Improvement for ds390 to run regression tests
42967
42968	* sdcc/support/regression/tests/bug-460010.c: Small change for ds390
42969
429702001-11-04  Michael Hope  <michaelh AT juju.net.nz>
42971
42972	* src/z80/peeph-gbz80.def: Removed a bad sub optimisation.
42973
429742001-11-03  Michael Hope  <michaelh AT juju.net.nz>
42975
42976	* support/regression/tests/bug-477927.c: Added.
42977
42978	* src/z80/peeph.def: Added minor rules.
42979
42980	* src/z80/gen.c (genPlusIncr): Added an extra plusinc rule.
42981
42982	* src/z80/peeph.def: Added jump optimisation modification.
42983
429842001-11-01  Michael Hope  <michaelh AT juju.net.nz>
42985
42986	* src/SDCCmain.c (linkEdit): Added runtime path detection to the mcs51 port.
42987
429882001-10-30  Michael Hope  <michaelh AT juju.net.nz>
42989
42990	* support/regression/tests/funptrs.c: Added.
42991
429922001-10-29  Michael Hope  <michaelh AT juju.net.nz>
42993
42994	* src/z80/ralloc.c (packRegsForHLUse): Fixed up bad spill due to pushing one byte via HL.
42995
429962001-10-28  Michael Hope  <michaelh AT juju.net.nz>
42997
42998	* src/z80/gen.c (genArrayInit): Made it work for on stack arrays.
42999
43000	* src/z80/main.c (gbz80_port =): Added rle support to the gbz80 port.
43001
43002	* src/z80/gen.c (genMinus): Fixed for where the result is one byte.
43003	(movLeft2ResultLong): Created.
43004
43005	* src/z80/ralloc.c (packRegsForHLUse): Added a couple of simple cases for the GB.
43006	(joinPushes): Added.  Joins two char pushes into a word push.
43007
430082001-10-27  Michael Hope  <michaelh AT juju.net.nz>
43009
43010	* support/cpp2/Makefile.in (install): Added creation of dest dir.
43011
43012	* support/makebin/Makefile (install): Added creation of dest dir.
43013
430142001-10-24 Karl Bongers <karl AT turbobit.com>
43015
43016	* configure.in, configure, Makefile, support/cpp: Removed cpp folder, since we have new cpp2 preprocessor code.
43017
430182001-10-21  Michael Hope  <michaelh AT juju.net.nz>
43019
43020	* src/z80/ralloc.c: Turned off faulty pack for one use.
43021
43022	* src/z80/peeph-gbz80.def: Removed redundent restart options.
43023
43024	* src/z80/gen.c (genMult): Added native mul for constants on the z80 and gbz80.
43025
430262001-10-21  Bernhard Held  <bernhard AT bernhardheld.de>
43027
43028	* support/regression/Makefile: Improved clean
43029
43030	* support/regression/ports/gbz80/spec.mk: Added clean
43031
43032	* support/regression/ports/host/spec.mk: Added clean
43033
43034	* support/regression/ports/z80/spec.mk: Added clean
43035
43036	* support/regression/ports/mcs51/spec.mk: Added clean, little improvements
43037
43038	* support/regression/ports/mcs51/timeout.c: little improvements
43039
430402001-10-17  Michael Hope  <michaelh AT juju.net.nz>
43041
43042	* device/lib/malloc.c (MEMHEADER): Fixed against new pedantic pointers.
43043
43044	* support/regression/fwk/include/testfwk.h: Fixed up to use function pts correctly.
43045
43046	* support/regression/generate-cases.py: Fixed up to use function pts correctly.
43047
430482001-10-16  Bernhard Held  <bernhard AT bernhardheld.de>
43049
43050	* support/regression/port/mcs51/spec.mk: add timeout for uCsim
43051
43052	* support/regression/port/mcs51/timeout.c: add timeout for uCsim
43053
430542001-10-13  Michael Hope  <michaelh AT juju.net.nz>
43055	* src/z80/gen.c (emitCall): Fixed up missing spill of HL when used to assign the result value.
43056
43057	* src/z80/ralloc.c: Turned off pack for one use as it's quite broken.
43058
43059	* src/SDCCmain.c (linkEdit): Added support for passing a legacy command line through the processor.
43060
43061	* src/mcs51/main.c (_linkCmd): Added bin path to command.
43062
43063	* src/SDCCmain.c (initValues): Added support for when it it called just to link.
43064
43065	* as/mcs51/lklibr.c (libfil;): Turned off 'library file' message.
43066
43067	* src/SDCCval.c (constVal): Fixed usage of 'L' modifier problems on ppc.
43068
43069	* support/regression/tests/longor.c: Added.
43070
430712001-10-11  Bernhard Held  <bernhard AT bernhardheld.de>
43072
43073	* as/mcs51/asdata.c: replaced FILENAME_MAX with PATH_MAX
43074
43075	* as/mcs51/aslink.h: define PATH_MAX
43076
43077	* as/mcs51/asm.h: define PATH_MAX
43078
43079	* as/mcs51/asmain.c: replaced FILENAME_MAX with PATH_MAX
43080
43081	* as/mcs51/asnoice.c: replaced FILENAME_MAX with PATH_MAX
43082
43083	* as/mcs51/lklex.c: replaced FILENAME_MAX with PATH_MAX
43084
43085	* as/mcs51/lkmain.c: replaced FILENAME_MAX with PATH_MAX
43086
43087	* src/SDCCglobl.h: define PATH_MAX
43088
43089	* src/SDCCmacro.c: replaced FILENAME_MAX with PATH_MAX
43090
43091	* src/SDCCmain.c: replaced FILENAME_MAX with PATH_MAX
43092
430932001-10-11  Michael Hope  <michaelh AT juju.net.nz>
43094
43095	* src/z80/gen.c (gencjneshort): Fixed
43096
43097	* src/z80/ralloc.c (packRegsForHLUse): Added pack into HL for cast then ipush.
43098
430992001-10-09  Michael Hope  <michaelh AT juju.net.nz>
43100
43101	* support/regression/tests/bug-469671.c: Added.
43102
43103	* src/z80/gen.c (shiftIntoPair): Fixed up warning.
43104
431052001-10-08  Michael Hope  <michaelh AT juju.net.nz>
43106
43107	* src/SDCCmain.c: Added --fommit-frame-pointer option and implemented in the z80 port.
43108
43109	* src/z80/gen.c (genPlus): Fixed to work with extended stack.  Also fixed genMinus, genCmp.  genUMinus is still left.
43110
431112001-10-08  Bernhar Held  <bernhard AT bernhardheld.de>
43112
43113	* src/SDCCmain.c (preProcess): added define SDCC_NOOVERLAY
43114
43115	* src/device/lib/_mulint.c  : removed hint: nooverlay bug
43116
43117	* src/device/lib/_mullong.c : removed hint: nooverlay bug
43118
43119	* src/device/lib/_divuint.c : removed hint: nooverlay bug
43120
43121	* src/device/lib/_divulong.c: removed hint: nooverlay bug
43122
43123	* src/device/lib/_moduint.c : removed hint: nooverlay bug
43124
43125	* src/device/lib/_modulong.c: removed hint: nooverlay bug
43126
431272001-10-07  Michael Hope  <michaelh AT juju.net.nz>
43128
43129	* 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.
43130
43131	* support/Util/NewAlloc.c (freeTrace): Changed free for the gc case to not free at all.  Fixes runtime segfault.
43132
43133	* support/regression/tests/scott-compare3.c (c_abcd): Fixed up casts.
43134
431352001-10-07    <johan AT FRIJA>
43136
43137	* device/lib/gets.c (gets): fixed the return value.
43138
431392001-10-06  Michael Hope  <michaelh AT juju.net.nz>
43140	* src/SDCCmain.c (WRITE_SEG_LOC): Fixed up to use Safe_strdup.
43141
43142	* 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.
43143
43144	* 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.
43145
43146	* src/z80/gen.c (genZ80Code): Added de-allocation via trace support.
43147
43148	* src/pic/gen.c: Removed Safe_strdup.
43149
43150	* configure.in: Added option to enable libgc support.
43151
43152	* src/SDCCbitv.c (bitVectnBitsOn): Optimised.
43153	(bitVectUnion): Optimised.
43154	(bitVectIntersect): Optimised.
43155	(bitVectBitsInCommon): Optimised.
43156	(bitVectCplAnd): Optimised.
43157
43158	* support/makebin/makebin.c (usage): Removed getopt as mingw32 doesn't have it.  Sigh.
43159
431602001-10-03 Bernhard Held <bernhard AT bernhardheld.de>
43161
43162	* src/SDCCmain.c: distinguish between assembler debug and plain options
43163
43164	* src/avr/main.c:   remove standard assembler options
43165
43166	* src/ds390/main.c: remove standard assembler options
43167
43168	* src/mcs51/main.c: remove standard assembler options
43169
43170	* src/port.h: removed "PENDING" comment
43171
431722001-10-03 Bernhard Held <bernhard AT bernhardheld.de>
43173
43174	* src/device/lib/_mulint.c  : new, with assember functions
43175
43176	* src/device/lib/_mullong.c : new, with assember functions
43177
43178	* src/device/lib/_divuint.c : with assember functions
43179
43180	* src/device/lib/_divsint.c : with assember functions
43181
43182	* src/device/lib/_divulong.c: with assember functions
43183
43184	* src/device/lib/_divslong.c: with assember functions
43185
43186	* src/device/lib/_moduint.c : with assember functions
43187
43188	* src/device/lib/_modsint.c : with assember functions
43189
43190	* src/device/lib/_modulong.c: with assember functions
43191
43192	* src/device/lib/_modslong.c: with assember functions
43193
43194	* src/device/lib/libint.lib:  replaced _muluint.c  and _mulsint.c  by _mulint.c
43195
43196	* src/device/lib/liblong.lib: replaced _mululong.c and _mulslong.c by _mullong.c
43197
43198	* src/device/lib/Makefile.in: replaced _muluint.c  and _mulsint.c  by _mulint.c
43199	                              replaced _mululong.c and _mulslong.c by _mullong.c
43200
432012001-10-03 Bernhard Held <bernhard AT bernhardheld.de>
43202
43203	* src/SDCCsymt.c: sequence of specifiers in pintTypeChain() corrected
43204
432052001-10-01 Bernhard Held <bernhard AT bernhardheld.de>
43206
43207	* src/SDCCglue.c: test, if win32api is available for MINGW
43208
432092001-10-01 Bernhard Held <bernhard AT bernhardheld.de>
43210
43211	* src/SDCCsymt.c: no more _modifier in printTypeChain()
43212	* support/regression/tests/driverstruct.c: REENTRANT for mcs51
43213	* support/regression/ports/gbz80/spec.mk: removed GENERIC
43214	* support/regression/ports/host/spec.mk: removed GENERIC
43215	* support/regression/ports/mcs51/spec.mk: removed GENERIC
43216	* support/regression/ports/z80/spec.mk: removed GENERIC
43217
432182001-10-01  Michael Hope  <michaelh AT juju.net.nz>
43219
43220	* support/regression/fwk/lib/testfwk.c (__printf): Removed GENERIC.
43221
43222	* support/regression/tests/bug-467035.c: Created.
43223
432242001-10-01    <johan AT FRIJA>
43225
43226	* src/SDCC.y: fixed bug #466586 part 1
43227
432282001-10-01  Johan Knol <johan.knol AT iduna.nl>
43229
43230	* SDCCicode.c: z80 has no generic pointers
43231	* removed -s from strip in all Makefile(.in)'s. It is not needed, but Solaris chocks on it.
43232
432332001-09-30  Michael Hope  <michaelh AT juju.net.nz>
43234
43235	* sim/ucsim/cmd.src/Makefile.in ($(PRJDIR)/libcmd.a): Changed all ar references to $(AR) for Solaris.
43236
432372001-09-29  Michael Hope  <michaelh AT juju.net.nz>
43238
43239	* Makefile (sdcc-libs): Added makebin to the list of standard targets.
43240
43241	* support/regression/ports/z80/spec.mk: Updated to use env for sdcc bin dir for automatic regression.
43242
432432001-09-25  Michael Hope  <michaelh AT juju.net.nz>
43244
43245	* configure.in: Fixed up so that ucsim is only configured once.
43246
43247	* support/cpp2/configure.in: Fixed to use the program transform to append the .exe for the win32 build.
43248
43249	* src/SDCCutil.c (getPrefixFromBinPath): Fixed up to work with win32 in all of its glory.
43250	(getPathDifference): As above.
43251
43252	* src/SDCCmain.c (preProcess): Changed to use a temporary file in a proper temp directory.  Fixed case where pre-processing only.
43253
43254	* src/SDCCglue.c (tempfilename): Added function for pre-processor.
43255
432562001-09-23  Michael Hope  <michaelh AT juju.net.nz>
43257	* .version: Updated to 2.3.1
43258
43259	* src/z80/main.c (z80_port =): Added macro based linker and assembler command line support.
43260	Added copyright header.
43261
43262	* src/SDCCmain.c: Shifted various functions into SDCCutil.c
43263	(assemble): Added support for macro based assembler commands.
43264	(linkEdit): Added support for macro based linker commands.
43265	(preProcess): Changed the pre-processor to use macros.
43266	(_setPaths): Added functionality to autodetect the include, lib and bin dir paths.
43267	(_discoverPaths): Added support for overriding the install directory using the SDCCDIR env variable.
43268
43269	* device/lib/z80/crt0.s: Added module name for debugging.
43270
432712001-09-20  Michael Hope  <michaelh AT juju.net.nz>
43272
43273	* src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
43274
43275	* src/SDCChasht.c (hTabDeleteByKey): Fixed delete as it would delete the last item from a bucket even if it wasn't the real one.
43276
43277	* src/SDCCglue.c: Moved gc_strdup to SDCCutil.c
43278
43279	* src/Makefile.in: Added SDCCmacro and SDCCutil
43280
432812001-09-19  Michael Hope  <michaelh AT juju.net.nz>
43282
43283	* src/SDCCmain.c (printVersionInfo): Added the build date to the version info.
43284
432852001-09-16    <johan AT FRIJA>
43286
43287	* 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.
43288
432892001-09-15    <johan AT FRIJA>
43290
43291	* src/mcs51/ralloc.c: (findAssignToSym): fixed bug #460662 part 1
43292	* src/ds390/ralloc.c (findAssignToSym): fixed bug #460662 part 1
43293
432942001-09-11    <johan AT FRIJA>
43295
43296	* src/SDCCval.c (valDiv Mod Minus Plus Shift): keep litteral expressions as small as possible (bug #460010)
43297
432982001-09-10  Michael Hope  <michaelh AT juju.net.nz>
43299
43300	* support/regression/tests/bug-460444.c: Added test case.
43301
43302	* src/z80/gen.c (genOr): bug 460444: if (a ^ lit) was broken for &, |, and ^.
43303	(genCast): Added justification for all of the asserts.
43304
433052001-09-10  Bernhard Held <bernhard AT bernhardheld.de>
43306
43307	* support/regression/support.c: _xdata replaced by xdata
43308
43309	* support/regression/spec.mk: removed _generic
43310
433112001-09-09  Michael Hope  <michaelh AT juju.net.nz>
43312
43313	* src/pic/ralloc.c (debugLogRegType): Removed some old types to get it to compile.
43314
43315	* src/z80/gen.c (shiftR2Left2Result): Improved the case when v = v >> n for small values of n to use less code space and time.
43316	(genrshTwo): Fixed v = v >> n where v is a negative int and n is > 8: bug 460010.
43317
43318	* src/z80/peeph.def: Added a rule to optimise shift then compare.
43319
43320	* support/regression/tests/bug-460000.c (testShiftByParam): Added test case.
43321
43322	* support/regression/tests/bug-460010.c: Added test case.
43323
43324	* support/regression/Makefile (test-host): Removed a silly 'clean' target when testing against gcc.
43325
433262001-09-09  Bernhard Held <bernhard AT bernhardheld.de>
43327
43328	* support/regression/Makefile: inter-port-clean adjusted for mcs51
43329
43330	* support/regression/testfwk.c: removed workaround for bug #436344
43331
43332	* support/regression/tests/bp.c: use less memory with mcs51
43333
43334	* support/regression/tests/bug-441448.c: use less memory
43335
43336	* support/regression/tests/ports/mcs51/spec.mk: cleanup, use --stack-after-data
43337
43338	* support/regression/collate-results.py: typo
43339
433402001-09-08  Michael Hope  <michaelh AT juju.net.nz>
43341
43342	* support/regression/tests/fetchoverlap.c: Added new test case.
43343
43344	* support/regression/tests/bp.c: Added new test case.
43345
43346	* support/regression/tests/bug-448984.c: Added new test case.
43347
43348	* support/regression/tests/pow2shifts.c: Added new test case.
43349
43350	* src/z80/gen.c: Turned off the noise it normally generates for the release.
43351	(genlshTwo): Fixed right shift for count > 8.
43352
43353	* src/z80/ralloc.c: Disabled most of the ACC packing rules as they weren't getting hit and weren't at all safe.
43354
433552001-09-08    <johan AT FRIJA>
43356
43357	* src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
43358
433592001-09-07    <johan AT FRIJA>
43360
43361	* src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
43362
43363	* src/SDCCglue.c (emitRegularMap): only delete a symbol when it is a symbol
43364
433652001-09-06    <johan AT FRIJA>
43366
43367	* src/SDCC.y: this could be a fix for bug #458744 (1.37)
43368	* bernhard noted me at this: "() equals to (void)" (1.38)
43369
433702001-09-05    <johan AT FRIJA>
43371
43372	* src/SDCCglue.c (emitRegularMap): a fix for bug #458099/2
43373
433742001-09-04    <johan AT FRIJA>
43375
43376	* src/SDCCsymt.c (checkSClass): a fix for bug #458099/1
43377
43378
433792001-09-04  Paul Stoffregen  <paul AT pjrc.com>
43380
43381	* pragma noinduction broke memcpy on mcs51 large model.  Moved it inside z80 optimization
43382
433832001-09-03  Michael Hope  <michaelh AT juju.net.nz>
43384
43385	* link/z80/aslink.h: Fixed path for PATH_MAX
43386
433872001-09-02  Michael Hope  <michaelh AT juju.net.nz>
43388
43389	* src/z80/gen.c (fetchLitPair): Changed so that it properly caches direct space references.
43390
43391	* support/regression/tests/addsub.c: Added cases to cover all the +, - combinations.
43392
43393	* support/regression/tests/uminus.c: Added a test for the unary minus operator.
43394
43395	* 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.
43396
433972001-09-01  Michael Hope  <michaelh AT juju.net.nz>
43398
43399	* src/z80/gen.c: Fixed up generator to pass the regresion tests, specifically fixing loads for longs, genCmp, and turned on the map file.
43400	(genCmp): Fixed up genCmp for the GB with longs.
43401
43402	* device/lib/gbz80/Makefile: Fixed up all the libraries to pass the regression tests.
43403
43404	* support/regression/ports/host/spec.mk: Updated to compile with the new type specifiers.
43405
43406	* device/lib/Makefile.in (Z80SOURCES): Removed old _mululong, _mulslong, and unneeded _mulint.
43407
43408	* device/lib/_mullong.c (_mulslong): Changed to actually return a value :)
43409
434102001-08-30  Paul Stoffregen  <paul AT pjrc.com>
43411
43412	* added peepholes 223 to 231 to mcs51 port.  These improve code when using large model.
43413
434142001-08-30  Michael Hope  <michaelh AT juju.net.nz>
43415
43416	* 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.
43417
43418	* src/z80/gen.c (genPlus): Changed bad long add for gb to a fall through.
43419
434202001-08-29  Michael Hope  <michaelh AT juju.net.nz>
43421
43422	* link/z80/aslink.h: Fixed long file name support.  Is now based off PATH_MAX instead of a constant.
43423
43424	* src/z80/gen.c: Fixed add and sub for the case where left or right are in static space.
43425
434262001-08-30 Bernhard Held   <bernhard AT bernhardheld.de>
43427
43428	* sim/ucsim/configure:    little improvement of Cygwin-detection
43429	* sim/ucsim/configure.in: little improvement of Cygwin-detection
43430	* sim/ucsim/cmd.src/newcmdcl.h: include <sys/types.h> to define fd_set automated build
43431	* support/regression/tests/bug-221100.c: small changes for mcs51
43432	* support/regression/tests/bug-221168.c: small changes for mcs51
43433	* support/regression/tests/bug-227710.c: small changes for mcs51
43434	* support/regression/tests/staticinit.c: small changes for mcs51
43435	* as/mcs51/aslink.h: accept everything as symbol name in rel-files, bug fix ID 452601
43436	* as/mcs51/lklex.c:  accept everything as symbol name in rel-files, bug fix ID 452601
43437	* as/mcs51/lksym.c:  accept everything as symbol name in rel-files, bug fix ID 452601
43438
43439$Revision: 11528 $
43440