|
@@ -313,13 +313,13 @@ intvec_\vecname:
|
|
movei r3, 0
|
|
movei r3, 0
|
|
}
|
|
}
|
|
.else
|
|
.else
|
|
- .ifc \c_routine, op_handle_perf_interrupt
|
|
|
|
|
|
+ .ifc \c_routine, handle_perf_interrupt
|
|
{
|
|
{
|
|
mfspr r2, PERF_COUNT_STS
|
|
mfspr r2, PERF_COUNT_STS
|
|
movei r3, -1 /* not used, but set for consistency */
|
|
movei r3, -1 /* not used, but set for consistency */
|
|
}
|
|
}
|
|
.else
|
|
.else
|
|
- .ifc \c_routine, op_handle_aux_perf_interrupt
|
|
|
|
|
|
+ .ifc \c_routine, handle_perf_interrupt
|
|
{
|
|
{
|
|
mfspr r2, AUX_PERF_COUNT_STS
|
|
mfspr r2, AUX_PERF_COUNT_STS
|
|
movei r3, -1 /* not used, but set for consistency */
|
|
movei r3, -1 /* not used, but set for consistency */
|
|
@@ -1835,8 +1835,9 @@ int_unalign:
|
|
/* Include .intrpt array of interrupt vectors */
|
|
/* Include .intrpt array of interrupt vectors */
|
|
.section ".intrpt", "ax"
|
|
.section ".intrpt", "ax"
|
|
|
|
|
|
-#define op_handle_perf_interrupt bad_intr
|
|
|
|
-#define op_handle_aux_perf_interrupt bad_intr
|
|
|
|
|
|
+#ifndef CONFIG_USE_PMC
|
|
|
|
+#define handle_perf_interrupt bad_intr
|
|
|
|
+#endif
|
|
|
|
|
|
#ifndef CONFIG_HARDWALL
|
|
#ifndef CONFIG_HARDWALL
|
|
#define do_hardwall_trap bad_intr
|
|
#define do_hardwall_trap bad_intr
|
|
@@ -1877,7 +1878,7 @@ int_unalign:
|
|
int_hand INT_IDN_AVAIL, IDN_AVAIL, bad_intr
|
|
int_hand INT_IDN_AVAIL, IDN_AVAIL, bad_intr
|
|
int_hand INT_UDN_AVAIL, UDN_AVAIL, bad_intr
|
|
int_hand INT_UDN_AVAIL, UDN_AVAIL, bad_intr
|
|
int_hand INT_PERF_COUNT, PERF_COUNT, \
|
|
int_hand INT_PERF_COUNT, PERF_COUNT, \
|
|
- op_handle_perf_interrupt, handle_nmi
|
|
|
|
|
|
+ handle_perf_interrupt, handle_nmi
|
|
int_hand INT_INTCTRL_3, INTCTRL_3, bad_intr
|
|
int_hand INT_INTCTRL_3, INTCTRL_3, bad_intr
|
|
#if CONFIG_KERNEL_PL == 2
|
|
#if CONFIG_KERNEL_PL == 2
|
|
dc_dispatch INT_INTCTRL_2, INTCTRL_2
|
|
dc_dispatch INT_INTCTRL_2, INTCTRL_2
|
|
@@ -1902,7 +1903,7 @@ int_unalign:
|
|
int_hand INT_SN_CPL, SN_CPL, bad_intr
|
|
int_hand INT_SN_CPL, SN_CPL, bad_intr
|
|
int_hand INT_DOUBLE_FAULT, DOUBLE_FAULT, do_trap
|
|
int_hand INT_DOUBLE_FAULT, DOUBLE_FAULT, do_trap
|
|
int_hand INT_AUX_PERF_COUNT, AUX_PERF_COUNT, \
|
|
int_hand INT_AUX_PERF_COUNT, AUX_PERF_COUNT, \
|
|
- op_handle_aux_perf_interrupt, handle_nmi
|
|
|
|
|
|
+ handle_perf_interrupt, handle_nmi
|
|
|
|
|
|
/* Synthetic interrupt delivered only by the simulator */
|
|
/* Synthetic interrupt delivered only by the simulator */
|
|
int_hand INT_BREAKPOINT, BREAKPOINT, do_breakpoint
|
|
int_hand INT_BREAKPOINT, BREAKPOINT, do_breakpoint
|