[llvm] [SelectionDAG] Handle roundeven libcall in visitCall (PR #170690)

via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 4 08:41:11 PST 2025


https://github.com/valadaptive created https://github.com/llvm/llvm-project/pull/170690

We can now lower it to its proper instruction.


>From 743320e5876615df81c0a6251ee6e5428b304ed8 Mon Sep 17 00:00:00 2001
From: valadaptive <valadaptive at protonmail.com>
Date: Thu, 4 Dec 2025 10:40:01 -0500
Subject: [PATCH] [SelectionDAG] Handle roundeven libcall in visitCall

We can now lower it to its proper instruction.
---
 llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
index 09a0673bfe1bb..6f22730c90efe 100644
--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
@@ -9710,6 +9710,12 @@ void SelectionDAGBuilder::visitCall(const CallInst &I) {
         if (visitUnaryFloatCall(I, ISD::FROUND))
           return;
         break;
+      case LibFunc_roundeven:
+      case LibFunc_roundevenf:
+      case LibFunc_roundevenl:
+        if (visitUnaryFloatCall(I, ISD::FROUNDEVEN))
+          return;
+        break;
       case LibFunc_trunc:
       case LibFunc_truncf:
       case LibFunc_truncl:



More information about the llvm-commits mailing list