Fix PR4313: IPSCCP was not setting the lattice value for the invoke instruction
authorTorok Edwin <edwintorok@gmail.com>
Tue, 20 Oct 2009 15:15:09 +0000 (15:15 +0000)
committerTorok Edwin <edwintorok@gmail.com>
Tue, 20 Oct 2009 15:15:09 +0000 (15:15 +0000)
commit2b6183d2543287e5371319d16010bf651a207b1b
treedd1c74b0dd02efc2996c9f9ae645234b399e4a73
parent174101e13a6f24f6f2737e043194f0ffae925bb3
Fix PR4313: IPSCCP was not setting the lattice value for the invoke instruction
when the invoke had multiple return values: it set the lattice value only on the
extractvalue.
This caused the invoke's lattice value to remain the default (undefined), and
later propagated to extractvalue's operand, which incorrectly introduces
undefined behavior.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84637 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/SCCP.cpp
test/Transforms/SCCP/2009-06-03-sccp-structret-undef.ll [new file with mode: 0644]