summaryrefslogtreecommitdiffstats
path: root/firmware/target
diff options
context:
space:
mode:
authorRafaël Carré <rafael.carre@gmail.com>2010-05-31 15:14:26 +0000
committerRafaël Carré <rafael.carre@gmail.com>2010-05-31 15:14:26 +0000
commit0ea79053951e64b659cb3b3d82eaed1c65bd43ea (patch)
treea36c33fd58a622af3a8244501ef88c225838edc8 /firmware/target
parent74cee6297c87d9f94ff9d68ca19ba39fc7cc6ae6 (diff)
downloadrockbox-0ea79053951e64b659cb3b3d82eaed1c65bd43ea.tar.gz
rockbox-0ea79053951e64b659cb3b3d82eaed1c65bd43ea.zip
ARM: use BX when branch to an address in register
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26432 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target')
-rw-r--r--firmware/target/arm/crt0-pp.S2
-rw-r--r--firmware/target/arm/imx31/crt0.S2
-rw-r--r--firmware/target/arm/s3c2440/crt0.S2
3 files changed, 3 insertions, 3 deletions
diff --git a/firmware/target/arm/crt0-pp.S b/firmware/target/arm/crt0-pp.S
index 31bf3d6e71..ee95ac8899 100644
--- a/firmware/target/arm/crt0-pp.S
+++ b/firmware/target/arm/crt0-pp.S
@@ -163,7 +163,7 @@ remap_start:
str r2, [r1]
str r4, [r3]
ldr r1, L_post_remap
- mov pc, r1
+ bx r1
L_post_remap:
.word remap_end
remap_end:
diff --git a/firmware/target/arm/imx31/crt0.S b/firmware/target/arm/imx31/crt0.S
index ef2d7f40b9..d241fcb8ae 100644
--- a/firmware/target/arm/imx31/crt0.S
+++ b/firmware/target/arm/imx31/crt0.S
@@ -67,7 +67,7 @@ newstart:
strhi r4, [r1], #4
bhi 1b
- mov pc, r6
+ bx r6
/* Remapping stub. No absolute addresses may be used until after the
* remapping is complete. */
diff --git a/firmware/target/arm/s3c2440/crt0.S b/firmware/target/arm/s3c2440/crt0.S
index a61f2a3ce2..faa54313e7 100644
--- a/firmware/target/arm/s3c2440/crt0.S
+++ b/firmware/target/arm/s3c2440/crt0.S
@@ -486,7 +486,7 @@ skipreset:
ldr r1, =donecopy
ldr r2, =0x30000000
add r1, r1, r2
- mov pc, r1 /* The code is located where we want it so jump */
+ bx r1 /* The code is located where we want it so jump */
donecopy: