[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 00/69] target/arm: AArch64 decodetree conversion, final part
From: |
Richard Henderson |
Subject: |
[PATCH v2 00/69] target/arm: AArch64 decodetree conversion, final part |
Date: |
Tue, 10 Dec 2024 10:16:24 -0600 |
Finish the conversion of all aarch64 instructions to decodetree.
Changes for v2:
- Apply review nits as appropriate.
- Split out gen_gvec_fabs, gen_gvec_fneg and share with a32 neon.
Patches lacking review:
23-target-arm-Fix-decode-of-fp16-vector-fabs-fneg.patch
24-target-arm-Convert-FMOV-FABS-FNEG-scalar-to-decod.patch
29-target-arm-Convert-BFCVT-to-decodetree.patch
43-target-arm-Convert-handle_rev-to-decodetree.patch
53-target-arm-Implement-gen_gvec_fabs-gen_gvec_fneg.patch
57-target-arm-Convert-FCVT-vector-integer-scalar-to-.patch
58-target-arm-Convert-FCVT-vector-fixed-point-scalar.patch
60-target-arm-Convert-US-CVTF-vector-fixed-point-sca.patch
62-target-arm-Convert-US-CVTF-vector-to-decodetree.patch
63-target-arm-Convert-FCVTZ-SU-vector-fixed-point-to.patch
64-target-arm-Convert-FCVT-vector-integer-to-decodet.patch
67-target-arm-Introduce-gen_gvec_urecpe-gen_gvec_urs.patch
68-target-arm-Convert-URECPE-and-URSQRTE-to-decodetr.patch
r~
Richard Henderson (69):
target/arm: Add section labels for "Data Processing (register)"
target/arm: Convert UDIV, SDIV to decodetree
target/arm: Convert LSLV, LSRV, ASRV, RORV to decodetree
target/arm: Convert CRC32, CRC32C to decodetree
target/arm: Convert SUBP, IRG, GMI to decodetree
target/arm: Convert PACGA to decodetree
target/arm: Convert RBIT, REV16, REV32, REV64 to decodetree
target/arm: Convert CLZ, CLS to decodetree
target/arm: Convert PAC[ID]*, AUT[ID]* to decodetree
target/arm: Convert XPAC[ID] to decodetree
target/arm: Convert disas_logic_reg to decodetree
target/arm: Convert disas_add_sub_ext_reg to decodetree
target/arm: Convert disas_add_sub_reg to decodetree
target/arm: Convert disas_data_proc_3src to decodetree
target/arm: Convert disas_adc_sbc to decodetree
target/arm: Convert RMIF to decodetree
target/arm: Convert SETF8, SETF16 to decodetree
target/arm: Convert CCMP, CCMN to decodetree
target/arm: Convert disas_cond_select to decodetree
target/arm: Introduce fp_access_check_scalar_hsd
target/arm: Introduce fp_access_check_vector_hsd
target/arm: Convert FCMP, FCMPE, FCCMP, FCCMPE to decodetree
target/arm: Fix decode of fp16 vector fabs, fneg
target/arm: Convert FMOV, FABS, FNEG (scalar) to decodetree
target/arm: Pass fpstatus to vfp_sqrt*
target/arm: Remove helper_sqrt_f16
target/arm: Convert FSQRT (scalar) to decodetree
target/arm: Convert FRINT[NPMSAXI] (scalar) to decodetree
target/arm: Convert BFCVT to decodetree
target/arm: Convert FRINT{32,64}[ZX] (scalar) to decodetree
target/arm: Convert FCVT (scalar) to decodetree
target/arm: Convert handle_fpfpcvt to decodetree
target/arm: Convert FJCVTZS to decodetree
target/arm: Convert handle_fmov to decodetree
target/arm: Convert SQABS, SQNEG to decodetree
target/arm: Convert ABS, NEG to decodetree
target/arm: Introduce gen_gvec_cls, gen_gvec_clz
target/arm: Convert CLS, CLZ (vector) to decodetree
target/arm: Introduce gen_gvec_cnt, gen_gvec_rbit
target/arm: Convert CNT, NOT, RBIT (vector) to decodetree
target/arm: Convert CMGT, CMGE, GMLT, GMLE, CMEQ (zero) to decodetree
target/arm: Introduce gen_gvec_rev{16,32,64}
target/arm: Convert handle_rev to decodetree
target/arm: Move helper_neon_addlp_{s8,s16} to neon_helper.c
target/arm: Introduce gen_gvec_{s,u}{add,ada}lp
target/arm: Convert handle_2misc_pairwise to decodetree
target/arm: Remove helper_neon_{add,sub}l_u{16,32}
target/arm: Introduce clear_vec
target/arm: Convert XTN, SQXTUN, SQXTN, UQXTN to decodetree
target/arm: Convert FCVTN, BFCVTN to decodetree
target/arm: Convert FCVTXN to decodetree
target/arm: Convert SHLL to decodetree
target/arm: Implement gen_gvec_fabs, gen_gvec_fneg
target/arm: Convert FABS, FNEG (vector) to decodetree
target/arm: Convert FSQRT (vector) to decodetree
target/arm: Convert FRINT* (vector) to decodetree
target/arm: Convert FCVT* (vector, integer) scalar to decodetree
target/arm: Convert FCVT* (vector, fixed-point) scalar to decodetree
target/arm: Convert [US]CVTF (vector, integer) scalar to decodetree
target/arm: Convert [US]CVTF (vector, fixed-point) scalar to
decodetree
target/arm: Rename helper_gvec_vcvt_[hf][su] with _rz
target/arm: Convert [US]CVTF (vector) to decodetree
target/arm: Convert FCVTZ[SU] (vector, fixed-point) to decodetree
target/arm: Convert FCVT* (vector, integer) to decodetree
target/arm: Convert handle_2misc_fcmp_zero to decodetree
target/arm: Convert FRECPE, FRECPX, FRSQRTE to decodetree
target/arm: Introduce gen_gvec_urecpe, gen_gvec_ursqrte
target/arm: Convert URECPE and URSQRTE to decodetree
target/arm: Convert FCVTL to decodetree
target/arm/helper.h | 43 +-
target/arm/tcg/helper-a64.h | 7 -
target/arm/tcg/translate.h | 35 +
target/arm/tcg/gengvec.c | 369 ++
target/arm/tcg/helper-a64.c | 104 -
target/arm/tcg/neon_helper.c | 106 +-
target/arm/tcg/translate-a64.c | 5670 ++++++++++---------------------
target/arm/tcg/translate-neon.c | 337 +-
target/arm/tcg/translate-vfp.c | 6 +-
target/arm/tcg/vec_helper.c | 65 +-
target/arm/vfp_helper.c | 16 +-
target/arm/tcg/a64.decode | 502 ++-
12 files changed, 2888 insertions(+), 4372 deletions(-)
--
2.43.0
- [PATCH v2 00/69] target/arm: AArch64 decodetree conversion, final part,
Richard Henderson <=
- [PATCH v2 01/69] target/arm: Add section labels for "Data Processing (register)", Richard Henderson, 2024/12/10
- [PATCH v2 02/69] target/arm: Convert UDIV, SDIV to decodetree, Richard Henderson, 2024/12/10
- [PATCH v2 03/69] target/arm: Convert LSLV, LSRV, ASRV, RORV to decodetree, Richard Henderson, 2024/12/10
- [PATCH v2 04/69] target/arm: Convert CRC32, CRC32C to decodetree, Richard Henderson, 2024/12/10
- [PATCH v2 05/69] target/arm: Convert SUBP, IRG, GMI to decodetree, Richard Henderson, 2024/12/10
- [PATCH v2 06/69] target/arm: Convert PACGA to decodetree, Richard Henderson, 2024/12/10
- [PATCH v2 07/69] target/arm: Convert RBIT, REV16, REV32, REV64 to decodetree, Richard Henderson, 2024/12/10
- [PATCH v2 08/69] target/arm: Convert CLZ, CLS to decodetree, Richard Henderson, 2024/12/10
- [PATCH v2 09/69] target/arm: Convert PAC[ID]*, AUT[ID]* to decodetree, Richard Henderson, 2024/12/10
- [PATCH v2 10/69] target/arm: Convert XPAC[ID] to decodetree, Richard Henderson, 2024/12/10