1 2024-06-01 Georg-Johann Lay <avr@gjlay.de>
4 * libf7-asm.sx (__isinf): Map -Inf to -1.
6 2024-05-08 Georg-Johann Lay <avr@gjlay.de>
9 * libf7-common.mk (F7_ASM_PARTS): Add D_powi
10 * libf7-asm.sx (F7MOD_D_powi_, __powidf2): New module and function.
11 * libf7.c (f7_powi): Fix last (wrong) statement.
12 Tweak trivial multiplications with 1.0.
14 2023-11-14 Georg-Johann Lay <avr@gjlay.de>
16 * libf7-const.def [F7MOD_sinh_]: Add MiniMax polynomial.
17 * libf7.c (f7_sinh): Use it instead of (exp(x) - exp(-x)) / 2
18 when |x| < 0.5 to avoid loss of precision due to cancellation.
20 2023-11-12 Georg-Johann Lay <avr@gjlay.de>
22 * libf7-asm.sx (sqrt_approx): Rewrite.
23 * libf7.c (f7_sqrt): Use it instead of sqrt_worker.
24 (sqrt_worker): Remove.
26 2023-11-08 Georg-Johann Lay <avr@gjlay.de>
28 * libf7-asm.sx (mul_mant) [AVR_HAVE_MUL]: Tweak code.
30 2023-10-18 Georg-Johann Lay <avr@gjlay.de>
32 * libf7-asm.sx (mul_mant): Implement for devices without MUL.
33 * asm-defs.h (wmov) [!HAVE_MUL]: Fix regno computation.
34 * t-libf7 (F7_ASM_FLAGS): Add -g0.
36 2023-10-17 Georg-Johann Lay <avr@gjlay.de>
38 * f7-renames.h: Re-renerate.
40 2023-10-17 Georg-Johann Lay <avr@gjlay.de>
42 * libf7.h (F7_SIZEOF): New macro.
43 * libf7-asm.sx: Use F7_SIZEOF instead of magic number "10".
44 (F7MOD_D_fma_, __fma): New module and function.
45 (fma) [-mdouble=64]: Define as alias for __fma.
46 (fmal) [-mlong-double=64]: Define as alias for __fma.
47 * libf7-common.mk (F7_ASM_PARTS): Add D_fma.
49 2023-10-12 Georg-Johann Lay <avr@gjlay.de>
51 * libf7.c (F7MOD_atan2_, f7_atan2): New module and function.
52 * libf7.h: Adjust comments.
53 * libf7-common.mk (CALL_PROLOGUES): Add atan2.
55 2023-10-05 Georg-Johann Lay <avr@gjlay.de>
57 * libf7.h (F7_PURE): Remove all occurrences.
60 2023-10-05 Georg-Johann Lay <avr@gjlay.de>
62 * libf7.h (F7_FLAGNO_plusx, F7_FLAG_plusx): New macros.
63 * libf7.c (f7_horner): Handle F7_FLAG_plusx in highest coefficient.
64 * libf7-const.def [F7MOD_atan_]: Denominator: Set F7_FLAG_plusx
65 and omit highest term.
66 [F7MOD_asinacos_]: Use rational function with normalized denominator.
68 2022-09-19 Georg-Johann Lay <avr@gjlay.de>
71 * libf7-asm.sx (to_integer, to_unsigned): Don't round 16-bit
74 2020-06-23 David Edelsohn <dje.gcc@gmail.com>
76 * t-libf7: Use -include.
78 2020-01-08 Georg-Johann Lay <avr@gjlay.de>
80 Implement 64-bit double functions.
84 * t-libf7-math: New file.
85 * t-libf7-math-symbols: New file.
86 * libf7-common.mk: New file.
87 * libf7-asm-object.mk: New file.
88 * libf7-c-object.mk: New file.
89 * asm-defs.h: New file.
92 * libf7-asm.sx: New file.
93 * libf7-array.def: New file.
94 * libf7-const.def: New file.
95 * libf7-constdef.h: New file.
96 * f7renames.sh: New script.
97 * f7wraps.sh: New script.
98 * f7-renames.h: New generated file.
99 * f7-wraps.h: New generated file.