[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] ARM Cortex R5 + VFP3
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] ARM Cortex R5 + VFP3 |
Date: |
Tue, 24 May 2016 14:37:03 +0100 |
On 24 May 2016 at 14:07, Karthik <address@hidden> wrote:
> I am working on adding support for a Spansion microcontroller which has an
> Cortex R5 core + VFP3 co processor.
>
> I have added the below line
> set_feature(&cpu->env, ARM_FEATURE_VFP3)
> to cortex_r5_initfn at /target-arm/cpu.c
>
> But, still I got undefined exception when the processor encountered any VFP
> instructions.
Has your guest code actually enabled the floating point?
It needs to write to CPACR_EL1 itself to set the FPEXC bit. Otherwise
we will correctly generate an exception, just as the real hardware
will. The code you mention is in CONFIG_USER_ONLY because if we
are only emulating a user process then we simulate the behaviour that
a Linux kernel has of setting the CPACR correctly. For system
emulation setting the bit is the guest code's responsibility.
thanks
-- PMM