- Feb 08, 2016
-
-
Elias Pipping authored
(cherry picked from commit 7369e156) Signed-off-by:
Steffen Müthing <muething@dune-project.org>
-
- Sep 12, 2015
-
-
Markus Blatt authored
by testing whether we work on a end iterator. In this case the distance function will fail. Found that out by gcc's stdlib with debugging turned on. (cherry picked from commit c494c58b) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Markus Blatt authored
(cherry picked from commit 9588afdf) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- Sep 01, 2015
-
-
Markus Blatt authored
(cherry picked from commit 3bef4991) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- Aug 19, 2015
-
-
Carsten Gräser authored
(cherry picked from commit 6121bbd9) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Carsten Gräser authored
... and don't take absolute value of comparison result. Thanks to Max Kahnt for reporting this. (cherry picked from commit 57a43efa) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- Aug 18, 2015
-
-
Christoph Grüninger authored
It's more CMake style. (cherry picked from commit 635500eb) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Christoph Grüninger authored
(cherry picked from commit a46de680) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- Jul 07, 2015
-
-
Steffen Müthing authored
IteratorRanges are convenient for storing ranges of iterators into a larger container, e.g. for the per-codim GeometryTypes in an IndexSet. Unfortunately, you can't just create an array of IteratorRanges right now because they can neither be copied, nor are they default-constructible. This patch fixes that problem and also adds a second typedef const_iterator to make IteratorRange work in contexts where the iterating code isn't using range-based for and assumes a const object. (cherry picked from commit 2c9596f9) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- Jul 01, 2015
-
-
Dominic Kempf authored
With the recent changes to bigunsignedint, the index cannot be initialized with a negative value anymore. We change this to 1 to overcome the problem. This commit together with the recent bugfixes by Ansgar fixes the AMG code on master. (cherry picked from commit bf023947) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Ansgar Burchardt authored
(cherry picked from commit 6100b778) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Ansgar Burchardt authored
Since 0c697d8d messages of size zero are no longer sent. This can reduce the number of requests we have to wait for. (cherry picked from commit f35437e9) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Ansgar Burchardt authored
The storage of bigunsignedint was changed to std::uint16_t in commit 541b3dfc. This implements the same change for the MPITraits<bigunsignedint<k>> Note that this assumes that MPITraits<std::uint16_t> is defined. This is the case as long as uint16_t maps to one of the standard integer types (unsigned char/short/int/long). Thanks to Markus for pointing this out. Reference: https://dune-project.org/flyspray/index.php?do=details&task_id=1657#comment6393 (cherry picked from commit 586375b4) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- Jun 25, 2015
-
-
Ansgar Burchardt authored
(cherry picked from commit 648dff2b) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Dominic Kempf authored
This bug could only be found outside Germany :D (cherry picked from commit ecdb7f7b) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- Jun 16, 2015
-
-
Christian Engwer authored
the first problem was that I accidentially enabled the ScalarOrderingTest, but this forced me to investigate further and I found out how this works, or not works. We have to add the comparison operators to FieldVector, as the cast operator does not always match, e.g. in the case of GMPField. (cherry picked from commit e0ac8d9a) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Carsten Gräser authored
Before the test was not active since '#if HAVE_GMP' fails if the gmp-flags where not added. (cherry picked from commit 045c6d93) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Christian Engwer authored
in order to make GMPField work in more situations, we add a constrctor, which matches all scalar data types, which can me converted to K. We deliberately exclude K from the template match. (cherry picked from commit 9d46150e) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Christian Engwer authored
(cherry picked from commit 7135cbb0) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Christian Engwer authored
we first import function like std::max into the local scope and the call max(a,b) instead of std::max(a,b). This allows to match specializations for other data types via ADL. (cherry picked from commit 515f312a) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Christian Engwer authored
(cherry picked from commit 49200b29) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Christian Engwer authored
The templated constructor of GMPField fatched everything. We reduce the constructor to those scalar values, which are convertible to mpf_class. As this removes the constructor from char* we explicitly add constructor from char* and std::string. This is the main part to fix FS#1665 (cherry picked from commit 3fe52527) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Christian Engwer authored
most of the tests work. std::complex<GMPField> does not work as expected, but this is perhaps something we don't want to support. As std::complex does not allow to initialize with other parameters than the data type itself, we can not initialize from int or other compatible scalar values. The smae problem occures when interacting with int values directly. (cherry picked from commit bde9dc6e) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- Jun 09, 2015
-
-
Christoph Grüninger authored
(cherry picked from commit 7330cbcd) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Christoph Grüninger authored
Fixes FS#FS#1649. (cherry picked from commit 63256eeb) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- May 21, 2015
-
-
Ansgar Burchardt authored
This closes FS#1651. (cherry picked from commit 6552b897) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Ansgar Burchardt authored
ptrdiff_t is a signed integer type and so the expression (std::uintptr_t)(ptr) % page_size could become a negative value. In this case the page_ptr would be the address of the next page after the allocation. This wrong behaviour could be observed on (32bit) PowerPC: here ptr was 0xf78cfe00 and page_ptr was calculated as 0xf78d0000 instead of the correct 0xf78c0000. (cherry picked from commit 1659ea4b) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
Ansgar Burchardt authored
This change should make formatString safe to use in multi-threaded programs. This fixes FS#1636. (cherry picked from commit f529d23f) Signed-off-by:
Carsten Gräser <graeser@dune-project.org>
-
- May 11, 2015
-
-
Steffen Müthing authored
The std::numeric_limits specialization for bigunsignedint requires access to the internal state of bigunsignedint. Previously, the correct specialization of std::numeric_limits was a friend of bigunsignedint, but that creates problems on recent versions of clang with the alternative libc++ library, because that library declares the base template of std::numeric_limits as a class and clang subsequently complains if the friend declaration uses 'struct'. Unfortunately, libstdc++ uses a struct, making it impossible to keep clang happy for both standard libraries. So we introduce a helper class that provides access to the internal state and which now becomes a friend of bigunsignedint. The numeric_limits specialization inherits from the helper to use it. (cherry picked from commit a7951dff) Signed-off-by:
Steffen Müthing <muething@dune-project.org>
-
Steffen Müthing authored
(cherry picked from commit e9634076) Signed-off-by:
Steffen Müthing <muething@dune-project.org>
-
Steffen Müthing authored
According to the standard, all specializations of std::hash must export argument_type and result_type [20.8.12/1]. The version of libc++ (LLVM's alternative C++ standard library) tripped over this requirement on my machine, so this patch adds the typedefs. (cherry picked from commit a64ca159) Signed-off-by:
Steffen Müthing <muething@dune-project.org>
-
Steffen Müthing authored
Ansgar fixed a bunch of problems in bigunsignedint - and improved the corresponding test! yeah! * p/ansgar/FS1644-bigunsignedint: Rework bigunsignedinttest.cc. bigunsignedint: Remove unneeded variable in operator%. bigunsignedint: Fix operator-. bigunsignedint: Throw an exception when constructing from a negative integer. bigunsignedint: make overload unambiguous for all integer types Use fixed-width integer types (C++11) (cherry picked from commit 4c79a644) Signed-off-by:
Steffen Müthing <muething@dune-project.org>
-
- Apr 29, 2015
-
-
Oliver Sander authored
-
- Apr 20, 2015
-
-
(cherry picked from commit 7aa683f1)
-
(cherry picked from commit bb04c50d)
-
-
-
Markus Blatt authored
Before this commit communcation would be initiated even on empty interfaces. While this does not lead to overwriting data or producing segmentation faults, it does lead to accessing the first component of empty vectors to get a pointer to pass to MPI functions. This produces error output with valgrind and other memory debuggers. Therefore with this commit we will first check whether the interface contains values and do nothing if it doesn't. We also augmented the test to catch the case wher only some processes have an empty interface.
-
- Apr 10, 2015
-
-
Jö Fahlke authored
-
Steffen Müthing authored
This check was added to improve the error message returned when using MPI without correctly initializing it (e.g. by creating a parallel grid), see FS#1612 for further information.
-