aebc2dd61f0dc86bcd6de52b558b0be3900e0922
[pandora-kernel.git] / arch / um / sys-x86 / shared / sysdep / sigcontext_32.h
1 /* 
2  * Copyright (C) 2000 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
3  * Licensed under the GPL
4  */
5
6 #ifndef __SYS_SIGCONTEXT_I386_H
7 #define __SYS_SIGCONTEXT_I386_H
8
9 #include <generated/user_constants.h>
10
11 #define SC_OFFSET(sc, field) \
12         *((unsigned long *) &(((char *) (sc))[HOST_##field]))
13
14 #define SC_TRAPNO(sc) SC_OFFSET(sc, SC_TRAPNO)
15 #define SC_ERR(sc) SC_OFFSET(sc, SC_ERR)
16 #define SC_CR2(sc) SC_OFFSET(sc, SC_CR2)
17
18 #define GET_FAULTINFO_FROM_SC(fi, sc) \
19         { \
20                 (fi).cr2 = SC_CR2(sc); \
21                 (fi).error_code = SC_ERR(sc); \
22                 (fi).trap_no = SC_TRAPNO(sc); \
23         }
24
25 #endif