summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>2011-07-21 01:55:39 +0000
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>2011-07-21 01:55:39 +0000
commit18a8d25b62edc4992a0ab60c4290951e5efdd3db (patch)
tree63fdb7141d094c97062d3054448858cbdbb8697d
parent2389881b69a4bf935b6a2c0797626b7ca056a5f6 (diff)
downloadbcm5719-llvm-18a8d25b62edc4992a0ab60c4290951e5efdd3db.tar.gz
bcm5719-llvm-18a8d25b62edc4992a0ab60c4290951e5efdd3db.zip
Add aditional patterns for vextractf128 instruction
llvm-svn: 135660
-rw-r--r--llvm/lib/Target/X86/X86InstrSSE.td8
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86InstrSSE.td b/llvm/lib/Target/X86/X86InstrSSE.td
index cd3b66d70fd..ae26a80fe2d 100644
--- a/llvm/lib/Target/X86/X86InstrSSE.td
+++ b/llvm/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
OpenPOWER on IntegriCloud