Rasmus Munk Larsen
ece9a4c0b6
Always vectorize abs2() for non-complex types.
...
For several packet types, `abs2` was not vectorized even if it only requires `pmul`. Get rid of the confusing and redundant `HasAbs2` enum and instead check `HasMul` in addition to making sure the scalar type is not complex.
See merge request libeigen/eigen!2048
2025-10-30 02:42:56 +00:00
Charles Schlosser
dbd25f632b
Fix select: return typed comparisons if vectorized
2025-09-24 05:38:12 +00:00
Rasmus Munk Larsen
97c7cc6200
Explicitly use the packet trait HasPow to control whether Pow is vectorized.
2025-07-18 21:51:42 +00:00
Rasmus Munk Larsen
33f5f59614
Vectorize cbrt for float and double.
2025-04-17 23:31:20 +00:00
Charles Schlosser
28c3b26d53
masked load/store framework
2025-04-12 00:31:10 +00:00
Rasmus Munk Larsen
21223f6bb6
Fix addition of different enum types.
2025-03-07 22:18:00 +00:00
Charles Schlosser
d28041ed5a
refactor AssignmentFunctors.h, unify with existing scalar_op
2025-03-06 01:28:39 +00:00
Tyler Veness
0ae7b59018
Make assignment constexpr
2025-02-21 18:16:46 +00:00
Charles Schlosser
c01ff45312
Enable fill_n and memset optimizations for construction and assignment
2024-12-14 14:25:04 +00:00
Rasmus Munk Larsen
8ee6f8475a
Speed up exp(x).
2024-11-19 17:50:34 +00:00
Rasmus Munk Larsen
0af6ab4b76
Remove unnecessary check for HasBlend trait.
2024-11-18 21:16:45 +00:00
Rasmus Munk Larsen
3f067c4850
Add exp2() as a packet op and array method.
2024-10-22 22:09:34 +00:00
Charles Schlosser
87239e058a
vectorize squaredNorm() for complex types
2024-08-21 10:54:17 +00:00
Rasmus Munk Larsen
9148c47d67
Vectorize isfinite and isinf.
2024-05-29 00:20:12 +00:00
Charles Schlosser
8e47971789
Bit shifting functions
2024-05-03 18:55:02 +00:00
Charles Schlosser
fb95e90f7f
Add truncation op
2024-04-29 23:45:49 +00:00
Charles Schlosser
122befe54c
Fix "unary minus operator applied to unsigned type, result still unsigned" on MSVC and other stupid warnings
2024-04-12 19:35:04 +00:00
Dieter Dobbelaere
b2c9ba2bee
Fix preprocessor condition on when to use fast float logistic implementation.
2024-04-03 21:51:39 +00:00
Antonio Sánchez
1d4369c2ff
Fix CwiseUnaryView.
2024-03-11 19:08:30 +00:00
Antonio Sánchez
3252ecc7a4
Fix scalar_logistic_function overflow for complex inputs.
2023-12-05 18:21:04 +00:00
Tobias Wood
f38e16c193
Apply clang-format
2023-11-29 11:12:48 +00:00
Kyle Macfarlan
5de0f2f89e
Fixes #2735 : Component-wise cbrt
2023-10-25 03:06:13 +00:00
Antonio Sánchez
6e4d5d4832
Add IWYU private pragmas to internal headers.
2023-08-21 16:25:22 +00:00
Charles Schlosser
44c20bbbe3
rint round floor ceil
2023-06-23 16:29:16 +00:00
Charles Schlosser
59b3ef5409
Partially Vectorize Cast
2023-06-09 16:54:31 +00:00
Antonio Sánchez
2d0c6ad873
Revert "Vectorize cast"
...
This reverts commit eb5ff1861a
2023-04-26 18:03:36 +00:00
Charles Schlosser
eb5ff1861a
Vectorize cast
2023-04-26 02:50:13 +00:00
Rasmus Munk Larsen
0488b708b4
Vectorize tensor.isnan() by using typed predicates.
2023-03-16 04:04:22 +00:00
Rasmus Munk Larsen
6bb9609bcb
Make new Select implementation backwards compatible.
2023-03-10 23:07:47 +00:00
Charles Schlosser
0b396c3167
Scalarize comps
2023-03-02 17:06:23 +00:00
Charles Schlosser
826627f653
vectorize comparisons and select by enabling typed comparisons
2023-02-25 20:52:11 +00:00
Rasmus Munk Larsen
ce62177b5b
Vectorize atanh & add a missing definition and unit test for atan.
2023-02-21 03:14:05 +00:00
Charles Schlosser
049a144798
Add typed logicals
2023-02-18 01:23:47 +00:00
Charles Schlosser
94b19dc5f2
Add CArg
2023-02-15 21:33:06 +00:00
Rasmus Munk Larsen
77b48c440e
Fix compiler warnings.
2023-02-10 20:46:23 +00:00
Rasmus Munk Larsen
e4f58816d9
Get rid of custom implementation of equal_to and not_equal_no. No longer needed with c+14.
2023-02-07 21:36:44 -08:00
Charles Schlosser
6d9f662a70
Tweak atan2
2023-01-26 17:38:21 +00:00
Sean McBride
d70b4864d9
issue #2581 : review and cleanup of compiler version checks
2023-01-17 18:58:34 +00:00
Alexander Richardson
37de432907
Avoid using std::raise() for divide by zero
2022-12-14 20:06:16 +00:00
Charles Schlosser
6d3e3678b4
optimize equalspace packetop
2022-12-13 01:22:25 +00:00
Charles Schlosser
2004831941
add EqualSpaced / setEqualSpaced
2022-12-13 00:54:57 +00:00
Rasmus Munk Larsen
3bb6a48d8c
Fix bug atan2
2022-10-12 23:49:32 +00:00
Rasmus Munk Larsen
14c847dc0e
Refactor special values test for pow, and add a similar test for atan2
2022-10-12 20:12:08 +00:00
Rasmus Munk Larsen
462758e8a3
Don't use generic sign function for sign(complex) unless it is vectorizable
2022-10-12 16:03:29 +00:00
Rasmus Munk Larsen
c0d6a72611
Use pnegate(pzero(x)) as a generic way to generate -0.0. Some compiler do not handle the literal -0.0 properly in fastmath mode.
2022-10-12 01:57:05 +00:00
Rasmus Munk Larsen
3167544873
Handle NaN inputs to atan2.
2022-10-10 19:36:36 -07:00
Rasmus Munk Larsen
72db3f0fa5
Remove references to M_PI_2 and M_PI_4.
2022-10-11 00:27:16 +00:00
Antonio Sánchez
80efbfdeda
Unconditionally enable CXX11 math.
2022-10-04 17:37:47 +00:00
Rasmus Munk Larsen
1e1848fdb1
Add a vectorized implementation of atan2 to Eigen.
2022-09-28 20:46:49 +00:00
Rasmus Munk Larsen
7b2901e2aa
Add vectorized integer division for int32 with AVX512, AVX or SSE.
2022-09-21 00:27:23 +00:00