summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2013-05-02 13:37:30 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2013-05-03 17:30:56 +0200
commit9ce658030a0d772ee135d8158531e69b2696ab97 (patch)
tree05e176ca3c83e9c9d23180835d3c929e1558af2f
parentbsps/arm: Move .vector section (diff)
downloadrtems-9ce658030a0d772ee135d8158531e69b2696ab97.tar.bz2
bsps/arm: Copy vector table only if necessary
-rw-r--r--c/src/lib/libbsp/arm/shared/start/start.S4
1 files changed, 4 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/arm/shared/start/start.S b/c/src/lib/libbsp/arm/shared/start/start.S
index 9954a8717d..cb91d41494 100644
--- a/c/src/lib/libbsp/arm/shared/start/start.S
+++ b/c/src/lib/libbsp/arm/shared/start/start.S
@@ -186,11 +186,15 @@ bsp_start_hook_0_done:
ldr r0, =bsp_vector_table_begin
adr r1, bsp_start_vector_table_begin
+ cmp r0, r1
+ beq bsp_vector_table_copy_done
ldmia r1!, {r2-r9}
stmia r0!, {r2-r9}
ldmia r1!, {r2-r9}
stmia r0!, {r2-r9}
+bsp_vector_table_copy_done:
+
SWITCH_FROM_ARM_TO_THUMB r0
/* Branch to start hook 1 */