This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] Redesign jump threading profile updates
- From: Teresa Johnson <tejohnson at google dot com>
- To: Jeff Law <law at redhat dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Jan Hubicka <hubicka at ucw dot cz>, David Li <davidxl at google dot com>
- Date: Tue, 27 May 2014 07:10:56 -0700
- Subject: Re: [PATCH] Redesign jump threading profile updates
- Authentication-results: sourceware.org; auth=none
- References: <CAAe5K+XMKuBvrA2zbSdA38nq+KiezseL6z_4KayvV322VmJtZQ at mail dot gmail dot com> <534F6901 dot 7090700 at redhat dot com> <CAAe5K+UrMtD=6tQYxNYhJ1k2owMbBRFKf87d75bFgoNo9kowGQ at mail dot gmail dot com>
On Thu, Apr 17, 2014 at 6:23 AM, Teresa Johnson <email@example.com> wrote:
> On Wed, Apr 16, 2014 at 10:39 PM, Jeff Law <firstname.lastname@example.org> wrote:
>> On 03/26/14 17:44, Teresa Johnson wrote:
>>> Recently I discovered that the profile updates being performed by jump
>>> threading were incorrect in many cases, particularly in the case where
>>> the threading path contains a joiner. Some of the duplicated
>>> blocks/edges were not getting any counts, leading to incorrect
>>> function splitting and other downstream optimizations, and there were
>>> other insanities as well. After making a few attempts to fix the
>>> handling I ended up completely redesigning the profile update code,
>>> removing a few places throughout the code where it was attempting to
>>> do some updates.
>> The profile updates in that code is a mess. It's never really been looked
>> at in any systematic way, what's there is ad-hoc and usually in response to
>> someone mentioning the profile data was incorrectly updated. As we rely
>> more and more on that data the ad-hoc updating is going to cause us more and
>> more pain.
>> So any work in this space is going to be greatly appreciated.
>> I'll have to look at this in some detail. But I wanted you to know I was
>> aware of the work and it's in my queue.
> Great, thanks for the update! I realize that it is not a trivial
> change so it would take some time to get through. Hopefully it should
> address the ongoing profile fixup issues.
> Teresa Johnson | Software Engineer | email@example.com | 408-460-2413
Teresa Johnson | Software Engineer | firstname.lastname@example.org | 408-460-2413