* libm support for ARMv7 and VSQRT?
@ 2017-03-20 6:53 Sebastian Huber
2017-03-20 13:31 ` Richard Earnshaw (lists)
0 siblings, 1 reply; 4+ messages in thread
From: Sebastian Huber @ 2017-03-20 6:53 UTC (permalink / raw)
To: newlib; +Cc: Richard Earnshaw
Hello,
there is some ARM-specific libm support for ARMv8:
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=tree;f=newlib/libm/machine/arm;h=5457f11619b2d67e8f56f352afb404c06a12c2bb;hb=HEAD
The VFPv2+ supports a VSQRT instruction. Would it make sense to use it
for the sqrt() implementation, similar to
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=blob;f=newlib/libm/machine/aarch64/e_sqrt.c;h=e4b7554ac1811bf04f726da198b913c0c30595ca;hb=HEAD
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=blob;f=newlib/libm/machine/aarch64/ef_sqrt.c;h=19fec952517769ad3851efef3b11dc6c02fb7582;hb=HEAD
?
--
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 : sebastian.huber@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: libm support for ARMv7 and VSQRT?
2017-03-20 6:53 libm support for ARMv7 and VSQRT? Sebastian Huber
@ 2017-03-20 13:31 ` Richard Earnshaw (lists)
2017-03-20 14:54 ` Sebastian Huber
0 siblings, 1 reply; 4+ messages in thread
From: Richard Earnshaw (lists) @ 2017-03-20 13:31 UTC (permalink / raw)
To: Sebastian Huber, newlib
On 20/03/17 06:52, Sebastian Huber wrote:
> Hello,
>
> there is some ARM-specific libm support for ARMv8:
>
> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=tree;f=newlib/libm/machine/arm;h=5457f11619b2d67e8f56f352afb404c06a12c2bb;hb=HEAD
>
>
> The VFPv2+ supports a VSQRT instruction. Would it make sense to use it
> for the sqrt() implementation, similar to
>
> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=blob;f=newlib/libm/machine/aarch64/e_sqrt.c;h=e4b7554ac1811bf04f726da198b913c0c30595ca;hb=HEAD
>
> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=blob;f=newlib/libm/machine/aarch64/ef_sqrt.c;h=19fec952517769ad3851efef3b11dc6c02fb7582;hb=HEAD
>
>
> ?
>
I'm sure a patch would be welcome :-)
Don't forget, however, that you also need to deal with the soft-float
case (something the aarch64 code does not have to worry about).
R.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: libm support for ARMv7 and VSQRT?
2017-03-20 13:31 ` Richard Earnshaw (lists)
@ 2017-03-20 14:54 ` Sebastian Huber
2017-03-20 15:03 ` Richard Earnshaw (lists)
0 siblings, 1 reply; 4+ messages in thread
From: Sebastian Huber @ 2017-03-20 14:54 UTC (permalink / raw)
To: Richard Earnshaw (lists), newlib
On 20/03/17 14:31, Richard Earnshaw (lists) wrote:
> On 20/03/17 06:52, Sebastian Huber wrote:
>> Hello,
>>
>> there is some ARM-specific libm support for ARMv8:
>>
>> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=tree;f=newlib/libm/machine/arm;h=5457f11619b2d67e8f56f352afb404c06a12c2bb;hb=HEAD
>>
>>
>> The VFPv2+ supports a VSQRT instruction. Would it make sense to use it
>> for the sqrt() implementation, similar to
>>
>> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=blob;f=newlib/libm/machine/aarch64/e_sqrt.c;h=e4b7554ac1811bf04f726da198b913c0c30595ca;hb=HEAD
>>
>> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=blob;f=newlib/libm/machine/aarch64/ef_sqrt.c;h=19fec952517769ad3851efef3b11dc6c02fb7582;hb=HEAD
>>
>>
>> ?
>>
> I'm sure a patch would be welcome :-)
The ARMv7-AR reference manual is quite verbose if it comes to the
floating-point square root implementation of VSQRT. Is it IEEE 754
compatible?
--
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 : sebastian.huber@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: libm support for ARMv7 and VSQRT?
2017-03-20 14:54 ` Sebastian Huber
@ 2017-03-20 15:03 ` Richard Earnshaw (lists)
0 siblings, 0 replies; 4+ messages in thread
From: Richard Earnshaw (lists) @ 2017-03-20 15:03 UTC (permalink / raw)
To: Sebastian Huber, newlib
On 20/03/17 14:54, Sebastian Huber wrote:
>
>
> On 20/03/17 14:31, Richard Earnshaw (lists) wrote:
>> On 20/03/17 06:52, Sebastian Huber wrote:
>>> Hello,
>>>
>>> there is some ARM-specific libm support for ARMv8:
>>>
>>> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=tree;f=newlib/libm/machine/arm;h=5457f11619b2d67e8f56f352afb404c06a12c2bb;hb=HEAD
>>>
>>>
>>>
>>> The VFPv2+ supports a VSQRT instruction. Would it make sense to use it
>>> for the sqrt() implementation, similar to
>>>
>>> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=blob;f=newlib/libm/machine/aarch64/e_sqrt.c;h=e4b7554ac1811bf04f726da198b913c0c30595ca;hb=HEAD
>>>
>>>
>>> https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=blob;f=newlib/libm/machine/aarch64/ef_sqrt.c;h=19fec952517769ad3851efef3b11dc6c02fb7582;hb=HEAD
>>>
>>>
>>>
>>> ?
>>>
>> I'm sure a patch would be welcome :-)
>
> The ARMv7-AR reference manual is quite verbose if it comes to the
> floating-point square root implementation of VSQRT. Is it IEEE 754
> compatible?
>
It will be the same as for AArch64, but with options for default NaNs
and flush to zero; but you don't need to worry about either of those, I
think.
R.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-03-20 15:03 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-20 6:53 libm support for ARMv7 and VSQRT? Sebastian Huber
2017-03-20 13:31 ` Richard Earnshaw (lists)
2017-03-20 14:54 ` Sebastian Huber
2017-03-20 15:03 ` Richard Earnshaw (lists)
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).