summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-02-20 21:54:01 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-02-20 21:54:01 +0000
commitde7b14e8d224bb63278b3fbc16562b0977f6411d (patch)
treeb52e41cce8f3b4f8d60db592d1dd13fff68e8003
parent2008-02-14 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-de7b14e8d224bb63278b3fbc16562b0977f6411d.tar.bz2
2008-02-20 Alexandru Bugnar <a-bugnar@criticalsoftware.com>
PR 1278/cpukit * cpu.c: Fix incorrect bit manipulation on returning old address of raw trap handler.
-rw-r--r--cpukit/score/cpu/sparc/ChangeLog6
-rw-r--r--cpukit/score/cpu/sparc/cpu.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/cpukit/score/cpu/sparc/ChangeLog b/cpukit/score/cpu/sparc/ChangeLog
index 7f0367756c..2e7b3fa29a 100644
--- a/cpukit/score/cpu/sparc/ChangeLog
+++ b/cpukit/score/cpu/sparc/ChangeLog
@@ -1,3 +1,9 @@
+2008-02-20 Alexandru Bugnar <a-bugnar@criticalsoftware.com>
+
+ PR 1278/cpukit
+ * cpu.c: Fix incorrect bit manipulation on returning old address of raw
+ trap handler.
+
2007-05-10 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1237/rtems
diff --git a/cpukit/score/cpu/sparc/cpu.c b/cpukit/score/cpu/sparc/cpu.c
index 6295dcf790..39c26e29e7 100644
--- a/cpukit/score/cpu/sparc/cpu.c
+++ b/cpukit/score/cpu/sparc/cpu.c
@@ -182,7 +182,7 @@ void _CPU_ISR_install_raw_handler(
if ( slot->mov_psr_l0 == _CPU_Trap_slot_template.mov_psr_l0 ) {
u32_handler =
- ((slot->sethi_of_handler_to_l4 & HIGH_BITS_MASK) << HIGH_BITS_SHIFT) |
+ (slot->sethi_of_handler_to_l4 << HIGH_BITS_SHIFT) |
(slot->jmp_to_low_of_handler_plus_l4 & LOW_BITS_MASK);
*old_handler = (proc_ptr) u32_handler;
} else