Revision f8c5adaf libavutil/internal.h
libavutil/internal.h | ||
---|---|---|
149 | 149 |
return r; |
150 | 150 |
} |
151 | 151 |
#elif defined(ARCH_ARM) |
152 |
# define FASTDIV(a,b) \ |
|
153 |
({\ |
|
154 |
int ret,dmy;\ |
|
155 |
__asm__ volatile(\ |
|
156 |
"umull %1, %0, %2, %3"\ |
|
157 |
:"=&r"(ret),"=&r"(dmy)\ |
|
158 |
:"r"(a),"r"(ff_inverse[b])\ |
|
159 |
);\ |
|
160 |
ret;\ |
|
161 |
}) |
|
152 |
static inline av_const int FASTDIV(int a, int b) |
|
153 |
{ |
|
154 |
int r, t; |
|
155 |
__asm__ volatile ("umull %1, %0, %2, %3" |
|
156 |
: "=&r"(r), "=&r"(t) : "r"(a), "r"(ff_inverse[b])); |
|
157 |
return r; |
|
158 |
} |
|
162 | 159 |
#elif defined(CONFIG_FASTDIV) |
163 | 160 |
# define FASTDIV(a,b) ((uint32_t)((((uint64_t)a)*ff_inverse[b])>>32)) |
164 | 161 |
#else |
Also available in: Unified diff