Fix SROA with a PHI mergig values from a same block
authorStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>
Thu, 22 Oct 2020 18:14:35 +0000 (11:14 -0700)
committerStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>
Mon, 26 Oct 2020 19:58:27 +0000 (12:58 -0700)
commit00928a1956a1618f394ffe99fc63b0d81e1f88c7
treeb63461ef5a1bbaa3325588bb9a886c5053cd677d
parentd071bba9a4477290d0b164a2d338fb22ad2d3c3d
Fix SROA with a PHI mergig values from a same block

This fixes the bug 47945. It is legal to have a PHI with values
from from the same block, but values must stay the same. In this
case it is illegal to merge different values.

Differential Revision: https://reviews.llvm.org/D89978
llvm/lib/Transforms/Scalar/SROA.cpp
llvm/test/Transforms/SROA/phi-gep.ll