Repo Added
|
Files
89
|
Badge
Embed ▾
README BADGES
|
push
github
x86/x64: Fix math.ceil(-0.9) result sign. Reported by minoki. (cherry-picked from commit 674afcd4e) The `ceil` (`floor`) math function implementation calculates (|x| + 2^52) - 2^52 for its argument to determine the fractional part of x, so it will be rounded to the nearest integer and its sign is restored. After that, if the original value is < (>) than the result, the -1 (1) is subtracted from it. Take a look at the `ceil()` case. The result of the operation `-1 - (-1)` is +0 for FP arithmetic, against -0 expected as a result. This patch changes the `- (-1)` operation to `+ 1` and restores sign after it again. NB: Since in DUALNUM mode on x86/x64 all results are tried to be converted to integers, the sign of 0 is neglected. Sergey Kaplun: * added the description and the test for the problem Part of tarantool/tarantool#9145
5363 of 5975 branches covered (0.0%)
Branch coverage included in aggregate %.
20548 of 23304 relevant lines covered (88.17%)
2749841.31 hits per line
Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
---|