comparison common.h @ 706:e65798d228ea libavcodec

idct permutation cleanup, idct can be selected per context now fixing some threadunsafe code
author michaelni
date Sun, 29 Sep 2002 22:44:22 +0000
parents 85b071dfc7e3
children 1aa1cbb8c3c1
comparison
equal deleted inserted replaced
705:107a56aa74f5 706:e65798d228ea
930 assert( strlen(s)==4 ); 930 assert( strlen(s)==4 );
931 931
932 return (s[0]) + (s[1]<<8) + (s[2]<<16) + (s[3]<<24); 932 return (s[0]) + (s[1]<<8) + (s[2]<<16) + (s[3]<<24);
933 } 933 }
934 934
935
936 #ifdef ARCH_X86
937 #define MASK_ABS(mask, level)\
938 asm volatile(\
939 "cdq \n\t"\
940 "xorl %1, %0 \n\t"\
941 "subl %1, %0 \n\t"\
942 : "+a" (level), "=&d" (mask)\
943 );
944 #else
945 #define MASK_ABS(mask, level)\
946 mask= level>>31;\
947 level= (level^mask)-mask;
948 #endif
949
950
935 #if __CPU__ >= 686 && !defined(RUNTIME_CPUDETECT) 951 #if __CPU__ >= 686 && !defined(RUNTIME_CPUDETECT)
936 #define COPY3_IF_LT(x,y,a,b,c,d)\ 952 #define COPY3_IF_LT(x,y,a,b,c,d)\
937 asm volatile (\ 953 asm volatile (\
938 "cmpl %0, %3 \n\t"\ 954 "cmpl %0, %3 \n\t"\
939 "cmovl %3, %0 \n\t"\ 955 "cmovl %3, %0 \n\t"\