Starry-OS / Starry

The main repository of Starry-OS, which will assemble all kernel components into a kernel according to a certain configuration.
Apache License 2.0
12 stars 18 forks source link

Guoweikang/aarch64 vfp fix #17

Closed guoweikang closed 1 month ago

guoweikang commented 1 month ago
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