diff options
Diffstat (limited to '')
-rw-r--r-- | c/src/librtems++/src/rtemsInterrupt.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/c/src/librtems++/src/rtemsInterrupt.cc b/c/src/librtems++/src/rtemsInterrupt.cc index 21b875b414..6d92d592f4 100644 --- a/c/src/librtems++/src/rtemsInterrupt.cc +++ b/c/src/librtems++/src/rtemsInterrupt.cc @@ -75,10 +75,13 @@ const rtems_status_code rtemsInterrupt::isr_catch(const rtems_vector_number vec) interrupt_table[vec] = this; vector = vec; +#if (CPU_SIMPLE_VECTORED_INTERRUPTS == TRUE) set_status_code(rtems_interrupt_catch(redirector, vector, &old_handler)); - +#else + set_status_code(RTEMS_NOT_DEFINED); +#endif if (successful()) caught = true; else @@ -96,10 +99,13 @@ const rtems_status_code rtemsInterrupt::release(void) { if (caught) { +#if (CPU_SIMPLE_VECTORED_INTERRUPTS == TRUE) set_status_code(rtems_interrupt_catch(old_handler, vector, &old_handler)); - +#else + set_status_code(RTEMS_NOT_DEFINED); +#endif interrupt_table[vector] = old_interrupt; old_interrupt = 0; old_handler = 0; |