Scalarize select vector arguments when extracted.
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Mon, 4 Nov 2013 20:36:06 +0000 (20:36 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Mon, 4 Nov 2013 20:36:06 +0000 (20:36 +0000)
commiteba6d384489be4e56718186aa7ed7e484df24613
tree15236fcdfdc1c73f6028c0838d762a7054a9d34e
parentda666ab229c0987090c4f3d60ce7f46df8c50360
Scalarize select vector arguments when extracted.

When the elements are extracted from a select on vectors
or a vector select, do the select on the extracted scalars
from the input if there is only one use.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194013 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineVectorOps.cpp
test/Transforms/InstCombine/select-extractelement.ll [new file with mode: 0644]
test/Transforms/LoopVectorize/minmax_reduction.ll