enable some 64bit optimized code on 64bit arch
Originally committed as revision 8155 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
42a4ca83ea
commit
c2a29455e3
17
configure
vendored
17
configure
vendored
@ -600,6 +600,7 @@ HAVE_LIST="
|
|||||||
dev_video_bktr_ioctl_bt848_h
|
dev_video_bktr_ioctl_bt848_h
|
||||||
dlfcn_h
|
dlfcn_h
|
||||||
dlopen
|
dlopen
|
||||||
|
fast_64bit
|
||||||
fast_cmov
|
fast_cmov
|
||||||
freetype2
|
freetype2
|
||||||
imlib2
|
imlib2
|
||||||
@ -957,6 +958,7 @@ case "$arch" in
|
|||||||
if [ x"$canon_arch" = x"x86_64" -o x"$canon_arch" = x"amd64" ]; then
|
if [ x"$canon_arch" = x"x86_64" -o x"$canon_arch" = x"amd64" ]; then
|
||||||
if [ -z "`echo $CFLAGS | grep -- -m32`" ]; then
|
if [ -z "`echo $CFLAGS | grep -- -m32`" ]; then
|
||||||
arch="x86_64"
|
arch="x86_64"
|
||||||
|
enable fast_64bit
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
@ -966,15 +968,21 @@ case "$arch" in
|
|||||||
;;
|
;;
|
||||||
alpha)
|
alpha)
|
||||||
arch="alpha"
|
arch="alpha"
|
||||||
|
enable fast_64bit
|
||||||
;;
|
;;
|
||||||
"Power Macintosh"|ppc|ppc64|powerpc)
|
"Power Macintosh"|ppc|powerpc)
|
||||||
arch="powerpc"
|
arch="powerpc"
|
||||||
;;
|
;;
|
||||||
|
ppc64)
|
||||||
|
arch="powerpc"
|
||||||
|
enable fast_64bit
|
||||||
|
;;
|
||||||
mips|mipsel|IP*)
|
mips|mipsel|IP*)
|
||||||
arch="mips"
|
arch="mips"
|
||||||
;;
|
;;
|
||||||
sun4u|sparc64)
|
sun4u|sparc64)
|
||||||
arch="sparc64"
|
arch="sparc64"
|
||||||
|
enable fast_64bit
|
||||||
;;
|
;;
|
||||||
sparc)
|
sparc)
|
||||||
arch="sparc"
|
arch="sparc"
|
||||||
@ -982,9 +990,13 @@ case "$arch" in
|
|||||||
sh4)
|
sh4)
|
||||||
arch="sh4"
|
arch="sh4"
|
||||||
;;
|
;;
|
||||||
parisc|parisc64)
|
parisc)
|
||||||
arch="parisc"
|
arch="parisc"
|
||||||
;;
|
;;
|
||||||
|
parisc64)
|
||||||
|
arch="parisc"
|
||||||
|
enable fast_64bit
|
||||||
|
;;
|
||||||
s390|s390x)
|
s390|s390x)
|
||||||
arch="s390"
|
arch="s390"
|
||||||
;;
|
;;
|
||||||
@ -993,6 +1005,7 @@ case "$arch" in
|
|||||||
;;
|
;;
|
||||||
ia64)
|
ia64)
|
||||||
arch="ia64"
|
arch="ia64"
|
||||||
|
enable fast_64bit
|
||||||
;;
|
;;
|
||||||
bfin)
|
bfin)
|
||||||
arch="bfin"
|
arch="bfin"
|
||||||
|
@ -78,13 +78,13 @@
|
|||||||
static inline void idctRowCondDC (DCTELEM * row)
|
static inline void idctRowCondDC (DCTELEM * row)
|
||||||
{
|
{
|
||||||
int a0, a1, a2, a3, b0, b1, b2, b3;
|
int a0, a1, a2, a3, b0, b1, b2, b3;
|
||||||
#ifdef FAST_64BIT
|
#ifdef HAVE_FAST_64BIT
|
||||||
uint64_t temp;
|
uint64_t temp;
|
||||||
#else
|
#else
|
||||||
uint32_t temp;
|
uint32_t temp;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef FAST_64BIT
|
#ifdef HAVE_FAST_64BIT
|
||||||
#ifdef WORDS_BIGENDIAN
|
#ifdef WORDS_BIGENDIAN
|
||||||
#define ROW0_MASK 0xffff000000000000LL
|
#define ROW0_MASK 0xffff000000000000LL
|
||||||
#else
|
#else
|
||||||
@ -146,7 +146,7 @@ static inline void idctRowCondDC (DCTELEM * row)
|
|||||||
MUL16(b3, W7, row[1]);
|
MUL16(b3, W7, row[1]);
|
||||||
MAC16(b3, -W5, row[3]);
|
MAC16(b3, -W5, row[3]);
|
||||||
|
|
||||||
#ifdef FAST_64BIT
|
#ifdef HAVE_FAST_64BIT
|
||||||
temp = ((uint64_t*)row)[1];
|
temp = ((uint64_t*)row)[1];
|
||||||
#else
|
#else
|
||||||
temp = ((uint32_t*)row)[2] | ((uint32_t*)row)[3];
|
temp = ((uint32_t*)row)[2] | ((uint32_t*)row)[3];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user