[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