Re: [PATCH] Remove multiple defination error

Joel Sherrill <[email protected]>
Newsgroups gmane.comp.lib.newlib
Message-ID <CAF9ehCV-pa6bt8_ym5wgW--tvCKC+ZDh=R9JZ8iQ_YHKeKR0Dw@mail.gmail.com>
On Mon, Jul 13, 2020 at 12:48 AM Sebastian Huber <
[email protected]> wrote:

> On 13/07/2020 07:36, Sebastian Huber wrote:
> > On 11/07/2020 19:18, Eshan Dhawan wrote:
> >>
> >>
> >> On Sat, Jul 11, 2020 at 8:46 PM Sebastian Huber
> >> <[email protected]
> >> <mailto:[email protected]>> wrote:
> >>
> >>     On 11/07/2020 00:41, Eshan dhawan wrote:
> >>
> >>      > Signed-off-by: Eshan dhawan<[email protected]
> >>     <mailto:[email protected]>>
> >>      > ---
> >>      >   newlib/libm/machine/arm/fenv-vfp.c |  7 ++++-
> >>      >   newlib/libm/machine/arm/fenv.c     | 47
> >>     +++++++++++++++++++-----------
> >>      >   2 files changed, 36 insertions(+), 18 deletions(-)
> >>
> >>     What are the design goals of this implementation? Should it work
> with
> >>     some sort of run time VFP detection? Should it select the support
> >> using
> >>     builtin defines?
> >>
> >> It used the GCC flags to detect VPF
> >> if VPF is not selected all the symbols of vfp won't appear :)
> >>
> >>
> >>     I would use builtin defines only and then just use a single file.
> >>
> >> I tried converting into a single file but the file becomes too complex
> >> to handle and check for errors. :)
> >
> > Complexity is always a bit subjective.
> >
> > How did you test the ARM implementation? I doubt the soft-float support
> > works at all. FreeBSD ships its own soft-float library. Newlib uses the
> > one from libgcc by default. They are not compatible.
> >
> > I guess the MIPS soft-float fenv support has this issue as well.
> >
> > Having an GCC incompatible soft-float fenv support in Newlib makes no
> > sense to me. How can we fix this? Disable it completely or return some
> > run time errors?
> >
> > Maybe we should remove the ARM fenv support from Newlib until these
> > issues are fixed and a working implementation is available.
>
> I noticed that the PowerPC fenv support unconditionally assumes that a
> floating-point unit is available. Not all PowerPC processors support a
> floating-point unit and some applications may intentionally use
> soft-float. Using this code may result in an unimplemented exception if
> MSR[FP]=1, or an FP Unavailable exception if MSR[FP]=0.
>
> If this is a desirable behaviour, then we can use the same on ARM. Just
> provide the VFP implementation. If you use the stuff in other setups you
> get an exception.
>

The RISC-V would be a good model. Jim Wilson provided some default
behavior when there is no hard FPU.

--joel

>
> --
> Sebastian Huber, embedded brains GmbH
>
> Address : Dornierstr. 4, D-82178 Puchheim, Germany
> Phone   : +49 89 189 47 41-16
> Fax     : +49 89 189 47 41-09
> E-Mail  : [email protected]
> PGP     : Public key available on request.
>
> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.