Commit 213e823d authored by James Cowgill's avatar James Cowgill Committed by Michael Niedermayer

mips/mathops: remove 64-bit code

GCC is perfectly happy generating optimized multiplication code on its own for
64-bit arches. GCC refuses to optimize the loongson code when in 32-bit mode,
so I've left that.
Signed-off-by: 's avatarJames Cowgill <james410@cowgill.org.uk>
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent a6a2da2f
...@@ -49,32 +49,6 @@ static inline av_const int64_t MLS64(int64_t d, int a, int b) ...@@ -49,32 +49,6 @@ static inline av_const int64_t MLS64(int64_t d, int a, int b)
} }
#define MLS64(d, a, b) ((d) = MLS64(d, a, b)) #define MLS64(d, a, b) ((d) = MLS64(d, a, b))
#elif ARCH_MIPS64
static inline av_const int64_t MAC64(int64_t d, int a, int b)
{
int64_t m;
__asm__ ("dmult %2, %3 \n\t"
"mflo %1 \n\t"
"daddu %0, %0, %1 \n\t"
: "+r"(d), "=&r"(m) : "r"(a), "r"(b)
: "hi", "lo");
return d;
}
#define MAC64(d, a, b) ((d) = MAC64(d, a, b))
static inline av_const int64_t MLS64(int64_t d, int a, int b)
{
int64_t m;
__asm__ ("dmult %2, %3 \n\t"
"mflo %1 \n\t"
"dsubu %0, %0, %1 \n\t"
: "+r"(d), "=&r"(m) : "r"(a), "r"(b)
: "hi", "lo");
return d;
}
#define MLS64(d, a, b) ((d) = MLS64(d, a, b))
#endif #endif
#endif /* HAVE_INLINE_ASM */ #endif /* HAVE_INLINE_ASM */
......
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