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