diff options
author | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2012-02-02 09:10:43 +0000 |
---|---|---|
committer | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2012-02-02 09:10:43 +0000 |
commit | dcabc7bca9b81c384d307cbb7d28b29451e263f2 (patch) | |
tree | e26437ef2ab73a1e5bdfb11c0d61568a15a3a7ef /lib/Target/X86/X86InstrFragmentsSIMD.td | |
parent | 1ae52f686cb04a08cb64b3fab90e7ac4c9010384 (diff) | |
download | llvm-dcabc7bca9b81c384d307cbb7d28b29451e263f2.tar.gz llvm-dcabc7bca9b81c384d307cbb7d28b29451e263f2.tar.bz2 llvm-dcabc7bca9b81c384d307cbb7d28b29451e263f2.tar.xz |
Optimization for SIGN_EXTEND operation on AVX.
Special handling was added for v4i32 -> v4i64 and v8i16 -> v8i32
extensions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149600 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86InstrFragmentsSIMD.td')
-rw-r--r-- | lib/Target/X86/X86InstrFragmentsSIMD.td | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/Target/X86/X86InstrFragmentsSIMD.td b/lib/Target/X86/X86InstrFragmentsSIMD.td index 98ed34ad73..f239509a9c 100644 --- a/lib/Target/X86/X86InstrFragmentsSIMD.td +++ b/lib/Target/X86/X86InstrFragmentsSIMD.td @@ -71,6 +71,9 @@ def X86insrtps : SDNode<"X86ISD::INSERTPS", SDTCisVT<2, v4f32>, SDTCisPtrTy<3>]>>; def X86vzmovl : SDNode<"X86ISD::VZEXT_MOVL", SDTypeProfile<1, 1, [SDTCisSameAs<0,1>]>>; +def X86vsmovl : SDNode<"X86ISD::VSEXT_MOVL", + SDTypeProfile<1, 1, [SDTCisVec<0>, SDTCisInt<1>, SDTCisInt<0>]>>; + def X86vzload : SDNode<"X86ISD::VZEXT_LOAD", SDTLoad, [SDNPHasChain, SDNPMayLoad, SDNPMemOperand]>; def X86vshldq : SDNode<"X86ISD::VSHLDQ", SDTIntShiftOp>; |