|
|
@@ -140,11 +140,12 @@ extern const uint32_t ff_inverse[256]; |
|
|
|
#elif defined(HAVE_ARMV6) |
|
|
|
static inline av_const int FASTDIV(int a, int b) |
|
|
|
{ |
|
|
|
int r; |
|
|
|
__asm__ volatile("cmp %2, #0 \n\t" |
|
|
|
"smmul %0, %1, %2 \n\t" |
|
|
|
"rsblt %0, %0, #0 \n\t" |
|
|
|
: "=r"(r) : "r"(a), "r"(ff_inverse[b])); |
|
|
|
int r, t; |
|
|
|
__asm__ volatile("cmp %3, #2 \n\t" |
|
|
|
"ldr %1, [%4, %3, lsl #2] \n\t" |
|
|
|
"lsrle %0, %2, #1 \n\t" |
|
|
|
"smmulgt %0, %1, %2 \n\t" |
|
|
|
: "=&r"(r), "=&r"(t) : "r"(a), "r"(b), "r"(ff_inverse)); |
|
|
|
return r; |
|
|
|
} |
|
|
|
#elif defined(ARCH_ARMV4L) |
|
|
|