Commit Graph

1519 Commits

Author SHA1 Message Date
Laurent Rineau 406b6faec0 Fix: retrieving FPU rounding mode broken on mips
Fix issue #4399.
2020-02-11 13:59:56 +01:00
Laurent Rineau 1a562d6648 Merge pull request #4317 from mglisse/Number_types-interval_NaN2-glisse
Wrong interval multiplication with NaN
2019-11-06 17:45:31 +01:00
Marc Glisse c407516c1b Speed-up SSE NaN protection for intervals
We don't need quite as much protection as I initially added. The
essential is to avoid max(x,NaN) which would lose the value of x.
max(NaN,x) loses NaN (which means 0 for intervals), but there will
always be either another 0 or some +inf elsewhere.
2019-10-30 23:18:11 +01:00
Marc Glisse 72548ecb2d More NaN fixes for the non-SSE path. 2019-10-30 17:27:00 +01:00
Laurent Rineau c6d9dd64d9 Merge pull request #4315 from mglisse/Number_types-Mpzf_canon-glisse
Properly canonicalize the result of a subtraction in Mpzf
2019-10-29 15:23:30 +01:00
Laurent Rineau e6d86ecef7 Merge pull request #4317 from mglisse/Number_types-interval_NaN2-glisse
Wrong interval multiplication with NaN
2019-10-29 15:23:25 +01:00
Laurent Rineau 81c7f53d20 Add braces to quiet a warning
```
In file included from .../include/CGAL/long_double.h:27,
                 from .../include/CGAL/number_type_basic.h:52,
                 from .../include/CGAL/basic.h:33,
                 from .../include/CGAL/Cartesian/Cartesian_base.h:20,
                 from .../include/CGAL/Simple_cartesian.h:20,
                 from /home/cgal_tester/build/src/cmake/platforms/Fedora-32/test/AABB_tree/aabb_test_singleton_tree.cpp:4:
.../include/CGAL/Interval_nt.h: In function ‘CGAL::Interval_nt<Protected> CGAL::operator*(const CGAL::Interval_nt<Protected>&, const CGAL::Interval_nt<Protected>&)’:
.../include/CGAL/Interval_nt.h:664:10: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wdangling-else]
  664 |       if (b.inf()>=0.0)    // b>=0
      |          ^
```

I have added more than the single necessary pair of braces, by symmetry.
2019-10-29 09:45:16 +01:00
Marc Glisse b8953ab749 More tests for NaN interval multiplication 2019-10-27 23:26:01 +01:00
Marc Glisse db7ca5e3d1 Complete (?) fix for NaN intervals
I hope the slowdown caused by this branch is not too bad...
2019-10-26 18:36:44 +02:00
Marc Glisse d715ddd148 Properly canonicalize the result of a subtraction in Mpzf
1000-999=0001, there are multiple leading 0s to remove.
2019-10-25 16:32:28 +02:00
Marc Glisse e305b72f68 Extend the min trick to the other multiplication methods, change the default. 2019-10-25 00:51:03 +02:00
Marc Glisse fefc2658b7 PoC fix for NaN intervals
multiplication can currently produce NaN, both in the return value, and
internally, in which case the return value is nonsense.
2019-10-24 23:31:31 +02:00
Sébastien Loriot b13e116919 Manual removal of license notice + fix SPDX flags 2019-10-19 17:00:08 +02:00
Sébastien Loriot 52164b1fba First pass on removing license notice in header for LGPL files 2019-10-19 15:40:30 +02:00
Sébastien Loriot 7356421d80 introduce Commercial license SPDX tag 2019-10-19 12:15:19 +02:00
Sébastien Loriot 9bd9c68b83 update LGPL[23]+ and GPL[23]+ SPDX tags
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
jasjuang 79818b69e6 fix Mpfz default constructor causes unreachable code warning in Visual Studio 2019-10-03 10:20:27 -07:00
Sebastien Loriot 2a426bb1e1
Merge pull request #4063 from sloriot/CGAL-NO_CXX11
Remove CGAL_CXX11 macro usage
2019-07-19 16:16:22 +02:00
Sébastien Loriot fbafb9d06f fix remaining mismatches and fix bugs 2019-07-10 11:40:45 +02:00
Sébastien Loriot c0edb5ecaa remove CGAL_CXX11 macro usage 2019-07-08 11:42:17 +02:00
Laurent Rineau 39a245220a Merge pull request #3660 from mglisse/NewKernel_d-lazy_Epeck_d-glisse
Epeck_d
2019-07-01 11:16:33 +02:00
Laurent Rineau 2a5b558eb5 Merge branch 'master' into NewKernel_d-lazy_Epeck_d-glisse 2019-06-20 10:28:01 +02:00
Laurent Rineau 4fbf00fb8a CMake>=3.13: opt for for new policies up to 3.15 2019-06-19 14:34:59 +02:00
Andreas Fabri 4581f1b7a8 Morte replacements 2019-06-05 08:39:55 +02:00
Laurent Rineau 5c2df203b4 Merge pull request #3943 from mglisse/Number_types-expression_templates-glisse
Misc fixes for expression templates
2019-05-23 08:50:17 +02:00
Laurent Rineau 419032d859 Merge pull request #3947 from MaelRL/CGAL-Fix_typos-GF
Fix some typos in code/comments/documentation
2019-05-23 08:50:14 +02:00
Laurent Rineau 7e58feacfe Merge pull request #3797 from afabri/CGAL-Exact_algebraic-GF
Number_types:  Add Exact_algebraic
2019-05-21 16:37:07 +02:00
Laurent Rineau b8fe6b10ee Merge pull request #3804 from afabri/CGAL_tests_must_not_include_basic-GF
Do not include <CGAL/basic.h>
2019-05-21 16:37:01 +02:00
Mael Rouxel-Labbé 2848158354 Fix typos 2019-05-20 08:54:04 +02:00
Marc Glisse a676b75ca0 Misc fixes for expression templates 2019-05-17 19:48:41 +02:00
Laurent Rineau 2b8d417b2e Fix mpz_class... with g++
In my understanding, the reason is that the full specialization
`Modular_traits<mpz_class>` uses `CGAL::mod`, that its uses
`Coercion_traits<A,B>::Type`. That is why the `Coercion_traits`
specialization for `__gmp_expr` must be known before.
2019-05-15 11:09:01 +02:00
Laurent Rineau 2f7e66096c Missing header 2019-05-15 11:04:27 +02:00
Laurent Rineau 2c5cc9a9e9 Fix mpz_class 2019-05-14 15:03:26 +02:00
Laurent Rineau 9cbfcee84f Merge branch 'master' into CGAL-Exact_algebraic-GF 2019-05-13 18:11:00 +02:00
Laurent Rineau 2f8eeb0db3 Fix the headers dependency-hell around gmpxx in Number_types 2019-05-09 15:05:23 +02:00
Laurent Rineau b29e3f996f Add missing #include 2019-05-09 09:05:30 +02:00
Laurent Rineau c998ab1cd6 Merge pull request #3579 from mglisse/Number_types-intervals3-glisse
SSE version of Interval_nt
2019-05-06 15:46:12 +02:00
Laurent Rineau ee4a6c5de2 Merge pull request #3686 from lrineau/Number_types-headers_dependency_hell-GF
Reduce inclusions of <CGAL/basic.h> and <CGAL/number_type_basic.h>
2019-05-06 15:46:02 +02:00
Andreas Fabri fa8107b5a7 Include Residue.h 2019-05-03 16:52:46 +02:00
Laurent Rineau 149046f8c1
Merge branch 'master' into NewKernel_d-lazy_Epeck_d-glisse 2019-04-29 19:54:03 +04:00
Sebastien Loriot 698b4be2b0
Merge pull request #3644 from mglisse/Number_types-eigen_score_intervals-glisse
Give Eigen a scoring strategy for pivot selection with intervals
2019-04-23 09:46:49 +02:00
Marc Glisse 71caec2782 Tweak the __m128d protection for Visual Studio 2019. 2019-04-18 15:27:34 +02:00
Sébastien Loriot 1398af1b0b Merge remote-tracking branch 'cgal/master' into HEAD 2019-04-12 17:44:31 +02:00
Andreas Fabri 3b0519a1cb Add a forward declaration 2019-04-12 15:07:26 +02:00
Maxime Gimeno 78db3f646d Solve conflicts 2019-04-09 10:04:44 +02:00
Laurent Rineau 04bef2b071 Merge pull request #3781 from sloriot/CGAL-update_for_cpp14
Update for cpp14
2019-04-08 15:59:28 +02:00
Sébastien Loriot ffce89c0c0 replace cpp11::is_enum by std::is_enum 2019-03-29 13:28:33 +01:00
Sébastien Loriot f95533f2d2 remove conditional code with cpp11 in Number types 2019-03-29 10:41:49 +01:00
Laurent Rineau 42cbce9fbf Be aware of __SOFTFP__ 2019-03-28 08:55:49 +01:00
Laurent Rineau 1aee92af75 Fix the name of the macro
Thanks Marc!
2019-03-27 18:46:20 +01:00