1
0
Fork 0

microblaze: Move exception_table_entry upward

Just sort to be able remove whole block.

Signed-off-by: Michal Simek <monstr@monstr.eu>
hifive-unleashed-5.1
Michal Simek 2010-03-05 15:37:57 +01:00
parent 40db083433
commit 357bc3c928
1 changed files with 15 additions and 16 deletions

View File

@ -55,6 +55,21 @@
# define segment_eq(a, b) ((a).seg == (b).seg)
/*
* The exception table consists of pairs of addresses: the first is the
* address of an instruction that is allowed to fault, and the second is
* the address at which the program should continue. No registers are
* modified, so it is entirely up to the continuation code to figure out
* what to do.
*
* All the routines below use bits of fixup code that are out of line
* with the main instruction path. This means when everything is well,
* we don't even have to jump over them. Further, they do not intrude
* on our cache or tlb entries.
*/
struct exception_table_entry {
unsigned long insn, fixup;
};
#define __clear_user(addr, n) (memset((void *)(addr), 0, (n)), 0)
@ -333,22 +348,6 @@ extern int __strnlen_user(const char __user *sstr, int len);
extern unsigned long __copy_tofrom_user(void __user *to,
const void __user *from, unsigned long size);
/*
* The exception table consists of pairs of addresses: the first is the
* address of an instruction that is allowed to fault, and the second is
* the address at which the program should continue. No registers are
* modified, so it is entirely up to the continuation code to figure out
* what to do.
*
* All the routines below use bits of fixup code that are out of line
* with the main instruction path. This means when everything is well,
* we don't even have to jump over them. Further, they do not intrude
* on our cache or tlb entries.
*/
struct exception_table_entry {
unsigned long insn, fixup;
};
#endif /* __ASSEMBLY__ */
#endif /* __KERNEL__ */