[llvm] [X86] LowerFP_EXTEND - X86ISD::CVTPH2PS doesn't take a rounding mode (PR #185659)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 10 07:57:32 PDT 2026


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

>From 11d1ee17447cd8f3978a5c46502ba10a4e2af3d4 Mon Sep 17 00:00:00 2001
From: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: Tue, 10 Mar 2026 14:28:26 +0000
Subject: [PATCH] [X86] LowerFP_EXTEND - X86ISD::CVTPH2PS doesn't take a
 rounding mode

Fixes verificatoin failure in X86SelectionDAGInfo::verifyTargetNode (#185649)
---
 llvm/lib/Target/X86/X86ISelLowering.cpp     | 3 +--
 llvm/lib/Target/X86/X86SelectionDAGInfo.cpp | 1 -
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index fdf54790bed61..5cc2252fdc4f1 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -22928,8 +22928,7 @@ SDValue X86TargetLowering::LowerFP_EXTEND(SDValue Op, SelectionDAG &DAG) const {
                        DAG.getUNDEF(MVT::v4i32), In,
                        DAG.getVectorIdxConstant(0, DL));
       In = DAG.getBitcast(MVT::v8i16, In);
-      Res = DAG.getNode(X86ISD::CVTPH2PS, DL, MVT::v4f32, In,
-                        DAG.getTargetConstant(4, DL, MVT::i32));
+      Res = DAG.getNode(X86ISD::CVTPH2PS, DL, MVT::v4f32, In);
     }
     Res = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, MVT::f32, Res,
                       DAG.getVectorIdxConstant(0, DL));
diff --git a/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp b/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
index 4444645375a51..f5e422cbd0f89 100644
--- a/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
+++ b/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
@@ -76,7 +76,6 @@ void X86SelectionDAGInfo::verifyTargetNode(const SelectionDAG &DAG,
   case X86ISD::VTRUNCSTORES:
   case X86ISD::FSETCCM_SAE:
     // invalid number of operands; expected 3, got 4
-  case X86ISD::CVTPH2PS:
   case X86ISD::CVTTP2SI_SAE:
   case X86ISD::CVTTP2UI_SAE:
   case X86ISD::CVTTP2IBS_SAE:



More information about the llvm-commits mailing list