diff options
| author | Jens Arnold <amiconn@rockbox.org> | 2008-06-27 16:06:28 +0000 |
|---|---|---|
| committer | Jens Arnold <amiconn@rockbox.org> | 2008-06-27 16:06:28 +0000 |
| commit | 71cc98605fd5d6e3fc5645fd59bfddd094c5e2d1 (patch) | |
| tree | dc804b6fecc4bd77053286f726cf10aa4a6028e4 /apps | |
| parent | 39aaa2f2b5ef1efe7dc8cefdf11877ab10231f88 (diff) | |
| download | rockbox-71cc98605fd5d6e3fc5645fd59bfddd094c5e2d1.zip rockbox-71cc98605fd5d6e3fc5645fd59bfddd094c5e2d1.tar.gz rockbox-71cc98605fd5d6e3fc5645fd59bfddd094c5e2d1.tar.bz2 rockbox-71cc98605fd5d6e3fc5645fd59bfddd094c5e2d1.tar.xz | |
Small optimisation for mandelbrot on arm targets: Help the compiler allocating registers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17807 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
| -rw-r--r-- | apps/plugins/mandelbrot.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/apps/plugins/mandelbrot.c b/apps/plugins/mandelbrot.c index 8b045e7..793fbdf 100644 --- a/apps/plugins/mandelbrot.c +++ b/apps/plugins/mandelbrot.c @@ -443,11 +443,11 @@ static inline long muls32_asr26(long a, long b) "mov %[r], %[r], lsr #26 \n" "orr %[r], %[r], %[t1], lsl #6 \n" : /* outputs */ - [r] "=&r"(r), - [t1]"=&r"(t1) + [r] "=&r,&r,&r"(r), + [t1]"=&r,&r,&r"(t1) : /* inputs */ - [a] "r" (a), - [b] "r" (b) + [a] "%r,%r,%r" (a), + [b] "r,0,1" (b) ); return r; } @@ -615,7 +615,7 @@ void calc_mandelbrot_high_prec(void) y2 = MULS32_ASR26(y, y); if (x2 + y2 > (4L<<26)) break; - + y = 2 * MULS32_ASR26(x, y) + b; x = x2 - y2 + a; } |