unicorn/qemu/target/arm
Richard Henderson 6190be3191 target/arm: Create gen_gvec_{sri,sli}
The functions eliminate duplication of the special cases for
this operation. They match up with the GVecGen2iFn typedef.

Add out-of-line helpers. We got away with only having inline
expanders because the neon vector size is only 16 bytes, and
we know that the inline expansion will always succeed.
When we reuse this for SVE, tcg-gvec-op may decide to use an
out-of-line helper due to longer vector lengths.

Backports commit 893ab0542aa385a287cbe46d5535c8b9e95ce699 from qemu
2020-05-15 20:39:28 -04:00
..
a32-uncond.decode target/arm: Convert Unallocated memory hint 2019-11-28 02:47:41 -05:00
a32.decode target/arm: Convert SVC 2019-11-28 02:46:55 -05:00
arm-powerctl.c arm/arm-powerctl: set NSACR.{CP11, CP10} bits in arm_set_cpu_on() 2020-01-07 18:10:29 -05:00
arm-powerctl.h ARM: Factor out ARM on/off PSCI control functions 2018-03-01 23:31:47 -05:00
arm_ldst.h Fix Thumb-1 BE32 execution and disassembly. 2018-03-02 00:20:11 -05:00
cpu-param.h target/arm: Don't use a TLB for ARMMMUIdx_Stage2 2020-05-07 08:40:06 -04:00
cpu-qom.h target/arm: Make cpu_register() available for other files 2020-04-30 21:38:42 -04:00
cpu.c target/arm: Make set_feature() available for other files 2020-05-11 17:02:21 -04:00
cpu.h target/arm: Make set_feature() available for other files 2020-05-11 17:02:21 -04:00
cpu64.c arm/cpu64: Remove unused variable 2020-05-11 17:18:13 -04:00
crypto_helper.c target/arm/cpu and crypto_helper: Correct bad merge and adjust to qemu code style 2018-03-12 11:57:24 -04:00
debug_helper.c target/arm: Stop assuming DBGDIDR always exists 2020-03-21 18:26:24 -04:00
helper-a64.c target/arm: Move helper_dc_zva to helper-a64.c 2020-04-30 06:12:26 -04:00
helper-a64.h target/arm: Use DEF_HELPER_FLAGS for helper_dc_zva 2020-04-30 06:14:45 -04:00
helper-sve.h target/arm: Use tcg_gen_gvec_5_ptr for sve FMLA/FCMLA 2020-05-11 17:17:17 -04:00
helper.c arm/helper: Amend sign conversion warning 2020-05-11 17:21:25 -04:00
helper.h target/arm: Create gen_gvec_{sri,sli} 2020-05-15 20:39:28 -04:00
internals.h target/arm: Introduce core_to_aa64_mmu_idx 2020-04-30 05:58:59 -04:00
iwmmxt_helper.c target/arm: Untabify iwmmxt_helper.c 2018-08-25 04:33:44 -04:00
kvm-consts.h arm: better stub version for MISMATCH_CHECK 2018-03-02 00:13:45 -05:00
m_helper.c target/arm: Add isar_feature_aa32_vfp_simd 2020-03-21 23:11:36 -04:00
Makefile.objs target/arm: Add stubs for AArch32 Neon decodetree 2020-05-07 08:59:42 -04:00
neon-dp.decode target/arm: Convert Neon 3-reg-same VMUL, VMLA, VMLS, VSHL to decodetree 2020-05-07 09:50:44 -04:00
neon-ls.decode target/arm: Convert Neon 'load/store single structure' to decodetree 2020-05-07 09:32:17 -04:00
neon-shared.decode target/arm: Convert VFM[AS]L (scalar) to decodetree 2020-05-07 09:20:35 -04:00
neon_helper.c target/arm: Vectorize integer comparison vs zero 2020-04-30 21:29:17 -04:00
op_addsub.h Move target-* CPU file into a target/ folder 2018-03-01 22:50:58 -05:00
op_helper.c target/arm: Move helper_dc_zva to helper-a64.c 2020-04-30 06:12:26 -04:00
pauth_helper.c target/arm: Use bit 55 explicitly for pauth 2020-03-21 17:59:06 -04:00
psci.c fix WFI/WFE length in syndrome register 2018-03-05 11:21:51 -05:00
sve.decode target/arm: Sychronize with qemu 2019-04-18 04:49:11 -04:00
sve_helper.c target/arm: Use tcg_gen_gvec_5_ptr for sve FMLA/FCMLA 2020-05-11 17:17:17 -04:00
t16.decode target/arm: Convert T16, long branches 2019-11-28 02:53:54 -05:00
t32.decode target/arm: Convert TT 2019-11-28 02:48:06 -05:00
tlb_helper.c target/arm: Return correct IL bit in merge_syn_data_abort 2020-03-21 12:08:05 -04:00
translate-a64.c target/arm: Create gen_gvec_{sri,sli} 2020-05-15 20:39:28 -04:00
translate-a64.h target/arm: Convert Neon 3-reg-same VADD/VSUB to decodetree 2020-05-07 09:36:28 -04:00
translate-neon.inc.c target/arm: Convert Neon 3-reg-same VMUL, VMLA, VMLS, VSHL to decodetree 2020-05-07 09:50:44 -04:00
translate-sve.c target/arm: Fix tcg_gen_gvec_dup_imm vs DUP (indexed) 2020-05-11 17:22:52 -04:00
translate-vfp.inc.c target/arm: Introduce add_reg_for_lit (fixup) 2020-05-10 12:30:52 +01:00
translate.c target/arm: Create gen_gvec_{sri,sli} 2020-05-15 20:39:28 -04:00
translate.h target/arm: Create gen_gvec_{sri,sli} 2020-05-15 20:39:28 -04:00
unicorn.h Move target-* CPU file into a target/ folder 2018-03-01 22:50:58 -05:00
unicorn_aarch64.c unicorn_aarch64: Use aa64_vfp_qreg instead of aa32_vfp_dreg 2018-09-03 07:47:40 +01:00
unicorn_arm.c Add implementation of access to the ARM SPSR register. (#1178) 2020-01-14 09:57:55 -05:00
vec_helper.c target/arm: Create gen_gvec_{sri,sli} 2020-05-15 20:39:28 -04:00
vfp-uncond.decode target/arm: Split VMINMAXNM decode 2020-03-22 00:09:53 -04:00
vfp.decode target/arm: Split VFM decode 2020-03-22 00:07:53 -04:00
vfp_helper.c target/arm: Add isar_feature_any_fp16 and document naming/usage conventions 2020-03-21 18:12:02 -04:00