summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/plugins/mpegplayer/libmpeg2/idct_arm.S6
-rw-r--r--apps/plugins/mpegplayer/libmpeg2/idct_armv6.S7
-rw-r--r--apps/plugins/mpegplayer/mpeg_misc.h22
-rw-r--r--apps/recorder/jpeg_idct_arm.S12
4 files changed, 25 insertions, 22 deletions
diff --git a/apps/plugins/mpegplayer/libmpeg2/idct_arm.S b/apps/plugins/mpegplayer/libmpeg2/idct_arm.S
index 97a87a8b59..90eb5031c7 100644
--- a/apps/plugins/mpegplayer/libmpeg2/idct_arm.S
+++ b/apps/plugins/mpegplayer/libmpeg2/idct_arm.S
@@ -43,8 +43,8 @@
43 ldrsh r7, [r0, #12] /* d2 */ 43 ldrsh r7, [r0, #12] /* d2 */
44 ldrsh r8, [r0, #14] /* d3 */ 44 ldrsh r8, [r0, #14] /* d3 */
45 orrs r9, r2, r3 45 orrs r9, r2, r3
46 orreqs r9, r4, r5 46 orrseq r9, r4, r5
47 orreqs r9, r6, r7 47 orrseq r9, r6, r7
48 cmpeq r8, #0 48 cmpeq r8, #0
49 bne 2f 49 bne 2f
50 mov r1, r1, asl #15 50 mov r1, r1, asl #15
@@ -320,7 +320,7 @@ mpeg2_idct_copy:
320mpeg2_idct_add: 320mpeg2_idct_add:
321 cmp r0, #129 321 cmp r0, #129
322 mov r0, r1 322 mov r0, r1
323 ldreqsh r1, [r0, #0] 323 ldrsheq r1, [r0, #0]
324 bne 1f 324 bne 1f
325 and r1, r1, #0x70 325 and r1, r1, #0x70
326 cmp r1, #0x40 326 cmp r1, #0x40
diff --git a/apps/plugins/mpegplayer/libmpeg2/idct_armv6.S b/apps/plugins/mpegplayer/libmpeg2/idct_armv6.S
index dc53cbd7bd..a259721410 100644
--- a/apps/plugins/mpegplayer/libmpeg2/idct_armv6.S
+++ b/apps/plugins/mpegplayer/libmpeg2/idct_armv6.S
@@ -19,6 +19,7 @@
19 * 19 *
20 ****************************************************************************/ 20 ****************************************************************************/
21 21
22#include "config.h"
22 23
23 .global mpeg2_idct_copy 24 .global mpeg2_idct_copy
24 .type mpeg2_idct_copy, %function 25 .type mpeg2_idct_copy, %function
@@ -228,7 +229,7 @@ mpeg2_idct_copy:
228mpeg2_idct_add: 229mpeg2_idct_add:
229 cmp r0, #129 230 cmp r0, #129
230 mov r0, r1 231 mov r0, r1
231 ldreqsh r1, [r0, #0] 232 ldrsheq r1, [r0, #0]
232 bne 1f 233 bne 1f
233 and r1, r1, #0x70 234 and r1, r1, #0x70
234 cmp r1, #0x40 235 cmp r1, #0x40
@@ -260,7 +261,7 @@ mpeg2_idct_add:
260 strd r4, [r1] @ r4, r5 261 strd r4, [r1] @ r4, r5
261 add r1, r1, r2 262 add r1, r1, r2
262 cmp r0, r3 263 cmp r0, r3
263 ldrlod r8, [r1] @ r8, r9 264 ldrdlo r8, [r1] @ r8, r9
264 blo 2b 265 blo 2b
265 266
266 ldmfd sp!, {r4-r11, pc} 267 ldmfd sp!, {r4-r11, pc}
@@ -291,7 +292,7 @@ mpeg2_idct_add:
291 strd r0, [r2] @ r0, r1 292 strd r0, [r2] @ r0, r1
292 add r2, r2, r3 293 add r2, r2, r3
293 cmp r2, r12 294 cmp r2, r12
294 ldrlod r0, [r2] @ r0, r1 295 ldrdlo r0, [r2] @ r0, r1
295 blo 4b 296 blo 4b
296 297
297 ldmfd sp!, {r4, pc} 298 ldmfd sp!, {r4, pc}
diff --git a/apps/plugins/mpegplayer/mpeg_misc.h b/apps/plugins/mpegplayer/mpeg_misc.h
index e04db0e19d..68ee8cac3c 100644
--- a/apps/plugins/mpegplayer/mpeg_misc.h
+++ b/apps/plugins/mpegplayer/mpeg_misc.h
@@ -53,12 +53,13 @@ enum state_enum
53#define CMP_3_CONST(_a, _b) \ 53#define CMP_3_CONST(_a, _b) \
54 ({ int _x; \ 54 ({ int _x; \
55 asm volatile ( \ 55 asm volatile ( \
56 ".syntax unified \n" \
56 "ldrb %[x], [%[a], #0] \n" \ 57 "ldrb %[x], [%[a], #0] \n" \
57 "eors %[x], %[x], %[b0] \n" \ 58 "eors %[x], %[x], %[b0] \n" \
58 "ldreqb %[x], [%[a], #1] \n" \ 59 "ldrbeq %[x], [%[a], #1] \n" \
59 "eoreqs %[x], %[x], %[b1] \n" \ 60 "eorseq %[x], %[x], %[b1] \n" \
60 "ldreqb %[x], [%[a], #2] \n" \ 61 "ldrbeq %[x], [%[a], #2] \n" \
61 "eoreqs %[x], %[x], %[b2] \n" \ 62 "eorseq %[x], %[x], %[b2] \n" \
62 : [x]"=&r"(_x) \ 63 : [x]"=&r"(_x) \
63 : [a]"r"(_a), \ 64 : [a]"r"(_a), \
64 [b0]"i"(((_b) >> 24) & 0xff), \ 65 [b0]"i"(((_b) >> 24) & 0xff), \
@@ -70,14 +71,15 @@ enum state_enum
70#define CMP_4_CONST(_a, _b) \ 71#define CMP_4_CONST(_a, _b) \
71 ({ int _x; \ 72 ({ int _x; \
72 asm volatile ( \ 73 asm volatile ( \
74 ".syntax unified \n" \
73 "ldrb %[x], [%[a], #0] \n" \ 75 "ldrb %[x], [%[a], #0] \n" \
74 "eors %[x], %[x], %[b0] \n" \ 76 "eors %[x], %[x], %[b0] \n" \
75 "ldreqb %[x], [%[a], #1] \n" \ 77 "ldrbeq %[x], [%[a], #1] \n" \
76 "eoreqs %[x], %[x], %[b1] \n" \ 78 "eorseq %[x], %[x], %[b1] \n" \
77 "ldreqb %[x], [%[a], #2] \n" \ 79 "ldrbeq %[x], [%[a], #2] \n" \
78 "eoreqs %[x], %[x], %[b2] \n" \ 80 "eorseq %[x], %[x], %[b2] \n" \
79 "ldreqb %[x], [%[a], #3] \n" \ 81 "ldrbeq %[x], [%[a], #3] \n" \
80 "eoreqs %[x], %[x], %[b3] \n" \ 82 "eorseq %[x], %[x], %[b3] \n" \
81 : [x]"=&r"(_x) \ 83 : [x]"=&r"(_x) \
82 : [a]"r"(_a), \ 84 : [a]"r"(_a), \
83 [b0]"i"(((_b) >> 24) & 0xff), \ 85 [b0]"i"(((_b) >> 24) & 0xff), \
diff --git a/apps/recorder/jpeg_idct_arm.S b/apps/recorder/jpeg_idct_arm.S
index e7eb4b87f1..1f2603da1b 100644
--- a/apps/recorder/jpeg_idct_arm.S
+++ b/apps/recorder/jpeg_idct_arm.S
@@ -410,7 +410,7 @@ jpeg_idct8v:
410#if ARM_ARCH < 5 410#if ARM_ARCH < 5
411 mov r8, r4, lsl #16 411 mov r8, r4, lsl #16
412 orrs r9, r6, r7 412 orrs r9, r6, r7
413 orreqs r9, r5, r4, lsr #16 413 orrseq r9, r5, r4, lsr #16
414 bne 2f 414 bne 2f
415 mov r8, r8, asr #14 415 mov r8, r8, asr #14
416 strh r8, [r2] 416 strh r8, [r2]
@@ -505,7 +505,7 @@ jpeg_idct8v:
505#else /* ARMv5+ */ 505#else /* ARMv5+ */
506 mov r12, r4, lsl #16 506 mov r12, r4, lsl #16
507 orrs r9, r6, r7 507 orrs r9, r6, r7
508 orreqs r9, r5, r4, lsr #16 508 orrseq r9, r5, r4, lsr #16
509 bne 2f 509 bne 2f
510 mov r12, r12, asr #14 510 mov r12, r12, asr #14
511 strh r12, [r2] 511 strh r12, [r2]
@@ -615,7 +615,7 @@ jpeg_idct8h:
615#if ARM_ARCH < 5 615#if ARM_ARCH < 5
616 add r8, r14, r4, lsl #16 616 add r8, r14, r4, lsl #16
617 orrs r9, r6, r7 617 orrs r9, r6, r7
618 orreqs r9, r5, r4, lsr #16 618 orrseq r9, r5, r4, lsr #16
619 bne 2f 619 bne 2f
620 mov r8, r8, asr #21 620 mov r8, r8, asr #21
621 cmp r8, #255 621 cmp r8, #255
@@ -727,7 +727,7 @@ jpeg_idct8h:
727#else /* ARMv5+ */ 727#else /* ARMv5+ */
728 add r12, r14, r4, lsl #16 728 add r12, r14, r4, lsl #16
729 orrs r9, r6, r7 729 orrs r9, r6, r7
730 orreqs r9, r5, r4, lsr #16 730 orrseq r9, r5, r4, lsr #16
731 bne 2f 731 bne 2f
732 mov r12, r12, asr #21 732 mov r12, r12, asr #21
733 cmp r12, #255 733 cmp r12, #255
@@ -835,7 +835,7 @@ jpeg_idct8v:
8351: 8351:
836 ldmia r0!, { r4-r7 } 836 ldmia r0!, { r4-r7 }
837 orrs r9, r6, r7 837 orrs r9, r6, r7
838 orreqs r9, r5, r4, lsr #16 838 orrseq r9, r5, r4, lsr #16
839 bne 2f 839 bne 2f
840 mov r4, r4, lsl #2 840 mov r4, r4, lsl #2
841 strh r4, [r2] 841 strh r4, [r2]
@@ -939,7 +939,7 @@ jpeg_idct8h:
939 ldmia r0!, { r4-r7 } 939 ldmia r0!, { r4-r7 }
940 sadd16 r4, r4, r14 940 sadd16 r4, r4, r14
941 orrs r9, r6, r7 941 orrs r9, r6, r7
942 orreqs r9, r5, r4, lsr #16 942 orrseq r9, r5, r4, lsr #16
943 bne 2f 943 bne 2f
944 sxth r4, r4 944 sxth r4, r4
945 usat r4, #8, r4, asr #5 945 usat r4, #8, r4, asr #5