blob: ab58990bf35dfe27ae4cb0e1e2bfa69b3fb0d627 [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001/****************************************************************************
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 ***
Ben Cheng654325d2012-03-07 21:13:49 -080010 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080017 ****************************************************************************
18 ****************************************************************************/
19#ifndef __ASM_ARM_PTRACE_H
20#define __ASM_ARM_PTRACE_H
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080021#define PTRACE_GETREGS 12
22#define PTRACE_SETREGS 13
Ben Cheng654325d2012-03-07 21:13:49 -080023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080024#define PTRACE_GETFPREGS 14
25#define PTRACE_SETFPREGS 15
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080026#define PTRACE_GETWMMXREGS 18
27#define PTRACE_SETWMMXREGS 19
Ben Cheng654325d2012-03-07 21:13:49 -080028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080029#define PTRACE_OLDSETOPTIONS 21
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080030#define PTRACE_GET_THREAD_AREA 22
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080031#define PTRACE_SET_SYSCALL 23
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080032#define PTRACE_GETCRUNCHREGS 25
Ben Cheng654325d2012-03-07 21:13:49 -080033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080034#define PTRACE_SETCRUNCHREGS 26
Ben Chengee842312009-12-17 12:46:45 -080035#define PTRACE_GETVFPREGS 27
Doug Kwan459436f2010-11-03 16:51:32 -070036#define PTRACE_SETVFPREGS 28
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080037#define USR26_MODE 0x00000000
Ben Cheng654325d2012-03-07 21:13:49 -080038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080039#define FIQ26_MODE 0x00000001
40#define IRQ26_MODE 0x00000002
41#define SVC26_MODE 0x00000003
42#define USR_MODE 0x00000010
Ben Cheng654325d2012-03-07 21:13:49 -080043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080044#define FIQ_MODE 0x00000011
45#define IRQ_MODE 0x00000012
46#define SVC_MODE 0x00000013
47#define ABT_MODE 0x00000017
Ben Cheng654325d2012-03-07 21:13:49 -080048/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080049#define UND_MODE 0x0000001b
50#define SYSTEM_MODE 0x0000001f
51#define MODE32_BIT 0x00000010
52#define MODE_MASK 0x0000001f
Ben Cheng654325d2012-03-07 21:13:49 -080053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080054#define PSR_T_BIT 0x00000020
55#define PSR_F_BIT 0x00000040
56#define PSR_I_BIT 0x00000080
57#define PSR_J_BIT 0x01000000
Ben Cheng654325d2012-03-07 21:13:49 -080058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080059#define PSR_Q_BIT 0x08000000
60#define PSR_V_BIT 0x10000000
61#define PSR_C_BIT 0x20000000
62#define PSR_Z_BIT 0x40000000
Ben Cheng654325d2012-03-07 21:13:49 -080063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080064#define PSR_N_BIT 0x80000000
65#define PCMASK 0
Elliott Hughesc95eb572013-01-29 18:15:55 -080066#define PSR_f 0xff000000
67#define PSR_s 0x00ff0000
Ben Cheng654325d2012-03-07 21:13:49 -080068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesc95eb572013-01-29 18:15:55 -080069#define PSR_x 0x0000ff00
70#define PSR_c 0x000000ff
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080071#ifndef __ASSEMBLY__
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080072struct pt_regs {
Ben Cheng654325d2012-03-07 21:13:49 -080073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
David 'Digit' Turner30b4d822011-02-01 14:50:12 +010074 long uregs[18];
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080075};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080076#define ARM_cpsr uregs[16]
77#define ARM_pc uregs[15]
Ben Cheng654325d2012-03-07 21:13:49 -080078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080079#define ARM_lr uregs[14]
80#define ARM_sp uregs[13]
81#define ARM_ip uregs[12]
82#define ARM_fp uregs[11]
Ben Cheng654325d2012-03-07 21:13:49 -080083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080084#define ARM_r10 uregs[10]
85#define ARM_r9 uregs[9]
86#define ARM_r8 uregs[8]
87#define ARM_r7 uregs[7]
Ben Cheng654325d2012-03-07 21:13:49 -080088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080089#define ARM_r6 uregs[6]
90#define ARM_r5 uregs[5]
91#define ARM_r4 uregs[4]
92#define ARM_r3 uregs[3]
Ben Cheng654325d2012-03-07 21:13:49 -080093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080094#define ARM_r2 uregs[2]
95#define ARM_r1 uregs[1]
96#define ARM_r0 uregs[0]
97#define ARM_ORIG_r0 uregs[17]
Ben Cheng654325d2012-03-07 21:13:49 -080098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080099#define pc_pointer(v) ((v) & ~PCMASK)
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800100#define instruction_pointer(regs) (pc_pointer((regs)->ARM_pc))
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800101#define profile_pc(regs) instruction_pointer(regs)
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800102#endif
Ben Cheng654325d2012-03-07 21:13:49 -0800103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800104#endif