summaryrefslogtreecommitdiff
path: root/arch/arm64/include/asm/fpsimd.h
diff options
context:
space:
mode:
authorJulien Grall <julien.grall@arm.com>2020-08-28 19:11:52 +0100
committerWill Deacon <will@kernel.org>2020-09-21 18:06:33 +0100
commit1e530f1352a2709d7bcacdb8b6d42c8900ba2c80 (patch)
tree704ec716cc72a2cdce2ef8dd0d2a3fb8c1c43868 /arch/arm64/include/asm/fpsimd.h
parent6d40f05fad0babfb3e991edb2d0bd28a30a2f10c (diff)
arm64/sve: Implement a helper to flush SVE registers
Introduce a new helper that will zero all SVE registers but the first 128-bits of each vector. This will be used by subsequent patches to avoid costly store/maipulate/reload sequences in places like do_sve_acc(). Signed-off-by: Julien Grall <julien.grall@arm.com> Signed-off-by: Mark Brown <broonie@kernel.org> Reviewed-by: Dave Martin <Dave.Martin@arm.com> Link: https://lore.kernel.org/r/20200828181155.17745-6-broonie@kernel.org Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'arch/arm64/include/asm/fpsimd.h')
-rw-r--r--arch/arm64/include/asm/fpsimd.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/fpsimd.h b/arch/arm64/include/asm/fpsimd.h
index 59f10dd13f12..958f642e930d 100644
--- a/arch/arm64/include/asm/fpsimd.h
+++ b/arch/arm64/include/asm/fpsimd.h
@@ -69,6 +69,7 @@ static inline void *sve_pffr(struct thread_struct *thread)
extern void sve_save_state(void *state, u32 *pfpsr);
extern void sve_load_state(void const *state, u32 const *pfpsr,
unsigned long vq_minus_1);
+extern void sve_flush_live(void);
extern unsigned int sve_get_vl(void);
struct arm64_cpu_capabilities;