tükörképe a:
git://git.musl-libc.org/musl
synced 2025-01-18 15:43:41 +00:00
4ffa706899
the ABI type for the vector registers in fpregset_t, struct fpsimd_context, and struct user_fpsimd_struct is __uint128_t, which was presumably originally not used because it's a nonstandard type, but its existence is mandated by the aarch64 psABI. use of the wrong type here broke software using these structures, and encouraged incorrect fixes with casts rather than reinterpretation of representation.
16 sor
361 B
C
16 sor
361 B
C
struct user_regs_struct {
|
|
unsigned long long regs[31];
|
|
unsigned long long sp;
|
|
unsigned long long pc;
|
|
unsigned long long pstate;
|
|
};
|
|
|
|
struct user_fpsimd_struct {
|
|
__uint128_t vregs[32];
|
|
unsigned int fpsr;
|
|
unsigned int fpcr;
|
|
};
|
|
|
|
#define ELF_NREG 34
|
|
typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NREG];
|
|
typedef struct user_fpsimd_struct elf_fpregset_t;
|