search for: looppred

Displaying 6 results from an estimated 6 matches for "looppred".

Did you mean: looppre
2018 Sep 21
2
Comparing Clang and GCC: only clang stores updated value in each iteration.
Hi Philip and Eli, > I think your example may be a bit over reduced.  Unless I'm misreading > this, a starts at 1, is incremented one each iteration, and then is > tested against zero.  The only way this loop can exit is if a has > wrapped around and C++ states that signed integers are assumed to not > overflow.  We can/should be replacing the whole loop with an
2018 Sep 14
2
Generalizing load/store promotion in LICM
For doing PRE on the load, it looks like there’s only two things stopping GVN PRE from doing it: * GVN::PerformLoadPRE doesn’t hoist loads that are conditional. Probably this can be overcome with some kind of heuristic that allows it to happen in loops when the blocks where a load would have to be inserted are outside the loop. * IsFullyAvailableInBlock goes around the loop and
2018 Sep 20
3
Comparing Clang and GCC: only clang stores updated value in each iteration.
Hi, I have a benchmark (mcf) that is currently slower when compiled with clang compared to gcc 8 (~10%). It seems that a hot loop has a few differences, where one interesting one is that while clang stores an incremented value in each iteration, gcc waits and just stores the final value just once after the loop. The value is a global variable. I wonder if this is something clang does not do
2018 Sep 13
3
Generalizing load/store promotion in LICM
(minor inline additions) On 09/13/2018 01:51 AM, Chandler Carruth wrote: > Haven't had time to dig into this, but wanted to add +Alina Sbirlea > <mailto:asbirlea at google.com> to the thread as she has been working on > promotion and other aspects of LICM for a long time here. Thanks! > On Wed, Sep 12, 2018 at 11:41 PM Philip Reames > <listmail at philipreames.com
2018 Sep 18
1
Generalizing load/store promotion in LICM
On Fri, Sep 14, 2018 at 4:25 PM Philip Reames <listmail at philipreames.com> wrote: > This is going OT from the original thread, but, what the heck... > Sorry, not my intention, I was just giving another reason why getting promotion done in LICM differently would be helpful. > Alina, can you explain the challenge with implementing promotion over > MemorySSA? On the surface, it
2018 Sep 12
3
Generalizing load/store promotion in LICM
I'm thinking about making some semi radical changes to load store promotion works in LICM, and figured it would be a good idea to get buy in before I actually started writing code.  :) TLDR: legality of sinking stores to exits is hard, can we separate load handling into a super aggressive form of PRE, and use predicated stores to avoid solving legality question? Background We've