On Wed, Nov 23, 2016 at 7:33 PM, Jeff Law <l...@redhat.com> wrote:
> On 11/23/2016 09:13 AM, Martin Liška wrote:
>>
>> Hello.
>>
>> As described in the PR, the patch fixes profiled bootstrap on
>> x86_64-linux-gnu.
>>
>> Patch can bootstrap on ppc64le-redhat-linux and survives regression tests.
>> And
>> profiled bootstrap on x86_64-linux-gnu finishes successfully.
>>
>> Ready to be installed?
>> Martin
>>
>>
>> 0001-Fix-PR-bootstrap-78493.patch
>>
>>
>> From 8b7cd9a83cd14f7a15f39e105ccd78e143ec84f2 Mon Sep 17 00:00:00 2001
>> From: marxin <mli...@suse.cz>
>> Date: Wed, 23 Nov 2016 14:08:52 +0100
>> Subject: [PATCH] Fix PR bootstrap/78493
>>
>> gcc/ChangeLog:
>>
>> 2016-11-23  Martin Liska  <mli...@suse.cz>
>>
>>         PR bootstrap/78493
>>         * vec.h (~auto_vec): Do va_heap::release just if
>>         this->m_vec == &m_auto.  That would help compiler not to
>>         trigger -Werror=free-nonheap-object.
>
> It's probably the case that the profiling information inhibited a jump
> thread optimization (path was considered cold and thus duplication/isolation
> not profitable) which left the dead path in the IL.
>
> I don't like that we're essentially inlining the ::release method.  At the
> least we should have a pair of comments.  In the destructor we should
> indicate why we've inlined the release method.  In the release method we
> should make a note that if the release method is changed that a suitable
> change to the auto_vec destructor may be needed.

I don't like the patch either.

> Alternately, given all the problems we have with this kind of problem, we
> should seriously consider throttling back what we consider an error during a
> profiled bootstrap.  This kind of stuff is a maintenance nightmare with
> minimal value.

I think we've always communicated that all non-standard bootstrap configs
need -Wdisable-werror.

Richard.

> jeff
>

Reply via email to