]>
Commit | Line | Data |
---|---|---|
79aceca5 FB |
1 | /* |
2 | * PPC emulation for qemu: syscall definitions. | |
5fafdf24 | 3 | * |
79aceca5 FB |
4 | * Copyright (c) 2003 Jocelyn Mayer |
5 | * | |
6 | * This library is free software; you can redistribute it and/or | |
7 | * modify it under the terms of the GNU Lesser General Public | |
8 | * License as published by the Free Software Foundation; either | |
9 | * version 2 of the License, or (at your option) any later version. | |
10 | * | |
11 | * This library is distributed in the hope that it will be useful, | |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
14 | * Lesser General Public License for more details. | |
15 | * | |
16 | * You should have received a copy of the GNU Lesser General Public | |
8167ee88 | 17 | * License along with this library; if not, see <http://www.gnu.org/licenses/>. |
79aceca5 FB |
18 | */ |
19 | ||
20 | /* XXX: ABSOLUTELY BUGGY: | |
21 | * for now, this is quite just a cut-and-paste from i386 target... | |
22 | */ | |
23 | ||
24 | /* default linux values for the selectors */ | |
25 | #define __USER_DS (1) | |
26 | ||
27 | struct target_pt_regs { | |
e32448e0 JM |
28 | abi_ulong gpr[32]; |
29 | abi_ulong nip; | |
30 | abi_ulong msr; | |
31 | abi_ulong orig_gpr3; /* Used for restarting system calls */ | |
32 | abi_ulong ctr; | |
33 | abi_ulong link; | |
34 | abi_ulong xer; | |
35 | abi_ulong ccr; | |
36 | #if defined(TARGET_PPC64) && !defined(TARGET_ABI32) | |
37 | abi_ulong softe; | |
38 | #else | |
39 | abi_ulong mq; /* 601 only (not used at present) */ | |
40 | #endif | |
79aceca5 | 41 | /* Used on APUS to hold IPL value. */ |
e32448e0 JM |
42 | abi_ulong trap; /* Reason for being here */ |
43 | abi_ulong dar; /* Fault registers */ | |
44 | abi_ulong dsisr; | |
45 | abi_ulong result; /* Result of a system call */ | |
79aceca5 FB |
46 | }; |
47 | ||
48 | /* ioctls */ | |
49 | struct target_revectored_struct { | |
992f48a0 | 50 | abi_ulong __map[8]; /* 256 bits */ |
79aceca5 FB |
51 | }; |
52 | ||
bcd4933a NF |
53 | /* Nasty hack: define a fake errno value for use by sigreturn. */ |
54 | #define TARGET_QEMU_ESIGRETURN 255 | |
55 | ||
79aceca5 FB |
56 | /* |
57 | * flags masks | |
58 | */ | |
59 | ||
f85e9a68 JM |
60 | #if defined(TARGET_PPC64) && !defined(TARGET_ABI32) |
61 | #define UNAME_MACHINE "ppc64" | |
62 | #else | |
cf720db3 | 63 | #define UNAME_MACHINE "ppc" |
f85e9a68 | 64 | #endif |
4ce6243d PM |
65 | |
66 | #define TARGET_CLONE_BACKWARDS |