diff options
author | Antonio Sanchez <cantonios@google.com> | 2021-05-23 12:35:38 -0700 |
---|---|---|
committer | Antonio Sanchez <cantonios@google.com> | 2021-05-23 12:44:37 -0700 |
commit | ebb300d0b4340104dcade3afa656a57da2b7660c (patch) | |
tree | cf8ddfa15495969e31ff04141cb112bb30fced6f /Eigen/src/Core/arch/NEON/PacketMath.h | |
parent | 12471fcb5d59f969c60a9b78727624dc91e5c04e (diff) |
Modify Unary/Binary/TernaryOp evaluators to work for non-class types.
This used to work for non-class types (e.g. raw function pointers) in
Eigen 3.3. This was changed in commit 11f55b29 to optimize the
evaluator:
> `sizeof((A-B).cwiseAbs2())` with A,B Vector4f is now 16 bytes, instead of 48 before this optimization.
though I cannot reproduce the 16 byte result. Both before the change
and after, with multiple compilers/versions, I always get a result of 40 bytes.
https://godbolt.org/z/MsjTc1PGe
This change modifies the code slightly to allow non-class types. The
final generated code is identical, and the expression remains 40 bytes
for the `abs2` sample case.
Fixes #2251
Diffstat (limited to 'Eigen/src/Core/arch/NEON/PacketMath.h')
0 files changed, 0 insertions, 0 deletions