Commit 6d433f08 authored by michael's avatar michael

replace MULL with asm too, no significnat speedup but its probably better to...

replace MULL with asm too, no significnat speedup but its probably better to not take any chances, some versions of gcc will almost certainly mess it up too if they can


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@6049 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent fed6f254
......@@ -44,7 +44,13 @@
#define FRAC_ONE (1 << FRAC_BITS)
#ifdef ARCH_X86
# define MULL(a,b) (((int64_t)(a) * (int64_t)(b)) >> FRAC_BITS)
# define MULL(ra, rb) \
({ int rt, dummy; asm (\
"imull %3 \n\t"\
"shrdl %4, %%edx, %%eax \n\t"\
: "=a"(rt), "=d"(dummy)\
: "a" (ra), "rm" (rb), "i"(FRAC_BITS));\
rt; })
# define MUL64(ra, rb) \
({ int64_t rt; asm ("imull %2\n\t" : "=A"(rt) : "a" (ra), "g" (rb)); rt; })
# define MULH(ra, rb) \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment