authorgravatar for rpkak@noreply.codeberg.orgrpkak <rpkak@noreply.codeberg.org> 2026-01-20 18:02:15+01:00
committergravatar for rpkak@noreply.codeberg.orgrpkak <rpkak@noreply.codeberg.org> 2026-01-20 18:02:15+01:00
loge6ac1b77f0b958f8cefc6e357620f9fdef2c0eed
tree5c240418d4f132330b555247150b847e74ba7caa
parentc857fce05bb8f0fd8053a5f15825704fb6506fd4
signaturebadge-check Signed by SSH key SHA256:A2g6ATENrgLKQcUdthsn72P0njmQxnHSimzwnyJsZzo

libzigc: test and fix acos


4 files changed, 3 insertions(+), 22 deletions(-)

lib/libc/musl/src/math/i386/acos.s deleted-18
......@@ -1,18 +0,0 @@
1# use acos(x) = atan2(fabs(sqrt((1-x)*(1+x))), x)
2
3.global acos
4.type acos,@function
5acos:
6 fldl 4(%esp)
7 fld %st(0)
8 fld1
9 fsub %st(0),%st(1)
10 fadd %st(2)
11 fmulp
12 fsqrt
13 fabs # fix sign of zero (matters in downward rounding mode)
14 fxch %st(1)
15 fpatan
16 fstpl 4(%esp)
17 fldl 4(%esp)
18 ret
lib/std/math/acos.zig+2-2
......@@ -48,7 +48,7 @@ fn acos32(x: f32) f32 {
4848 return 0.0;
4949 }
5050 } else {
51 return math.nan(f32);
51 return (x - x) / 0;
5252 }
5353 }
5454
......@@ -117,7 +117,7 @@ fn acos64(x: f64) f64 {
117117 }
118118 }
119119
120 return math.nan(f64);
120 return (x - x) / 0;
121121 }
122122
123123 // |x| < 0.5
src/libs/musl.zig-1
......@@ -890,7 +890,6 @@ const src_files = [_][]const u8{
890890 "musl/src/math/hypotl.c",
891891 "musl/src/math/i386/acosf.s",
892892 "musl/src/math/i386/acosl.s",
893 "musl/src/math/i386/acos.s",
894893 "musl/src/math/i386/asinf.s",
895894 "musl/src/math/i386/asinl.s",
896895 "musl/src/math/i386/asin.s",
test/libc.zig+1-1
......@@ -138,7 +138,7 @@ pub fn addCases(cases: *tests.LibcContext) void {
138138 cases.addLibcTestCase("regression/wcsncpy-read-overflow.c", true, .{});
139139 cases.addLibcTestCase("regression/wcsstr-false-negative.c", true, .{});
140140
141 // cases.addLibcTestCase("math/acos.c", true, .{});
141 cases.addLibcTestCase("math/acos.c", true, .{});
142142 // cases.addLibcTestCase("math/acosf.c", true, .{});
143143 // cases.addLibcTestCase("math/acosh.c", true, .{});
144144 cases.addLibcTestCase("math/acoshf.c", true, .{});