[llvm] r313612 - [X86] Remove some unnecessary patterns for truncate with X86ISD::SELECT and undef preserved source.

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 18 22:30:25 PDT 2017


Author: ctopper
Date: Mon Sep 18 22:30:24 2017
New Revision: 313612

URL: http://llvm.org/viewvc/llvm-project?rev=313612&view=rev
Log:
[X86] Remove some unnecessary patterns for truncate with X86ISD::SELECT and undef preserved source.

We canonicalize undef preserved sources to zero during intrinsic lowering.

Modified:
    llvm/trunk/lib/Target/X86/X86InstrAVX512.td

Modified: llvm/trunk/lib/Target/X86/X86InstrAVX512.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86InstrAVX512.td?rev=313612&r1=313611&r2=313612&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86InstrAVX512.td (original)
+++ llvm/trunk/lib/Target/X86/X86InstrAVX512.td Mon Sep 18 22:30:24 2017
@@ -8086,12 +8086,6 @@ multiclass avx512_trunc_common<bits<8> o
   // for intrinsic patter match
   def : Pat<(DestInfo.VT (X86select DestInfo.KRCWM:$mask,
                            (DestInfo.VT (OpNode (SrcInfo.VT SrcInfo.RC:$src1))),
-                           undef)),
-            (!cast<Instruction>(NAME#SrcInfo.ZSuffix##rrkz) DestInfo.KRCWM:$mask ,
-                                      SrcInfo.RC:$src1)>;
-
-  def : Pat<(DestInfo.VT (X86select DestInfo.KRCWM:$mask,
-                           (DestInfo.VT (OpNode (SrcInfo.VT SrcInfo.RC:$src1))),
                            DestInfo.ImmAllZerosV)),
             (!cast<Instruction>(NAME#SrcInfo.ZSuffix##rrkz) DestInfo.KRCWM:$mask ,
                                       SrcInfo.RC:$src1)>;




More information about the llvm-commits mailing list