[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 3/7] target-arm: Rename ARM_FEATURE_DIV to _THUM
From: |
Andreas Färber |
Subject: |
Re: [Qemu-devel] [PATCH 3/7] target-arm: Rename ARM_FEATURE_DIV to _THUMB_DIV |
Date: |
Sun, 23 Oct 2011 02:04:14 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20110929 Thunderbird/7.0.1 |
Am 20.10.2011 15:16, schrieb Peter Maydell:
> Rename the ARM_FEATURE_DIV feature bit to _THUMB_DIV, to
> make room for a new feature switch enabling DIV in the ARM
> encoding. (Cores may implement either (a) no divide insns
> (b) divide insns in Thumb encodings only (c) divide insns
> in both ARM and Thumb encodings.)
>
> Signed-off-by: Peter Maydell <address@hidden>
Acked-by: Andreas Färber <address@hidden>
Andreas
> ---
> target-arm/cpu.h | 2 +-
> target-arm/helper.c | 4 ++--
> target-arm/translate.c | 3 ++-
> 3 files changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/target-arm/cpu.h b/target-arm/cpu.h
> index 6ab780d..00e012e 100644
> --- a/target-arm/cpu.h
> +++ b/target-arm/cpu.h
> @@ -366,7 +366,7 @@ enum arm_features {
> ARM_FEATURE_VFP3,
> ARM_FEATURE_VFP_FP16,
> ARM_FEATURE_NEON,
> - ARM_FEATURE_DIV,
> + ARM_FEATURE_THUMB_DIV, /* divide supported in Thumb encoding */
> ARM_FEATURE_M, /* Microcontroller profile. */
> ARM_FEATURE_OMAPCP, /* OMAP specific CP15 ops handling. */
> ARM_FEATURE_THUMB2EE,
> diff --git a/target-arm/helper.c b/target-arm/helper.c
> index 17ef98b..faf0283 100644
> --- a/target-arm/helper.c
> +++ b/target-arm/helper.c
> @@ -193,7 +193,7 @@ static void cpu_reset_model_id(CPUARMState *env, uint32_t
> id)
> set_feature(env, ARM_FEATURE_THUMB2);
> set_feature(env, ARM_FEATURE_V7);
> set_feature(env, ARM_FEATURE_M);
> - set_feature(env, ARM_FEATURE_DIV);
> + set_feature(env, ARM_FEATURE_THUMB_DIV);
> break;
> case ARM_CPUID_ANY: /* For userspace emulation. */
> set_feature(env, ARM_FEATURE_V4T);
> @@ -207,7 +207,7 @@ static void cpu_reset_model_id(CPUARMState *env, uint32_t
> id)
> set_feature(env, ARM_FEATURE_VFP_FP16);
> set_feature(env, ARM_FEATURE_NEON);
> set_feature(env, ARM_FEATURE_THUMB2EE);
> - set_feature(env, ARM_FEATURE_DIV);
> + set_feature(env, ARM_FEATURE_THUMB_DIV);
> set_feature(env, ARM_FEATURE_V7MP);
> break;
> case ARM_CPUID_TI915T:
> diff --git a/target-arm/translate.c b/target-arm/translate.c
> index e99fc18..deb0bcf 100644
> --- a/target-arm/translate.c
> +++ b/target-arm/translate.c
> @@ -8513,8 +8513,9 @@ static int disas_thumb2_insn(CPUState *env,
> DisasContext *s, uint16_t insn_hw1)
> tmp2 = load_reg(s, rm);
> if ((op & 0x50) == 0x10) {
> /* sdiv, udiv */
> - if (!arm_feature(env, ARM_FEATURE_DIV))
> + if (!arm_feature(env, ARM_FEATURE_THUMB_DIV)) {
> goto illegal_op;
> + }
> if (op & 0x20)
> gen_helper_udiv(tmp, tmp, tmp2);
> else
- [Qemu-devel] [PULL 0/7] target-arm queue, Peter Maydell, 2011/10/20
- [Qemu-devel] [PATCH 3/7] target-arm: Rename ARM_FEATURE_DIV to _THUMB_DIV, Peter Maydell, 2011/10/20
- Re: [Qemu-devel] [PATCH 3/7] target-arm: Rename ARM_FEATURE_DIV to _THUMB_DIV,
Andreas Färber <=
- [Qemu-devel] [PATCH 7/7] target-arm/machine.c: Restore VFP registers correctly, Peter Maydell, 2011/10/20
- [Qemu-devel] [PATCH 5/7] softfloat: Implement fused multiply-add, Peter Maydell, 2011/10/20
- [Qemu-devel] [PATCH 2/7] target-arm: v6 media multiply space: UNDEF on unassigned encodings, Peter Maydell, 2011/10/20
- [Qemu-devel] [PATCH 4/7] target-arm: Add ARM UDIV/SDIV support, Peter Maydell, 2011/10/20
- [Qemu-devel] [PATCH 6/7] target-arm: Implement VFPv4 fused multiply-accumulate insns, Peter Maydell, 2011/10/20
- [Qemu-devel] [PATCH 1/7] rsqrte_f32: No need to copy sign bit., Peter Maydell, 2011/10/20