Index: MPlayer-1.0rc2/libmpeg2/motion_comp_arm_s.S
===================================================================
--- MPlayer-1.0rc2.orig/libmpeg2/motion_comp_arm_s.S	2007-11-02 14:16:50.000000000 +0000
+++ MPlayer-1.0rc2/libmpeg2/motion_comp_arm_s.S	2007-11-02 14:23:53.000000000 +0000
@@ -18,6 +18,14 @@
 @ along with this program; if not, write to the Free Software
 @ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
+#if defined(__ARM_ARCH_5__) || \
+    defined(__ARM_ARCH_5T__) || \
+    defined(__ARM_ARCH_5TE__)
+#define PLD(code...)   code
+#else
+#define PLD(code...)
+#endif
+
 	.text
 	
 @ ----------------------------------------------------------------
@@ -25,7 +33,7 @@
 	.global MC_put_o_16_arm
 MC_put_o_16_arm:
 	@@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
-	pld [r1]
+	PLD ( pld [r1] )
         stmfd sp!, {r4-r11, lr} @ R14 is also called LR
 	and r4, r1, #3
 	adr r5, MC_put_o_16_arm_align_jt
@@ -35,7 +43,7 @@
 MC_put_o_16_arm_align0:
 	ldmia r1, {r4-r7}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	stmia r0, {r4-r7}
 	subs r3, r3, #1
 	add r0, r0, r2
@@ -46,7 +54,7 @@
 	ldmia r1, {r4-r8}
 	add r1, r1, r2
 	mov r9, r4, lsr #(\shift)
-	pld [r1]
+	PLD ( pld [r1] )
 	mov r10, r5, lsr #(\shift)
 	orr r9, r9, r5, lsl #(32-\shift)
 	mov r11, r6, lsr #(\shift)
@@ -85,7 +93,7 @@
 	.global MC_put_o_8_arm
 MC_put_o_8_arm:
 	@@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
-	pld [r1]
+	PLD ( pld [r1] )
         stmfd sp!, {r4-r10, lr} @ R14 is also called LR
 	and r4, r1, #3
 	adr r5, MC_put_o_8_arm_align_jt
@@ -94,7 +102,7 @@
 MC_put_o_8_arm_align0:
 	ldmia r1, {r4-r5}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	stmia r0, {r4-r5}
 	add r0, r0, r2
 	subs r3, r3, #1
@@ -105,7 +113,7 @@
 	ldmia r1, {r4-r6}
 	add r1, r1, r2
 	mov r9, r4, lsr #(\shift)
-	pld [r1]
+	PLD ( pld [r1] )
 	mov r10, r5, lsr #(\shift)
 	orr r9, r9, r5, lsl #(32-\shift)
 	orr r10, r10, r6, lsl #(32-\shift)
@@ -154,7 +162,7 @@
 	.global MC_put_x_16_arm
 MC_put_x_16_arm:
 	@@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
-	pld [r1]
+	PLD ( pld [r1] )
         stmfd sp!, {r4-r11,lr} @ R14 is also called LR
 	and r4, r1, #3
 	adr r5, MC_put_x_16_arm_align_jt
@@ -179,7 +187,7 @@
 MC_put_x_16_arm_align0:
 	ldmia r1, {r4-r8}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	AVG_PW r7, r8
 	AVG_PW r6, r7
 	AVG_PW r5, r6
@@ -193,7 +201,7 @@
 	and r1, r1, #0xFFFFFFFC
 1:	ldmia r1, {r4-r8}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	ADJ_ALIGN_QW 8, r4, r5, r6, r7, r8
 	AVG_PW r7, r8
 	AVG_PW r6, r7
@@ -208,7 +216,7 @@
 	and r1, r1, #0xFFFFFFFC
 1:	ldmia r1, {r4-r8}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	ADJ_ALIGN_QW 16, r4, r5, r6, r7, r8
 	AVG_PW r7, r8
 	AVG_PW r6, r7
@@ -223,7 +231,7 @@
 	and r1, r1, #0xFFFFFFFC
 1:	ldmia r1, {r4-r8}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	ADJ_ALIGN_QW 24, r4, r5, r6, r7, r8
 	AVG_PW r7, r8
 	AVG_PW r6, r7
@@ -246,7 +254,7 @@
 	.global MC_put_x_8_arm
 MC_put_x_8_arm:
 	@@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
-	pld [r1]
+	PLD ( pld [r1] )
         stmfd sp!, {r4-r11,lr} @ R14 is also called LR
 	and r4, r1, #3
 	adr r5, MC_put_x_8_arm_align_jt
@@ -267,7 +275,7 @@
 MC_put_x_8_arm_align0:
 	ldmia r1, {r4-r6}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	AVG_PW r5, r6
 	AVG_PW r4, r5
 	stmia r0, {r5-r6}
@@ -279,7 +287,7 @@
 	and r1, r1, #0xFFFFFFFC
 1:	ldmia r1, {r4-r6}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	ADJ_ALIGN_DW 8, r4, r5, r6
 	AVG_PW r5, r6
 	AVG_PW r4, r5
@@ -292,7 +300,7 @@
 	and r1, r1, #0xFFFFFFFC
 1:	ldmia r1, {r4-r6}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	ADJ_ALIGN_DW 16, r4, r5, r6
 	AVG_PW r5, r6
 	AVG_PW r4, r5
@@ -305,7 +313,7 @@
 	and r1, r1, #0xFFFFFFFC
 1:	ldmia r1, {r4-r6}
 	add r1, r1, r2
-	pld [r1]
+	PLD ( pld [r1] )
 	ADJ_ALIGN_DW 24, r4, r5, r6
 	AVG_PW r5, r6
 	AVG_PW r4, r5