add FASTDIV macro for ARM. Reported speed-up on MPEG-4 decoding: 1.8%

Patch by Siarhei Siamashka %siarhei P siamashka A gmail P com%
Original thread:
Date: Sep 28, 2006 2:26 AM
Subject: [Ffmpeg-devel] [PATCH] ARM implementation of FASTDIV

Originally committed as revision 6366 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Siarhei Siamashka 2006-09-28 08:04:16 +00:00 committed by Guillaume Poirier
parent 8db0c25d95
commit eeebe6ad1f
1 changed files with 11 additions and 0 deletions

View File

@ -114,6 +114,17 @@ extern const uint32_t inverse[256];
);\
ret;\
})
#elif defined(ARCH_ARMV4L)
# define FASTDIV(a,b) \
({\
int ret,dmy;\
asm volatile(\
"umull %1, %0, %2, %3"\
:"=&r"(ret),"=&r"(dmy)\
:"r"(a),"r"(inverse[b])\
);\
ret;\
})
#elif defined(CONFIG_FASTDIV)
# define FASTDIV(a,b) ((uint32_t)((((uint64_t)a)*inverse[b])>>32))
#else