diff options
Diffstat (limited to 'include/asm-sparc64/ttable.h')
| -rw-r--r-- | include/asm-sparc64/ttable.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/asm-sparc64/ttable.h b/include/asm-sparc64/ttable.h index 1b55538b944f..52d67d394107 100644 --- a/include/asm-sparc64/ttable.h +++ b/include/asm-sparc64/ttable.h | |||
| @@ -91,13 +91,14 @@ | |||
| 91 | nop; | 91 | nop; |
| 92 | 92 | ||
| 93 | #define SYSCALL_TRAP(routine, systbl) \ | 93 | #define SYSCALL_TRAP(routine, systbl) \ |
| 94 | rdpr %pil, %g2; \ | ||
| 95 | mov TSTATE_SYSCALL, %g3; \ | ||
| 94 | sethi %hi(109f), %g7; \ | 96 | sethi %hi(109f), %g7; \ |
| 95 | ba,pt %xcc, etrap; \ | 97 | ba,pt %xcc, etrap_syscall; \ |
| 96 | 109: or %g7, %lo(109b), %g7; \ | 98 | 109: or %g7, %lo(109b), %g7; \ |
| 97 | sethi %hi(systbl), %l7; \ | 99 | sethi %hi(systbl), %l7; \ |
| 98 | ba,pt %xcc, routine; \ | 100 | ba,pt %xcc, routine; \ |
| 99 | or %l7, %lo(systbl), %l7; \ | 101 | or %l7, %lo(systbl), %l7; |
| 100 | nop; nop; | ||
| 101 | 102 | ||
| 102 | #define TRAP_UTRAP(handler,lvl) \ | 103 | #define TRAP_UTRAP(handler,lvl) \ |
| 103 | mov handler, %g3; \ | 104 | mov handler, %g3; \ |
