public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "jakub at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug libfortran/94694] [10 Regression][libgfortran] libgfortran does not compile on bare-metal aarch64-none-elf (newlib)
Date: Tue, 21 Apr 2020 16:04:29 +0000	[thread overview]
Message-ID: <bug-94694-4-OEOSv4I723@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-94694-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94694

--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So, I meant something like:
--- libgfortran/configure.ac.jj 2020-01-24 22:34:36.340641225 +0100
+++ libgfortran/configure.ac    2020-04-21 18:03:02.494598615 +0200
@@ -392,6 +392,9 @@ GCC_CHECK_MATH_FUNC([cabsl])
 GCC_CHECK_MATH_FUNC([floorf])
 GCC_CHECK_MATH_FUNC([floor])
 GCC_CHECK_MATH_FUNC([floorl])
+GCC_CHECK_MATH_FUNC([fmaf])
+GCC_CHECK_MATH_FUNC([fma])
+GCC_CHECK_MATH_FUNC([fmal])
 GCC_CHECK_MATH_FUNC([fmodf])
 GCC_CHECK_MATH_FUNC([fmod])
 GCC_CHECK_MATH_FUNC([fmodl])
--- libgfortran/intrinsics/c99_functions.c.jj   2020-01-12 11:54:38.736378361
+0100
+++ libgfortran/intrinsics/c99_functions.c      2020-04-21 18:00:54.368527655
+0200
@@ -229,6 +229,17 @@ ceilf (float x)
 }
 #endif

+#if !defined(HAVE_COPYSIGN) && HAVE_INLINE_BUILTIN_COPYSIGN
+#define HAVE_COPYSIGN 1
+double copysign (double x, double y);
+
+double
+copysign (double x, double y)
+{
+  return __builtin_copysign (x, y);
+}
+#endif
+
 #ifndef HAVE_COPYSIGNF
 #define HAVE_COPYSIGNF 1
 float copysignf (float x, float y);
@@ -2112,3 +2123,36 @@ lgammaf (float x)
   return (float) lgamma ((double) x);
 }
 #endif
+
+#ifndef HAVE_FMA
+#define HAVE_FMA 1
+double fma (double, double, double);
+
+double
+fma (double x, double y, double z)
+{
+  return x * y + z;
+}
+#endif
+
+#ifndef HAVE_FMAF
+#define HAVE_FMAF 1
+float fmaf (float, float, float);
+
+float
+fmaf (float x, float y, float z)
+{
+  return fma (x, y, z);
+}
+#endif
+
+#ifndef HAVE_FMAL
+#define HAVE_FMAL 1
+long double fmaf (long double, long double, long double);
+
+long double
+fmaf (long double x, long double y, long double z)
+{
+  return x * y + z;
+}
+#endif

except that the test in configure for HAVE_INLINE_BUILTIN_COPYSIGN still needs
to be written.

  parent reply	other threads:[~2020-04-21 16:04 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-21 14:35 [Bug libfortran/94694] New: [libgfortran] " akrl at gcc dot gnu.org
2020-04-21 14:39 ` [Bug libfortran/94694] " akrl at gcc dot gnu.org
2020-04-21 14:40 ` [Bug libfortran/94694] [10 Regression][libgfortran] " ktkachov at gcc dot gnu.org
2020-04-21 15:05 ` rguenth at gcc dot gnu.org
2020-04-21 15:07 ` rguenth at gcc dot gnu.org
2020-04-21 15:32 ` jakub at gcc dot gnu.org
2020-04-21 15:40 ` rearnsha at gcc dot gnu.org
2020-04-21 15:55 ` rguenth at gcc dot gnu.org
2020-04-21 16:04 ` jakub at gcc dot gnu.org [this message]
2020-04-21 16:25 ` foreese at gcc dot gnu.org
2020-04-21 16:31 ` jakub at gcc dot gnu.org
2020-04-21 16:40   ` Andrea Corallo
2020-04-21 16:40 ` andrea.corallo at arm dot com
2020-04-21 16:45 ` jakub at gcc dot gnu.org
2020-04-21 17:04 ` foreese at gcc dot gnu.org
2020-04-21 17:13 ` jakub at gcc dot gnu.org
2020-04-21 17:14 ` jakub at gcc dot gnu.org
2020-04-21 17:23 ` jakub at gcc dot gnu.org
2020-04-21 17:37 ` rguenther at suse dot de
2020-04-21 17:42 ` jakub at gcc dot gnu.org
2020-04-21 18:10 ` foreese at gcc dot gnu.org
2020-04-21 19:06 ` jakub at gcc dot gnu.org
2020-04-21 19:40 ` jakub at gcc dot gnu.org
2020-04-21 21:03 ` foreese at gcc dot gnu.org
2020-04-21 22:43 ` jakub at gcc dot gnu.org
2020-04-22 11:21 ` andrea.corallo at arm dot com
2020-04-22 14:12 ` jakub at gcc dot gnu.org
2020-04-22 14:17 ` foreese at gcc dot gnu.org
2020-04-22 14:29 ` foreese at gcc dot gnu.org
2020-04-22 14:52 ` jakub at gcc dot gnu.org
2020-04-22 19:34 ` cvs-commit at gcc dot gnu.org
2020-04-23 14:12 ` cvs-commit at gcc dot gnu.org
2020-04-23 14:38 ` jakub at gcc dot gnu.org
2020-04-23 15:17 ` andrea.corallo at arm dot com

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-94694-4-OEOSv4I723@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).