summaryrefslogtreecommitdiffstats
path: root/include/asm-ia64/ia32.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-ia64/ia32.h')
-rw-r--r--include/asm-ia64/ia32.h19
1 files changed, 13 insertions, 6 deletions
diff --git a/include/asm-ia64/ia32.h b/include/asm-ia64/ia32.h
index 00219b00d..884f1314a 100644
--- a/include/asm-ia64/ia32.h
+++ b/include/asm-ia64/ia32.h
@@ -112,10 +112,16 @@ struct sigaction32 {
sigset32_t sa_mask; /* A 32 bit mask */
};
+typedef struct sigaltstack_ia32 {
+ unsigned int ss_sp;
+ int ss_flags;
+ unsigned int ss_size;
+} stack_ia32_t;
+
struct ucontext_ia32 {
- unsigned long uc_flags;
- struct ucontext_ia32 *uc_link;
- stack_t uc_stack;
+ unsigned int uc_flags;
+ unsigned int uc_link;
+ stack_ia32_t uc_stack;
struct sigcontext_ia32 uc_mcontext;
sigset_t uc_sigmask; /* mask last for extensibility */
};
@@ -276,7 +282,8 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
#define ELF_PLATFORM 0
#ifdef __KERNEL__
-#define SET_PERSONALITY(ex, ibcs2) set_personality((ibcs2)?PER_SVR4:PER_LINUX)
+# define SET_PERSONALITY(EX,IBCS2) \
+ (current->personality = (IBCS2) ? PER_SVR4 : PER_LINUX)
#endif
#define IA32_EFLAG 0x200
@@ -342,8 +349,8 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
* IA32 floating point control registers starting values
*/
-#define IA32_FSR_DEFAULT 0x55550000 /* set all tag bits */
-#define IA32_FCR_DEFAULT 0x33f /* single precision, all masks */
+#define IA32_FSR_DEFAULT 0x55550000 /* set all tag bits */
+#define IA32_FCR_DEFAULT 0x17800000037fULL /* extended precision, all masks */
#define IA32_PTRACE_GETREGS 12
#define IA32_PTRACE_SETREGS 13