diff options
-rw-r--r-- | apps/plugins/mandelbrot.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/apps/plugins/mandelbrot.c b/apps/plugins/mandelbrot.c index fe920cebd4..b1e8587764 100644 --- a/apps/plugins/mandelbrot.c +++ b/apps/plugins/mandelbrot.c | |||
@@ -298,19 +298,19 @@ static inline long muls32_asr26(long a, long b) | |||
298 | { | 298 | { |
299 | long r, t1; | 299 | long r, t1; |
300 | asm ( | 300 | asm ( |
301 | "mac.l %[a],%[b],%%acc0\n" /* multiply */ | 301 | "mac.l %[a], %[b], %%acc0 \n" /* multiply */ |
302 | "mulu.l %[a],%[b] \n" /* get lower half */ | 302 | "move.l %%accext01, %[t1] \n" /* get low part */ |
303 | "movclr.l %%acc0,%[r] \n" /* get higher half */ | 303 | "movclr.l %%acc0, %[r] \n" /* get high part */ |
304 | "asl.l #5,%[r] \n" /* hi <<= 5, plus one free */ | 304 | "asl.l #5, %[r] \n" /* hi <<= 5, plus one free */ |
305 | "moveq.l #26,%[t1] \n" | 305 | "lsr.l #3, %[t1] \n" /* lo >>= 3 */ |
306 | "lsr.l %[t1],%[b] \n" /* (unsigned)lo >>= 26 */ | 306 | "and.l #0x1f, %[t1] \n" /* mask out unrelated bits */ |
307 | "or.l %[b],%[r] \n" /* combine result */ | 307 | "or.l %[t1], %[r] \n" /* combine result */ |
308 | : /* outputs */ | 308 | : /* outputs */ |
309 | [r]"=&d"(r), | 309 | [r] "=d"(r), |
310 | [t1]"=&d"(t1), | 310 | [t1]"=d"(t1) |
311 | [b] "+d" (b) | ||
312 | : /* inputs */ | 311 | : /* inputs */ |
313 | [a] "d" (a) | 312 | [a] "d" (a), |
313 | [b] "d" (b) | ||
314 | ); | 314 | ); |
315 | return r; | 315 | return r; |
316 | } | 316 | } |