[llvm] r215343 - In LVI(Lazy Value Info), originally value on a BB can only be caculated once,
Pete Cooper
peter_cooper at apple.com
Fri Nov 21 15:13:18 PST 2014
Thanks Hans! I was just trying to reduce it.
I’ll take a look now. Probably something i’ve done is breaking when there’s loops.
Pete
> On Nov 21, 2014, at 3:12 PM, Hans Wennborg <hans at chromium.org> wrote:
>
> On Thu, Nov 20, 2014 at 7:51 PM, Pete Cooper <peter_cooper at apple.com> wrote:
>> But something is going wrong. I'm attaching a reduction of the problem
>> I saw. With your patch applied, using "clang -O2 /tmp/a.cc", the
>> attached program goes into an infinite loop.
>>
>> Thanks! I’ll take a look.
>
> I've reduced it (at least a little..) into an IR test (attached). With
> your patch applied, run through opt like so:
>
> $ opt -correlated-propagation /tmp/reduced.ll -S
>
> Note how the definition of %i.1 changes from
>
> %i.1 = phi i32 [ %add, %for.body ], [ %i.07, %if.then ]
>
> to
>
> %i.1 = phi i32 [ 2, %for.body ], [ 1, %if.then ]
>
> which is not correct.
>
> - Hans
> <reduced.ll>
More information about the llvm-commits
mailing list