[SelectionDAG] move splat util functions up from x86 lowering
authorSanjay Patel <spatel@rotateright.com>
Mon, 22 Apr 2019 22:43:36 +0000 (22:43 +0000)
committerSanjay Patel <spatel@rotateright.com>
Mon, 22 Apr 2019 22:43:36 +0000 (22:43 +0000)
commitbf8aacb7151cf3ed569c4907c934c45244f6914f
tree3e02f7cf65f7b7fab3a8796d767203fac5fb1b99
parenta38b8c8abce0233e7ffc8d9d8de2436505877d59
[SelectionDAG] move splat util functions up from x86 lowering

This was supposed to be NFC, but the change in SDLoc
definitions causes instruction scheduling changes.

There's nothing x86-specific in this code, and it can
likely be used from DAGCombiner's simplifyVBinOp().

llvm-svn: 358930
llvm/include/llvm/CodeGen/SelectionDAG.h
llvm/include/llvm/CodeGen/SelectionDAGNodes.h
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/vector-rotate-256.ll
llvm/test/CodeGen/X86/vector-rotate-512.ll
llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
llvm/test/CodeGen/X86/vector-shift-shl-256.ll