[llvm] [X86] Remove duplicate X86ISD::VPERM2X128 v32i8 patterns. NFC. (PR #219498)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 28 08:31:10 PDT 2026


https://github.com/RKSimon updated https://github.com/llvm/llvm-project/pull/219498

>From e8dd711716dc970b7af90500750b3022763b1135 Mon Sep 17 00:00:00 2001
From: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: Fri, 28 Aug 2026 16:10:00 +0100
Subject: [PATCH 1/2] [X86] Remove duplicate X86ISD::VPERM2X128 v32i8 patterns.
 NFC.

---
 llvm/lib/Target/X86/X86InstrSSE.td | 2 --
 1 file changed, 2 deletions(-)

diff --git a/llvm/lib/Target/X86/X86InstrSSE.td b/llvm/lib/Target/X86/X86InstrSSE.td
index dd8c589c41589..198cf8126e939 100644
--- a/llvm/lib/Target/X86/X86InstrSSE.td
+++ b/llvm/lib/Target/X86/X86InstrSSE.td
@@ -7373,7 +7373,6 @@ let Predicates = [HasAVX1Only] in {
   defm : vinsert_lowering<"VINSERTF128", "VPERM2F128", v8i16, v16i16, loadv8i16, loadv16i16>;
   defm : vinsert_lowering<"VINSERTF128", "VPERM2F128", v8f16, v16f16, loadv8f16, loadv16f16>;
   defm : vinsert_lowering<"VINSERTF128", "VPERM2F128", v16i8, v32i8,  loadv16i8, loadv32i8>;
-  defm : vinsert_lowering<"VINSERTF128", "VPERM2F128", v16i8, v32i8,  loadv16i8, loadv32i8>;
 }
 
 //===----------------------------------------------------------------------===//
@@ -8020,7 +8019,6 @@ let Predicates = [HasAVX2, NoVLX] in {
   defm : vinsert_lowering<"VINSERTI128", "VPERM2I128", v8i16, v16i16, loadv8i16,  loadv16i16>;
   defm : vinsert_lowering<"VINSERTI128", "VPERM2I128", v8f16, v16f16, loadv8f16,  loadv16f16>;
   defm : vinsert_lowering<"VINSERTI128", "VPERM2I128", v16i8, v32i8,  loadv16i8,  loadv32i8>;
-  defm : vinsert_lowering<"VINSERTI128", "VPERM2I128", v16i8, v32i8,  loadv16i8,  loadv32i8>;
 }
 
 let Predicates = [HasAVXNECONVERT, NoVLX] in

>From 0558a35c1536bea1b0c9b07ed8e632c53c9bd569 Mon Sep 17 00:00:00 2001
From: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: Fri, 28 Aug 2026 16:30:53 +0100
Subject: [PATCH 2/2] Another duplicate

---
 llvm/lib/Target/X86/X86InstrSSE.td | 1 -
 1 file changed, 1 deletion(-)

diff --git a/llvm/lib/Target/X86/X86InstrSSE.td b/llvm/lib/Target/X86/X86InstrSSE.td
index 198cf8126e939..17e7202527efe 100644
--- a/llvm/lib/Target/X86/X86InstrSSE.td
+++ b/llvm/lib/Target/X86/X86InstrSSE.td
@@ -7995,7 +7995,6 @@ let Predicates = [HasAVX2] in {
   defm : vperm2x128_lowering<"VPERM2I128", v16i16, loadv16i16>;
   defm : vperm2x128_lowering<"VPERM2I128", v16f16, loadv16f16>;
   defm : vperm2x128_lowering<"VPERM2I128", v32i8,  loadv32i8>;
-  defm : vperm2x128_lowering<"VPERM2I128", v32i8,  loadv32i8>;
 }
 
 //===----------------------------------------------------------------------===//



More information about the llvm-commits mailing list