Rasmus Munk Larsen
61895c5978
Selectively add constexpr to Core expression template scaffolding
...
libeigen/eigen!2184
Closes #3041
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-02-24 19:59:10 -08:00
Rasmus Munk Larsen
78b76986b7
Comment cleanup v3: trailing ??, informal language, FIXME/TODO colons
...
libeigen/eigen!2197
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-02-22 21:20:08 -08:00
Rasmus Munk Larsen
270ea539fa
Remove redundant EIGEN_STRONG_INLINE from trivial constexpr and = default functions
...
libeigen/eigen!2161
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-02-20 19:50:52 -08:00
Rasmus Munk Larsen
bdec88009d
Remove const from return-by-value types (issue #1087 )
...
libeigen/eigen!2144
Closes #1087
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-02-18 03:10:11 -08:00
Charles Schlosser
8b85f5933a
Fix realview
...
libeigen/eigen!2062
2025-11-08 13:36:43 +00:00
Rasmus Munk Larsen
63fc0bc8c1
Make TernarySelectOp immune to const differences.
...
See merge request libeigen/eigen!2058
Co-authored-by: Rasmus Munk Larsen <rmlarsen@google.com >
2025-11-04 21:42:32 +00:00
Rasmus Munk Larsen
a20fc40e4e
Revert "simplify squaredNorm"
...
This causes some subtle alignment-related bugs, which @chuckyschluz is currently investigating.
See merge request libeigen/eigen!2055
2025-11-03 18:59:51 +00:00
Charles Schlosser
fb5bb3e98f
simplify squaredNorm
...
<!--
Thanks for contributing a merge request!
We recommend that first-time contributors read our [contribution guidelines](https://eigen.tuxfamily.org/index.php?title=Contributing_to_Eigen ).
Before submitting the MR, please complete the following checks:
- Create one PR per feature or bugfix,
- Run the test suite to verify your changes.
See our [test guidelines](https://eigen.tuxfamily.org/index.php?title=Tests ).
- Add tests to cover the bug addressed or any new feature.
- Document new features. If it is a substantial change, add it to the [Changelog](https://gitlab.com/libeigen/eigen/-/blob/master/CHANGELOG.md ).
- Leave the following box checked when submitting: `Allow commits from members who can merge to the target branch`.
This allows us to rebase and merge your change.
Note that we are a team of volunteers; we appreciate your patience during the review process.
-->
### Description
<!--Please explain your changes.-->
My review of https://gitlab.com/libeigen/eigen/-/merge_requests/2048 reminded me there was a much easier and better way of doing this for complex arrays.
### Reference issue
<!--
You can link to a specific issue using the gitlab syntax #<issue number>.
If the MR fixes an issue, write "Fixes #<issue number>" to have the issue automatically closed on merge.
-->
### Additional information
<!--Any additional information you think is important.-->
See merge request libeigen/eigen!2049
2025-10-30 02:51:15 +00:00
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