mbox series

[0/7] target/alpha: Fix linux-user exception for CVTTQ

Message ID 20190921043256.4575-1-richard.henderson@linaro.org (mailing list archive)
Headers show
Series target/alpha: Fix linux-user exception for CVTTQ | expand

Message

Richard Henderson Sept. 21, 2019, 4:32 a.m. UTC
Alex's new float_convs test dies with SIGFPE for alpha-linux-user.

This is fixed in patch 6, where I mask the exception similar to how
the kernel would, when passed through the software completion handler.

Patches 2 & 3 fix bugs that I noticed in the process; the rest are
simple cleanup, trying to make the code better or easier.


r~


Richard Henderson (7):
  target/alpha: Use array for FPCR_DYN conversion
  target/alpha: Fix SWCR_MAP_UMZ
  target/alpha: Fix SWCR_TRAP_ENABLE_MASK
  target/alpha: Handle SWCR_MAP_DMZ earlier
  target/alpha: Write to fpcr_flush_to_zero once
  target/alpha: Mask IOV exception with INV for user-only
  target/alpha: Tidy helper_fp_exc_raise_s

 target/alpha/fpu_helper.c | 15 +++------
 target/alpha/helper.c     | 68 +++++++++++++++++++--------------------
 2 files changed, 38 insertions(+), 45 deletions(-)

Comments

Alex Bennée Sept. 23, 2019, 4:44 p.m. UTC | #1
Richard Henderson <richard.henderson@linaro.org> writes:

> Alex's new float_convs test dies with SIGFPE for alpha-linux-user.
>
> This is fixed in patch 6, where I mask the exception similar to how
> the kernel would, when passed through the software completion handler.
>
> Patches 2 & 3 fix bugs that I noticed in the process; the rest are
> simple cleanup, trying to make the code better or easier.

Now Richard has eli5'd the CONVERT_BITS magic for me>

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

the rest of the series.

>
>
> r~
>
>
> Richard Henderson (7):
>   target/alpha: Use array for FPCR_DYN conversion
>   target/alpha: Fix SWCR_MAP_UMZ
>   target/alpha: Fix SWCR_TRAP_ENABLE_MASK
>   target/alpha: Handle SWCR_MAP_DMZ earlier
>   target/alpha: Write to fpcr_flush_to_zero once
>   target/alpha: Mask IOV exception with INV for user-only
>   target/alpha: Tidy helper_fp_exc_raise_s
>
>  target/alpha/fpu_helper.c | 15 +++------
>  target/alpha/helper.c     | 68 +++++++++++++++++++--------------------
>  2 files changed, 38 insertions(+), 45 deletions(-)


--
Alex Bennée