diff options
Diffstat (limited to 'qemu/bsd-user/i386')
-rw-r--r-- | qemu/bsd-user/i386/target_signal.h | 20 | ||||
-rw-r--r-- | qemu/bsd-user/i386/target_syscall.h | 165 |
2 files changed, 0 insertions, 185 deletions
diff --git a/qemu/bsd-user/i386/target_signal.h b/qemu/bsd-user/i386/target_signal.h deleted file mode 100644 index 2ef36d1f9..000000000 --- a/qemu/bsd-user/i386/target_signal.h +++ /dev/null @@ -1,20 +0,0 @@ -#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; - - -static inline abi_ulong get_sp_from_cpustate(CPUX86State *state) -{ - return state->regs[R_ESP]; -} - -#endif /* TARGET_SIGNAL_H */ diff --git a/qemu/bsd-user/i386/target_syscall.h b/qemu/bsd-user/i386/target_syscall.h deleted file mode 100644 index 82d1c58ca..000000000 --- a/qemu/bsd-user/i386/target_syscall.h +++ /dev/null @@ -1,165 +0,0 @@ -#ifndef TARGET_SYSCALL_H -#define TARGET_SYSCALL_H - -/* default linux values for the selectors */ -#define __USER_CS (0x23) -#define __USER_DS (0x2B) - -struct target_pt_regs { - long ebx; - long ecx; - long edx; - long esi; - long edi; - long ebp; - long eax; - int xds; - int xes; - long orig_eax; - long eip; - int xcs; - long eflags; - long esp; - int xss; -}; - -/* ioctls */ - -#define TARGET_LDT_ENTRIES 8192 -#define TARGET_LDT_ENTRY_SIZE 8 - -#define TARGET_GDT_ENTRIES 9 -#define TARGET_GDT_ENTRY_TLS_ENTRIES 3 -#define TARGET_GDT_ENTRY_TLS_MIN 6 -#define TARGET_GDT_ENTRY_TLS_MAX (TARGET_GDT_ENTRY_TLS_MIN + TARGET_GDT_ENTRY_TLS_ENTRIES - 1) - -struct target_modify_ldt_ldt_s { - unsigned int entry_number; - abi_ulong base_addr; - unsigned int limit; - unsigned int flags; -}; - -/* vm86 defines */ - -#define TARGET_BIOSSEG 0x0f000 - -#define TARGET_CPU_086 0 -#define TARGET_CPU_186 1 -#define TARGET_CPU_286 2 -#define TARGET_CPU_386 3 -#define TARGET_CPU_486 4 -#define TARGET_CPU_586 5 - -#define TARGET_VM86_SIGNAL 0 /* return due to signal */ -#define TARGET_VM86_UNKNOWN 1 /* unhandled GP fault - IO-instruction or similar */ -#define TARGET_VM86_INTx 2 /* int3/int x instruction (ARG = x) */ -#define TARGET_VM86_STI 3 /* sti/popf/iret instruction enabled virtual interrupts */ - -/* - * Additional return values when invoking new vm86() - */ -#define TARGET_VM86_PICRETURN 4 /* return due to pending PIC request */ -#define TARGET_VM86_TRAP 6 /* return due to DOS-debugger request */ - -/* - * function codes when invoking new vm86() - */ -#define TARGET_VM86_PLUS_INSTALL_CHECK 0 -#define TARGET_VM86_ENTER 1 -#define TARGET_VM86_ENTER_NO_BYPASS 2 -#define TARGET_VM86_REQUEST_IRQ 3 -#define TARGET_VM86_FREE_IRQ 4 -#define TARGET_VM86_GET_IRQ_BITS 5 -#define TARGET_VM86_GET_AND_RESET_IRQ 6 - -/* - * This is the stack-layout seen by the user space program when we have - * done a translation of "SAVE_ALL" from vm86 mode. The real kernel layout - * is 'kernel_vm86_regs' (see below). - */ - -struct target_vm86_regs { -/* - * normal regs, with special meaning for the segment descriptors.. - */ - abi_long ebx; - abi_long ecx; - abi_long edx; - abi_long esi; - abi_long edi; - abi_long ebp; - abi_long eax; - abi_long __null_ds; - abi_long __null_es; - abi_long __null_fs; - abi_long __null_gs; - abi_long orig_eax; - abi_long eip; - unsigned short cs, __csh; - abi_long eflags; - abi_long esp; - unsigned short ss, __ssh; -/* - * these are specific to v86 mode: - */ - unsigned short es, __esh; - unsigned short ds, __dsh; - unsigned short fs, __fsh; - unsigned short gs, __gsh; -}; - -struct target_revectored_struct { - abi_ulong __map[8]; /* 256 bits */ -}; - -struct target_vm86_struct { - struct target_vm86_regs regs; - abi_ulong flags; - abi_ulong screen_bitmap; - abi_ulong cpu_type; - struct target_revectored_struct int_revectored; - struct target_revectored_struct int21_revectored; -}; - -/* - * flags masks - */ -#define TARGET_VM86_SCREEN_BITMAP 0x0001 - -struct target_vm86plus_info_struct { - abi_ulong flags; -#define TARGET_force_return_for_pic (1 << 0) -#define TARGET_vm86dbg_active (1 << 1) /* for debugger */ -#define TARGET_vm86dbg_TFpendig (1 << 2) /* for debugger */ -#define TARGET_is_vm86pus (1 << 31) /* for vm86 internal use */ - unsigned char vm86dbg_intxxtab[32]; /* for debugger */ -}; - -struct target_vm86plus_struct { - struct target_vm86_regs regs; - abi_ulong flags; - abi_ulong screen_bitmap; - abi_ulong cpu_type; - struct target_revectored_struct int_revectored; - struct target_revectored_struct int21_revectored; - struct target_vm86plus_info_struct vm86plus; -}; - -/* FreeBSD sysarch(2) */ -#define TARGET_FREEBSD_I386_GET_LDT 0 -#define TARGET_FREEBSD_I386_SET_LDT 1 - /* I386_IOPL */ -#define TARGET_FREEBSD_I386_GET_IOPERM 3 -#define TARGET_FREEBSD_I386_SET_IOPERM 4 - /* xxxxx */ -#define TARGET_FREEBSD_I386_VM86 6 -#define TARGET_FREEBSD_I386_GET_FSBASE 7 -#define TARGET_FREEBSD_I386_SET_FSBASE 8 -#define TARGET_FREEBSD_I386_GET_GSBASE 9 -#define TARGET_FREEBSD_I386_SET_GSBASE 10 - - -#define UNAME_MACHINE "i386" - -#endif /* TARGET_SYSCALL_H */ |