forked from len0rd/rockbox
opus: improve cf MULT16_32_Q15 by giving the compiler more freedom
saves about 3MHz when decoding a 64kbps test file Change-Id: I10f47173ccb78e60e364662220d1db2f78dd5fdd
This commit is contained in:
parent
5f60590e80
commit
425725edb0
1 changed files with 6 additions and 7 deletions
|
|
@ -45,14 +45,13 @@
|
|||
#if defined(CPU_COLDFIRE)
|
||||
static inline int32_t MULT16_32_Q15(int32_t a, int32_t b)
|
||||
{
|
||||
asm volatile ("lsl.l #8, %[a];"
|
||||
"lsl.l #8, %[a];"
|
||||
"mac.l %[a], %[b], %%acc0;"
|
||||
"movclr.l %%acc0, %[a];"
|
||||
: [a] "+d" (a)
|
||||
: [b] "d" (b)
|
||||
int32_t r;
|
||||
asm volatile ("mac.l %[a], %[b], %%acc0;"
|
||||
"movclr.l %%acc0, %[r];"
|
||||
: [r] "=r" (r)
|
||||
: [a] "r" (a<<16), [b] "r" (b)
|
||||
: "cc");
|
||||
return a;
|
||||
return r;
|
||||
}
|
||||
|
||||
#elif defined(CPU_ARM)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue