aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Evaluate/intrinsics.cpp
diff options
context:
space:
mode:
authorShao-Ce SUN <sunshaoce@iscas.ac.cn>2023-06-06 00:55:59 +0800
committerShao-Ce SUN <sunshaoce@iscas.ac.cn>2023-06-06 02:01:36 +0800
commit68f55d78e3cd842f1bbdf9a112da7d86fd3a8d36 (patch)
treece0822f8205fca31f51573ea2921fa232f8aa6d5 /flang/lib/Evaluate/intrinsics.cpp
parent65ceb42d636ea758a2c9ecdfb7473d528983a1e2 (diff)
downloadllvm-68f55d78e3cd842f1bbdf9a112da7d86fd3a8d36.zip
llvm-68f55d78e3cd842f1bbdf9a112da7d86fd3a8d36.tar.gz
llvm-68f55d78e3cd842f1bbdf9a112da7d86fd3a8d36.tar.bz2
[Flang] Map `ieee_fma` intrinsic to `llvm.fma`
Map `ieee_fma` intrinsic to LLVM IR as `llvm.fma`. Reviewed By: klausler Differential Revision: https://reviews.llvm.org/D151872
Diffstat (limited to 'flang/lib/Evaluate/intrinsics.cpp')
-rw-r--r--flang/lib/Evaluate/intrinsics.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/flang/lib/Evaluate/intrinsics.cpp b/flang/lib/Evaluate/intrinsics.cpp
index 5eba0fd..04cc7b3 100644
--- a/flang/lib/Evaluate/intrinsics.cpp
+++ b/flang/lib/Evaluate/intrinsics.cpp
@@ -880,6 +880,8 @@ static const IntrinsicInterface genericIntrinsicFunction[]{
{"back", AnyLogical, Rank::elemental, Optionality::optional},
DefaultingKIND},
KINDInt},
+ {"__builtin_fma", {{"f1", SameReal}, {"f2", SameReal}, {"f3", SameReal}},
+ SameReal},
{"__builtin_ieee_is_nan", {{"a", AnyFloating}}, DefaultLogical},
{"__builtin_ieee_is_negative", {{"a", AnyFloating}}, DefaultLogical},
{"__builtin_ieee_is_normal", {{"a", AnyFloating}}, DefaultLogical},