diff options
author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2011-07-21 01:55:39 +0000 |
---|---|---|
committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2011-07-21 01:55:39 +0000 |
commit | 0e87805074129e37e96eb67f822ae19e26d00441 (patch) | |
tree | a2f7631decfb55f2948e9b472cb413fb149ba4c1 | |
parent | df0e03ceb86ea19f092d7334a3cc816c1582ade7 (diff) |
Add aditional patterns for vextractf128 instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135660 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/X86/X86InstrSSE.td | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/Target/X86/X86InstrSSE.td b/lib/Target/X86/X86InstrSSE.td index cd3b66d70f..ae26a80fe2 100644 --- a/lib/Target/X86/X86InstrSSE.td +++ b/lib/Target/X86/X86InstrSSE.td @@ -5390,6 +5390,14 @@ def : Pat<(vextractf128_extract:$ext VR256:$src1, (i32 imm)), (v2i64 (VEXTRACTF128rr (v4i64 VR256:$src1), (EXTRACT_get_vextractf128_imm VR128:$ext)))>; +def : Pat<(vextractf128_extract:$ext VR256:$src1, (i32 imm)), + (v8i16 (VEXTRACTF128rr + (v16i16 VR256:$src1), + (EXTRACT_get_vextractf128_imm VR128:$ext)))>; +def : Pat<(vextractf128_extract:$ext VR256:$src1, (i32 imm)), + (v16i8 (VEXTRACTF128rr + (v32i8 VR256:$src1), + (EXTRACT_get_vextractf128_imm VR128:$ext)))>; //===----------------------------------------------------------------------===// // VMASKMOV - Conditional SIMD Packed Loads and Stores |