mirror of
https://github.com/fish-shell/fish-shell
synced 2024-12-26 04:43:10 +00:00
Add reduced-accuracy variants of some math tests under x86
Due to the inherent floating point accuracy issues under i586 described in #10474 and at https://github.com/rust-lang/rust/issues/114479, we need to add a workaround to our littlecheck math tests to perform less stringent comparisons when fish was built for x86 without SSE2 support. This commit addresses the littlecheck issues that caused #10474 to be re-opened, but I still have to reproduce the cargo test failures for `negative_precision_width`, `test_float`, `test_float_g`, and `test_locale`.
This commit is contained in:
parent
e0266067c4
commit
7d1942a023
1 changed files with 10 additions and 3 deletions
|
@ -72,9 +72,16 @@ math '-10^15'
|
|||
# CHECK: 100000000000000
|
||||
# CHECK: -1000000000000000
|
||||
|
||||
math 3^0.5^2
|
||||
# Floating point operations under x86 without SSE2 have reduced accuracy!
|
||||
# This includes both i586 targets and i686 under Debian, where it's patched to remove SSE2.
|
||||
# As a result, some floating point tests use regular expressions to loosely match against
|
||||
# the shape of the expected result.
|
||||
|
||||
# NB: The i586 case should also pass under other platforms, but not the other way around.
|
||||
math "3^0.5^2"
|
||||
# CHECK: {{1\.316074|1\.316\d+}}
|
||||
|
||||
math -2^2
|
||||
# CHECK: 1.316074
|
||||
# CHECK: 4
|
||||
|
||||
math -s0 '1.0 / 2.0'
|
||||
|
@ -280,7 +287,7 @@ math pow sin 3, 5 + 2
|
|||
# CHECKERR: ^~~~^
|
||||
|
||||
math sin pow 3, 5
|
||||
# CHECK: -0.890009
|
||||
# CHECK: {{-0\.890009|-0.890\d*}}
|
||||
|
||||
math pow 2, cos -pi
|
||||
# CHECK: 0.5
|
||||
|
|
Loading…
Reference in a new issue