[llvm] 5228a55 - [X86] Fix a couple copy mistakes in v4i1 or/and/xor isel patterns.

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 20 15:14:37 PST 2020


Author: Craig Topper
Date: 2020-02-20T15:13:45-08:00
New Revision: 5228a5544b2c887dab3aede7baf818ca4244141e

URL: https://github.com/llvm/llvm-project/commit/5228a5544b2c887dab3aede7baf818ca4244141e
DIFF: https://github.com/llvm/llvm-project/commit/5228a5544b2c887dab3aede7baf818ca4244141e.diff

LOG: [X86] Fix a couple copy mistakes in v4i1 or/and/xor isel patterns.

VK1 was being used as the output of the copy to regclass, but it
should be VK2/VK4. Shouldn't matter in practice though since
VK1/VK2/VK4/VK8/VK16 are all identicaly and just have different VTs.

Added: 
    

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

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/X86/X86InstrAVX512.td b/llvm/lib/Target/X86/X86InstrAVX512.td
index 1cc7f645ef5f..de3fe20aedcf 100644
--- a/llvm/lib/Target/X86/X86InstrAVX512.td
+++ b/llvm/lib/Target/X86/X86InstrAVX512.td
@@ -3071,11 +3071,11 @@ multiclass avx512_binop_pat<SDPatternOperator VOpNode, SDPatternOperator OpNode,
   def : Pat<(VOpNode VK2:$src1, VK2:$src2),
         (COPY_TO_REGCLASS (Inst
                            (COPY_TO_REGCLASS VK2:$src1, VK16),
-                           (COPY_TO_REGCLASS VK2:$src2, VK16)), VK1)>;
+                           (COPY_TO_REGCLASS VK2:$src2, VK16)), VK2)>;
   def : Pat<(VOpNode VK4:$src1, VK4:$src2),
         (COPY_TO_REGCLASS (Inst
                            (COPY_TO_REGCLASS VK4:$src1, VK16),
-                           (COPY_TO_REGCLASS VK4:$src2, VK16)), VK1)>;
+                           (COPY_TO_REGCLASS VK4:$src2, VK16)), VK4)>;
 }
 
 defm : avx512_binop_pat<and,   and,  KANDWrr>;


        


More information about the llvm-commits mailing list