Fix an issue where GVN was performing the return slot optimization when it was
authorOwen Anderson <resistor@mac.com>
Mon, 25 Feb 2008 04:08:09 +0000 (04:08 +0000)
committerOwen Anderson <resistor@mac.com>
Mon, 25 Feb 2008 04:08:09 +0000 (04:08 +0000)
commitc0808a7e1d91fb5362ba52101bf8ebcebcb7bfb6
treec33895312f9bf9d536b622e6fbbd35bd865b1d3d
parentb9a905781ee8ee49660c6733530d42dece94d12a
Fix an issue where GVN was performing the return slot optimization when it was
not safe.  This is fixed by more aggressively checking that the return slot is
not used elsewhere in the function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47544 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/GVN.cpp
test/Transforms/GVN/2008-02-24-MultipleUseofSRet.ll [new file with mode: 0644]