From bf621a8ca0a8067def96a5f6a64757e2fde1195f Mon Sep 17 00:00:00 2001 From: guoweikang Date: Fri, 26 Jul 2024 15:53:19 +0800 Subject: [PATCH] aarch64:vfp: fix vfp ctx changed in kernel issue: https://github.com/Starry-OS/Starry/issues/16 -------- 1 Exception doesn't save VFP registers 2 kernel generate code shouldn't use VFP registers, need close -neon and -fp-armv8 3 taskctx need save/restore user application VFP ctx, need access VFP registers After rustc update, it would complain when 2&3 happend, on this commit :65a4f5896317115cf1edc74800f0da5d92923243, opened neon when fp_smid enable,it broken 2, so it create bug; after return user from kernel trap, usr vfp registers ctx are changed; This commit close neon when complie kernel, taskctx need access VFP registers through build.rs to fix Signed-off-by: guoweikang --- Makefile | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Makefile b/Makefile index c242cfc..47150d7 100644 --- a/Makefile +++ b/Makefile @@ -122,11 +122,7 @@ ifeq ($(ARCH), x86_64) else ifeq ($(ARCH), riscv64) TARGET := riscv64gc-unknown-none-elf else ifeq ($(ARCH), aarch64) - ifeq ($(findstring fp_simd,$(FEATURES)),) - TARGET := aarch64-unknown-none-softfloat - else - TARGET := aarch64-unknown-none - endif + TARGET := aarch64-unknown-none-softfloat endif export AX_ARCH=$(ARCH)