diff options
author | blueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-10-26 20:33:16 +0000 |
---|---|---|
committer | blueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-10-26 20:33:16 +0000 |
commit | b2ee16b2fab44c7a6d8dba9375682882981b1e24 (patch) | |
tree | 2a24173f54e272d48f844d6caeefa9b3acf76c9b /bsd-user/sparc64 | |
parent | dc733dfba697812bb1841c937db30bc77ae3ce70 (diff) | |
download | qemu-b2ee16b2fab44c7a6d8dba9375682882981b1e24.tar.gz qemu-b2ee16b2fab44c7a6d8dba9375682882981b1e24.tar.bz2 qemu-b2ee16b2fab44c7a6d8dba9375682882981b1e24.zip |
Preliminary BSD user emulator support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5544 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'bsd-user/sparc64')
-rw-r--r-- | bsd-user/sparc64/syscall.h | 10 | ||||
-rw-r--r-- | bsd-user/sparc64/target_signal.h | 27 |
2 files changed, 37 insertions, 0 deletions
diff --git a/bsd-user/sparc64/syscall.h b/bsd-user/sparc64/syscall.h new file mode 100644 index 0000000000..81a816de94 --- /dev/null +++ b/bsd-user/sparc64/syscall.h @@ -0,0 +1,10 @@ +struct target_pt_regs { + abi_ulong u_regs[16]; + abi_ulong tstate; + abi_ulong pc; + abi_ulong npc; + abi_ulong y; + abi_ulong fprs; +}; + +#define UNAME_MACHINE "sun4u" diff --git a/bsd-user/sparc64/target_signal.h b/bsd-user/sparc64/target_signal.h new file mode 100644 index 0000000000..5b2abba40f --- /dev/null +++ b/bsd-user/sparc64/target_signal.h @@ -0,0 +1,27 @@ +#ifndef TARGET_SIGNAL_H +#define TARGET_SIGNAL_H + +#include "cpu.h" + +/* this struct defines a stack used during syscall handling */ + +typedef struct target_sigaltstack { + abi_ulong ss_sp; + abi_long ss_flags; + abi_ulong ss_size; +} target_stack_t; + + +#ifndef UREG_I6 +#define UREG_I6 6 +#endif +#ifndef UREG_FP +#define UREG_FP UREG_I6 +#endif + +static inline abi_ulong get_sp_from_cpustate(CPUSPARCState *state) +{ + return state->regwptr[UREG_FP]; +} + +#endif /* TARGET_SIGNAL_H */ |