summaryrefslogtreecommitdiff
path: root/data/ffmpeg_/r7.diff
blob: 3b1af70fb5e7460b317ecc46829706b58b4d78f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
diff -ru ffmpeg-export-2008-05-20/libavcodec/armv4l/float_arm_vfp.c ffmpeg-export-2008-05-20+iPhone/libavcodec/armv4l/float_arm_vfp.c
--- ffmpeg-export-2008-05-20/libavcodec/armv4l/float_arm_vfp.c	2008-05-11 20:06:03.000000000 +0000
+++ ffmpeg-export-2008-05-20+iPhone/libavcodec/armv4l/float_arm_vfp.c	2008-05-21 00:44:04.000000000 +0000
@@ -141,6 +141,13 @@
 }
 
 #ifdef HAVE_ARMV6
+
+#ifdef __APPLE__
+#define r7 "r9"
+#else
+#define r7 "r7"
+#endif
+
 /**
  * ARM VFP optimized float to int16 conversion.
  * Assume that len is a positive number and is multiple of 8, destination
@@ -163,7 +170,7 @@
         "subs       %[len], %[len], #8\n\t"
         "fmrrs      r3, r4, {s0, s1}\n\t"
         "fmrrs      r5, r6, {s2, s3}\n\t"
-        "fmrrs      r7, r8, {s4, s5}\n\t"
+        "fmrrs      "r7", r8, {s4, s5}\n\t"
         "fmrrs      ip, lr, {s6, s7}\n\t"
         "fldmiasgt  %[src]!, {s16-s23}\n\t"
         "ssat       r4, #16, r4\n\t"
@@ -181,10 +188,10 @@
         "ftosisgt   s6, s22\n\t"
         "ftosisgt   s7, s23\n\t"
         "ssat       r8, #16, r8\n\t"
-        "ssat       r7, #16, r7\n\t"
+        "ssat       "r7", #16, "r7"\n\t"
         "ssat       lr, #16, lr\n\t"
         "ssat       ip, #16, ip\n\t"
-        "pkhbt      r5, r7, r8, lsl #16\n\t"
+        "pkhbt      r5, "r7", r8, lsl #16\n\t"
         "pkhbt      r6, ip, lr, lsl #16\n\t"
         "stmia      %[dst]!, {r3-r6}\n\t"
         "bgt        1b\n\t"
@@ -193,7 +200,7 @@
         :
         : "s0",  "s1",  "s2",  "s3",  "s4",  "s5",  "s6",  "s7",
           "s16", "s17", "s18", "s19", "s20", "s21", "s22", "s23",
-          "r3", "r4", "r5", "r6", "r7", "r8", "ip", "lr",
+          "r3", "r4", "r5", "r6", r7, "r8", "ip", "lr",
           "cc", "memory");
 }
 #endif