diff options
Diffstat (limited to 'arch/loongarch/include/uapi/asm/ptrace.h')
| -rw-r--r-- | arch/loongarch/include/uapi/asm/ptrace.h | 46 |
1 files changed, 39 insertions, 7 deletions
diff --git a/arch/loongarch/include/uapi/asm/ptrace.h b/arch/loongarch/include/uapi/asm/ptrace.h index 083193f4a5d5..215e0f9e8aa3 100644 --- a/arch/loongarch/include/uapi/asm/ptrace.h +++ b/arch/loongarch/include/uapi/asm/ptrace.h @@ -10,10 +10,6 @@ #include <linux/types.h> -#ifndef __KERNEL__ -#include <stdint.h> -#endif - /* * For PTRACE_{POKE,PEEK}USR. 0 - 31 are GPRs, * 32 is syscall's original ARG0, 33 is PC, 34 is BADVADDR. @@ -41,9 +37,45 @@ struct user_pt_regs { } __attribute__((aligned(8))); struct user_fp_state { - uint64_t fpr[32]; - uint64_t fcc; - uint32_t fcsr; + __u64 fpr[32]; + __u64 fcc; + __u32 fcsr; +}; + +struct user_lsx_state { + /* 32 registers, 128 bits width per register. */ + __u64 vregs[32*2]; +}; + +struct user_lasx_state { + /* 32 registers, 256 bits width per register. */ + __u64 vregs[32*4]; +}; + +struct user_lbt_state { + __u64 scr[4]; + __u32 eflags; + __u32 ftop; +}; + +struct user_watch_state { + __u64 dbg_info; + struct { + __u64 addr; + __u64 mask; + __u32 ctrl; + __u32 pad; + } dbg_regs[8]; +}; + +struct user_watch_state_v2 { + __u64 dbg_info; + struct { + __u64 addr; + __u64 mask; + __u32 ctrl; + __u32 pad; + } dbg_regs[14]; }; #define PTRACE_SYSEMU 0x1f |
