diff --git a/ndk/platforms/android-21/include/sys/ucontext.h b/ndk/platforms/android-21/include/sys/ucontext.h index 399458ebe..9e3c6530d 100644 --- a/ndk/platforms/android-21/include/sys/ucontext.h +++ b/ndk/platforms/android-21/include/sys/ucontext.h @@ -82,12 +82,6 @@ typedef struct ucontext { #define NGREG 34 /* x0..x30 + sp + pc + pstate */ typedef unsigned long greg_t; typedef greg_t gregset_t[NGREG]; - -struct user_fpsimd_struct { - long double vregs[32]; - uint32_t fpsr; - uint32_t fpcr; -}; typedef struct user_fpsimd_struct fpregset_t; #include diff --git a/ndk/platforms/android-21/include/sys/user.h b/ndk/platforms/android-21/include/sys/user.h index d63fe6aa5..3312981d3 100644 --- a/ndk/platforms/android-21/include/sys/user.h +++ b/ndk/platforms/android-21/include/sys/user.h @@ -30,11 +30,13 @@ #define _SYS_USER_H_ #include -#include /* For PAGE_SIZE. */ #include /* For size_t. */ __BEGIN_DECLS +#define PAGE_SIZE 4096 +#define PAGE_MASK (~(PAGE_SIZE - 1)) + #if __i386__ struct user_fpregs_struct { @@ -230,7 +232,17 @@ struct user { #elif defined(__aarch64__) -// There are no user structures for 64 bit arm. +struct user_regs_struct { + uint64_t regs[31]; + uint64_t sp; + uint64_t pc; + uint64_t pstate; +}; +struct user_fpsimd_struct { + __uint128_t vregs[32]; + uint32_t fpsr; + uint32_t fpcr; +}; #else