diff options
author | Nils Wallménius <nils@rockbox.org> | 2010-11-23 11:58:00 +0000 |
---|---|---|
committer | Nils Wallménius <nils@rockbox.org> | 2010-11-23 11:58:00 +0000 |
commit | 8802c5de9d7251f3be69cec287384af774b3a27f (patch) | |
tree | aee2722fb2a518160309d1169ae43878e7837055 /apps/codecs/lib | |
parent | 16d44e9b0272551cbc0bfdd99ac0b5ab8cdb6e2c (diff) |
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
Diffstat (limited to 'apps/codecs/lib')
-rw-r--r-- | apps/codecs/lib/asm_mcf5249.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/apps/codecs/lib/asm_mcf5249.h b/apps/codecs/lib/asm_mcf5249.h index 12b69c9e51..9be92d2f2d 100644 --- a/apps/codecs/lib/asm_mcf5249.h +++ b/apps/codecs/lib/asm_mcf5249.h @@ -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"); |