Files
eigen/test
Antonio Sanchez 82d61af3a4 Fix rint SSE/NEON again, using optimization barrier.
This is a new version of !423, which failed for MSVC.

Defined `EIGEN_OPTIMIZATION_BARRIER(X)` that uses inline assembly to
prevent operations involving `X` from crossing that barrier. Should
work on most `GNUC` compatible compilers (MSVC doesn't seem to need
this). This is a modified version adapted from what was used in
`psincos_float` and tested on more platforms
(see #1674, https://godbolt.org/z/73ezTG).

Modified `rint` to use the barrier to prevent the add/subtract rounding
trick from being optimized away.

Also fixed an edge case for large inputs that get bumped up a power of two
and ends up rounding away more than just the fractional part.  If we are
over `2^digits` then just return the input.  This edge case was missed in
the test since the test was comparing approximate equality, which was still
satisfied.  Adding a strict equality option catches it.
2021-03-05 08:54:12 -08:00
..
2019-03-14 10:08:12 +01:00
2016-05-18 14:03:03 +02:00
2018-11-23 15:37:09 +01:00
2021-02-25 08:04:05 -08:00
2019-12-11 18:22:57 +00:00
2020-12-03 11:27:32 -08:00
2021-01-27 23:32:12 +01:00
2021-01-27 23:32:12 +01:00
2021-01-07 12:48:40 -08:00
2021-01-05 10:41:25 -08:00
2021-01-21 09:44:42 -08:00
2019-01-15 10:51:03 +01:00
2018-11-23 15:12:06 +01:00