[llvm] [X86] PromoteMaskArithmetic - use similar code for LHS/RHS trunc pattern. NFC. (PR #157426)
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 8 04:12:26 PDT 2025
https://github.com/RKSimon created https://github.com/llvm/llvm-project/pull/157426
Make it more obvious that LHS/RHS truncation patterns are the same.
Noticed while working on #157425
>From 0654e5e287882359c2992f4c16023144fec87346 Mon Sep 17 00:00:00 2001
From: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: Mon, 8 Sep 2025 12:11:53 +0100
Subject: [PATCH] [X86] PromoteMaskArithmetic - use similar code for LHS/RHS
trunc pattern. NFC.
Make it more obvious that LHS/RHS truncation patterns are the same.
Noticed while working on #157425
---
llvm/lib/Target/X86/X86ISelLowering.cpp | 14 ++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index cdc97faf394ca..15b59afabc61f 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -50957,15 +50957,13 @@ static SDValue PromoteMaskArithmetic(SDValue N, const SDLoc &DL, EVT VT,
if (SDValue NN0 = PromoteMaskArithmetic(N0, DL, VT, DAG, Depth + 1))
N0 = NN0;
else {
- // The left side has to be a trunc.
- if (N0.getOpcode() != ISD::TRUNCATE)
- return SDValue();
-
- // The type of the truncated inputs.
- if (N0.getOperand(0).getValueType() != VT)
+ // The left side has to be a 'trunc'.
+ bool LHSTrunc = N0.getOpcode() == ISD::TRUNCATE &&
+ N0.getOperand(0).getValueType() == VT;
+ if (LHSTrunc)
+ N0 = N0.getOperand(0);
+ else
return SDValue();
-
- N0 = N0.getOperand(0);
}
if (SDValue NN1 = PromoteMaskArithmetic(N1, DL, VT, DAG, Depth + 1))
More information about the llvm-commits
mailing list