public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libstdc++/115481] New: HAVE_* for long double math functions wrong for avrlibc (target AVR)
@ 2024-06-13 20:24 dv at vollmann dot ch
  2024-06-13 20:30 ` [Bug libstdc++/115481] " pinskia at gcc dot gnu.org
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: dv at vollmann dot ch @ 2024-06-13 20:24 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 115481
           Summary: HAVE_* for long double math functions wrong for
                    avrlibc (target AVR)
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dv at vollmann dot ch
  Target Milestone: ---

Created attachment 58420
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=58420&action=edit
possible patch

New versions of avrlibc provide long double math functions, but crossmake.m4
doesn't know about them.  The result is that libstdc++ doesn't build due to
duplicate definitions in math_stubs_long_double.cc.

The fix is the same as commit c6c428196d4c76208a0d34aacfa80b57a20f5097 for
AArch64 RTEMS, just at a different place.

This is somewhat related to
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111639.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug libstdc++/115481] HAVE_* for long double math functions wrong for avrlibc (target AVR)
  2024-06-13 20:24 [Bug libstdc++/115481] New: HAVE_* for long double math functions wrong for avrlibc (target AVR) dv at vollmann dot ch
@ 2024-06-13 20:30 ` pinskia at gcc dot gnu.org
  2024-06-14 11:02 ` dv at vollmann dot ch
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: pinskia at gcc dot gnu.org @ 2024-06-13 20:30 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Patch should be sent to gcc-patches@ (and in this case also to libstdc++@)
after reading https://gcc.gnu.org/contribute.html too.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug libstdc++/115481] HAVE_* for long double math functions wrong for avrlibc (target AVR)
  2024-06-13 20:24 [Bug libstdc++/115481] New: HAVE_* for long double math functions wrong for avrlibc (target AVR) dv at vollmann dot ch
  2024-06-13 20:30 ` [Bug libstdc++/115481] " pinskia at gcc dot gnu.org
@ 2024-06-14 11:02 ` dv at vollmann dot ch
  2024-06-14 15:37 ` redi at gcc dot gnu.org
  2024-06-15  7:57 ` gjl at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: dv at vollmann dot ch @ 2024-06-14 11:02 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from dv at vollmann dot ch ---
On 6/13/24 22:30, pinskia at gcc dot gnu.org wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115481
> 
> --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
> Patch should be sent to gcc-patches@ (and in this case also to libstdc++@)
> after reading https://gcc.gnu.org/contribute.html too.

Will do (currently testing a patch that includes the fix
for 111639).

   Detlef

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug libstdc++/115481] HAVE_* for long double math functions wrong for avrlibc (target AVR)
  2024-06-13 20:24 [Bug libstdc++/115481] New: HAVE_* for long double math functions wrong for avrlibc (target AVR) dv at vollmann dot ch
  2024-06-13 20:30 ` [Bug libstdc++/115481] " pinskia at gcc dot gnu.org
  2024-06-14 11:02 ` dv at vollmann dot ch
@ 2024-06-14 15:37 ` redi at gcc dot gnu.org
  2024-06-15  7:57 ` gjl at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: redi at gcc dot gnu.org @ 2024-06-14 15:37 UTC (permalink / raw)
  To: gcc-bugs

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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2024-06-14
             Status|UNCONFIRMED                 |NEW

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to dv from comment #2)
> Will do (currently testing a patch that includes the fix
> for 111639).

Great, thank you!

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug libstdc++/115481] HAVE_* for long double math functions wrong for avrlibc (target AVR)
  2024-06-13 20:24 [Bug libstdc++/115481] New: HAVE_* for long double math functions wrong for avrlibc (target AVR) dv at vollmann dot ch
                   ` (2 preceding siblings ...)
  2024-06-14 15:37 ` redi at gcc dot gnu.org
@ 2024-06-15  7:57 ` gjl at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: gjl at gcc dot gnu.org @ 2024-06-15  7:57 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Georg-Johann Lay <gjl at gcc dot gnu.org> ---
(In reply to dv from comment #0)
> New versions of avrlibc provide long double math functions,

In the case it matters:

1) avr-libc has long double prototypes in math.h since v2.2.

2a) When long double is a 32-bit type, then the long double functions are
implemented in avr-libc as aliases to float functions.

2b) When long double is a 64-bit type, then the long double functions are
implemented in avr-libgcc. This requires GCC v10+ and an appropriate
configuration (default is long long = 64 bit and switchable to 32 bit)
https://gcc.gnu.org/install/configure.html#avr

3) The implementations are not complete, for example log2f is missing, gamma
etc. but log2l is available when long long is 64.

4) Available multilib variants ([long] double is 32 and / or 64 bits) can be
selected at configure time, and depending on configuration, [long] double
layout can also be selected at compile time (-mdouble=64 etc.).

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-06-15  7:57 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-06-13 20:24 [Bug libstdc++/115481] New: HAVE_* for long double math functions wrong for avrlibc (target AVR) dv at vollmann dot ch
2024-06-13 20:30 ` [Bug libstdc++/115481] " pinskia at gcc dot gnu.org
2024-06-14 11:02 ` dv at vollmann dot ch
2024-06-14 15:37 ` redi at gcc dot gnu.org
2024-06-15  7:57 ` gjl at gcc dot gnu.org

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).