aboutsummaryrefslogtreecommitdiff
path: root/sys/arm64
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2021-03-17 14:10:41 +0000
committerEd Maste <emaste@FreeBSD.org>2021-03-17 20:46:50 +0000
commit5be27cbf16c85ce95d21db57349f61494f851821 (patch)
tree5430c4a4bb7dea0d2baf8fd44cece49508449670 /sys/arm64
parent0723b409150ae302eb021cbde86a5f77348a1bb4 (diff)
downloadsrc-5be27cbf16c85ce95d21db57349f61494f851821.tar.gz
src-5be27cbf16c85ce95d21db57349f61494f851821.zip
arm64: implement COMPAT_FREEBSD32 fill/set dbregs/fpregs
On FreeBSD/arm fill_fpregs, fill_dbregs are stubs that zero the reg struct and return success. set_fpregs and set_dbregs do nothing and return success. Provide the same implementation for arm64 COMPAT_FREEBSD32. Reviewed by: andrew MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D29314
Diffstat (limited to 'sys/arm64')
-rw-r--r--sys/arm64/arm64/machdep.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/sys/arm64/arm64/machdep.c b/sys/arm64/arm64/machdep.c
index 97f97392e43f..8a1e7520aacb 100644
--- a/sys/arm64/arm64/machdep.c
+++ b/sys/arm64/arm64/machdep.c
@@ -489,36 +489,35 @@ set_regs32(struct thread *td, struct reg32 *regs)
return (0);
}
+/* XXX fill/set dbregs/fpregs are stubbed on 32-bit arm. */
int
fill_fpregs32(struct thread *td, struct fpreg32 *regs)
{
- printf("ARM64TODO: fill_fpregs32");
- return (EDOOFUS);
+ memset(regs, 0, sizeof(*regs));
+ return (0);
}
int
set_fpregs32(struct thread *td, struct fpreg32 *regs)
{
- printf("ARM64TODO: set_fpregs32");
- return (EDOOFUS);
+ return (0);
}
int
fill_dbregs32(struct thread *td, struct dbreg32 *regs)
{
- printf("ARM64TODO: fill_dbregs32");
- return (EDOOFUS);
+ memset(regs, 0, sizeof(*regs));
+ return (0);
}
int
set_dbregs32(struct thread *td, struct dbreg32 *regs)
{
- printf("ARM64TODO: set_dbregs32");
- return (EDOOFUS);
+ return (0);
}
#endif