[clang] [llvm] [ARM] enable FENV_ACCESS pragma support for hard-float targets (PR #137101)

via cfe-commits cfe-commits at lists.llvm.org
Wed Aug 13 22:49:11 PDT 2025


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff HEAD~1 HEAD --extensions cpp,c -- clang/lib/Basic/Targets/ARM.cpp clang/test/Parser/pragma-fp-warn.c llvm/lib/Target/ARM/ARMISelLowering.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/llvm/lib/Target/ARM/ARMISelLowering.cpp b/llvm/lib/Target/ARM/ARMISelLowering.cpp
index c91d040fb..8d7d8a0a2 100644
--- a/llvm/lib/Target/ARM/ARMISelLowering.cpp
+++ b/llvm/lib/Target/ARM/ARMISelLowering.cpp
@@ -1506,22 +1506,22 @@ ARMTargetLowering::ARMTargetLowering(const TargetMachine &TM_,
 
   // FP16 often need to be promoted to call lib functions
   if (Subtarget->hasFullFP16()) {
-    for (auto Op : {ISD::FREM,           ISD::FSIN,             ISD::FCOS,           
-                    ISD::FTAN,           ISD::FSINCOS,          ISD::FPOWI,
-                    ISD::FPOW,           ISD::FEXP,             ISD::FEXP2,
-                    ISD::FEXP10,         ISD::FLOG,             ISD::FLOG10,
-                    ISD::FLOG2,          ISD::STRICT_FREM,      ISD::STRICT_FSIN,
-                    ISD::STRICT_FCOS,    ISD::STRICT_FTAN,      ISD::STRICT_FPOWI,
-                    ISD::STRICT_FPOW,    ISD::STRICT_FEXP,      ISD::STRICT_FEXP2,
-                    ISD::STRICT_FLOG,    ISD::STRICT_FLOG10,    ISD::STRICT_FLOG2}) {
-        setOperationAction(Op, MVT::f16, Promote);
-    }
-  
-    for (auto Op : {ISD::FROUND,         ISD::FROUNDEVEN,        ISD::FTRUNC,
-                    ISD::FNEARBYINT,     ISD::FRINT,             ISD::FFLOOR, 
-                    ISD::FCEIL,          ISD::STRICT_FROUND,     ISD::STRICT_FROUNDEVEN,
-                    ISD::STRICT_FTRUNC,  ISD::STRICT_FNEARBYINT, ISD::STRICT_FRINT, 
-                    ISD::STRICT_FFLOOR,  ISD::STRICT_FCEIL}) {
+    for (auto Op : {ISD::FREM,        ISD::FSIN,          ISD::FCOS,
+                    ISD::FTAN,        ISD::FSINCOS,       ISD::FPOWI,
+                    ISD::FPOW,        ISD::FEXP,          ISD::FEXP2,
+                    ISD::FEXP10,      ISD::FLOG,          ISD::FLOG10,
+                    ISD::FLOG2,       ISD::STRICT_FREM,   ISD::STRICT_FSIN,
+                    ISD::STRICT_FCOS, ISD::STRICT_FTAN,   ISD::STRICT_FPOWI,
+                    ISD::STRICT_FPOW, ISD::STRICT_FEXP,   ISD::STRICT_FEXP2,
+                    ISD::STRICT_FLOG, ISD::STRICT_FLOG10, ISD::STRICT_FLOG2}) {
+      setOperationAction(Op, MVT::f16, Promote);
+    }
+
+    for (auto Op :
+         {ISD::FROUND, ISD::FROUNDEVEN, ISD::FTRUNC, ISD::FNEARBYINT,
+          ISD::FRINT, ISD::FFLOOR, ISD::FCEIL, ISD::STRICT_FROUND,
+          ISD::STRICT_FROUNDEVEN, ISD::STRICT_FTRUNC, ISD::STRICT_FNEARBYINT,
+          ISD::STRICT_FRINT, ISD::STRICT_FFLOOR, ISD::STRICT_FCEIL}) {
       setOperationAction(Op, MVT::f16, Legal);
     }
 

``````````

</details>


https://github.com/llvm/llvm-project/pull/137101


More information about the cfe-commits mailing list