History log of /seL4-l4v-10.1.1/seL4/src/arch/arm/64/machine/fpu.c
Revision Date Author Comments
# f5639160 27-Mar-2018 Yanyan Shen <yanyan.shen@data61.csiro.au>

armv8/hyp: Enable FPU in EL0/1 when HYP is on

The disableFpu() for EL2 traps any FPU instruction to EL2 even
if the FPU is enabled for EL0/1 in CPACR_EL1. For EL2, we
use CPTR_EL2 to enable/disable trapping FPU instructions.
Therefore, we enable FPU for EL0/1 by default so that no additional
exceptions will be generated when we enable FPU access in CPTR_EL2.


# a07de033 27-Mar-2018 Yanyan Shen <yanyan.shen@data61.csiro.au>

armv8: Add isFPUEnabledCached for each core


# 64d576fb 12-Jun-2017 Hesham Almatary <hesham.almatary@data61.csiro.au>

SELFOUR-806: aarch32 - Implement lazy FP save/restore

This commit implements lazy FP save/restore mechanism, required for user threads
when they use the FPU. The following caveats take place:

* Only support synchronous exceptions. No support for asynchronous ones.
* VFP opcodes are used instead of normal instructions to discard compiler warnings/errors.
* Support is limited to specific ARM subarchitectures we support and tested this commit on.
* Disable the FPU by default if users are not using it to avoid channels.
* FPU support is not verified yet.
* Will not work properly if using a VM that's running besides other VMs/threads that are using the FPU.


# 40c61e5c 18-Jun-2017 Anna Lyons <Anna.Lyons@data61.csiro.au>

Fix licenses (the rest)


# 4d544766 26-Feb-2017 Bamboo <bamboo@keg.ertos.in.nicta.com.au>

[STYLE_FIX]


# 8610061a 23-Feb-2017 amrzar <azarrabi@nicta.com.au>

aarch64: FPU lazy context switch