aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/X86/X86InstrFragmentsSIMD.td
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2012-01-19 08:19:12 +0000
committerCraig Topper <craig.topper@gmail.com>2012-01-19 08:19:12 +0000
commit1a7700a3fac132b89fa8d577fe90c20a95a5494e (patch)
tree246b7063c10acf381af7f4b6eb1ebce1a7b5b342 /lib/Target/X86/X86InstrFragmentsSIMD.td
parentef2887d3486a1814e5a4c1c1c6acc7d815334c80 (diff)
downloadexternal_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.td4
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),