Mercurial > libavutil.hg
comparison internal.h @ 121:69714d5e1561 libavutil
Protect code that uses CMOV instructions with HAVE_CMOV,
Make configure set CMOV_IS_FAST on arches on which cmov has a low latency
(typically non-Netburst based processor)
author | gpoirier |
---|---|
date | Fri, 20 Oct 2006 17:53:19 +0000 |
parents | d76a36742464 |
children | bd1ecfd747bc |
comparison
equal
deleted
inserted
replaced
120:f42a6347df1d | 121:69714d5e1561 |
---|---|
166 #define MASK_ABS(mask, level)\ | 166 #define MASK_ABS(mask, level)\ |
167 mask= level>>31;\ | 167 mask= level>>31;\ |
168 level= (level^mask)-mask; | 168 level= (level^mask)-mask; |
169 #endif | 169 #endif |
170 | 170 |
171 #if __CPU__ >= 686 && !defined(RUNTIME_CPUDETECT) | 171 #ifdef HAVE_CMOV |
172 #define COPY3_IF_LT(x,y,a,b,c,d)\ | 172 #define COPY3_IF_LT(x,y,a,b,c,d)\ |
173 asm volatile (\ | 173 asm volatile (\ |
174 "cmpl %0, %3 \n\t"\ | 174 "cmpl %0, %3 \n\t"\ |
175 "cmovl %3, %0 \n\t"\ | 175 "cmovl %3, %0 \n\t"\ |
176 "cmovl %4, %1 \n\t"\ | 176 "cmovl %4, %1 \n\t"\ |