Merge "NGREG != ELF_NGREG." am: a5a9992671
Original change: https://android-review.googlesource.com/c/platform/bionic/+/1419433 Change-Id: I9447c49cd08bfac0f127229455529bffdfd23c56
This commit is contained in:
commit
ba4b40602a
|
@ -26,16 +26,24 @@
|
|||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#ifndef _SYS_PROCFS_H_
|
||||
#define _SYS_PROCFS_H_
|
||||
#pragma once
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/ptrace.h>
|
||||
#include <sys/ucontext.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
#if defined(__arm__)
|
||||
#define ELF_NGREG (sizeof(struct user_regs) / sizeof(elf_greg_t))
|
||||
#elif defined(__aarch64__)
|
||||
#define ELF_NGREG (sizeof(struct user_pt_regs) / sizeof(elf_greg_t))
|
||||
#else
|
||||
#define ELF_NGREG (sizeof(struct user_regs_struct) / sizeof(elf_greg_t))
|
||||
#endif
|
||||
|
||||
typedef unsigned long elf_greg_t;
|
||||
typedef elf_greg_t elf_gregset_t[NGREG];
|
||||
typedef elf_greg_t elf_gregset_t[ELF_NGREG];
|
||||
|
||||
typedef fpregset_t elf_fpregset_t;
|
||||
|
||||
|
@ -58,5 +66,3 @@ struct elf_siginfo {
|
|||
#define ELF_PRARGSZ 80
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
#include <sys/procfs.h>
|
||||
|
||||
TEST(sys_procfs, smoke) {
|
||||
TEST(sys_procfs, types) {
|
||||
elf_greg_t reg;
|
||||
memset(®, 0, sizeof(reg));
|
||||
|
||||
|
@ -37,3 +37,16 @@ TEST(sys_procfs, smoke) {
|
|||
static_assert(sizeof(prgregset_t) == sizeof(elf_gregset_t), "");
|
||||
static_assert(sizeof(prfpregset_t) == sizeof(elf_fpregset_t), "");
|
||||
}
|
||||
|
||||
TEST(sys_procfs, constants) {
|
||||
// NGREG != ELF_NGREG (https://github.com/android/ndk/issues/1347)
|
||||
static_assert(sizeof(gregset_t) / sizeof(greg_t) == NGREG);
|
||||
|
||||
#if defined(__arm__)
|
||||
static_assert(sizeof(user_regs) / sizeof(elf_greg_t) == ELF_NGREG);
|
||||
#elif defined(__aarch64__)
|
||||
static_assert(sizeof(user_pt_regs) / sizeof(elf_greg_t) == ELF_NGREG);
|
||||
#else
|
||||
static_assert(sizeof(user_regs_struct) / sizeof(elf_greg_t) == ELF_NGREG);
|
||||
#endif
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue