diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2009-03-12 14:17:21 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2009-03-12 14:17:21 +0000 |
commit | 952d8f718a8897ccf86e92541596ad801abf2de4 (patch) | |
tree | 79a6a475f203f784c9f576b2c5ec3da6081ae28c | |
parent | Regenerate. (diff) | |
download | rtems-952d8f718a8897ccf86e92541596ad801abf2de4.tar.bz2 |
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.
-rw-r--r-- | c/src/lib/libbsp/mips/hurricane/ChangeLog | 9 | ||||
-rw-r--r-- | c/src/lib/libbsp/mips/hurricane/startup/exception.S | 11 | ||||
-rw-r--r-- | c/src/lib/libbsp/mips/rbtx4925/ChangeLog | 9 | ||||
-rw-r--r-- | c/src/lib/libbsp/mips/rbtx4925/startup/exception.S | 10 | ||||
-rw-r--r-- | c/src/lib/libbsp/mips/rbtx4938/ChangeLog | 9 | ||||
-rw-r--r-- | c/src/lib/libbsp/mips/rbtx4938/startup/exception.S | 10 |
6 files changed, 43 insertions, 15 deletions
diff --git a/c/src/lib/libbsp/mips/hurricane/ChangeLog b/c/src/lib/libbsp/mips/hurricane/ChangeLog index 80c3e84912..854eedb784 100644 --- a/c/src/lib/libbsp/mips/hurricane/ChangeLog +++ b/c/src/lib/libbsp/mips/hurricane/ChangeLog @@ -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. diff --git a/c/src/lib/libbsp/mips/hurricane/startup/exception.S b/c/src/lib/libbsp/mips/hurricane/startup/exception.S index 2a3f4b187e..bb9e01d004 100644 --- a/c/src/lib/libbsp/mips/hurricane/startup/exception.S +++ b/c/src/lib/libbsp/mips/hurricane/startup/exception.S @@ -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 diff --git a/c/src/lib/libbsp/mips/rbtx4925/ChangeLog b/c/src/lib/libbsp/mips/rbtx4925/ChangeLog index 460e1b13d1..2a87da1cc3 100644 --- a/c/src/lib/libbsp/mips/rbtx4925/ChangeLog +++ b/c/src/lib/libbsp/mips/rbtx4925/ChangeLog @@ -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. diff --git a/c/src/lib/libbsp/mips/rbtx4925/startup/exception.S b/c/src/lib/libbsp/mips/rbtx4925/startup/exception.S index c1fb921a70..7efe6c5583 100644 --- a/c/src/lib/libbsp/mips/rbtx4925/startup/exception.S +++ b/c/src/lib/libbsp/mips/rbtx4925/startup/exception.S @@ -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 diff --git a/c/src/lib/libbsp/mips/rbtx4938/ChangeLog b/c/src/lib/libbsp/mips/rbtx4938/ChangeLog index 072d4d6a09..743a73335d 100644 --- a/c/src/lib/libbsp/mips/rbtx4938/ChangeLog +++ b/c/src/lib/libbsp/mips/rbtx4938/ChangeLog @@ -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. diff --git a/c/src/lib/libbsp/mips/rbtx4938/startup/exception.S b/c/src/lib/libbsp/mips/rbtx4938/startup/exception.S index d09d66e222..89b1061668 100644 --- a/c/src/lib/libbsp/mips/rbtx4938/startup/exception.S +++ b/c/src/lib/libbsp/mips/rbtx4938/startup/exception.S @@ -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 |