summaryrefslogtreecommitdiffstats
path: root/cpukit/score
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-02-20 21:54:13 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-02-20 21:54:13 +0000
commit35305b59e8390dd6e06d47b497efca56d905441b (patch)
treed7804e467d314ddfa638d585403104a635e0c75b /cpukit/score
parent2008-02-19 Ralf Corsepius <ralf.corsepius@rtems.org> (diff)
downloadrtems-35305b59e8390dd6e06d47b497efca56d905441b.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.
Diffstat (limited to 'cpukit/score')
-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 5a69480be4..1bba06cc4f 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 b90b42da6c..867503d6fd 100644
--- a/cpukit/score/cpu/sparc/cpu.c
+++ b/cpukit/score/cpu/sparc/cpu.c
@@ -176,7 +176,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