diff options
author | Craig Topper <craig.topper@gmail.com> | 2012-01-19 08:19:12 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2012-01-19 08:19:12 +0000 |
commit | 1a7700a3fac132b89fa8d577fe90c20a95a5494e (patch) | |
tree | 246b7063c10acf381af7f4b6eb1ebce1a7b5b342 /lib/Target/X86/X86InstrFragmentsSIMD.td | |
parent | ef2887d3486a1814e5a4c1c1c6acc7d815334c80 (diff) | |
download | external_llvm-1a7700a3fac132b89fa8d577fe90c20a95a5494e.zip external_llvm-1a7700a3fac132b89fa8d577fe90c20a95a5494e.tar.gz external_llvm-1a7700a3fac132b89fa8d577fe90c20a95a5494e.tar.bz2 |
Merge 128-bit and 256-bit SHUFPS/SHUFPD handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148466 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86InstrFragmentsSIMD.td')
-rw-r--r-- | lib/Target/X86/X86InstrFragmentsSIMD.td | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Target/X86/X86InstrFragmentsSIMD.td b/lib/Target/X86/X86InstrFragmentsSIMD.td index 6f2db28..6514694 100644 --- a/lib/Target/X86/X86InstrFragmentsSIMD.td +++ b/lib/Target/X86/X86InstrFragmentsSIMD.td @@ -330,7 +330,7 @@ def BYTE_imm : SDNodeXForm<imm, [{ // SHUFFLE_get_shuf_imm xform function: convert vector_shuffle mask to PSHUF*, // SHUFP* etc. imm. def SHUFFLE_get_shuf_imm : SDNodeXForm<vector_shuffle, [{ - return getI8Imm(X86::getShuffleSHUFImmediate(N)); + return getI8Imm(X86::getShuffleSHUFImmediate(cast<ShuffleVectorSDNode>(N))); }]>; // SHUFFLE_get_pshufhw_imm xform function: convert vector_shuffle mask to @@ -410,7 +410,7 @@ def pshufd : PatFrag<(ops node:$lhs, node:$rhs), def shufp : PatFrag<(ops node:$lhs, node:$rhs), (vector_shuffle node:$lhs, node:$rhs), [{ - return X86::isSHUFPMask(cast<ShuffleVectorSDNode>(N)); + return X86::isSHUFPMask(cast<ShuffleVectorSDNode>(N), Subtarget->hasAVX()); }], SHUFFLE_get_shuf_imm>; def pshufhw : PatFrag<(ops node:$lhs, node:$rhs), |