summaryrefslogtreecommitdiff
path: root/apps/plugins/mpegplayer
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2009-07-12 22:43:24 +0000
committerJens Arnold <amiconn@rockbox.org>2009-07-12 22:43:24 +0000
commit36eeecbe9a91a5da8bd82ee3974c359f4534dd14 (patch)
tree81cf3005af179420e469b07c883db5e6a35a7adb /apps/plugins/mpegplayer
parentafe43d3fcba11eadf9960d48ae461f6e429b9a88 (diff)
downloadrockbox-36eeecbe9a91a5da8bd82ee3974c359f4534dd14.zip
rockbox-36eeecbe9a91a5da8bd82ee3974c359f4534dd14.tar.gz
rockbox-36eeecbe9a91a5da8bd82ee3974c359f4534dd14.tar.bz2
rockbox-36eeecbe9a91a5da8bd82ee3974c359f4534dd14.tar.xz
* Fix overlooked r12 usage possibility in mpegplayer ARM idct
* ARM dualcore: Don't save r12 in switch_thread_core() git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21830 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/mpegplayer')
-rw-r--r--apps/plugins/mpegplayer/idct_arm.S24
-rw-r--r--apps/plugins/mpegplayer/idct_armv6.S20
2 files changed, 22 insertions, 22 deletions
diff --git a/apps/plugins/mpegplayer/idct_arm.S b/apps/plugins/mpegplayer/idct_arm.S
index 3cb1554..7253d89 100644
--- a/apps/plugins/mpegplayer/idct_arm.S
+++ b/apps/plugins/mpegplayer/idct_arm.S
@@ -387,7 +387,7 @@ mpeg2_idct_add:
blo 2b
ldmfd sp!, { r4-r11, pc }
3:
- stmfd sp!, { r4-r6, lr }
+ stmfd sp!, { r4-r5, lr }
ldrsh r1, [r0, #0] /* r1 = block[0] */
mov r4, #0
strh r4, [r0, #0] /* block[0] = 0 */
@@ -397,7 +397,7 @@ mpeg2_idct_add:
4:
ldrb r4, [r2, #0]
ldrb r5, [r2, #1]
- ldrb r6, [r2, #2]
+ ldrb r12, [r2, #2]
ldrb lr, [r2, #3]
add r4, r4, r1, asr #7
cmp r4, #255
@@ -407,17 +407,17 @@ mpeg2_idct_add:
cmp r5, #255
mvnhi r5, r5, asr #31
strb r5, [r2, #1]
- add r6, r6, r1, asr #7
- cmp r6, #255
- mvnhi r6, r6, asr #31
- strb r6, [r2, #2]
+ add r12, r12, r1, asr #7
+ cmp r12, #255
+ mvnhi r12, r12, asr #31
+ strb r12, [r2, #2]
add lr, lr, r1, asr #7
cmp lr, #255
mvnhi lr, lr, asr #31
strb lr, [r2, #3]
ldrb r4, [r2, #4]
ldrb r5, [r2, #5]
- ldrb r6, [r2, #6]
+ ldrb r12, [r2, #6]
ldrb lr, [r2, #7]
add r4, r4, r1, asr #7
cmp r4, #255
@@ -427,10 +427,10 @@ mpeg2_idct_add:
cmp r5, #255
mvnhi r5, r5, asr #31
strb r5, [r2, #5]
- add r6, r6, r1, asr #7
- cmp r6, #255
- mvnhi r6, r6, asr #31
- strb r6, [r2, #6]
+ add r12, r12, r1, asr #7
+ cmp r12, #255
+ mvnhi r12, r12, asr #31
+ strb r12, [r2, #6]
add lr, lr, r1, asr #7
cmp lr, #255
mvnhi lr, lr, asr #31
@@ -438,4 +438,4 @@ mpeg2_idct_add:
add r2, r2, r3
cmp r2, r0
blo 4b
- ldmfd sp!, { r4-r6, pc }
+ ldmfd sp!, { r4-r5, pc }
diff --git a/apps/plugins/mpegplayer/idct_armv6.S b/apps/plugins/mpegplayer/idct_armv6.S
index ca97d12..6b94006 100644
--- a/apps/plugins/mpegplayer/idct_armv6.S
+++ b/apps/plugins/mpegplayer/idct_armv6.S
@@ -290,7 +290,7 @@ mpeg2_idct_add:
ldmfd sp!, {r4-r11, pc}
3:
- stmfd sp!, {r4-r6, lr}
+ stmfd sp!, {r4-r5, lr}
ldrsh r1, [r0, #0] /* r1 = block[0] */
mov r4, #0
strh r4, [r0, #0] /* block[0] = 0 */
@@ -300,7 +300,7 @@ mpeg2_idct_add:
4:
ldrb r4, [r2, #0]
ldrb r5, [r2, #1]
- ldrb r6, [r2, #2]
+ ldrb r12, [r2, #2]
ldrb lr, [r2, #3]
add r4, r4, r1, asr #7
usat r4, #8, r4
@@ -308,15 +308,15 @@ mpeg2_idct_add:
add r5, r5, r1, asr #7
usat r5, #8, r5
strb r5, [r2, #1]
- add r6, r6, r1, asr #7
- usat r6, #8, r6
- strb r6, [r2, #2]
+ add r12, r12, r1, asr #7
+ usat r12, #8, r12
+ strb r12, [r2, #2]
add lr, lr, r1, asr #7
usat lr, #8, lr
strb lr, [r2, #3]
ldrb r4, [r2, #4]
ldrb r5, [r2, #5]
- ldrb r6, [r2, #6]
+ ldrb r12, [r2, #6]
ldrb lr, [r2, #7]
add r4, r4, r1, asr #7
usat r4, #8, r4
@@ -324,13 +324,13 @@ mpeg2_idct_add:
add r5, r5, r1, asr #7
usat r5, #8, r5
strb r5, [r2, #5]
- add r6, r6, r1, asr #7
- usat r6, #8, r6
- strb r6, [r2, #6]
+ add r12, r12, r1, asr #7
+ usat r12, #8, r12
+ strb r12, [r2, #6]
add lr, lr, r1, asr #7
usat lr, #8, lr
strb lr, [r2, #7]
add r2, r2, r3
cmp r2, r0
blo 4b
- ldmfd sp!, {r4-r6, pc}
+ ldmfd sp!, {r4-r5, pc}