2009-03-12 Joel Sherrill <joel.sherrill@OARcorp.com>

PR 1385/cpukit
	* startup/exception.S: When the type rtems_boolean was switched to the
	C99 bool, the size changed from 4 bytes to 1 byte. The interrupt
	dispatching code accesses two boolean variables for scheduling
	purposes and the assembly implementations of this code did not get
	updated.
This commit is contained in:
Joel Sherrill
2009-03-12 14:17:21 +00:00
parent 1a813d50f5
commit 952d8f718a
6 changed files with 43 additions and 15 deletions

View File

@@ -1,3 +1,12 @@
2009-03-12 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1385/cpukit
* startup/exception.S: When the type rtems_boolean was switched to the
C99 bool, the size changed from 4 bytes to 1 byte. The interrupt
dispatching code accesses two boolean variables for scheduling
purposes and the assembly implementations of this code did not get
updated.
2008-12-08 Ralf Corsépius <ralf.corsepius@rtems.org>
* bsp_specs: Backport from CVS-HEAD.

View File

@@ -97,8 +97,8 @@ name:; \
EXTERN(_ISR_Nest_level, 4)
EXTERN(_Thread_Dispatch_disable_level,4)
EXTERN(_Context_Switch_necessary,4)
EXTERN(_ISR_Signals_to_thread_executing,4)
EXTERN(_Context_Switch_necessary,1)
EXTERN(_ISR_Signals_to_thread_executing,1)
.extern _Thread_Dispatch
.extern _ISR_Vector_table
@@ -281,10 +281,10 @@ _ISR_Handler_cleanup:
* if ( !_Context_Switch_necessary && !_ISR_Signals_to_thread_executing )
* goto the label "exit interrupt (simple case)"
*/
lw t0,_Context_Switch_necessary
lw t1,_ISR_Signals_to_thread_executing
lb t0,_Context_Switch_necessary
lb t1,_ISR_Signals_to_thread_executing
NOP
or t0,t0,t1
or t0,t0,t1
beq t0,zero,_ISR_Handler_exit
NOP
@@ -416,6 +416,7 @@ USC_isr:
sll k0,(31-21) /* test bit 21 (HBI) */
bgez k0,USC_isr2 /* branch if not a heartbeat interrupt */
NOP
/* clear the heartbeat interrupt */
la k0,INT_STAT

View File

@@ -1,3 +1,12 @@
2009-03-12 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1385/cpukit
* startup/exception.S: When the type rtems_boolean was switched to the
C99 bool, the size changed from 4 bytes to 1 byte. The interrupt
dispatching code accesses two boolean variables for scheduling
purposes and the assembly implementations of this code did not get
updated.
2008-12-08 Ralf Corsépius <ralf.corsepius@rtems.org>
* bsp_specs: Backport from CVS-HEAD.

View File

@@ -96,8 +96,8 @@ name:; \
EXTERN(_ISR_Nest_level, 4)
EXTERN(_Thread_Dispatch_disable_level,4)
EXTERN(_Context_Switch_necessary,4)
EXTERN(_ISR_Signals_to_thread_executing,4)
EXTERN(_Context_Switch_necessary,1)
EXTERN(_ISR_Signals_to_thread_executing,1)
.extern _Thread_Dispatch
.extern _ISR_Vector_table
@@ -321,10 +321,10 @@ _ISR_Handler_cleanup:
* if ( !_Context_Switch_necessary && !_ISR_Signals_to_thread_executing )
* goto the label "exit interrupt (simple case)"
*/
lw t0,_Context_Switch_necessary
lw t1,_ISR_Signals_to_thread_executing
lb t0,_Context_Switch_necessary
lb t1,_ISR_Signals_to_thread_executing
NOP
or t0,t0,t1
or t0,t0,t1
beq t0,zero,_ISR_Handler_exit
NOP

View File

@@ -1,3 +1,12 @@
2009-03-12 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1385/cpukit
* startup/exception.S: When the type rtems_boolean was switched to the
C99 bool, the size changed from 4 bytes to 1 byte. The interrupt
dispatching code accesses two boolean variables for scheduling
purposes and the assembly implementations of this code did not get
updated.
2008-12-08 Ralf Corsépius <ralf.corsepius@rtems.org>
* bsp_specs: Backport from CVS-HEAD.

View File

@@ -96,8 +96,8 @@ name:; \
EXTERN(_ISR_Nest_level, 4)
EXTERN(_Thread_Dispatch_disable_level,4)
EXTERN(_Context_Switch_necessary,4)
EXTERN(_ISR_Signals_to_thread_executing,4)
EXTERN(_Context_Switch_necessary,1)
EXTERN(_ISR_Signals_to_thread_executing,1)
.extern _Thread_Dispatch
.extern _ISR_Vector_table
@@ -321,10 +321,10 @@ _ISR_Handler_cleanup:
* if ( !_Context_Switch_necessary && !_ISR_Signals_to_thread_executing )
* goto the label "exit interrupt (simple case)"
*/
lw t0,_Context_Switch_necessary
lw t1,_ISR_Signals_to_thread_executing
lb t0,_Context_Switch_necessary
lb t1,_ISR_Signals_to_thread_executing
NOP
or t0,t0,t1
or t0,t0,t1
beq t0,zero,_ISR_Handler_exit
NOP