diff --git a/sys/arm64/arm64/vfp.c b/sys/arm64/arm64/vfp.c --- a/sys/arm64/arm64/vfp.c +++ b/sys/arm64/arm64/vfp.c @@ -57,7 +57,7 @@ struct vfpstate state; }; -static void +void vfp_enable(void) { uint32_t cpacr; @@ -68,7 +68,7 @@ isb(); } -static void +void vfp_disable(void) { uint32_t cpacr; @@ -99,7 +99,7 @@ vfp_disable(); } -static void +void vfp_store(struct vfpstate *state) { __uint128_t *vfp_state; @@ -131,7 +131,7 @@ state->vfp_fpsr = fpsr; } -static void +void vfp_restore(struct vfpstate *state) { __uint128_t *vfp_state; diff --git a/sys/arm64/include/vfp.h b/sys/arm64/include/vfp.h --- a/sys/arm64/include/vfp.h +++ b/sys/arm64/include/vfp.h @@ -67,7 +67,11 @@ struct thread; void vfp_init(void); +void vfp_enable(void); +void vfp_disable(void); void vfp_discard(struct thread *); +void vfp_store(struct vfpstate *); +void vfp_restore(struct vfpstate *); void vfp_new_thread(struct thread *, struct thread *, bool); void vfp_reset_state(struct thread *, struct pcb *); void vfp_restore_state(void);