diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog index 14b3ed60fd..8d4e548111 100644 --- a/cpukit/ChangeLog +++ b/cpukit/ChangeLog @@ -1,3 +1,9 @@ +2008-06-05 Joel Sherrill + + * score/include/rtems/score/isr.h, score/src/isr.c: Use + CPU_SIMPLE_VECTORED_INTERRUPTS porting parameter to avoid allocating + memory for vector table. + 2008-06-05 Joel Sherrill * score/src/wkspace.c: Fix error in comment. diff --git a/cpukit/score/include/rtems/score/isr.h b/cpukit/score/include/rtems/score/isr.h index 362ef05489..7d8f12b223 100644 --- a/cpukit/score/include/rtems/score/isr.h +++ b/cpukit/score/include/rtems/score/isr.h @@ -87,11 +87,13 @@ SCORE_EXTERN boolean _ISR_Signals_to_thread_executing; */ SCORE_EXTERN volatile uint32_t _ISR_Nest_level; +#if (CPU_SIMPLE_VECTORED_INTERRUPTS == TRUE) /** * The following declares the Vector Table. Application * interrupt service routines are vectored by the ISR Handler via this table. */ SCORE_EXTERN ISR_Handler_entry *_ISR_Vector_table; +#endif /** * This routine performs the initialization necessary for this handler. diff --git a/cpukit/score/src/isr.c b/cpukit/score/src/isr.c index 5c880df305..d282ebecd6 100644 --- a/cpukit/score/src/isr.c +++ b/cpukit/score/src/isr.c @@ -38,9 +38,11 @@ void _ISR_Handler_initialization( void ) _ISR_Nest_level = 0; +#if (CPU_SIMPLE_VECTORED_INTERRUPTS == TRUE) _ISR_Vector_table = _Workspace_Allocate_or_fatal_error( sizeof(ISR_Handler_entry) * ISR_NUMBER_OF_VECTORS ); +#endif _CPU_Initialize_vectors();