qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/3] ARM: fix Neon vrecpe and vrsqrte instructions.
@ 2011-02-16 17:59 christophe.lyon
  2011-02-16 17:59 ` [Qemu-devel] [PATCH 1/3] softfloat: export float32_default_nan, and float32_infinity. Add float32_set_sign() christophe.lyon
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: christophe.lyon @ 2011-02-16 17:59 UTC (permalink / raw)
  To: qemu-devel

From: Christophe Lyon <christophe.lyon@st.com>

These 3 patches fix the ARM Neon vrecpe and vrsqrte instructions by
matching the algorithms descibed in the ARM ARM.

With these patches, qemu passes my ARM/Neon tests.

Patch #1 modifies softfloat by exporting float32_default_nan and
float32_infinity. For consistency, I have also moved all the
target-dependent definitions of floatXX_default_nan to softfloat.h (ie
the 16, 64, x80 and 128 bits versions in addition to the 32 bits
ones).

It also adds float32_set_sign() to help return the right special
values (-0, -infinity).

Patch #2 uses these newly exported values and uses the vrecpe
algorithm described in the ARM ARM.

Patch #3 uses these newly exported values and uses the vrsqrte
algorithm described in the ARM ARM.

Christophe Lyon (3):
  softfloat: export float32_default_nan, and float32_infinity. Add
    float32_set_sign().
  target-arm: fix support for vrecpe.
  target-arm: fix support for vrsqrte.

 fpu/softfloat-specialize.h |   68 ---------------
 fpu/softfloat.h            |   75 ++++++++++++++++
 target-arm/helper.c        |  206 +++++++++++++++++++++++++++++++++++++++-----
 3 files changed, 259 insertions(+), 90 deletions(-)

-- 
1.7.2.3

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

end of thread, other threads:[~2011-02-17 18:35 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-02-16 17:59 [Qemu-devel] [PATCH v3 0/3] ARM: fix Neon vrecpe and vrsqrte instructions christophe.lyon
2011-02-16 17:59 ` [Qemu-devel] [PATCH 1/3] softfloat: export float32_default_nan, and float32_infinity. Add float32_set_sign() christophe.lyon
2011-02-17 12:56   ` Peter Maydell
2011-02-16 17:59 ` [Qemu-devel] [PATCH 2/3] target-arm: fix support for vrecpe christophe.lyon
2011-02-17 12:23   ` Peter Maydell
2011-02-17 17:51     ` Christophe Lyon
2011-02-17 18:35       ` Peter Maydell
2011-02-16 17:59 ` [Qemu-devel] [PATCH 3/3] target-arm: fix support for vrsqrte christophe.lyon
2011-02-17 12:49   ` Peter Maydell

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 NNTP newsgroup(s).