Where Online Learning is simpler!
The C and C++ Include Header Files
/usr/include/x86_64-linux-gnu/asm/ptrace.h
$ cat -n /usr/include/x86_64-linux-gnu/asm/ptrace.h 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 #ifndef _ASM_X86_PTRACE_H 3 #define _ASM_X86_PTRACE_H 4 5 /* For */ 6 #include
7 #include
8 9 10 #ifndef __ASSEMBLY__ 11 12 #ifdef __i386__ 13 /* this struct defines the way the registers are stored on the 14 stack during a system call. */ 15 16 17 struct pt_regs { 18 long ebx; 19 long ecx; 20 long edx; 21 long esi; 22 long edi; 23 long ebp; 24 long eax; 25 int xds; 26 int xes; 27 int xfs; 28 int xgs; 29 long orig_eax; 30 long eip; 31 int xcs; 32 long eflags; 33 long esp; 34 int xss; 35 }; 36 37 38 #else /* __i386__ */ 39 40 41 struct pt_regs { 42 /* 43 * C ABI says these regs are callee-preserved. They aren't saved on kernel entry 44 * unless syscall needs a complete, fully filled "struct pt_regs". 45 */ 46 unsigned long r15; 47 unsigned long r14; 48 unsigned long r13; 49 unsigned long r12; 50 unsigned long rbp; 51 unsigned long rbx; 52 /* These regs are callee-clobbered. Always saved on kernel entry. */ 53 unsigned long r11; 54 unsigned long r10; 55 unsigned long r9; 56 unsigned long r8; 57 unsigned long rax; 58 unsigned long rcx; 59 unsigned long rdx; 60 unsigned long rsi; 61 unsigned long rdi; 62 /* 63 * On syscall entry, this is syscall#. On CPU exception, this is error code. 64 * On hw interrupt, it's IRQ number: 65 */ 66 unsigned long orig_rax; 67 /* Return frame for iretq */ 68 unsigned long rip; 69 unsigned long cs; 70 unsigned long eflags; 71 unsigned long rsp; 72 unsigned long ss; 73 /* top of stack page */ 74 }; 75 76 #endif /* !__i386__ */ 77 78 79 80 #endif /* !__ASSEMBLY__ */ 81 82 #endif /* _ASM_X86_PTRACE_H */
Contact us
|
About us
|
Term of use
|
Copyright © 2000-2025 MyWebUniversity.com ™