From 8530851d30c007e93251940202bb8be32847139e Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Sat, 7 Jan 2017 22:20:26 +0000 Subject: [PATCH] [AVX-512] Remove patterns from masked broadcast versions of BLENDM instructions. All but (v2f64 broadcast f64) are handled with VBROADCAST instructions. The v2f64 version can be handled with VMOVDDUP. We may want to consider converting to BLENDM instructions in the two address instruction pass if its beneficial to register allocation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@291369 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86InstrAVX512.td | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/lib/Target/X86/X86InstrAVX512.td b/lib/Target/X86/X86InstrAVX512.td index c8eebc1b88c..1e894025c2d 100644 --- a/lib/Target/X86/X86InstrAVX512.td +++ b/lib/Target/X86/X86InstrAVX512.td @@ -1529,24 +1529,21 @@ multiclass avx512_blendmask opc, string OpcodeStr, X86VectorVTInfo _> { } multiclass avx512_blendmask_rmb opc, string OpcodeStr, X86VectorVTInfo _> { + let mayLoad = 1, hasSideEffects = 0 in { def rmbk : AVX5128I, - EVEX_4V, EVEX_K, EVEX_B, EVEX_CD8<_.EltSize, CD8VF>; + []>, EVEX_4V, EVEX_K, EVEX_B, EVEX_CD8<_.EltSize, CD8VF>; - let mayLoad = 1, hasSideEffects = 0 in def rmb : AVX5128I, EVEX_4V, EVEX_B, EVEX_CD8<_.EltSize, CD8VF>; - + } } multiclass blendmask_dq opc, string OpcodeStr, -- 2.50.1