|
@@ -1,7 +1,7 @@
|
|
/*
|
|
/*
|
|
* arch/sh/kernel/cpu/sh3/ex.S
|
|
* arch/sh/kernel/cpu/sh3/ex.S
|
|
*
|
|
*
|
|
- * The SH-3 exception vector table.
|
|
|
|
|
|
+ * The SH-3 and SH-4 exception vector table.
|
|
|
|
|
|
* Copyright (C) 1999, 2000, 2002 Niibe Yutaka
|
|
* Copyright (C) 1999, 2000, 2002 Niibe Yutaka
|
|
* Copyright (C) 2003 - 2006 Paul Mundt
|
|
* Copyright (C) 2003 - 2006 Paul Mundt
|
|
@@ -9,7 +9,6 @@
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
|
* License. See the file "COPYING" in the main directory of this archive
|
|
* License. See the file "COPYING" in the main directory of this archive
|
|
* for more details.
|
|
* for more details.
|
|
- *
|
|
|
|
*/
|
|
*/
|
|
#include <linux/linkage.h>
|
|
#include <linux/linkage.h>
|
|
|
|
|
|
@@ -36,8 +35,12 @@ ENTRY(exception_handling_table)
|
|
.long exception_error ! address error load
|
|
.long exception_error ! address error load
|
|
.long exception_error ! address error store /* 100 */
|
|
.long exception_error ! address error store /* 100 */
|
|
#endif
|
|
#endif
|
|
- .long exception_error ! fpu_exception /* 120 */
|
|
|
|
- .long exception_error /* 140 */
|
|
|
|
|
|
+#if defined(CONFIG_SH_FPU)
|
|
|
|
+ .long do_fpu_error /* 120 */
|
|
|
|
+#else
|
|
|
|
+ .long exception_error /* 120 */
|
|
|
|
+#endif
|
|
|
|
+ .long exception_error /* 140 */
|
|
.long system_call ! Unconditional Trap /* 160 */
|
|
.long system_call ! Unconditional Trap /* 160 */
|
|
.long exception_error ! reserved_instruction (filled by trap_init) /* 180 */
|
|
.long exception_error ! reserved_instruction (filled by trap_init) /* 180 */
|
|
.long exception_error ! illegal_slot_instruction (filled by trap_init) /*1A0*/
|
|
.long exception_error ! illegal_slot_instruction (filled by trap_init) /*1A0*/
|
|
@@ -55,4 +58,4 @@ ENTRY(user_break_point_trap)
|
|
* away offsets can be manually inserted in to their appropriate
|
|
* away offsets can be manually inserted in to their appropriate
|
|
* location via set_exception_table_{evt,vec}().
|
|
* location via set_exception_table_{evt,vec}().
|
|
*/
|
|
*/
|
|
- .balign 4096,0,4096
|
|
|
|
|
|
+ .balign 4096,0,4096
|