Hi. This is a second version of the A64 Neon patchset six which I sent out a little while back. Changes: * fixed the 'hunk in wrong patch' snafu * adjusted FCVTN to pass 'size - 1' to handle_2misc_narrow; this puts it in line with other callers and means the function always takes the size of destination element * added more patches on the end, implementing + SQSHL, SQSHLU, UQSHL + FCVTZS, FCVTZU + URECPE, FRECPE + SQXTN, SQXTUN, UQXTN in s2misc + FCVTXN + URSQRTE, FRSQRTE
This means the only unimplemented instructions are: SUQADD, USQADD, SQABS, SQNEG. (We're working on those but they didn't quite make it and I wanted to send this series out today.) NOTE: I intend to get these patches in for rc1, so will be putting them into a pull request in time for the 19th (Wednesday) in the absence of review issues. The (trivial) softfloat patch is provided under the softfloat 2a or 2b license at your option. thanks -- PMM Alex Bennée (11): target-arm: A64: Fix bug in add_sub_ext handling of rn target-arm: A64: Add last AdvSIMD Integer to FP ops target-arm: A64: Add FSQRT to C3.6.17 (two misc) target-arm: A64: Add remaining CLS/Z vector ops target-arm: A64: Saturating and narrowing shift ops target-arm: A64: Add FRECPX (reciprocal exponent) softfloat: export squash_input_denormal functions target-arm: A64: Implement AdvSIMD reciprocal estimate insns URECPE, FRECPE target-arm: A64: Move handle_2misc_narrow function target-arm: A64: Implement scalar saturating narrow ops target-arm: A64: Add [UF]RSQRTE (reciprocal root estimate) Peter Maydell (14): target-arm: A64: Implement PMULL instruction target-arm: A64: Implement SADDLP, UADDLP, SADALP, UADALP target-arm: A64: Implement SHLL, SHLL2 target-arm: A64: Implement FCVT[NMAPZ][SU] SIMD instructions target-arm: A64: Implement FCVTN target-arm: A64: Implement FCVTL target-arm: A64: List unsupported shift-imm opcodes target-arm: A64: Implement SRI target-arm: A64: Implement FRINT* exec-all.h: Increase MAX_OP_PER_INSTR for ARM A64 decoder target-arm: A64: Handle saturating left shifts SQSHL, SQSHLU, UQSHL target-arm: A64: Implement FCVTZS, FCVTZU in the shift-imm categories target-arm: A64: Implement FCVTXN scripts/qemu-binfmt-conf.sh: Add AArch64 registration fpu/softfloat.c | 4 +- include/exec/exec-all.h | 2 +- include/fpu/softfloat.h | 7 + scripts/qemu-binfmt-conf.sh | 3 + target-arm/helper-a64.c | 178 ++++++ target-arm/helper-a64.h | 10 + target-arm/helper.c | 331 ++++++++-- target-arm/helper.h | 10 +- target-arm/translate-a64.c | 1411 ++++++++++++++++++++++++++++++++++++++----- target-arm/translate.c | 25 +- target-arm/translate.h | 6 + 11 files changed, 1772 insertions(+), 215 deletions(-) -- 1.9.0