[X86][SSE] Split IsSplatValue into GetSplatValue and IsSplatVector
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sun, 18 Nov 2018 17:15:06 +0000 (17:15 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sun, 18 Nov 2018 17:15:06 +0000 (17:15 +0000)
commit50828c75d07548b240e71c330c195722112ae827
tree237b116fab1340c86d791ad26bd218d7143bfc80
parentbc23408fe5978013e36ea4e3beb71ad480bee913
[X86][SSE] Split IsSplatValue into GetSplatValue and IsSplatVector

Refactor towards making this recursive (necessary for PR38243 rotation splat detection).
IsSplatVector returns the original vector source of the splat and the splat index.
GetSplatValue returns the scalar splatted value as an extraction from IsSplatVector.

llvm-svn: 347168
llvm/lib/Target/X86/X86ISelLowering.cpp