| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
CUDA code.
Still a lot to do.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
implementations.
(yes I know this change will be deprecated as soon as the evaluators will be in shape but I need this now)
|
|
|
|
| |
convinced about the pertinence of that warning)
|
|
|
|
| |
aligned on a scalar (complex<double>)
|
| |
|
|
|
|
|
|
|
| |
Renamed meta_{true|false} to {true|false}_type, meta_if to conditional, is_same_type to is_same, un{ref|pointer|const} to remove_{reference|pointer|const} and makeconst to add_const.
Changed boolean type 'ret' member to 'value'.
Changed 'ret' members refering to types to 'type'.
Adapted all code occurences.
|
| |
|
|
|
|
| |
* improve compilation error in case of type mismatch
|
| |
|
|
|
|
|
| |
* add a, Alignable trait
* update LinearVectorization assignment
|
| |
|
|
|
|
| |
is not a compile-time constant, must use enum.
|
| |
|
| |
|
|
|
|
| |
remove EIGEN_ENUM_MIN/MAX, implement new macros instead
|
|
|
|
| |
As discussed on the list (too long to explain here).
|
|
|
|
| |
in eigen2 support mode
|
|\ |
|
| |
| |
| |
| | |
when necessary.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
arithmetic is involved.
* rename 'submatrices' test to 'block'
* add block-inside-of-block tests
* remove old cruft
* split diagonal() tests into separate file
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
* use them (big simplification in Assign.h)
* axe (Inner|Outer)StrideAtCompileTime that were just introduced
* ei_int_if_dynamic now asserts that the size is the expected one: adapt to that in Block.h
* add rowStride() / colStride() in DenseBase
* implement innerStride() / outerStride() everywhere needed
|
|/
|
|
|
| |
my day, my hard disk would die.
Will write a more detailed commit message once it's working.
|
| |
|
|
|
|
|
| |
*forward port expanded map.cpp unit test
*fix unused variable warnings
|
|
|
|
|
|
|
|
|
| |
Added setLinSpaced/LinSpaced functionality to DenseBase.
Improved vectorized assignment - overcomes MSVC optimization issues.
CwiseNullaryOp is now requiring functors to offer 1D and 2D operators.
Adapted existing functors to the new CwiseNullaryOp requirements.
Added ei_plset to create packages as [a, a+1, ..., a+size].
Added more nullaray unit tests.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
sizeof(Scalar), and that assumption breaks with double on linux x86-32.
* Rename ei_alignmentOffset to ei_first_aligned
* Rewrite its documentation and part of its body
* The variant taking a MatrixBase doesn't need a separate size argument.
|
| | |
|
| |
| |
| |
| | |
MaxInnerSize
|
|\| |
|
| |
| |
| |
| |
| |
| | |
significantly simplify the code of these checks while extending them
to catch much more expressions!
* move the enabling/disabling of vectorized sin/cos to the architecture traits
|
| | |
|
| |
| |
| |
| |
| | |
* old bug: in CwiseBinaryOp: only set the LinearAccessBit if both sides have the same storage order.
* new bug: in Assign.h, only consider linear traversal if both sides have the same storage order.
|
| |
| |
| |
| |
| |
| | |
Actually I don't think it's buggy. But it probably triggers existing bugs, I suspect that
some xprs have LinearAccessBit and shouldn't have it.
Also this fixes the "bugs" with JacobiSVD ---> now it works again
|
|/
|
|
| |
Rename some constants to make names match more closely what they mean.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
- rename EvalBeforeAssignBit to MayAliasBit
- make .lazy() remove the MayAliasBit only, and mark it as deprecated
- add a NoAlias pseudo expression, and MatrixBase::noalias() function
Todo:
- we have to decide whether += and -= assume no aliasing by default ?
- once we agree on the API: update the Sparse module and the unit tests respectively.
|
| |
|
| |
|
|
|
|
| |
we have to do runtime checks and we don't unroll, so it's only good for large enough sizes
|
|
|
|
| |
ei_assign_traits are printed
|
| |
|
| |
|