blob: b19b5b489bed81e18fa6d246eecf33946fde392f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
2025-05-27 Georg-Johann Lay <avr@gjlay.de>
PR target/120442
* libf7-common.mk (LIBF_C_PARTS, m_ddd): Add fdim.
* libf7.h (f7_fdim): New proto.
* libf7.c (f7_fdim): New function.
* f7renames.sh (f7_fdim): Add rename.
* f7-wraps.h: Rebuild
* f7-renames.h: Rebuild
2025-05-27 Georg-Johann Lay <avr@gjlay.de>
PR target/120441
* libf7.c (f7_exp): Limit aa->expo to 10 (not to 9).
2025-03-22 Georg-Johann Lay <avr@gjlay.de>
* t-libf7 (libgcc-objects): Only add objects when building
for non-AVRrc.
2024-11-16 Georg-Johann Lay <avr@gjlay.de>
* libf7.h (bool, true, false): Don't define in C23 or higher.
2024-10-25 Jakub Jelinek <jakub@redhat.com>
* f7-renames.h: Remove trailing whitespace.
2024-06-14 Georg-Johann Lay <avr@gjlay.de>
PR target/115419
* libf7.c (f7_get_double): Round tie breaks to even LSB.
2024-06-01 Georg-Johann Lay <avr@gjlay.de>
PR target/115317
* libf7-asm.sx (__isinf): Map -Inf to -1.
2024-05-08 Georg-Johann Lay <avr@gjlay.de>
PR target/114981
* libf7-common.mk (F7_ASM_PARTS): Add D_powi
* libf7-asm.sx (F7MOD_D_powi_, __powidf2): New module and function.
* libf7.c (f7_powi): Fix last (wrong) statement.
Tweak trivial multiplications with 1.0.
2023-11-14 Georg-Johann Lay <avr@gjlay.de>
* libf7-const.def [F7MOD_sinh_]: Add MiniMax polynomial.
* libf7.c (f7_sinh): Use it instead of (exp(x) - exp(-x)) / 2
when |x| < 0.5 to avoid loss of precision due to cancellation.
2023-11-12 Georg-Johann Lay <avr@gjlay.de>
* libf7-asm.sx (sqrt_approx): Rewrite.
* libf7.c (f7_sqrt): Use it instead of sqrt_worker.
(sqrt_worker): Remove.
2023-11-08 Georg-Johann Lay <avr@gjlay.de>
* libf7-asm.sx (mul_mant) [AVR_HAVE_MUL]: Tweak code.
2023-10-18 Georg-Johann Lay <avr@gjlay.de>
* libf7-asm.sx (mul_mant): Implement for devices without MUL.
* asm-defs.h (wmov) [!HAVE_MUL]: Fix regno computation.
* t-libf7 (F7_ASM_FLAGS): Add -g0.
2023-10-17 Georg-Johann Lay <avr@gjlay.de>
* f7-renames.h: Re-renerate.
2023-10-17 Georg-Johann Lay <avr@gjlay.de>
* libf7.h (F7_SIZEOF): New macro.
* libf7-asm.sx: Use F7_SIZEOF instead of magic number "10".
(F7MOD_D_fma_, __fma): New module and function.
(fma) [-mdouble=64]: Define as alias for __fma.
(fmal) [-mlong-double=64]: Define as alias for __fma.
* libf7-common.mk (F7_ASM_PARTS): Add D_fma.
2023-10-12 Georg-Johann Lay <avr@gjlay.de>
* libf7.c (F7MOD_atan2_, f7_atan2): New module and function.
* libf7.h: Adjust comments.
* libf7-common.mk (CALL_PROLOGUES): Add atan2.
2023-10-05 Georg-Johann Lay <avr@gjlay.de>
* libf7.h (F7_PURE): Remove all occurrences.
* libf7.c: Same.
2023-10-05 Georg-Johann Lay <avr@gjlay.de>
* libf7.h (F7_FLAGNO_plusx, F7_FLAG_plusx): New macros.
* libf7.c (f7_horner): Handle F7_FLAG_plusx in highest coefficient.
* libf7-const.def [F7MOD_atan_]: Denominator: Set F7_FLAG_plusx
and omit highest term.
[F7MOD_asinacos_]: Use rational function with normalized denominator.
2022-09-19 Georg-Johann Lay <avr@gjlay.de>
PR target/99184
* libf7-asm.sx (to_integer, to_unsigned): Don't round 16-bit
and 32-bit integers.
2020-06-23 David Edelsohn <dje.gcc@gmail.com>
* t-libf7: Use -include.
2020-01-08 Georg-Johann Lay <avr@gjlay.de>
Implement 64-bit double functions.
PR target/92055
* t-libf7: New file.
* t-libf7-math: New file.
* t-libf7-math-symbols: New file.
* libf7-common.mk: New file.
* libf7-asm-object.mk: New file.
* libf7-c-object.mk: New file.
* asm-defs.h: New file.
* libf7.h: New file.
* libf7.c: New file.
* libf7-asm.sx: New file.
* libf7-array.def: New file.
* libf7-const.def: New file.
* libf7-constdef.h: New file.
* f7renames.sh: New script.
* f7wraps.sh: New script.
* f7-renames.h: New generated file.
* f7-wraps.h: New generated file.
|