aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/util/StaticAssert.h
Commit message (Collapse)AuthorAge
* bug #1153: Don't rely on __GXX_EXPERIMENTAL_CXX0X__ to detect C++11 supportGravatar Christoph Hertzberg2016-01-26
|
* Add static assertion to y(), z(), w() accessorsGravatar Gael Guennebaud2016-01-20
|
* Add special functions to Eigen: lgamma, erf, erfc.Gravatar Eugene Brevdo2015-12-07
| | | | Includes CUDA support and unit tests.
* Implement wrapper for matrix-free iterative solversGravatar Gael Guennebaud2015-12-07
|
* Big 1009, part 2/2: add static assertion on LinearAccessBit in ↵Gravatar Gael Guennebaud2015-11-27
| | | | coeff(index)-like methods.
* Simplify cost computations based on HugeCost being smaller that unrolling limitGravatar Gael Guennebaud2015-10-28
|
* Refactoring of the cost model:Gravatar Gael Guennebaud2015-10-28
| | | | | | | | | | | - Dynamic is now an invalid value - introduce a HugeCost constant to be used for runtime-cost values or arbitrarily huge cost - add sanity checks for cost values: must be >=0 and not too large This change provides several benefits: - it fixes shortcoming is some cost computation where the Dynamic case was not properly handled. - it simplifies cost computation logic, and should avoid future similar shortcomings. - it allows to distinguish between different level of dynamic/huge/infinite cost - it should enable further simplifications in the computation of costs (save compilation time)
* Replace a static assert by a runtime one, fixes the build of unit tests on ARMGravatar Benoit Jacob2015-02-27
| | | | | Also safely assert in the non-implemented path that should never be taken in practice, and would return wrong results.
* bug #955 - Implement a rotating kernel alternative in the 3px4 gebp pathGravatar Benoit Jacob2015-02-18
| | | | | | | | This is substantially faster on ARM, where it's important to minimize the number of loads. This is specific to the case where all packet types are of size 4. I made my best attempt to minimize how dirty this is... opinions welcome. Eventually one could have a generic rotated kernel, but it would take some work to get there. Also, on sandy bridge, in my experience, it's not beneficial (even about 1% slower).
* Big 853: replace enable_if in Ref<> ctor by static assertions and add ↵Gravatar Gael Guennebaud2014-11-05
| | | | failtests for Ref<>
* Introduce unified macros to identify compiler, OS, and architecture. They ↵Gravatar Gael Guennebaud2014-11-04
| | | | are all defined in util/Macros.h and prefixed with EIGEN_COMP_, EIGEN_OS_, and EIGEN_ARCH_ respectively.
* merge with default branchGravatar Gael Guennebaud2014-07-02
|\
| * Removed the deprecated EIGEN2_SUPPORT, as previously announced. A ↵Gravatar Christoph Hertzberg2014-07-01
| | | | | | | | compilation error is raised, if this compile-switch is defined. The documentation references to the corresponding pages from Eigen3.2 now. Also, the Eigen2 testsuite has been removed.
* | Generalize static assertions on matching sizes to avoid the need for ↵Gravatar Gael Guennebaud2014-06-25
| | | | | | | | SizeAtCompileTime
| * Workaround clang error introduced by 3117036b80075390dbc46f60aa0d595e5a44661bGravatar Christoph Hertzberg2014-06-23
| | | | | | | | | | : "template argument for non-type template parameter is treated as function type 'bool (bool)'"
* | Product::coeff method are also OK for lazy products (including diagonal ↵Gravatar Gael Guennebaud2014-02-18
| | | | | | | | products)
* | Enable use of evaluators for noalias and lazyProduct, add conversion to ↵Gravatar Gael Guennebaud2013-12-03
|/ | | | scalar for inner products
* Add static assert that objects on stacks are not too big (bug #491).Gravatar Jitse Niesen2012-07-17
|
* Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.Gravatar Benoit Jacob2012-07-13
|
* Get rid of include directives inside namespace blocks (bug #339).Gravatar Jitse Niesen2012-04-15
|
* fig bug #396: add a static assertion on the storage order of a sparse-sparse ↵Gravatar Gael Guennebaud2011-12-15
| | | | coeff-wise binary op
* fix bug #384: add a static assertion on the Index type which has to be signedGravatar Gael Guennebaud2011-12-04
|
* Bugs 157 and 377 - General tightening/testing of vectorwise ops:Gravatar Benoit Jacob2011-11-18
| | | | | | | | | | | | | | | | | | * add lots of static assertions making it very explicit when all these ops are supposed to work: ** all ops require the rhs vector to go in the right direction ** all ops already require that the lhs and rhs are of the same kind (matrix vs vector) otherwise we'd have to do complex work ** multiplicative ops (introduced Kibeom's patch) are restricted to arrays, if only because for matrices they could be ambiguous. * add a new test, vectorwiseop.cpp. * these compound-assign operators used to be implemented with for loops: for(Index j=0; j<subVectors(); ++j) subVector(j).array() += other.derived().array(); This didn't seem to be needed; replaced by using expressions like operator+ and operator- did.
* In the Matrix constructor taking (rows, cols), statically assert that the ↵Gravatar Benoit Jacob2011-11-05
| | | | | | types are integer. The 2D vector ctor taking (x, y) is not concerned.
* forgot to include this file in previous commitGravatar Gael Guennebaud2011-06-01
|
* fix EIGEN_STATIC_ASSERT_LVALUE (fix found by failtests)Gravatar Benoit Jacob2011-02-06
|
* lots more EIGEN2_SUPPORT fixes. Now several of the most important core tests ↵Gravatar Benoit Jacob2011-01-20
| | | | build and succeed.
* fix MSVC warnings, bug #143Gravatar Jose Luis Blanco2010-12-29
|
* bug #54 - really fix const correctness except in SparseGravatar Benoit Jacob2010-12-22
|
* bug #54 - The big Map const-correctness changesGravatar Benoit Jacob2010-12-10
|
* fix the build of eigensolver_complex test.Gravatar Benoit Jacob2010-12-09
| | | | | | it was calling the .value() method on an inner product, and that was blocked in bad zero-sized case. fixed by adding the .value() method to DenseBase for all 1x1 expressions, and allowing coeff accessors in ProductBase for 1x1 expressions.
* bug #86 : use internal:: namespace instead of ei_ prefixGravatar Benoit Jacob2010-10-25
|
* fix compilation on ubuntu 9.04's version of gcc 4.3 (yes, wtf)Gravatar Benoit Jacob2010-09-27
|
* Fixed Geometry module failures.Gravatar Hauke Heibel2010-08-17
| | | | | | | | | Removed default parameter from Transform. Removed the TransformXX typedefs. Removed references to TransformXX from unit tests and docs. Assigning Transforms to a sub-group is now forbidden at compile time. Products should now properly support the Isometry flag. Fixed alignment checks in MapBase.
* fix Transform() constructor taking a Transform with other mode.Gravatar Benoit Jacob2010-08-16
| | | | Not really tested as the geometry tests are currently busted.
* further improve compilation error message for array+=matrixGravatar Gael Guennebaud2010-08-16
|
* Safeguarded some Transform functions with compile time asserts.Gravatar Hauke Heibel2010-07-29
| | | | Added missing static Identity() to Rotation2D, AngleAxis.
* add an OpenGL module simplifying the way you can pass Eigen's objects to GLGravatar Gael Guennebaud2010-07-22
|
* email changeGravatar Gael Guennebaud2010-06-24
|
* change the value of Dynamic to -1, since the index type is now configurable.Gravatar Benoit Jacob2010-06-11
| | | | remove EIGEN_ENUM_MIN/MAX, implement new macros instead
* Complete rework of global math functions and NumTraits.Gravatar Benoit Jacob2010-04-28
| | | | | | | | * Now completely generic so all standard integer types (like char...) are supported. ** add unit test for that (integer_types). * NumTraits does no longer inherit numeric_limits * All math functions are now templated * Better guard (static asserts) against using certain math functions on integer types.
* restrict operator[] to vectors, not matrices.Gravatar Benoit Jacob2010-04-23
|
* * allow matrix dimensions to be 0 (also at compile time) and provide a ↵Gravatar Benoit Jacob2010-03-21
| | | | | | | | | | | | | | | specialization of ei_matrix_array for size 0 * adapt many xprs to have the right storage order, now that it matters * add static assert on expressions to check that vector xprs have the righ storage order * adapt ei_plain_matrix_type_(column|row)_major * implement assignment of selfadjointview to matrix (was before failing to compile) and add nestedExpression() methods * expand product_symm test * in ei_gemv_selector, use the PlainObject type instead of a custom Matrix<...> type * fix VectorBlock and Block mistakes
* miserable half-working state, commiting to a fork just in case, just to perfectGravatar Benoit Jacob2010-02-18
| | | | | my day, my hard disk would die. Will write a more detailed commit message once it's working.
* * fix multiple temporary copies for coeff based productsGravatar Gael Guennebaud2010-02-09
| | | | | | * introduce a lazy product version of the coefficient based implementation => flagged is not used anymore => small outer product are now lazy by default (aliasing is really unlikely for outer products)
* * default MatrixBase ctor: make it protected, make it a static assert, only ↵Gravatar Benoit Jacob2009-10-31
| | | | | | do the check when debugging eigen to avoid slowing down compilation for everybody (this check is paranoiac, it's very seldom useful) * add private MatrixBase ctors to catch cases when the user tries to construct MatrixBase objects directly
* MatrixBase:Gravatar Benoit Jacob2009-10-20
| | | | | | | | | * support resize() to same size (nop). The case of FFT was another case where that make one's life far easier. hope that's ok with you Gael. but indeed, i don't use it in the ReturnByValue stuff. FFT: * Support MatrixBase (well, in the case with direct memory access such as Map) * adapt unit test
* make Replicate ctor require the exact expected typeGravatar Benoit Jacob2009-09-30
|
* Added EIGEN_REF_TO_TEMPORARY define for rvalue support.Gravatar Hauke Heibel2009-09-21
| | | | Allowed VC10 to make use of static_assert.
* Added conservativeResize + unit test.Gravatar Hauke Heibel2009-09-03
|