2009-10-29 Till Straumann <strauman@slac.stanford.edu>

* rtems/score/cpu.h: Define _CPU_Interrupt_stack_setup() macro
	which reserves space for the 'vector' arg to _C_dispatch_isr()
	routine and aligns the irq stack to CPU_STACK_ALIGNMENT.
This commit is contained in:
Till Straumann
2009-10-29 16:29:46 +00:00
parent 429978f437
commit b01d7c7eeb
2 changed files with 16 additions and 0 deletions
+6
View File
@@ -1,3 +1,9 @@
2009-10-29 Till Straumann <strauman@slac.stanford.edu>
* rtems/score/cpu.h: Define _CPU_Interrupt_stack_setup() macro
which reserves space for the 'vector' arg to _C_dispatch_isr()
routine and aligns the irq stack to CPU_STACK_ALIGNMENT.
2009-10-28 Till Straumann <strauman@slac.stanford.edu>
* rtems/score/cpu.h: Replaced misleading typedef of
+10
View File
@@ -287,6 +287,16 @@ SCORE_EXTERN void *_CPU_Interrupt_stack_high;
uint32_t _CPU_ISR_Get_level( void );
/* Make sure interrupt stack has space for ISR
* 'vector' arg at the top and that it is aligned
* properly.
*/
#define _CPU_Interrupt_stack_setup( _lo, _hi ) \
do { \
_hi = (void*)(((uintptr_t)(_hi) - 4) & ~ (CPU_STACK_ALIGNMENT - 1)); \
} while (0)
#endif /* ASM */
/* end of ISR handler macros */