qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH V2 00/10] ARM: fix VCVT instructions
@ 2010-12-06 17:00 Peter Maydell
  2010-12-06 17:00 ` [Qemu-devel] [PATCH 01/10] ARM: Fix decoding of VFP forms of VCVT between float and int/fixed Peter Maydell
                   ` (9 more replies)
  0 siblings, 10 replies; 15+ messages in thread
From: Peter Maydell @ 2010-12-06 17:00 UTC (permalink / raw)
  To: qemu-devel

This patch series corrects a number of errors in the decoding and
implementation of various forms of the ARM VCVT instruction. The
resulting qemu has been tested by execution of 100,000 random
variants of these instruction patterns with register values
cross-checked against the results given by Cortex-A8 hardware.

Thanks to Johan Bengtsson for posting the initial VCVT related
patch which prompted me to do some more testing in this area.

This is V2 of this patchset which addresses Nathan Froyd's
suggestion that we should be doing all the bit-twiddling
in softfloat rather than in the ARM specific files. The
old patch 4/8 is now 4/10 and 5/10, and the old 5/8 is
now 6/10 and 7/10; all other patches are unchanged.

In patch 4/10 I've left the '_any_' in the function name to
avoid a clash/dependency on the proposed 'rename _is_nan to
_is_quiet_nan' patch.


Peter Maydell (10):
  ARM: Fix decoding of VFP forms of VCVT between float and int/fixed
  ARM: Fix decoding of Neon forms of VCVT between float and fixed point
  ARM: Fix sense of to_integer bit in Neon VCVT float/int conversion
  softfloat: Add float*_is_any_nan() functions
  ARM: Return correct result for float-to-integer conversion of NaN
  softfloat: Add float*_maybe_silence_nan() functions
  ARM: Return correct result for single<->double conversion of NaN
  ARM: Ignore top 16 bits when doing VCVT from 16 bit fixed point
  softfloat: Add float/double to 16 bit integer conversion functions
  ARM: Implement VCVT to 16 bit integer using new softfloat routines

 fpu/softfloat-specialize.h |   38 ++++++++++++
 fpu/softfloat.c            |  136 ++++++++++++++++++++++++++++++++++++++++++++
 fpu/softfloat.h            |   16 +++++
 target-arm/helper.c        |   43 +++++++++++++-
 target-arm/translate.c     |   35 +++++++----
 5 files changed, 251 insertions(+), 17 deletions(-)

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

end of thread, other threads:[~2010-12-06 18:18 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-06 17:00 [Qemu-devel] [PATCH V2 00/10] ARM: fix VCVT instructions Peter Maydell
2010-12-06 17:00 ` [Qemu-devel] [PATCH 01/10] ARM: Fix decoding of VFP forms of VCVT between float and int/fixed Peter Maydell
2010-12-06 17:00 ` [Qemu-devel] [PATCH 02/10] ARM: Fix decoding of Neon forms of VCVT between float and fixed point Peter Maydell
2010-12-06 17:00 ` [Qemu-devel] [PATCH 03/10] ARM: Fix sense of to_integer bit in Neon VCVT float/int conversion Peter Maydell
2010-12-06 17:00 ` [Qemu-devel] [PATCH 04/10] softfloat: Add float*_is_any_nan() functions Peter Maydell
2010-12-06 18:15   ` Nathan Froyd
2010-12-06 17:00 ` [Qemu-devel] [PATCH 05/10] ARM: Return correct result for float-to-integer conversion of NaN Peter Maydell
2010-12-06 18:18   ` Nathan Froyd
2010-12-06 17:00 ` [Qemu-devel] [PATCH 06/10] softfloat: Add float*_maybe_silence_nan() functions Peter Maydell
2010-12-06 18:16   ` Nathan Froyd
2010-12-06 17:00 ` [Qemu-devel] [PATCH 07/10] ARM: Return correct result for single<->double conversion of NaN Peter Maydell
2010-12-06 18:17   ` Nathan Froyd
2010-12-06 17:00 ` [Qemu-devel] [PATCH 08/10] ARM: Ignore top 16 bits when doing VCVT from 16 bit fixed point Peter Maydell
2010-12-06 17:00 ` [Qemu-devel] [PATCH 09/10] softfloat: Add float/double to 16 bit integer conversion functions Peter Maydell
2010-12-06 17:00 ` [Qemu-devel] [PATCH 10/10] ARM: Implement VCVT to 16 bit integer using new softfloat routines 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).