[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH for-8.0 v2 00/13] target/s390x: Use TCGv_i128
From: |
Richard Henderson |
Subject: |
[PATCH for-8.0 v2 00/13] target/s390x: Use TCGv_i128 |
Date: |
Fri, 11 Nov 2022 18:08:07 +1000 |
Changes for v2:
* Fix the div bugs found by Ilya.
* Convert CDSG
* Improve CC resolution for CDSG+IPM.
Turned out the best testing so far for TCGv_i128 was CDSG,
especially for 32-bit x86 host, where we have only 6 regs
available for 13 parameters. Whee!
r~
Based-on: 20221111074101.2069454-1-richard.henderson@linaro.org
("tcg: Support for Int128 with helpers")
Ilya Leoshkevich (2):
tests/tcg/s390x: Add div.c
tests/tcg/s390x: Add clst.c
Richard Henderson (11):
tests/tcg/s390x: Add long-double.c
target/s390x: Use a single return for helper_divs32/u32
target/s390x: Use a single return for helper_divs64/u64
target/s390x: Use Int128 for return from CLST
target/s390x: Use Int128 for return from CKSM
target/s390x: Use Int128 for return from TRE
target/s390x: Copy wout_x1 to wout_x1_P
target/s390x: Use Int128 for returning float128
target/s390x: Use Int128 for passing float128
target/s390x: Use tcg_gen_atomic_cmpxchg_i128 for CDSG
target/s390x: Implement CC_OP_NZ in gen_op_calc_cc
target/s390x/helper.h | 54 ++++----
target/s390x/tcg/fpu_helper.c | 103 +++++++--------
target/s390x/tcg/int_helper.c | 64 ++++-----
target/s390x/tcg/mem_helper.c | 77 ++---------
target/s390x/tcg/translate.c | 217 +++++++++++++++++++++----------
tests/tcg/s390x/clst.c | 82 ++++++++++++
tests/tcg/s390x/div.c | 75 +++++++++++
tests/tcg/s390x/long-double.c | 24 ++++
target/s390x/tcg/insn-data.h.inc | 60 ++++-----
tests/tcg/s390x/Makefile.target | 3 +
10 files changed, 462 insertions(+), 297 deletions(-)
create mode 100644 tests/tcg/s390x/clst.c
create mode 100644 tests/tcg/s390x/div.c
create mode 100644 tests/tcg/s390x/long-double.c
--
2.34.1
- [PATCH for-8.0 v2 00/13] target/s390x: Use TCGv_i128,
Richard Henderson <=
- [PATCH for-8.0 v2 01/13] tests/tcg/s390x: Add div.c, Richard Henderson, 2022/11/11
- [PATCH for-8.0 v2 02/13] tests/tcg/s390x: Add clst.c, Richard Henderson, 2022/11/11
- [PATCH for-8.0 v2 03/13] tests/tcg/s390x: Add long-double.c, Richard Henderson, 2022/11/11
- [PATCH for-8.0 v2 05/13] target/s390x: Use a single return for helper_divs64/u64, Richard Henderson, 2022/11/11
- [PATCH for-8.0 v2 04/13] target/s390x: Use a single return for helper_divs32/u32, Richard Henderson, 2022/11/11
- [PATCH for-8.0 v2 08/13] target/s390x: Use Int128 for return from TRE, Richard Henderson, 2022/11/11
- [PATCH for-8.0 v2 06/13] target/s390x: Use Int128 for return from CLST, Richard Henderson, 2022/11/11
- [PATCH for-8.0 v2 07/13] target/s390x: Use Int128 for return from CKSM, Richard Henderson, 2022/11/11
- [PATCH for-8.0 v2 09/13] target/s390x: Copy wout_x1 to wout_x1_P, Richard Henderson, 2022/11/11