forked from len0rd/rockbox
codeclib: don't mark the outputs for the coldfire X(N)PROD_R asm macros as earlyclobbers as they are not, lets gcc produce better code. Speedup of 0.2-0.3MHz for codecs using the mdct, (larger speedup when building with gcc 4.4).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28650 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
16d44e9b02
commit
8802c5de9d
1 changed files with 3 additions and 3 deletions
|
|
@ -117,7 +117,7 @@ void XNPROD31(int32_t a, int32_t b,
|
|||
"asr.l #1, %[x];" \
|
||||
"movclr.l %%acc1, %[y];" \
|
||||
"asr.l #1, %[y];" \
|
||||
: [x] "=&d" (_x), [y] "=&d" (_y) \
|
||||
: [x] "=d" (_x), [y] "=d" (_y) \
|
||||
: [a] "r" (_a), [b] "r" (_b), \
|
||||
[t] "r" (_t), [v] "r" (_v) \
|
||||
: "cc");
|
||||
|
|
@ -129,7 +129,7 @@ void XNPROD31(int32_t a, int32_t b,
|
|||
"msac.l %[a], %[v], %%acc1;" \
|
||||
"movclr.l %%acc0, %[x];" \
|
||||
"movclr.l %%acc1, %[y];" \
|
||||
: [x] "=&d" (_x), [y] "=&d" (_y) \
|
||||
: [x] "=d" (_x), [y] "=d" (_y) \
|
||||
: [a] "r" (_a), [b] "r" (_b), \
|
||||
[t] "r" (_t), [v] "r" (_v) \
|
||||
: "cc");
|
||||
|
|
@ -141,7 +141,7 @@ void XNPROD31(int32_t a, int32_t b,
|
|||
"mac.l %[a], %[v], %%acc1;" \
|
||||
"movclr.l %%acc0, %[x];" \
|
||||
"movclr.l %%acc1, %[y];" \
|
||||
: [x] "=&d" (_x), [y] "=&d" (_y) \
|
||||
: [x] "=d" (_x), [y] "=d" (_y) \
|
||||
: [a] "r" (_a), [b] "r" (_b), \
|
||||
[t] "r" (_t), [v] "r" (_v) \
|
||||
: "cc");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue