On Fri, 9 Nov 2018, Jonathan Wakely wrote:
Here's the fix for the regression this introduced.
Thanks. I was going to handle it, but I was waiting for you to review the
second relocation patch first to avoid having several patches in flight
over the same piece of code. Anyway, having the regr
On 25/10/18 13:36 +0100, Jonathan Wakely wrote:
On 25/10/18 14:30 +0200, Marc Glisse wrote:
On Tue, 23 Oct 2018, Jonathan Wakely wrote:
+ template
+inline void
+__relocate_a(_Tp* __dest, _Up* __orig, _Allocator& __alloc)
I find it a little surprising that this overload for single ob
On 25/10/18 14:30 +0200, Marc Glisse wrote:
On Tue, 23 Oct 2018, Jonathan Wakely wrote:
+ template
+inline void
+__relocate_a(_Tp* __dest, _Up* __orig, _Allocator& __alloc)
I find it a little surprising that this overload for single objects
using the memmove argument ordering (dest,
On Tue, 23 Oct 2018, Jonathan Wakely wrote:
+ template
+inline void
+__relocate_a(_Tp* __dest, _Up* __orig, _Allocator& __alloc)
I find it a little surprising that this overload for single objects
using the memmove argument ordering (dest, source) but the range overload
below uses the
On 23/10/18 23:17 +0200, Marc Glisse wrote:
On Tue, 23 Oct 2018, Jonathan Wakely wrote:
What depends on C++14 here? Just enable_if_t? Because we have
__enable_if_t for use in C++11.
Both GCC and Clang will allow constexpr-if and static_assert with no
message in C++11.
Probably it can be enabl
On Tue, 23 Oct 2018, Jonathan Wakely wrote:
CCing gcc-patches
It seems to have disappeared somehow during the discussion, sorry.
The tricky stuff in all looks right, I only have
some comments on the __relocate_a functions ...
Index: libstdc++-v3/include/bits/stl_uninitialized.h
=
CCing gcc-patches
On 19/10/18 07:33 +0200, Marc Glisse wrote:
On Thu, 18 Oct 2018, Marc Glisse wrote:
Uh, why didn't I notice that the function __relocate is unused? I
guess I'll resend the same patch without __relocate once retesting
has finished :-( Sorry for all the corrections, I guess I
On Sat, 13 Oct 2018, Marc Glisse wrote:
+ template
+struct __is_trivially_relocatable
+: is_trivially_move_constructible<_Tp> { };
Oups, this part is wrong, sorry, it is supposed to be "is_trivial" instead
of "is_trivially_move_constructible", to match what is done elsewhere in
this
On Sat, 13 Oct 2018, Jonathan Wakely wrote:
On 13/10/18 11:07 +0200, Marc Glisse wrote:
--- libstdc++-v3/include/bits/alloc_traits.h(revision 265131)
+++ libstdc++-v3/include/bits/alloc_traits.h(working copy)
@@ -233,38 +233,43 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
using type =
On 13/10/18 11:07 +0200, Marc Glisse wrote:
--- libstdc++-v3/include/bits/alloc_traits.h(revision 265131)
+++ libstdc++-v3/include/bits/alloc_traits.h(working copy)
@@ -233,38 +233,43 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
using type = decltype(__test<_Alloc>(0));
};
On Sun, 2 Sep 2018, Jonathan Wakely wrote:
On 01/09/18 21:56 +0200, Marc Glisse wrote:
On Sat, 1 Sep 2018, Marc Glisse wrote:
this patch passed bootstrap+regtest on powerpc64le-unknown-linux-gnu.
I realized afterwards that for a C++17-only feature, that's not testing
much... So I changed i
On 01/09/18 17:00 +0200, Marc Glisse wrote:
_GLIBCXX_ASAN_ANNOTATE_REINIT: I am not familiar with those
annotations. It was convenient in one function to move this annotation
after _Destroy, to reduce code duplication. For consistency, I did the
same in the whole file. As far as I understand, t
On 2 September 2018 at 23:03, Jonathan Wakely wrote:
> On 01/09/18 21:56 +0200, Marc Glisse wrote:
>>
>> On Sat, 1 Sep 2018, Marc Glisse wrote:
>>
>>> this patch passed bootstrap+regtest on powerpc64le-unknown-linux-gnu.
>>
>>
>> I realized afterwards that for a C++17-only feature, that's not test
On 01/09/18 21:56 +0200, Marc Glisse wrote:
On Sat, 1 Sep 2018, Marc Glisse wrote:
this patch passed bootstrap+regtest on powerpc64le-unknown-linux-gnu.
I realized afterwards that for a C++17-only feature, that's not
testing much... So I changed it to apply in C++14 and fixed a minor
issue.
On Sat, 1 Sep 2018, Marc Glisse wrote:
this patch passed bootstrap+regtest on powerpc64le-unknown-linux-gnu.
I realized afterwards that for a C++17-only feature, that's not testing
much... So I changed it to apply in C++14 and fixed a minor issue. There
is now a single regression:
23_conta
I forgot to attach the "diff -w" version of the patch, which may be a bit
more readable.
--
Marc GlisseIndex: include/bits/alloc_traits.h
===
--- include/bits/alloc_traits.h (revision 264027)
+++ include/bits/alloc_traits.h (working
Hello,
this patch passed bootstrap+regtest on powerpc64le-unknown-linux-gnu.
The main idea is manually performing loop fusion when we see 2 consecutive
loops where the first moves data from A to B, and the second destroys the
same elements in A.
This is beneficial because there is one loop f
17 matches
Mail list logo