summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>2011-07-21 01:55:36 +0000
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>2011-07-21 01:55:36 +0000
commit2389881b69a4bf935b6a2c0797626b7ca056a5f6 (patch)
treee467f40a7bb1e4425389f0c0f4508a79860a8f7a
parent0a57b22588526fdf70b6e59252d20f26cab9233f (diff)
downloadbcm5719-llvm-2389881b69a4bf935b6a2c0797626b7ca056a5f6.tar.gz
bcm5719-llvm-2389881b69a4bf935b6a2c0797626b7ca056a5f6.zip
Add aditional patterns for vinsertf128 instruction
llvm-svn: 135659
-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 a5a1a72071b..cd3b66d70fd 100644
--- a/llvm/lib/Target/X86/X86InstrSSE.td
+++ b/llvm/lib/Target/X86/X86InstrSSE.td
@@ -5346,6 +5346,14 @@ def : Pat<(vinsertf128_insert:$ins (v4i64 VR256:$src1), (v2i64 VR128:$src2),
(i32 imm)),
(VINSERTF128rr VR256:$src1, VR128:$src2,
(INSERT_get_vinsertf128_imm VR256:$ins))>;
+def : Pat<(vinsertf128_insert:$ins (v32i8 VR256:$src1), (v16i8 VR128:$src2),
+ (i32 imm)),
+ (VINSERTF128rr VR256:$src1, VR128:$src2,
+ (INSERT_get_vinsertf128_imm VR256:$ins))>;
+def : Pat<(vinsertf128_insert:$ins (v16i16 VR256:$src1), (v8i16 VR128:$src2),
+ (i32 imm)),
+ (VINSERTF128rr VR256:$src1, VR128:$src2,
+ (INSERT_get_vinsertf128_imm VR256:$ins))>;
//===----------------------------------------------------------------------===//
// VEXTRACTF128 - Extract packed floating-point values
OpenPOWER on IntegriCloud