summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu/bfin/cpu.c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2010-04-17 17:34:34 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2010-04-17 17:34:34 +0000
commit340d782ab8d80e786b9c6a859a40d89c6a644af9 (patch)
treeecd56b12922f39076a7bb154b63744c8ca7e2128 /cpukit/score/cpu/bfin/cpu.c
parentGenerate. (diff)
downloadrtems-340d782ab8d80e786b9c6a859a40d89c6a644af9.tar.bz2
2010-04-17 Mike Frysinger <vapier.adi@gmail.com>
* cpu.c: Blackfin ABI requires L registers to be 0 upon function entry.
Diffstat (limited to 'cpukit/score/cpu/bfin/cpu.c')
-rw-r--r--cpukit/score/cpu/bfin/cpu.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/cpukit/score/cpu/bfin/cpu.c b/cpukit/score/cpu/bfin/cpu.c
index 58b96bae54..4afab4ab7c 100644
--- a/cpukit/score/cpu/bfin/cpu.c
+++ b/cpukit/score/cpu/bfin/cpu.c
@@ -195,6 +195,12 @@ void _CPU_Context_Initialize(
the_context->register_sp = stack_high;
the_context->register_rets = (uint32_t) entry_point;
the_context->imask = new_level ? 0 : 0xffff;
+
+ /* Blackfin C ABI requires L regs to be 0 upon func entry. */
+ the_context->register_l0 = 0;
+ the_context->register_l1 = 0;
+ the_context->register_l2 = 0;
+ the_context->register_l3 = 0;
}