[PATCH] D22644: [GVNHoist] Don't clone allocas (PR28606)

Hans Wennborg via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 21 14:22:04 PDT 2016


hans added a comment.

In https://reviews.llvm.org/D22644#491917, @sebpop wrote:

> > To be honest, I'm not entirely sure why we must clone the value because we've already checked to see that it is available at the hoist point
>
>
> Right, I think we do not need to clone the value.
>  I think we still need to clone a GEP as they are not hoisted without their ld/st.
>  As we are after the check for allOperandsAvailable on the stored value,
>  we should remove all the code cloning the stored value.


I tried to just do that, but the hoistStores test fails:

  Instruction does not dominate all uses!
    %incdec.ptr = getelementptr inbounds i16, i16* %1, i32 1
    store i16* %incdec.ptr, i16** %2, align 8

Sebastian: can you give this a shot? I probably won't get any further today.


https://reviews.llvm.org/D22644





More information about the llvm-commits mailing list