libgcc.S (__ashldi3, [...]): Set shift truncation mask to 63.
authorGeorg-Johann Lay <avr@gjlay.de>
Thu, 16 Jun 2011 09:32:18 +0000 (09:32 +0000)
committerGeorg-Johann Lay <gjl@gcc.gnu.org>
Thu, 16 Jun 2011 09:32:18 +0000 (09:32 +0000)
* config/avr/libgcc.S (__ashldi3, __ashrdi3, __lshrdi3): Set shift
truncation mask to 63.

From-SVN: r175099

gcc/ChangeLog
gcc/config/avr/libgcc.S

index f6815f5ef588b1271fb28926b738bed302b0f7db..e02c407be57f1def07a73a1d460ad27839ca085c 100644 (file)
@@ -1,3 +1,8 @@
+2011-06-16  Georg-Johann Lay  <avr@gjlay.de>
+
+       * config/avr/libgcc.S (__ashldi3, __ashrdi3, __lshrdi3): Set shift
+       truncation mask to 63.
+
 2011-06-16  Georg-Johann Lay  <avr@gjlay.de>
 
        PR target/49313
index cf7d7683263228605d4db74ef0af7460a1b5f342..1988de91d1cc8d40801506fcaab545699b4d53ed 100644 (file)
@@ -1241,7 +1241,7 @@ ENDF __bswapdi2
 ;; r25:r18 = ashr64 (r25:r18, r17:r16)
 DEFUN __ashrdi3
     push r16
-    andi r16, 31
+    andi r16, 63
     breq 2f
 1:  asr  r25
     ror  r24
@@ -1263,7 +1263,7 @@ ENDF __ashrdi3
 ;; r25:r18 = lshr64 (r25:r18, r17:r16)
 DEFUN __lshrdi3
     push r16
-    andi r16, 31
+    andi r16, 63
     breq 2f
 1:  lsr  r25
     ror  r24
@@ -1285,7 +1285,7 @@ ENDF __lshrdi3
 ;; r25:r18 = ashl64 (r25:r18, r17:r16)
 DEFUN __ashldi3
     push r16
-    andi r16, 31
+    andi r16, 63
     breq 2f
 1:  lsl  r18
     rol  r19