12007-12-29  Dmitry Xmelkov  <dmix@gmail.ru>
2
3	* include/avr/pgmspace.h: Add '__' prefix with function args.
4
52007-12-23  Dmitry Xmelkov  <dmix@gmail.ru>
6
7	Fix bug #21872: __floatunsisf/undisf incorrectly named
8	* libm/fplib/floatsisf.S: Rename __floatunssisf --> __floatunsisf
9	* libc/stdlib/strtod.c: Ditto. Add the preprocessing to exclude
10	manual conversion with GCC >= 4.2
11	* libm/fplib/floatunsdisf.S: Move to floatundisf.S .
12	* libm/fplib/floatundisf.S: New file: __floatunsdisf --> __floatundisf
13	* libm/fplib/Files.am: Change source file name.
14	* tests/simulate/fplib/ulng2flt-01.c: __floatunssisf --> __floatunsisf
15	* tests/simulate/fplib/unll2flt-01.c: __floatunsdisf --> __floatundisf
16	* tests/simulate/regression/bug-21872-1.c: New file.
17	* tests/simulate/regression/bug-21872-2.c: New file.
18	* NEWS: Note about this bug.
19
20	* tests/simulate/progmem.h: Simplify pgm_read_qword() evaluation.
21
222007-12-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
23
24	bug #21862: File 'bench-libm.dox' does not exist in distribution
25	* doc/api/Makefile.am (EXTRA_DIST): add doc/api/bench-libm.dox.
26
272007-12-20  Anatoly Sokolov <aesok@post.ru>
28
29	* configure.ac: Add 'avr35' architecture. Move AT90USB82 and
30	AT90USB162 devices to 'avr35' architecture.
31	* devtools/gen-avr-lib-tree.sh (AVR_ARH_INFO): Add 'avr35'
32	architecture.
33	(AVR3_DEV_INFO): Add AT90USB82 and AT90USB162 devices.
34	(AVR35_DEV_INFO): New.
35	(AVR5_DEV_INFO): Remove AT90USB82 and AT90USB162 devices.
36	* doc/api/using-tools.dox: Document 'avr35'.
37
382007-12-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
39
40	* NEWS: avr-libc 1.6 branched
41	* configure.ac: bump to 1.7.0-20071220
42
432007-12-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
44
45	* xml/patch-headers.py: Update for new devices and header files.
46	* xml/Atmel2libc.py: More tweaks for strange Atmel XML files.
47	* doc/api/vectortable.dox: Regenerate from XML.
48
492007-12-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
50
51	* doc/api/bench.dox: Some minor spelling and grammar fixes to
52	Dmitry's fine benchmark page.
53
542007-12-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
55
56	* doc/api/faq.dox: Resolve all doxygen warnings except the "is
57	not documented" ones.
58	* doc/api/library.dox: (Ditto.)
59	* doc/api/overview.dox: (Ditto.)
60	* doc/api/porting.dox: (Ditto.)
61	* doc/api/tools-install.dox: (Ditto.)
62	* doc/examples/stdiodemo/stdiodemo.dox: (Ditto.)
63	* include/avr/fuse.h: (Ditto.)
64	* include/avr/lock.h: (Ditto.)
65	* include/util/atomic.h: (Ditto.)
66
672007-12-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
68
69	bug #21484: Documentation build for avr/version.h does not
70	susbstitute autoconf macros
71	* doc/api/doxygen.config.in (INPUT): replace version.h.in by
72	version.h so the doxygen build uses the processed file.
73
742007-12-19  Dmitry Xmelkov  <dmix@gmail.ru>
75
76	* include/stdlib.h: Add '__' prefix with function args.
77
78	* include/string.h: Add '__' prefix with function args. The ffs(),
79	ffsl(), ffsll(): cosmetic changes to improve Doxygen output.
80
81	* tests/simulate/math/isinf-01.c: New file.
82
83	* include/math.h: Fix a few documentation errors (inherited from
84	1.4). Make args names in doc adequate ones in function declaration.
85	Use the '\a' Doxygen's command instead to '\c' anywhere.
86
87	Add CLI to abort() and exit() functions, since GCC's _exit()
88	does not disable interrupts today.
89	* libc/stdlib/abort.S: Add CLI before jump to _exit.
90	* libc/stdlib/exit.S: Ditto.
91	* include/stdlib.h: Document the CLI.
92	* tests/simulate/stdlib/abort-1.c: New file.
93
942007-12-18 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
95
96	Undo the CLI change.  This rather belongs into _exit which is
97	supplied by libgcc.a.
98	Reopens bug #21841: Add CLI to exit() and abort() loops
99        * libc/stdlib/exit.S: undo rev 1.2.
100        * include/stdlib.h (exit): undo rev 1.30.
101
1022007-12-18  Eric B. Weddington  <eric.weddington@atmel.com>
103
104	* include/avr/iotn43u.h: Fix RAMEND.
105
1062007-12-18  Eric B. Weddington  <eric.weddington@atmel.com>
107
108	* include/avr/iom1284p.h: Fix RAMEND.
109	* include/avr/iom32hvb.h: Ditto.
110	* include/avr/iotn48.h: Ditto.
111	* include/avr/iotn88.h: Ditto.
112	* include/avr/io90pwm2b.h: Ditto.
113	* include/avr/io90pwm3b.h: Ditto.
114	* include/avr/io90pwm216.h: Ditto.
115	* include/avr/io90pwm316.h: Ditto.
116
1172007-12-18 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
118
119	bug #21841: Add CLI to exit() and abort() loops
120	* libc/stdlib/exit.S: add a CLI before entering the loop
121	* include/stdlib.h (exit): document the CLI.
122
1232007-12-18 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
124
125	Submitted by Bill Johnson
126	bug #19669: Need function to read signature row
127	* include/avr/boot.h (boot_signature_byte_get): Add new macro.
128
1292007-12-18 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
130
131	* tests/simulate/runtest.sh: replace /bin/bash by /bin/sh as the
132	really generic name of the shell to invoke.  Not every system has
133	bash in /bin.
134
1352007-12-18  Eric B. Weddington  <eric.weddington@atmel.com>
136
137	Fix for bug #21840.
138	* include/avr/iom48p.h: Fix RAMEND.
139	* include/avr/iom88p.h: Ditto.
140	* include/avr/iom168p.h: Ditto.
141	* include/avr/iom328p.h: Ditto.
142
1432007-12-18  Dmitry Xmelkov  <dmix@gmail.ru>
144
145	* include/alloca.h: Add '__' prefix with function args. To avoid
146	a possible conflict with user's CPP definitions.
147	* include/math.h: Ditto.
148
1492007-12-17  Dmitry Xmelkov  <dmix@gmail.ru>
150
151	Make abort() as a normal extern function (instead to inline loop).
152	* libc/stdlib/abort.S: Rewrite.
153	* include/stdlib.h: Declare abort() as a normal, add doc.
154	* tests/simulate/stdlib/abort-1.c: New file.
155
1562007-12-16  Dmitry Xmelkov  <dmix@gmail.ru>
157
158	* libc/stdlib/ctype.S:
159	  . isalnum(): Optimize.
160	  . isxdigit(): Correct a behaviour with nonzero high byte.
161	  . iscntrl(): Fix bug [no-id]: iscntrl() return true for some
162	  values from 0x80 to 0xff. Optimize a little.
163	  . ispunct(): Optimize.
164	  . tolower(): Return as is, if the input is not an unsigned char
165	  value. Optimize.
166	  . toupper(): Ditto.
167	* include/ctype.h: Specify (and change) doc about the behaviour
168	in case then the input is not an unsigned char value.
169	* NEWS: Note about fixed bug of iscntrl().
170	* tests/simulate/stdlib/isalnum-1.c: New file.
171	* tests/simulate/stdlib/isalpha-1.c: New file.
172	* tests/simulate/stdlib/isascii-1.c: New file.
173	* tests/simulate/stdlib/isblank-1.c: New file.
174	* tests/simulate/stdlib/iscntrl-1.c: New file.
175	* tests/simulate/stdlib/isdigit-1.c: New file.
176	* tests/simulate/stdlib/isgraph-1.c: New file.
177	* tests/simulate/stdlib/ispunct-1.c: New file.
178	* tests/simulate/stdlib/isupper-1.c: New file.
179	* tests/simulate/stdlib/isxdigit-1.c: New file.
180	* tests/simulate/stdlib/tolower-1.c: New file.
181	* tests/simulate/stdlib/toupper-1.c: New file.
182
1832007-12-16  Dmitry Xmelkov  <dmix@gmail.ru>
184
185	Fix bug #18994: minor optimization possible to stdlib functions
186	isspace(), isprint(), and islower()
187	* libc/stdlib/ctype.S: Optimize isspace(), isprint() and islower().
188	* tests/simulate/stdlib/islower-1.c: New file.
189	* tests/simulate/stdlib/isprint-1.c: New file.
190	* tests/simulate/stdlib/isspace-1.c: New file.
191	* NEWS: Note about this.
192
193	* NEWS: Add the chapter 'Main changes from 1.4 to 1.5'.
194
1952007-12-12  Eric B. Weddington  <eric.weddington@atmel.com>
196
197	* include/avr/io90pwm216.h: Fix fuse data.
198	* include/avr/io90pwm316.h: Ditto.
199
2002007-12-12  Eric B. Weddington  <eric.weddington@atmel.com>
201
202	* include/avr/iom32hvb.h: Remove unused register.
203	* include/avr/io90pwm216.h: Fix IVT size. Fix for bug #21749.
204	* include/avr/io90pwm316.h: Ditto.
205	* include/avr/iomx8.h: Remove bits for mega48. Fix for bug #21691.
206	* include/avr/io90pwm316.h: Add bit defs. Fix for bug #21743.
207	* include/avr/iomxx0_1.h: Fix bit defs. Fix for bug #21626.
208	* include/avr/iotnx61.h: Fix bit defs. Fix for bug #21521.
209
2102007-12-11  Eric B. Weddington  <eric.weddington@atmel.com>
211
212	* include/avr/lock.h: Add documentation for the Lockbit API.
213	* doc/api/doxygen.config.in: Add avr/lock.h to the doc list.
214	* include/avr/iom8.h: Add Fuse and Lockbit data.
215	* include/avr/iotn43u.h: Add Lockbit data.
216	* include/avr/io90pwm216.h: Add Lockbit data. Fix fuse data.
217	* include/avr/io90pwm316.h: Add Lockbit data. Fix fuse data.
218	* include/avr/io90pwm2b.h: Add Lockbit data. Fix fuse data.
219	* include/avr/io90pwm3b.h: Add Lockbit data. Fix fuse data.
220	* include/avr/iom88.h: Add Fuse data.
221	* include/avr/iom168.h: Add Fuse data.
222	* include/avr/iom128.h: Formatting.
223	* include/avr/iom16.h: Add Fuse and Lockbit data.
224	* include/avr/iom32.h: Ditto.
225	* include/avr/iom64.h: Ditto.
226	* include/avr/iom325.h: Ditto.
227	* include/avr/iom3250.h: Ditto.
228	* include/avr/iom645.h: Ditto.
229	* include/avr/iom6450.h: Ditto.
230	* include/avr/iom329.h: Ditto.
231	* include/avr/iom3290.h: Ditto.
232	* include/avr/iom649.h: Ditto.
233	* include/avr/iom6490.h: Ditto.
234	* include/avr/iom640.h: Ditto.
235	* include/avr/iom1280.h: Ditto.
236	* include/avr/iom1281.h: Ditto.
237	* include/avr/iom2560.h: Ditto.
238	* include/avr/iom2561.h: Ditto.
239	* include/avr/iousb646.h: Ditto.
240	* include/avr/iousb647.h: Ditto.
241	* include/avr/iousb1286.h: Ditto.
242	* include/avr/iousb1287.h: Ditto.
243	* include/avr/iom8515.h: Ditto.
244	* include/avr/iom161.h: Ditto.
245	* include/avr/iom162.h: Ditto.
246	* include/avr/iom163.h: Ditto.
247	* include/avr/iousb82.h: Ditto.
248	* include/avr/iousb162.h: Ditto.
249	* include/avr/iom165.h: Ditto.
250	* include/avr/iom165p.h: Ditto.
251	* include/avr/iocan32.h: Ditto.
252	* include/avr/iocan64.h: Ditto.
253	* include/avr/iocan128.h: Ditto.
254	* include/avr/io90pwmx.h: Ditto.
255	* include/avr/io90pwm1.h: Ditto.
256	* include/avr/iom169.h: Ditto.
257	* include/avr/iom169p.h: Ditto.
258	* include/avr/iom323.h: Ditto.
259	* include/avr/iom406.h: Ditto.
260	* include/avr/iotn261.h: Ditto.
261	* include/avr/iotn461.h: Ditto.
262	* include/avr/iotn861.h: Ditto.
263	* include/avr/iotn25.h: Ditto.
264	* include/avr/iotn45.h: Ditto.
265	* include/avr/iotn85.h: Ditto.
266	* include/avr/iotn24.h: Ditto.
267	* include/avr/iotn44.h: Ditto.
268	* include/avr/iotn84.h: Ditto.
269	* include/avr/iotn2313.h: Ditto.
270	* include/avr/iotn13.h: Ditto.
271	* include/avr/iotn11.h: Ditto.
272	* include/avr/iotn12.h: Ditto.
273	* include/avr/iom8hva.h: Ditto.
274	* include/avr/iom16hva.h: Ditto.
275	* include/avr/iom8535.h: Ditto.
276	* include/avr/iom164.h: Ditto.
277	* include/avr/iom324.h: Ditto.
278	* include/avr/iom644.h: Ditto.
279	* include/avr/iotn28.h: Ditto.
280	* include/avr/iotn26.h: Ditto.
281	* include/avr/iotn22.h: Ditto.
282	* include/avr/iotn15.h: Ditto.
283
2842007-12-09  Dmitry Xmelkov  <dmix@gmail.ru>
285
286	* libm/fplib/frexp.S: Make frexp() similar to GCC/x86 in case of
287	nonfinite arg: write 0 by exponent pointer. Early Avr-libc's frexp()
288	skips exponent storing in this case. Make the NULL a legal address
289	to skip a storing.
290	* include/math.h: Specify this in doc.
291	* tests/simulate/math/frexp-01.c: Add new test cases.
292	* NEWS: Note about this.
293
2942007-12-08  Dmitry Xmelkov  <dmix@gmail.ru>
295
296	* doc/api/doxygen.config.in: Change MACRO_EXPANSION and
297	EXPAND_ONLY_PREDEF variables to YES. Add __ATTR_CONST__ to
298	PREDEFINED list. To clean documentation: remove last label
299	from function lists.
300	* include/math.h: Add a note about the const attribute.
301
302	* doc/api/doxygen.config.in: Remove 'libm' directory from the INPUT
303	list, as there is no any doxygen comments. To reduce the number of
304	doxygen warnings.
305
3062007-12-02  Dmitry Xmelkov  <dmix@gmail.ru>
307
308	Extend the benchmark chapter.
309	* doc/api/bench-libc.dox: Add a bit functions.
310	* doc/api/bench-libm.dox: New file.
311	* doc/api/doxygen.config.in: Add new file bench-libm.dox
312
313	Make signbit() similar to GCC's builtin: return 1 as nonzero value.
314	* libm/fplib/signbit.S: Ditto.
315	* include/math.h: signbit(): fix comment about return value.
316	* tests/simulate/math/signbit-01.c: New file.
317	* NEWS: Note about this change.
318
3192007-12-01  Dmitry Xmelkov  <dmix@gmail.ru>
320
321	Move all CPP statements to '#ifndef __DOXYGEN__' scope to reduce
322	the volume of garbage in documentation. IMHO, the \file doxygen
323	directive is redundant here, as it forces an opening a new
324	chapter with inclusion all CPP definitions.
325	* libc/pmstring/memcpy_P.S: (Ditto.)
326	* libc/pmstring/strcat_P.S: (Ditto.)
327	* libc/pmstring/strcpy_P.S: (Ditto.)
328	* libc/pmstring/strlen_P.S: (Ditto.)
329	* libc/pmstring/strncat_P.S: (Ditto.)
330	* libc/pmstring/strncmp_P.S: (Ditto.)
331	* libc/pmstring/strncpy_P.S: (Ditto.)
332	* libc/pmstring/strnlen_P.S: (Ditto.)
333	* libc/stdlib/atoi.S: (Ditto.)
334	* libc/stdlib/atol.S: (Ditto.)
335	* libc/string/memccpy.S: (Ditto.)
336	* libc/string/memchr.S: (Ditto.)
337	* libc/string/memcmp.S: (Ditto.)
338	* libc/string/memcpy.S: (Ditto.)
339	* libc/string/memmove.S: (Ditto.)
340	* libc/string/memset.S: (Ditto.)
341	* libc/string/strcat.S: (Ditto.)
342	* libc/string/strcpy.S: (Ditto.)
343	* libc/string/strlen.S: (Ditto.)
344	* libc/string/strncat.S: (Ditto.)
345	* libc/string/strncmp.S: (Ditto.)
346	* libc/string/strncpy.S: (Ditto.)
347	* libc/string/strnlen.S: (Ditto.)
348	* libc/string/strrchr.S: (Ditto.)
349
350	Add new function lrint().
351	* libm/fplib/lrint.S: New file.
352	* libm/fplib/Files.am: Add new source lrint.S
353	* include/math.h: Add lrint() function definition.
354	* tests/simulate/math/lrint-01.c: New file.
355	* NEWS: Update new functions list.
356
357	Make conversion from float to (u)long in error cases to be
358	more similar with GCC/x86.
359	* libm/fplib/fixunssfsi.S: New file.
360	* libm/fplib/Files.am: Add new source fixunssfsi.S
361	* libm/fplib/fixsfsi.S: Rewrite to use __fixunssfsi() function.
362	* libm/fplib/lround.S: Unify result in error cases.
363	* include/math.h: lround(): fix comment about return value.
364	* tests/simulate/fplib/flt2long-01.c: Update overflow test cases.
365	* tests/simulate/fplib/flt2ulng-01.c: Ditto.
366	* tests/simulate/math/lround-01.c: Ditto.
367	* NEWS: Note about this change.
368
3692007-11-30  Eric B. Weddington  <eric.weddington@atmel.com>
370
371	* doc/api/doxygen.config.in: Add avr/fuse.h to the doc list.
372
3732007-11-30  Eric B. Weddington  <eric.weddington@atmel.com>
374
375	* include/avr/fuse.h: Add documentation for Fuse API.
376
3772007-11-28  Eric B. Weddington  <eric.weddington@atmel.com>
378
379	Add new devices: ATmega1284P, ATmega32HVB.
380	* configure.ac: Add new devices.
381	* devtools/gen-avr-lib-tree.sh: Ditto.
382	* include/avr/Makefile.am: Ditto.
383	* include/avr/io.h: Ditto.
384	* doc/api/main_page.dox: Ditto.
385	* doc/api/using-tools.dox: Ditto.
386	* include/avr/power.h: Ditto.
387	* include/avr/wdt.h: Ditto.
388	* NEWS: Update new devices list.
389	* include/avr/iom1284p.h: New file.
390	* include/avr/iom32hvb.h: New file.
391
3922007-11-18  Dmitry Xmelkov  <dmix@gmail.ru>
393
394	Add the benchmark page. Now this is only a start of work.
395	* doc/api/bench.dox: New file.
396	* doc/api/bench-libc.dox: New file.
397	* doc/api/Makefile.am: Add new doxygen sources.
398	* dod/api/doxygen.config.in: Ditto.
399	* NEWS: Note about new doc page.
400
4012007-11-11  Dmitry Xmelkov  <dmix@gmail.ru>
402
403	Add new function lround().
404	* libm/fplib/lround.S: New file.
405	* libm/fplib/Files.am: Add new source lround.S
406	* include/math.h: Add lround() function definition.
407	* tests/simulate/math/lround-01.c: New file.
408	* NEWS: Update new functions list.
409
4102007-11-08  Eric B. Weddingotn  <eweddington@cso.atmel.com>
411
412	Add new device: ATtiny88.
413	* configure.ac: Add new device.
414	* devtools/gen-avr-lib-tree.sh: Ditto.
415	* include/avr/Makefile.am: Ditto.
416	* include/avr/io.h: Ditto.
417	* doc/api/main_page.dox: Ditto.
418	* doc/api/using-tools.dox: Ditto.
419	* include/avr/power.h: Ditto.
420	* include/avr/wdt.h: Ditto.
421	* include/avr/iotn88.h: New file.
422	* NEWS: Update new devices list.
423	* include/avr/iotn48.h: Add lockbit information.
424
4252007-11-05  Dmitry Xmelkov  <dmix@gmail.ru>
426
427	Add new function round().
428	* libm/fplib/round.S: New file.
429	* libm/fplib/Files.am: Add new source round.S
430	* include/math.h: Add round() function definition.
431	* tests/simulate/math/round-01.c: New file.
432	* tests/simulate/math/xxx-nan.c: Add round() function to list.
433
434	* include/math.h: Add the 'const' attribute to hypot() function.
435
4362007-11-04  Dmitry Xmelkov  <dmix@gmail.ru>
437
438	* libc/stdlib/dtostre.c: Optimize in space: 16..22 bytes, consided
439	the extra function strcpy_P().
440
4412007-11-02  Eric B. Weddington  <eweddington@cso.atmel.com>
442
443	* include/avr/iom48p.h: New implementation. No common file included.
444	Add Fuse and lockbit definitions. Fix bugs.
445	* include/avr/iom88p.h: Ditto.
446	* include/avr/iom168p.h: Ditto.
447	* include/avr/iom328p.h: Ditto.
448	* include/avr/iomx8p.h: Remove file.
449	* include/avr/Makefile (avr_HEADERS): Remove iomx8p.h from list.
450
4512007-10-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
452
453	bug #21432: Incorrect timer interrupt handler names for ATtiny45
454	* include/avr/iotnx5.h: Add TIMER0..._vect and TIMER1..._vect
455	names in addition to the TIM0... and TIM1... names to match
456	the recently changed datasheet.
457
4582007-10-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
459
460	bug #21204: iotnx61.h PRR bits incorrect
461	* include/avr/iotnx61.h: Use correct bit numbers for
462	PRTIM0/PRTIM1.
463
4642007-10-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
465
466	bug #21444: Undocument -minit-stack
467	* doc/api/using-tools.dox: Remove references to -minit-stack,
468	add an explanation for how to set __stack in order to relocate
469	the stack.
470
4712007-10-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
472
473	bug #20530: Bug in sample code for early wdt disable
474	* include/avr/wdt.h: move variable mcusr_mirror into
475	the .noinit section in example code.
476
4772007-10-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
478
479	bug #20248: FAQ#3: clarify which registers are safe to be used
480	* doc/api/faq.dox: Describe that r8...r15 can only be used
481	for register variables if they are not used for argument
482	passing.  Clarify that call-saved registers must be
483	preserved even in case they are used for argument passing by
484	the compiler.
485
4862007-10-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
487
488	bug #20650: Missing description of AVR specific C-preprocessor
489	macros
490	* doc/api/using-tools.dox: Document the target-specific macros
491	__AVR, __AVR__, AVR, and __NO_INTERRUPTS__.
492
4932007-10-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
494
495	bug #18373: Bugs in Inline ASM documentacion
496	* doc/api/inline_asm.dox: Inline asm documentation improvements:
497	  . mention named operands
498	  . document that read-write constraints to work
499	  . explain read-write constraints
500
5012007-10-29  Eric B. Weddington  <eweddington@cso.atmel.com>
502
503	* include/avr/power.h: Add support for ATmega48P-88P-168P-328P devices.
504
5052007-10-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
506
507	* include/util/atomic.h: Fix a documentation spelling error.
508
5092007-10-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
510
511	* configure.ac: Bump revision to 1.5.1-20071030 in order to
512	indicate post-release 1.5.1-20071029 state.
513
5142007-10-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
515
516	* configure.ac: Bump revision to 1.5.1-20071029 in order to
517	prepare for a new (unstable) release.
518
5192007-10-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
520
521	Submitted by Dean Camera:
522	Patch #5644: New interrupt.h header file
523	* include/avr/interrupt.h: Complete overhaul of the ISR() and related
524	macros.
525	By Joerg Wunsch:
526	* doc/api/interrupts.dox: Update the interrupt documentation to all
527	the new features.
528
5292007-10-28 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
530
531	Submitted by Florin-Viorel Petrov
532	Patch #6236: Improving _delay_us and _delay_ms
533	* include/util/delay.h: Provide fallback functionality
534	to extend the possible argument range to _delay_us(),
535	and _delay_ms(), respectively.
536
5372007-10-28 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
538
539	Submitted by Cliff Lawson and Carlos Lamas:
540	Patch #5343: Add a util/setbaud.h "helper" file
541	* include/util/setbaud.h: New file.
542	* include/util/Makefile.am: Include setbaud.h.
543
5442007-10-28 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
545
546	Submitted by Dean Camera:
547	Patch #5756: New atomic.h header file
548	* include/util/atomic.h: New file.
549	* include/util/Makefile.am: Include atomic.h.
550
5512007-10-25  Anatoly Sokolov <aesok@post.ru>
552
553	* include/avr/iocanxx.h (OVFG): Define.
554	Closes bug #21434.
555
5562007-10-25  Anatoly Sokolov <aesok@post.ru>
557
558	* include/avr/io90pwmx.h (AMP0EN, AMP0IS, AMP0G1, AMP0G0, AMP0TS1,
559	AMP0TS0, AMP1EN, AMP1IS, AMP1G1, AMP1G0, AMP1TS1, AMP1TS0,
560	ADASCR): Define.
561	Closes bug #20435.
562
5632007-10-25  Anatoly Sokolov <aesok@post.ru>
564
565	* include/avr/io2313.h (TICIE1): Define.
566	Closes bug #20682.
567
5682007-10-25  Anatoly Sokolov <aesok@post.ru>
569
570	* include/avr/iotn13.h (EIN1D): Rename to AIN1D.
571	Closes bug #21411.
572
5732007-10-24  Eric B. Weddington  <eweddington@cso.atmel.com>
574
575	Add Lockbits API. Set the lockbits from within the application.
576	* include/avr/Makefile.am: Add new file to distribution.
577	* include/avr/io.h: Include new lock.h file.
578	* include/avr/iom128.h: Add definitions for API.
579	* include/avr/iom48.h: Ditto.
580	* include/avr/iom88.h: Ditto.
581	* include/avr/iom168.h: Ditto.
582	* include/avr/lock.h: New file.
583
5842007-10-23 Anatoly Sokolov <aesok@post.ru>
585
586	* configure.ac: Add new devices: ATmega48P/88P/168P/328P.
587	* devtools/gen-avr-lib-tree.sh: Ditto.
588	* include/avr/Makefile.am: Ditto.
589	* include/avr/io.h: Ditto.
590	* doc/api/main_page.dox: Ditto.
591	* doc/api/using-tools.dox: Ditto.
592	* include/avr/wdt.h: Ditto.
593	* include/avr/iom168p.h: New file.
594	* include/avr/iom328p.h: New file.
595	* include/avr/iom48p.h: New file.
596	* include/avr/iom88p.h: New file.
597	* include/avr/iomx8p.h: New file.
598	* NEWS: Add devices to list.
599
6002007-10-23 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
601
602	Fix bug #21174: assembly error with targets at90s1200, attiny11,
603	attiny12, and attiny28
604	* crt1/gcrt1.S: for assembly-only architectures, revert to the
605	old behaviour of jumping to main() rather than calling it, and
606	jumping to exit() afterwards.
607
6082007-10-23 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
609
610	Fix for bug #18964: USART definitions *wrong* in iocanxx.h
611	* include/avr/iocanxx.h: Add missing SIG_USART* vector names.
612
6132007-10-23 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
614
615	Submitted by Guohui Wang <info@Atmanecl.net>:
616	Fix for bug #20843: Mega 2561 library
617	* crt0/gcrt0.S: initialize EIND for avr6 architectures to
618	the same segment __vectors belongs to.
619
6202007-10-19  Eric B. Weddington  <eweddington@cso.atmel.com>
621
622	* configure.ac: Add new devices: AT90PWM2B, AT90PWM3B.
623	* devtools/gen-avr-lib-tree.sh: Ditto.
624	* include/avr/Makefile.am: Ditto.
625	* include/avr/io.h: Ditto.
626	* doc/api/main_page.dox: Ditto.
627	* doc/api/using-tools.dox: Ditto.
628	* include/avr/power.h: Ditto.
629	* include/avr/wdt.h: Ditto.
630	* include/avr/io90pwm2b.h: New file.
631	* include/avr/io90pwm3b.h: New file.
632	* NEWS: Add devices to list.
633
6342007-10-19  Eric B. Weddington  <eweddington@cso.atmel.com>
635
636	Fix for Atmel bug #6346.
637	* include/avr/iom8515.h: Add USART* interrupt vector names to
638	correctly reflect the device XML file.
639
6402007-10-10  Eric B. Weddington  <eweddington@cso.atmel.com>
641
642	Resolve bug #21299: Duplicate register address in iotn48.h.
643	* include/avr/iotn48.h: Fix PRR address.
644	* NEWS: Update fixed bug list.
645
6462007-10-08  Eric B. Weddington  <eweddington@cso.atmel.com>
647
648	* include/avr/io90pwm216.h: Add fuse information.
649	* include/avr/io90pwm316.h: Ditto.
650	* include/avr/iotn43u.h: Ditto.
651
6522007-10-08  Eric B. Weddington  <eweddington@cso.atmel.com>
653
654	Add new device: ATtiny48.
655	* configure.ac: Add new devices.
656	* devtools/gen-avr-lib-tree.sh: Ditto.
657	* include/avr/Makefile.am: Ditto.
658	* include/avr/io.h: Ditto.
659	* doc/api/main_page.dox: Ditto.
660	* doc/api/using-tools.dox: Ditto.
661	* include/avr/power.h: Ditto.
662	* include/avr/wdt.h: Ditto.
663	* include/avr/iotn48.h: New file.
664	* NEWS: Update new devices list.
665
6662007-10-05 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
667
668	Resolve bug #21228: Missing 3rd clause in BSD license in
669	documentation pages
670	* doc/api/main_page.dox: Add clause #3.
671	* doc/api/using-tools.dox: Add clause #3.
672
6732007-10-05 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
674
675	Unbreak the documentation build for recent versions of doxygen.
676	NB: the latex package "urc" must be installed in order to
677	successfully build the documentation.
678
679	* doc/api/doxygen.config.in: Update for doxygen 1.5.x.  Most of
680	the changes have been generated by running doxygen -u.  In
681	addition, the input encoding has been changed to iso-8859-1
682	because this matches our current documentation.
683	* doc/api/overview.dox: Fix two illegal special characters that
684	were not part of ISO8859-1.
685
6862007-10-03  Eric B. Weddington  <eweddington@cso.atmel.com>
687
688	Add new device: ATtiny43U.
689	* configure.ac: Add new device.
690	* devtools/gen-avr-lib-tree.sh: ditto.
691	* include/avr/Makefile.am: ditto.
692	* include/avr/io.h: ditto.
693	* include/avr/power.h: ditto.
694	* doc/api/using-tools.dox: ditto.
695	* doc/api/main_page.dox: ditto.
696	* include/avr/iotn43u.h: New file.
697	* NEWS: Update new devices list.
698
6992007-10-03  Eric B. Weddington  <eweddington@cso.atmel.com>
700
701	* devtools/gen-avr-lib-tree.sh: Optimize for space for all devices.
702
7032007-10-03  Eric B. Weddington  <eweddington@cso.atmel.com>
704
705	The start of a Fuse API.
706	* include/avr/fuse.h: New file.
707	* include/avr/io.h: Add inclusion of fuse.h.
708	* include/avr/Makefile.am: Add fuse.h to distribution list.
709	* include/avr/iom128.h: Add fuse information to ATmega128 IO header.
710
7112007-10-03  Eric B. Weddington  <eweddington@cso.atmel.com>
712
713	* doc/api/main_page.dox: Reorganize and update device listing.
714	Fix spelling and grammar.
715
7162007-10-02  Eric B. Weddington  <eweddington@cso.atmel.com>
717
718	* doc/api/pgmspace.dox: Fix example code. Change description to match.
719	* NEWS: Update fixed bugs list.
720	Fixes bug #21183.
721
7222007-10-01  Eric B. Weddington  <eweddington@cso.atmel.com>
723
724	Add new devices: AT90PWM216, AT90PWM316, with contributions from
725	Tobias Frost <tobi@coldtobi.de>.
726	* devtools/gen-avr-lib-tree.sh: Add new devices.
727	* configure.ac: ditto.
728	* doc/api/using-tools.dox: ditto.
729	* include/avr/Makefile.am: ditto.
730	* include/avr/power.h: ditto.
731	* include/avr/wdt.h: ditto.
732	* include/avr/io.h: ditto.
733	* include/avr/io90pwm216.h: New file.
734	* include/avr/io90pwm316.h: New file.
735	* NEWS: Update new devices list.
736
7372007-07-30  Eric B. Weddington  <eweddington@cso.atmel.com>
738
739	*include/avr/Makefile.am: Add missing common.h to install list.
740
7412007-07-09  Eric B. Weddington  <eweddington@cso.atmel.com>
742
743	* doc/api/inline_asm.dox: Document new constraints.
744
7452007-07-06 Eric B. Weddington <eweddington@cso.atmel.com>
746
747	* doc/api/faq.dox: Add FAQ for soft reset.
748
7492007-07-01  Dmitry Xmelkov  <dmix@gmail.ru>
750
751	Add new function alloca(). Fix savannah bug #19686: alloca
752	declaration missing.
753	* include/alloca.h: New file.
754	* include/Makefile.am: Add alloca.h file.
755	* doc/api/doxygen.config.in: Add alloca.h file.
756	* tests/simulate/other: New directory.
757	* tests/simulate/other/alloc.c: New file.
758	* tests/simulate/runtest.sh: Add other directory to the test list.
759
7602007-06-27 Eric B. Weddington <eweddington@cso.atmel.com>
761
762	* include/avr/power.h: Add support for ATmega644P.
763	* NEWS: Add item to fixed bug list.
764	Fixes bug #20276.
765
7662007-06-08 Eric B. Weddington <eweddington@cso.atmel.com>
767
768	* include/avr/common.h: New file.
769	* include/avr/io.h: Move definitions to common.h. Fix documentation.
770	* common/macros.inc: Use new common register definitions.
771	* crt1/gcrt1.S: Use new common register definitions.
772	* include/avr/iomxx0_1.h: Define EIND as normal without conditional
773	  compilation.
774	* libc/stdlib/stdlib_private.h: Use new common register definitions.
775	* doc/api/doxygen.config.in: Add avr/io.h back into the documentation list.
776	* libc/stdlib/setjmp.S: Use new common register definitions.
777
7782007-05-29 Eric B. Weddington <eweddington@cso.atmel.com>
779
780	* Makefile.am: Add ChangeLog-2006 to distribution list.
781
7822007-05-29 Eric B. Weddington <eweddington@cso.atmel.com>
783
784	* configure.ac: Revert patch and add devices back into avr2 group.
785	This allows avr-libc to work with previous versions of GCC.
786	* devtools/gen-avr-lib-tree.sh: ditto.
787
7882007-05-22 Eric B. Weddington <eweddington@cso.atmel.com>
789
790	* devtools/gen-avr-lib-tree.sh: Replace awk with cut, which speeds
791	up the script. Remove devices in avr2 group that have been moved
792	to the avr25 group.
793	* configure.ac: Remove devices in avr2 group that have been moved
794	to the avr25 group.
795
7962007-05-21 Eric B. Weddington <eweddington@cso.atmel.com>
797
798	* doc/api/tools-install.dox: Add documentation on how to build the
799	toolchain under Windows. Fix for bug #19496.
800	* doc/api/acknowledge.dox: Typo, email address, and add missing clause.
801	* NEWS: Add to bugs fixed list.
802
8032007-05-15 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
804
805	* xml/Atmel2libc.py: Catch (and ignore) errors resulting from
806	empty IO register declarations in the Atmel files, as e.g. for
807	MCUCR in AT86RF401.
808	* xml/patch-headers.py: Add all the new devices we do support
809	now.
810	* doc/api/vectortable.dox: Regenerate.
811	* doc/api/Makefile.am: add vectortable.dox.
812	* include/avr/iotnx4.h: Sigh.  AVR Studio 4.13 gratuitously
813	renamed a number of interrupt vectors for ATtinyX4 devices.
814	Add these new declarations along with the older ones.
815
8162007-05-14 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
817
818	* configure.ac: bump version date.
819
8202007-05-14 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
821
822	* doc/api/rel-method.dox: configure.in -> configure.ac
823
8242007-05-14 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
825
826	* common/Makefile.am: Fix file locations for automake so
827	"make distcheck" will compile again.
828	* libc/stdio/Files.am: (Ditto.)
829	* libc/stdlib/Files.am: (Ditto.)
830
8312007-05-13 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
832
833	Fix bug #19009: Make <util/delay.h> issue a warning when optimizations
834	are turned off
835	* include/util/delay.h: Split the basic delay functions off into
836	<util/delay_basic.h>; issue a warning when this file is compiled
837	without optimization.
838	* include/util/delay_basic.h: (New file.)
839	* include/util/Makefile.am: add delay_basic.h
840
8412007-05-13  Anatoly Sokolov <aesok@post.ru>
842
843	* include/avr/iousbxx6_7.h: Change PORTxy to Pxy.
844
8452007-05-13 Anatoly Sokolov <aesok@post.ru>
846
847	* configure.ac: Add tests for the ATmega8HVA/16HVA support.
848	* devtools/gen-avr-lib-tree.sh: Add support for ATmega8HVA/16HVA.
849	* include/avr/io.h: (Ditto.).
850	* include/avr/wdt.h: (Ditto.).
851	* include/avr/iom8hva.h: New file.
852	* include/avr/iom16hva.h: New file.
853	* include/avr/iomxxhva.h: New file.
854	* include/avr/Makefile.am: Include new files.
855	* doc/api/main_page.dox: Document support for ATmega8HVA/16HVA.
856	* doc/api/using-tools.dox: (Ditto.)
857
8582007-05-12  Anatoly Sokolov <aesok@post.ru>
859
860	* include/avr/iousbxx2.h: Change PORTxy to Pxy.
861
8622007-05-09 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
863
864	Fix bug #19445: _malloc_heap_end does not follow _heap_end on m2561
865	* doc/api/malloc-std.fig: Clearly distinguish library-internal
866	variables from absolute symbols added by the linker.
867	* doc/api/malloc-x1.fig: (Ditto.)
868	* doc/api/malloc-x2.fig: (Ditto.)
869
8702007-05-09 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
871
872	Fix bug #19841: Error building 1.4 HEAD: undefined reference to 'exit'
873	* doc/api/Makefile.am (DEMO_LIBS): add exit.o to the list of files to
874	link the demo against.
875
8762007-05-08 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
877
878	Fix bug #19050: gcrt1.S should call main rather than jumping to it
879	* crt1/gcrt1.S: call main() rather than jumping to it, and then
880	jump to exit().
881
8822007-05-07  Anatoly Sokolov <aesok@post.ru>
883
884	* configure.ac: Add 'avr25' architecture.
885	* devtools/gen-avr-lib-tree.sh (AVR_ARH_INFO): Ditto.
886	(AVR25_DEV_INFO): New.
887	* doc/api/using-tools.dox: Document 'avr25'.
888
8892007-05-06  Eric B. Weddington <eweddington@cso.atmel.com>
890
891	Fix bug #19666:
892	* include/avr/io90pwmx.h: Add ADHSM, ADTS3 bits to the ADCSRB register.
893
8942007-05-05  Eric B. Weddington <eweddington@cso.atmel.com>
895
896	* doc/examples/asmdemo/asmdemo.dox: Fix HTML code in source code links.
897
8982007-05-05  Eric B. Weddington <eweddington@cso.atmel.com>
899
900	Fix bug #19495.
901	* include/avr/interrupt.h: Fix doxygen stuff, whitespace, remove unused
902	C++ stuff at the end.
903	* NEWS: Update bugs fixed.
904
9052007-05-02  Eric B. Weddington <eweddington@cso.atmel.com>
906
907	* doc/api/overview.dox: Fix typos, grammar, names.
908	* doc/api/inline_asm.dox: Expand title name back to the original title.
909
9102007-04-27  Anatoly Sokolov <aesok@post.ru>
911
912	* configure.ac: Move AT90USB82 device to 'avr5' architecture.
913	* devtools/gen-avr-lib-tree.sh: (Ditto.).
914	* doc/api/using-tools.dox: (Ditto.).
915	* include/avr/iousbxx2.h (_VECTORS_SIZE): Redefine for AT90USB82.
916
9172007-04-21 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
918
919	* include/avr/io90pwm3.h: Change bit 2 of PLLCSR from
920	PCKE to PLLF.
921	Fixes savannah bug #19650: avr-libc: wrong named bit in SFR of AT90PWMx
922
9232007-04-05  Eric B. Weddington <eweddington@cso.atmel.com>
924
925	* doc/api/malloc.dox: Change title and reorder sentences in Introduction.
926
9272007-03-30  Eric B. Weddington <eweddington@cso.atmel.com>
928
929	* include/avr/io2343.h: Add missing bit definitions for MCUSR.
930	Fixes WinAVR feature request #1657218.
931
9322007-03-30  Dmitry Xmelkov  <dmix@gmail.ru>
933
934	* libc/stdlib/ctype.S: Fix bug #19281: isblank('\v') return TRUE:
935	mismatch to C99
936
9372007-03-29  Eric B. Weddington <eweddington@cso.atmel.com>
938
939	* doc/api/doxygen.config.in (INPUT): Add new file to list. Reorder list.
940	* doc/api/pgmspace.dox (new file): New chapter. Data in Program Space.
941	* doc/api/library.dox (new file): New chapter. How to Create a Library.
942	* doc/api/porting.dox: Rewrote the introduction for better flow.
943	* doc/api/Makefile.am (EXTRA_DIST): Add new .dox file.
944	* include/avr/pgmspace.h: Change title of documentation.
945	* doc/api/interrupts.dox: Fix typo. Add missing 3rd clause to license.
946
9472007-03-28  Eric B. Weddington <eweddington@cso.atmel.com>
948
949	* doc/api/doxygen.config.in (INPUT): Add new file to list. Reorder.
950	* doc/api/overview.dox (new file): New chapter. Overview of toolchain.
951	* doc/api/Makefile.am (EXTRA_DIST): Add the two new .dox files.
952
9532007-03-28 Anatoly Sokolov <aesok@post.ru>
954
955	* configure.ac: Add tests for the AT90USB82/162 support.
956	* devtools/gen-avr-lib-tree.sh: Add support for AT90USB82/162.
957	* include/avr/io.h: (Ditto.).
958	* include/avr/wdt.h: (Ditto.).
959	* include/avr/iousb82.h: New file.
960	* include/avr/iousb162.h: New file.
961	* include/avr/iousbxx2.h: New file.
962	* include/avr/Makefile.am: Include new files.
963	* doc/api/main_page.dox: Document support for AT90USB82/162.
964	* doc/api/using-tools.dox: (Ditto.)
965
9662007-03-26  Eric B. Weddington <eweddington@cso.atmel.com>
967
968	* doc/api/doxygen.config.in (INPUT): Change order of documentation pages.
969	* doc/api/dox_html_header: Change order of header links. Change
970	Additional Documentation to User Manual.
971	* doc/api/porting.dox (new file): New chapter. Porting from IAR to AVR GCC.
972	Adapted, with permission, from a document written by Eivind Sivertsen.
973
9742007-03-25  Dmitry Xmelkov  <dmix@gmail.ru>
975
976	* libc/stdlib/atoi.S: Exclude the '!=' operator from GAS expression
977	to comport with the old GAS versions (less than 2.17).
978	* libc/stdlib/atol.S: (Ditto.)
979	* libc/string/strcasestr.S: (Ditto.)
980
9812007-03-17  Dmitry Xmelkov  <dmix@gmail.ru>
982
983	Fix bug #19280: snprintf(s,0,fmt,...) write to foreign memory: s[-1]
984	* libc/stdio/snprintf.c: Add check of 'f.size >= 0' before writing
985	of terminating zero. Use f.len as number of output symbols. Remove
986	include of "stdio_private.h" as noused (after moving FILE decl.).
987	* libc/stdio/snprintf_p.c: (Ditto.)
988	* libc/stdio/vsnprintf.c: (Ditto.)
989	* libc/stdio/vsnprintf_p.c: (Ditto.)
990	* tests/simulate/printf/snprintf_all-P.c: New file.
991	* tests/simulate/printf/snprintf_all.c: New file.
992	* tests/simulate/printf/vsnprintf_all-P.c: New file.
993	* tests/simulate/printf/vsnprintf_all.c: New file.
994	* tests/simulate/regression/bug-19280.c: New file.
995
996	* tests/simulate/regression/bug-19281.c: New file.
997
9982007-03-11  Dmitry Xmelkov  <dmix@gmail.ru>
999
1000	Has partially restored former (avr-libc 1.4 and early) behaviour
1001	at mistakes in a format string. Processing will be stopped (as in
1002	last versions),	but return value will be 'len', not EOF. This is
1003	more clean behavior. (In comparison, Glibc's printf() return -1 if
1004	there is nothing specificator and continue work for other mistakes.)
1005	Note, snprintf() function (all 4 variants) has an error, which
1006	activates if vfprintf() returns EOF.
1007	* libc/stdio/vfprintf.c: Return EOF only if file is not open for
1008	writing, return 'len' for all other cases.
1009	* include/stdio.h: Update doc about return value.
1010	* tests/simulate/printf/sprintf-inv.c: Update.
1011	* tests/simulate/printf/sprintf_min-inv.c: Update.
1012
10132007-03-10  Dmitry Xmelkov  <dmix@gmail.ru>
1014
1015	Rewrite the PRINTF_MIN part of vfprintf() function to reduce size
1016	and increase speed. Other parts (STD and FLT) was rewriten at
1017	begin of Feb 2007.
1018	* libc/stdio/vfprintf.c: Rewrite the PRINTF_MIN part. Make a few of
1019	small size improvements in second (PRINTF_LEVEL > PRINTF_MIN) part.
1020
1021	* include/stdio.h: Update the DOXYGEN description of vfprintf().
1022
1023	* tests/simulate/printf/{sprintf_min-1.c,sprintf_min-2.c,
1024	sprintf_min-3.c,sprintf_min-4.c,sprintf_min-5.c,sprintf_min-int.c,
1025	sprintf_min-inv.c,sprintf_std-int.c,sprintf_std-inv.c}: New files.
1026	* tests/simulate/printf/sprintf_flt-big.c: Remove 'strlen_P'
1027	definition, as it is defined in progmem.h .
1028	* tests/simulate/progmem.h: Simplify the emulated function defines.
1029	* tests/simulate/runtest.sh: Add a possibility to operate a variety
1030	of printf variants: min, std, flt. Add the 'printf' directory to
1031	the default source list.
1032
10332007-03-08  Dmitry Xmelkov  <dmix@gmail.ru>
1034
1035	Add new function (and progmem variant) memmem().
1036	* libc/string/memmem.S: New file.
1037	* libc/string/memmem_P.S: New file.
1038	* include/string.h: Add new function definition: memmem().
1039	* include/avr/pgmspace.h: Add new function definition: memmem_P().
1040	* libc/string/Files.am: Add new sources: memmem.S, memmem_P.S
1041	* tests/simulate/pmstring/memmem_P.c: New file.
1042	* tests/simulate/string/memmem.c: New file.
1043
1044	* libc/pmstring/strstr_P.S: Optimize: reduce size by 1..2 words.
1045	* libc/string/strstr.S: (Ditto.)
1046
10472007-03-06  Dmitry Xmelkov  <dmix@gmail.ru>
1048
1049	Add new function (and progmem variant) strcasestr().
1050	* libc/string/strcasestr.S: New file.
1051	* libc/string/strcasestr_P.S: New file. As it includes the
1052	strcasestr.S, this source is placed into `string' directory to avoid
1053	a cross-directory link. Doxygen result is normal.
1054	* include/string.h: Add new function definition: strcasestr().
1055	* include/avr/pgmspace.h: Add new function definition: strcasestr_P().
1056	* libc/string/Files.am: Add new sources: strcasestr.S, strcasestr_P.S
1057	* tests/simulate/pmstring/strcasestr_P.c: New file.
1058	* tests/simulate/string/strcasestr.c: New file.
1059
10602007-03-03  Dmitry Xmelkov  <dmix@gmail.ru>
1061
1062	* common/asmdef.h: New file. This file is intended for use in asm
1063	sources instead of 'macros.inc'. Last clings a huge chain of
1064	dependences, that very much complicates writing/debugging new
1065	functions outside of an infrastructure of library. I think, some
1066	time both of these files will exist independently.
1067
1068	* libc/pmstring/memrchr_P.S: New file.
1069	* libc/pmstring/strchrnul_P.S: New file.
1070	* include/avr/pgmspace.h: Add new function definitions: memrchr_P(),
1071	strchrnul_P().
1072	* libc/pmstring/Files.am: Add new sources: memrchr_P.S, strchrnul_P.S
1073	* tests/simulate/pmstring/memrchr_P.c: New file.
1074	* tests/simulate/pmstring/strchrnul_P.c: New file.
1075
1076	* libc/string/memrchr.S: New file.
1077	* libc/string/strchrnul.S: New file.
1078	* include/string.h: Add new function definitions: memrchr(),
1079	strchrnul().
1080	* libc/string/Files.am: Add new sources: memrchr.S, strchrnul.S
1081	* tests/simulate/string/memrchr.c: New file.
1082	* tests/simulate/string/strchrnul.c: New file.
1083
10842007-03-02  Dmitry Xmelkov  <dmix@gmail.ru>
1085
1086	* libc/pmstring/strsep_P.S: New file.
1087	* include/avr/pgmspace.h: Add new function definition: strsep_P().
1088	* libc/pmstring/Files.am: Add new source: strsep_P.S
1089	* tests/simulate/pmstring/strsep_P.c: New file.
1090
1091	* libc/string/strsep.S: Optimize size and speed.
1092	* tests/simulate/string/strsep.c: New file.
1093
1094	* libc/pmstring/memcmp_P.S: Emphasize args names in DOXYGEN comment.
1095	Move all CPP operators outside from the DOXYGEN scope.
1096	* libc/pmstring/strcasecmp_P.S: (Ditto.)
1097	* libc/pmstring/strchr_P.S: (Ditto.)
1098	* libc/pmstring/strcmp_P.S: (Ditto.)
1099	* libc/pmstring/strncasecmp_P.S: (Ditto.)
1100	* libc/pmstring/strstr_P.S: (Ditto.)
1101	* libc/string/strcasecmp.S: (Ditto.)
1102	* libc/string/strchr.S: (Ditto.)
1103	* libc/string/strcmp.S: (Ditto.)
1104	* libc/string/strncasecmp.S: (Ditto.)
1105	* libc/string/strstr.S: (Ditto.)
1106
11072007-03-01  Dmitry Xmelkov  <dmix@gmail.ru>
1108
1109	Add a few new functions and progmem mirrors:
1110	* libc/pmstring/memchr_P.S: New file.
1111	* libc/pmstring/strcspn_P.S: New file.
1112	* libc/pmstring/strrchr_P.S: New file.
1113	* libc/pmstring/strspn_P.S: New file.
1114	* libc/string/strcspn.S: New file.
1115	* libc/string/strspn.S: New file.
1116	* libc/pmstring/Files.am: Add new sources: memchr_P.S, strcspn_P.S,
1117	strrchr_P.S, strspn_P.S
1118	* libc/string/Files.am: Add new sources: strcspn.S, strspn.S
1119	* include/string.h: Add new function definitions: strcspn(),
1120	strspn().
1121	* include/avr/pgmspace.h: Add new function definitions: memchr_P(),
1122	strcspn_P(), strrchr_P(), strspn_P().
1123	* tests/simulate/pmstring/memchr_P.c: New file.
1124	* tests/simulate/pmstring/strcspn_P.c: New file.
1125	* tests/simulate/pmstring/strrchr_P.c: New file.
1126	* tests/simulate/pmstring/strspn_P.c: New file.
1127	* tests/simulate/string/strcspn.c: New file.
1128	* tests/simulate/string/strspn.c: New file.
1129
1130	Optimize a few of string functions:
1131	* libc/string/strlwr.S: Optimize size and speed.
1132	* libc/string/strrev.S: Optimize speed for strings 4 bytes long
1133	and more. Size is the same.
1134	* libc/string/strupr.S: Optimize size and speed.
1135	* tests/simulate/string/strlwr.c: New file.
1136	* tests/simulate/string/strrev.c: New file.
1137	* tests/simulate/string/strupr.c: New file.
1138
1139	Add a few of tests:
1140	* tests/simulate/pmstring/strstr_P.c: New file.
1141	* tests/simulate/string/memchr.c: New file.
1142	* tests/simulate/string/strrchr.c: New file.
1143	* tests/simulate/string/strstr.c: New file.
1144
11452007-02-27  Dmitry Xmelkov  <dmix@gmail.ru>
1146
1147	Add a new (standart) function strpbrk() and a progmem variant.
1148	* libc/pmstring/strpbrk_P.S: New file.
1149	* libc/string/strpbrk.S: New file.
1150	* libc/pmstring/Files.am: Add new source file strpbrk_P.S
1151	* libc/string/Files.am: Add new source file strpbrk.S
1152	* include/string.h (strpbrk): Add new function definition.
1153	* include/avr/pgmspace.h (strpbrk_P): Add new function definition.
1154	* tests/simulate/pmstring/strpbrk_P.c: New file.
1155	* tests/simulate/string/strpbrk.c: New file.
1156
1157	Enable use an asm variant of atol(). Correct docs.
1158	* include/stdlib.h (atol): Change the definition of function:
1159	instead to define inline code which use strtol(), now it is a
1160	normal definition of external function. Correct the DOXYGEN comment.
1161	* include/stdlib.h (atoi): Correct the DOXYGEN comment, delete
1162	a conditional define for DOXYGEN specially.
1163	* libc/stdlib/atoi.S: Correct the DOXYGEN comment.
1164	* libc/stdlib/atol.S: Correct the DOXYGEN comment.
1165
11662007-02-26  Dmitry Xmelkov  <dmix@gmail.ru>
1167
1168	* libc/pmstring/memcmp_P.S: Fix DOXYGEN comment.
1169	* libc/pmstring/strchr_P.S: (Ditto.)
1170
11712007-02-24  Dmitry Xmelkov  <dmix@gmail.ru>
1172
1173	* libc/string/strcasecmp.S: Fix bug #19134: strcasecmp(): result
1174	sign is not changed by swaping args.
1175	* libc/string/strncasecmp.S: (Ditto.)
1176	* libc/pmstring/strcasecmp_P.S: (Ditto.)
1177	* libc/pmstring/strncasecmp_P.S: (Ditto.)
1178
1179	* libc/string/strstr.S: Fix bug #19135: strstr(): `needle' is not
1180	always founded. Optimize code.
1181	* libc/pmstring/strstr_P.S: (Ditto.)
1182
1183	* libc/pmstring/memcmp_P.S: New file.
1184	* include/avr/pgmspace.h: Add new function memcmp_P().
1185	* libc/pmstring/Files.am: Add new source file memcmp_P.S
1186
1187	* libc/string/strcmp.S: Optimize by 1 word.
1188	* libc/pmstring/strcmp_P.S: Optimize by 1 word.
1189
1190	* tests/simulate/progmem.h: Add strlen_P() and strcmp_P() emulation.
1191	* tests/simulate/pmstring/{memcmp_P.c,strcasecmp_P.c,strcmp_P.c,
1192	strncasecmp_P.c}:  New files.
1193	* tests/simulate/string/{memcmp.c,strcasecmp.c,strcmp.c,
1194	strncasecmp.c}: New files.
1195
11962007-02-24  Anatoly Sokolov <aesok@post.ru>
1197
1198	* include/avr/iomxx4.h (SPCR0, SPSR0, SPDR0, SPIE0, SPE0, DORD0,
1199	MSTR0, CPOL0, CPHA0, SPR01, SPR00, SPIF0, WCOL0, SPI2X0): Rename
1200	to SPCR, SPSR, SPDR, SPIE, SPE, DORD, MSTR, CPOL, CPHA, SPR1, SPR0,
1201	SPIF, WCOL, SPI2X.
1202	(PRR): Define.
1203	Closes bug #18903: ATmega644 register definitions for SPI and
1204	PRR (datasheet vs. iom*.h)
1205
12062007-02-24 Anatoly Sokolov <aesok@post.ru>
1207
1208	* configure.ac: Add tests for the ATmega325P, ATmega3250P and
1209	ATmega329P support.
1210	* devtools/gen-avr-lib-tree.sh: Add support for ATmega325P,
1211	ATmega3250P and ATmega329P devices.
1212	* include/avr/io.h: (Ditto.).
1213	* include/avr/wdt.h: (Ditto.).
1214	* include/avr/iom325.h (BODSE, BODS): Define for ATMega325P.
1215	* include/avr/iom3250.h (BODSE, BODS): Define for ATMega3250P.
1216	* include/avr/iom329.h (BODSE, BODS, LCDCCD, LCDBD, LCDMDT): Define
1217	for ATMega3290P.
1218	* doc/api/main_page.dox: Document support for ATmega325P, ATmega3250P
1219	and ATmega329P devices.
1220	* doc/api/using-tools.dox: (Ditto.)
1221
12222007-02-24  Dmitry Xmelkov  <dmix@gmail.ru>
1223
1224	* tests/simulate/regression/{bug-19134.c,bug-19135.c}: New files.
1225
12262007-02-22  Dmitry Xmelkov  <dmix@gmail.ru>
1227
1228	* libc/stdio/vfprintf.c: Specify behaviour in case of mistakes
1229	in a line of a format.
1230	* tests/simulate/printf/sprintf-inv.c: New file.
1231	* tests/simulate/string/strchr.c: New file.
1232	* tests/simulate/pmstring: New directory.
1233	* tests/simulate/pmstring/strchr_P.c: New file.
1234	* tests/simulate/progmem.h: Add PSTR() emulation.
1235	* tests/simulate/runtest.sh: Add pmstring directory into test
1236	suite. Correct the return value for internal functions.
1237	* libc/string/strchr.S: Reduce program size by 1 word.
1238
12392007-02-19  Dmitry Xmelkov  <dmix@gmail.ru>
1240
1241	* libc/stdio/vfprintf.c: Fix error in __AVR_HAVE_LPMX__ definition.
1242	A bit of small space improvements.
1243
12442007-02-18  Anatoly Sokolov <aesok@post.ru>
1245
1246	* include/avr/iotnx61.h (PCMSK0): Set address to 0x23.
1247	(PCMSK1): Set address to 0x22.
1248	Fix bug #19060: PCMSKx registers transposed in header for attinyX61
1249
12502007-02-18  Dmitry Xmelkov  <dmix@gmail.ru>
1251
1252	STD and FLT vfprintf parts are fully rewriten to reduce size
1253	and increase speed. So a set of changes are maiden:
1254	* common/ntz.h: New file.
1255	* common/ftoa_engine.h: Move from libc/stdlib/.
1256	* libc/stdlib/ftoa_engine.h: Move to common/.
1257	* libc/pmstring/strchr_P.S: New file.
1258	* libc/pmstring/Files.am: Add new source file strchr_P.S
1259	* include/avr/pgmspace.h: Add new function strchr_P().
1260	* libc/stdio/xtoa_fast.h: New file.
1261	* libc/stdio/ultoa_invert.S: New file.
1262	* libc/stdio/Files.am: Add new source file ultoa_invert.S
1263	* libc/stdio/vfprintf.c: Parts STD and FLT are fully rewriten.
1264	* tests/simulate/printf: New directory.
1265	* tests/simulate/printf/{sprintf-1,sprintf-2,sprintf-3,sprintf-4,
1266	sprintf-5,sprintf_flt-big,sprintf_flt-e01,sprintf_flt-f01,
1267	sprintf_flt-g01,sprintf_flt-g02,sprintf_flt-nan}.c: New files.
1268
12692007-02-07  Dmitry Xmelkov  <dmix@gmail.ru>
1270
1271	* tests/simulate/stdlib/{strtoul-1.c,strtoul-2.c,strtoul-3.c,
1272	strtoul.h}: New files.
1273
12742007-02-06  Dmitry Xmelkov  <dmix@gmail.ru>
1275
1276	* tests/simulate/runtest.sh: Add option to stop after error. Add
1277	string/*.c to the list. Compile(): small correction.
1278	* tests/simulate/progmem.h: Add memcpy_P emulation.
1279	* tests/simulate/stdlib/{atol-2,bsearch-1,bsearch-2,bsearch-3,
1280	dtostre-01,dtostre-02,dtostre-03,dtostre-04,dtostre-05,dtostre-06,
1281	dtostre-expm00,dtostre-minmax,dtostre-nans,dtostre-subnrm,
1282	dtostre-zero,dtostrf-01,dtostrf-big,dtostrf-minmax,dtostrf-nans,
1283	dtostrf-round,dtostrf-width,strtol-1,strtol-2,strtol-3,
1284	strtol-4}.c: New files.
1285	* tests/simulate/string: New directory.
1286	* tests/simulate/string/{ffs-1,ffsl-1,ffsll-1}.c: New files.
1287
12882007-02-05 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1289
1290	* doc/api/faq.dox: Add some explanation how to convert raw binary
1291	data so they can be linked into the image.
1292
12932007-02-05  Dmitry Xmelkov  <dmix@gmail.ru>
1294
1295	* libc/stdlib/atoi.S: Fix bug #18899: atoi and atol do not handle
1296	vertical tab properly. Reduce program size considarably.
1297	* libc/stdlib/atol.S: (Ditto.)
1298
1299	* devtools/table.tar.bz2: Remove as a test directory will expanded.
1300
1301	* tests/: New directory.
1302
13032007-02-03  Anatoly Sokolov <aesok@post.ru>
1304
1305	* include/avr/iotnx61.h (WGM00, PWM1X) Define.
1306	Closes bug #18915: PWM1X Bit missing for ATtiny261/461/861
1307
13082007-01-30  Anatoly Sokolov <aesok@post.ru>
1309
1310	* /doc/api/using-tools.dox: Document GCC macros.
1311
13122007-01-27  Anatoly Sokolov <aesok@post.ru>
1313
1314	* include/avr/iom3290.h (BODSE, BODS, LCDCCD, LCDBD, LCDMDT): Define
1315	for ATMega3290P.
1316	* include/avr/iom3290p.h: Delete.
1317	* include/avr/Makefile.am (avr_HEADERS): Delete iom3290p.h.
1318	* include/avr/io.h: Include iom3290.h instead iom3290p.h.
1319
13202007-01-23 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1321
1322	* include/assert.h: Add \file doxygen directive.
1323	* include/ctype.h: (Ditto.)
1324	* include/errno.h: (Ditto.)
1325	* include/inttypes.h: (Ditto.)
1326	* include/math.h: (Ditto.)
1327	* include/setjmp.h: (Ditto.)
1328	* include/stdint.h: (Ditto.)
1329	* include/stdio.h: (Ditto.)
1330	* include/stdlib.h: (Ditto.)
1331	* include/string.h: (Ditto.)
1332	* include/avr/boot.h: (Ditto.)
1333	* include/avr/eeprom.h: (Ditto.)
1334	* include/avr/interrupt.h: (Ditto.)
1335	* include/avr/io.h: (Ditto.)
1336	* include/avr/pgmspace.h: (Ditto.)
1337	* include/avr/power.h: (Ditto.)
1338	* include/avr/sleep.h: (Ditto.)
1339	* include/avr/wdt.h: (Ditto.)
1340	* include/util/crc16.h: (Ditto.)
1341	* include/util/delay.h: (Ditto.)
1342	* include/util/parity.h: (Ditto.)
1343	* include/util/twi.h: (Ditto.)
1344	* libc/pmstring/memcpy_P.S: (Ditto.)
1345	* libc/pmstring/strcasecmp_P.S: (Ditto.)
1346	* libc/pmstring/strcat_P.S: (Ditto.)
1347	* libc/pmstring/strcmp_P.S: (Ditto.)
1348	* libc/pmstring/strcpy_P.S: (Ditto.)
1349	* libc/pmstring/strlcat_P.S: (Ditto.)
1350	* libc/pmstring/strlcpy_P.S: (Ditto.)
1351	* libc/pmstring/strlen_P.S: (Ditto.)
1352	* libc/pmstring/strncasecmp_P.S: (Ditto.)
1353	* libc/pmstring/strncat_P.S: (Ditto.)
1354	* libc/pmstring/strncmp_P.S: (Ditto.)
1355	* libc/pmstring/strncpy_P.S: (Ditto.)
1356	* libc/pmstring/strnlen_P.S: (Ditto.)
1357	* libc/pmstring/strstr_P.S: (Ditto.)
1358	* libc/stdio/fdevopen.c: (Ditto.)
1359	* libc/stdlib/atoi.S: (Ditto.)
1360	* libc/stdlib/atol.S: (Ditto.)
1361	* libc/string/ffs.S: (Ditto.)
1362	* libc/string/ffsl.S: (Ditto.)
1363	* libc/string/ffsll.S: (Ditto.)
1364	* libc/string/memccpy.S: (Ditto.)
1365	* libc/string/memchr.S: (Ditto.)
1366	* libc/string/memcmp.S: (Ditto.)
1367	* libc/string/memcpy.S: (Ditto.)
1368	* libc/string/memmove.S: (Ditto.)
1369	* libc/string/memset.S: (Ditto.)
1370	* libc/string/strcasecmp.S: (Ditto.)
1371	* libc/string/strcat.S: (Ditto.)
1372	* libc/string/strchr.S: (Ditto.)
1373	* libc/string/strcmp.S: (Ditto.)
1374	* libc/string/strcpy.S: (Ditto.)
1375	* libc/string/strlcat.S: (Ditto.)
1376	* libc/string/strlcpy.S: (Ditto.)
1377	* libc/string/strlen.S: (Ditto.)
1378	* libc/string/strlwr.S: (Ditto.)
1379	* libc/string/strncasecmp.S: (Ditto.)
1380	* libc/string/strncat.S: (Ditto.)
1381	* libc/string/strncmp.S: (Ditto.)
1382	* libc/string/strncpy.S: (Ditto.)
1383	* libc/string/strnlen.S: (Ditto.)
1384	* libc/string/strrchr.S: (Ditto.)
1385	* libc/string/strrev.S: (Ditto.)
1386	* libc/string/strsep.S: (Ditto.)
1387	* libc/string/strstr.S: (Ditto.)
1388	* libc/string/strtok_r.S: (Ditto.)
1389	* libc/string/strupr.S: (Ditto.)
1390	* doc/api/dox_html_header: Include reference to alphabetical
1391	globals list, collected from all files that have \file.
1392	* doc/api/dox.css: Update for doxygen version 1.4.7.
1393
13942007-01-23 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1395
1396	Various documentation fixes.
1397	* xml/patch-headers.py: Update for new devices.
1398	* doc/api/vectortable.dox: Regenerate from patch-headers.py.
1399	Closes bug #18686: AT90USB**** devices are absent in
1400	interrupt-verctor-names table
1401	* include/stdlib.h: Fix doxygen generation for dtostr*()
1402	functions.
1403	Closes bug #18726: the dtostrf function description is missing
1404	in AVR-Libc's webpage
1405	* doc/api/faq.dox: Resolve some doxygen warnings.
1406	* doc/examples/asmdemo/asmdemo.dox: (Ditto.)
1407	* doc/examples/demo/demo.dox: (Ditto.)
1408
14092007-01-23 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1410
1411	Cosmetic/white space change only:
1412	* include/avr/iocanxx.h: Regenerate vector table from script.
1413	* include/avr/iom406.h: (Ditto.)
1414	* include/avr/iomxx4.h: (Ditto.)
1415	* include/avr/iotn2313.h: (Ditto.)
1416	* include/avr/iousbxx6_7.h: (Ditto.)
1417
14182007-01-23 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1419
1420	* LICENSE: Update copyright year.
1421	* doc/api/main_page.dox: Include copyright notice into
1422	documentation.
1423
14242007-01-21 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1425
1426	* include/avr/iomxx4.h: Clarify a confusing comment that all the
1427	picopower devices covered by this file feature a second USART.
1428
14292007-01-19 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1430
1431	* doc/examples/largedemo/largedemo.c: Port the "largedemo" to
1432	the ATtiny2313.
1433	* doc/examples/largedemo/largedemo.dox: Describe the ATtiny2313
1434	port.
1435	* doc/examples/largedemo/Makefile: Add a MCU_TARGET hint for
1436	the ATtiny2313.
1437
14382007-01-18 Anatoly Sokolov <aesok@post.ru>
1439
1440	* common/macros.inc (__AVR_HAVE_MUL__): Define.
1441	* libc/misc/mul10.S (__mulhi_const_10): Use __AVR_HAVE_MUL__ instead
1442	of __AVR_ENHANCED__.
1443
14442007-01-15  Dmitry Xmelkov  <dmix@gmail.ru>
1445
1446	* devtools/table.tar.bz2: New file. This is a test tarball of
1447	float point functions, table mode test. This is a temporary
1448	variant, so it is a tarball. See 'table/tst-all.sh' for run
1449	instruction.
1450
14512007-01-14 Anatoly Sokolov <aesok@post.ru>
1452
1453	* configure.ac: Add tests for the AT90PWM1 support.
1454	* devtools/gen-avr-lib-tree.sh: Add support for AT90PWM1 device.
1455	* include/avr/io.h: (Ditto.).
1456	* include/avr/wdt.h: (Ditto.).
1457	* include/avr/io90pwm1.h: new file.
1458	* include/avr/Makefile.am: include new file.
1459	* doc/api/main_page.dox: Document support for AT90PWM1 device.
1460	* doc/api/using-tools.dox: (Ditto.)
1461
14622007-01-14  Dmitry Xmelkov  <dmix@gmail.ru>
1463
1464	* bootstrap: Version 2.60 for autoconf is added.
1465
1466	New version of math library:
1467	* libm/fplib/{dtostre.S,dtostrf.S,fp_cosinus.S,fp_flashconst.S,
1468	fp_inverse.S,fp_m_inf.S,fp_merge.S,fp_p_inf.S,fp_powerseries.S,
1469	fp_split.S,fplib.inc,isinfnan.S,readme.dtostre,readme.fplib,
1470	readme.strtod,strtod.S}: Removed.
1471	* libm/fplib/{asmdef.h,copysign.S,fdim.S,fixsfdi.S,floatdisf.S,
1472	floatunsdisf.S,fma.S,fmax.S,fmin.S,fp32def.h,fp_arccos.S,fp_inf.S,
1473	fp_mintl.S,fp_mpack.S,fp_negdi.S,fp_norm2.S,fp_powser.S, fp_powsodd.S,
1474	fp_pscA.S,fp_pscB.S,fp_rempio2.S,fp_round.S,fp_sinus.S,fp_split3.S,
1475	fp_trunc.S,hypot.S,inverse.S,isfinite.S,isinf.S,isnan.S,ntz.h,
1476	signbit.S,trunc.S}: New files.
1477	* libm/fplib/{Files.am,acos.S,addsf3.S,addsf3x.S,asin.S,atan.S,
1478	atan2.S,ceil.S,cos.S,cosh.S,divsf3.S,divsf3x.S,exp.S,fixsfsi.S,
1479	floatsisf.S,floor.S,fmod.S,fp_cmp.S,fp_nan.S,fp_zero.S,frexp.S,
1480	ldexp.S,log.S,log10.S,modf.S,mulsf3.S,mulsf3x.S,negsf2.S,pow.S,
1481	sin.S,sinh.S,sqrt.S,square.S,tan.S,tanh.S}: Replaced.
1482	* libc/stdlib/{atof.S,dtoa_conv.h,dtoa_prf.c,dtostre.c,dtostrf.c,
1483	ftoa_engine.S,ftoa_engine.h,strtod.c}: New files.
1484	* libc/stdlib/Files.am: A set of new files added.
1485	* include/math.h: A set of new functions added.
1486	* include/stdlib.h (dtostrf): doc is corrected
1487
14882007-01-14 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1489
1490	Submitted by Robert Schiele:
1491	* include/stdint.h: Exclude 64-bit types when -mint8 is in effect.
1492	* include/avr/pgmspace.h: (Ditto.)
1493
14942007-01-08 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1495
1496	* include/avr/boot.h (boot_lock_bits_set): Fix a typo: BLB11 needs
1497	to be programmed (rather than BLB12) in order to prevent the
1498	application from overwriting the boot loader section.
1499	Closes bug #18115: online documentation typo/bug avr/boot.h
1500
15012007-01-08 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1502
1503	* include/stdio.h: Document that malloc() is no longer needed for
1504	floating-point conversions as it once used to be.
1505	Closes bug #18688: vfscanf and vfprintf don't use malloc
1506
15072007-01-08 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
1508
1509	Fix broken seeding of the PRNGs when seeding with 0.
1510	This fix is courtesy Andrew Chernov from the FreeBSD
1511	project (rev. 1.21 of their random.c).
1512	* libc/stdlib/random.c (do_random): seed with another (arbitrary) value
1513	when attempting to seed with 0.
1514	* libc/stdlib/rand.c (do_rand): (Ditto.)
1515	Closes bug #18662: rand() keeps returning the same value if seeded with 0
1516
1517For older changes see ChangeLog-2006
1518