1 #ifndef _ASM_MIPS_ELFCORE_COMPAT_H
2 #define _ASM_MIPS_ELFCORE_COMPAT_H
5 * On mips we have two 32bit ABIs - o32 and n32. The latter
6 * has bigger registers, so we use it for compat_elf_regset_t.
7 * The former uses o32_elf_prstatus and PRSTATUS_SIZE/SET_PR_FPVALID
8 * are used to choose the size and location of ->pr_fpvalid of
9 * the layout actually used.
11 typedef elf_gregset_t compat_elf_gregset_t
;
13 struct o32_elf_prstatus
15 struct compat_elf_prstatus_common common
;
16 unsigned int pr_reg
[ELF_NGREG
];
17 compat_int_t pr_fpvalid
;
20 #define PRSTATUS_SIZE \
21 (!test_thread_flag(TIF_32BIT_REGS) \
22 ? sizeof(struct compat_elf_prstatus) \
23 : sizeof(struct o32_elf_prstatus))
24 #define SET_PR_FPVALID(S) \
25 (*(!test_thread_flag(TIF_32BIT_REGS) \
27 : &((struct o32_elf_prstatus *)(S))->pr_fpvalid) = 1)