[PATCH] AVR32: Fix bug in __avr32_asr64

From: Haavard Skinnemoen
Date: Tue Aug 01 2006 - 10:37:52 EST


libgcc uses a logical shift right instruction in one place we're
using an arithmetic shift right. I believe libgcc is right.

This fixes some weirdness in the timer code that I've seen lately.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@xxxxxxxxx>
---
arch/avr32/lib/__avr32_asr64.S | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/avr32/lib/__avr32_asr64.S b/arch/avr32/lib/__avr32_asr64.S
index cbbd478..368b6bc 100644
--- a/arch/avr32/lib/__avr32_asr64.S
+++ b/arch/avr32/lib/__avr32_asr64.S
@@ -20,8 +20,8 @@ __avr32_asr64:
brle 1f

lsl r8, r11, r9
+ lsr r10, r10, r12
asr r11, r11, r12
- asr r10, r10, r12
or r10, r8
retal r12

--
1.4.0

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/