[X86] Don't form masked instructions if the operation has an additional user.
authorCraig Topper <craig.topper@intel.com>
Fri, 27 Mar 2020 17:18:13 +0000 (10:18 -0700)
committerCraig Topper <craig.topper@intel.com>
Fri, 27 Mar 2020 17:44:22 +0000 (10:44 -0700)
commitcdd1cd712087377b69aee1c9f13be7cd73fb340d
tree8ae7c9f17528c9228b76df6bfb8ff9df9950bfdd
parentc6824883cc9de7e46b2417d58463f9c4e02da195
[X86] Don't form masked instructions if the operation has an additional user.

This will cause the operation to be repeated in both a mask and another masked
or unmasked form. This can a wasted of execution resources.

Differential Revision: https://reviews.llvm.org/D60940
llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
llvm/lib/Target/X86/X86InstrAVX512.td
llvm/test/CodeGen/X86/avx512-vec-cmp.ll
llvm/test/CodeGen/X86/x86-interleaved-access.ll