[llvm] [X86] Add missing isel pattern for VCVTTPD2UDQSZ128rm. Remove duplicate pattern. (PR #162700)
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 9 09:57:46 PDT 2025
https://github.com/topperc created https://github.com/llvm/llvm-project/pull/162700
Addresses my comment here https://github.com/llvm/llvm-project/pull/162036#issuecomment-3386628215
I didn't look into testing. I assume foldMemoryOperand is making up for this if we have existing tests.
>From b032d53eda981d1461c6c91349a4957fd07638a7 Mon Sep 17 00:00:00 2001
From: Craig Topper <craig.topper at sifive.com>
Date: Thu, 9 Oct 2025 09:55:42 -0700
Subject: [PATCH] [X86] Add missing isel pattern for VCVTTPD2UDQSZ128rm. Remove
duplicate pattern.
---
llvm/lib/Target/X86/X86InstrAVX10.td | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/llvm/lib/Target/X86/X86InstrAVX10.td b/llvm/lib/Target/X86/X86InstrAVX10.td
index 764ff998bb562..4b3ddbdedbdee 100644
--- a/llvm/lib/Target/X86/X86InstrAVX10.td
+++ b/llvm/lib/Target/X86/X86InstrAVX10.td
@@ -592,10 +592,10 @@ def : Pat<(X86mcvttp2sis (v2f64 (X86VBroadcastld64 addr:$src)),
(VCVTTPD2DQSZ128rmbkz VK2WM:$mask, addr:$src)>;
// Patterns VCVTTPD2UDQSZ128
-def : Pat<(v4i32 (X86cvttp2uis (v2f64 (X86VBroadcastld64 addr:$src)))),
- (VCVTTPD2UDQSZ128rmb addr:$src)>;
def : Pat<(v4i32 (X86cvttp2uis (v2f64 VR128X:$src))),
(VCVTTPD2UDQSZ128rr VR128X:$src)>;
+def : Pat<(v4i32 (X86cvttp2uis (loadv2f64 addr:$src))),
+ (VCVTTPD2UDQSZ128rm addr:$src)>;
def : Pat<(v4i32 (X86cvttp2uis (v2f64 (X86VBroadcastld64 addr:$src)))),
(VCVTTPD2UDQSZ128rmb addr:$src)>;
def : Pat<(X86mcvttp2uis (v2f64 VR128X:$src), (v4i32 VR128X:$src0),
More information about the llvm-commits
mailing list