Home | History | Annotate | Download | only in asm
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ****************************************************************************
     11  ****************************************************************************/
     12 #ifndef __ASM_ARM_PTRACE_H
     13 #define __ASM_ARM_PTRACE_H
     14 
     15 #define PTRACE_GETREGS 12
     16 #define PTRACE_SETREGS 13
     17 #define PTRACE_GETFPREGS 14
     18 #define PTRACE_SETFPREGS 15
     19 
     20 #define PTRACE_GETWMMXREGS 18
     21 #define PTRACE_SETWMMXREGS 19
     22 
     23 #define PTRACE_OLDSETOPTIONS 21
     24 
     25 #define PTRACE_GET_THREAD_AREA 22
     26 
     27 #define PTRACE_SET_SYSCALL 23
     28 
     29 #define PTRACE_GETCRUNCHREGS 25
     30 #define PTRACE_SETCRUNCHREGS 26
     31 
     32 #define USR26_MODE 0x00000000
     33 #define FIQ26_MODE 0x00000001
     34 #define IRQ26_MODE 0x00000002
     35 #define SVC26_MODE 0x00000003
     36 #define USR_MODE 0x00000010
     37 #define FIQ_MODE 0x00000011
     38 #define IRQ_MODE 0x00000012
     39 #define SVC_MODE 0x00000013
     40 #define ABT_MODE 0x00000017
     41 #define UND_MODE 0x0000001b
     42 #define SYSTEM_MODE 0x0000001f
     43 #define MODE32_BIT 0x00000010
     44 #define MODE_MASK 0x0000001f
     45 #define PSR_T_BIT 0x00000020
     46 #define PSR_F_BIT 0x00000040
     47 #define PSR_I_BIT 0x00000080
     48 #define PSR_J_BIT 0x01000000
     49 #define PSR_Q_BIT 0x08000000
     50 #define PSR_V_BIT 0x10000000
     51 #define PSR_C_BIT 0x20000000
     52 #define PSR_Z_BIT 0x40000000
     53 #define PSR_N_BIT 0x80000000
     54 #define PCMASK 0
     55 
     56 #define PSR_f 0xff000000
     57 #define PSR_s 0x00ff0000
     58 #define PSR_x 0x0000ff00
     59 #define PSR_c 0x000000ff
     60 
     61 #ifndef __ASSEMBLY__
     62 
     63 struct pt_regs {
     64  long uregs[18];
     65 };
     66 
     67 #define ARM_cpsr uregs[16]
     68 #define ARM_pc uregs[15]
     69 #define ARM_lr uregs[14]
     70 #define ARM_sp uregs[13]
     71 #define ARM_ip uregs[12]
     72 #define ARM_fp uregs[11]
     73 #define ARM_r10 uregs[10]
     74 #define ARM_r9 uregs[9]
     75 #define ARM_r8 uregs[8]
     76 #define ARM_r7 uregs[7]
     77 #define ARM_r6 uregs[6]
     78 #define ARM_r5 uregs[5]
     79 #define ARM_r4 uregs[4]
     80 #define ARM_r3 uregs[3]
     81 #define ARM_r2 uregs[2]
     82 #define ARM_r1 uregs[1]
     83 #define ARM_r0 uregs[0]
     84 #define ARM_ORIG_r0 uregs[17]
     85 
     86 #define pc_pointer(v)   ((v) & ~PCMASK)
     87 
     88 #define instruction_pointer(regs)   (pc_pointer((regs)->ARM_pc))
     89 
     90 #define profile_pc(regs) instruction_pointer(regs)
     91 
     92 #endif
     93 
     94 #endif
     95 
     96