summaryrefslogtreecommitdiff
path: root/sysdeps/i386/lshift.S
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@redhat.com>2010-02-22 16:34:12 +0100
committerAndreas Schwab <schwab@redhat.com>2010-02-22 16:41:22 +0100
commit2b6e16c5e2fa8ad12b02a218ba32d63a4dffda18 (patch)
treeb931e143f212d5b656497bb0c3f3e3a413fc78e1 /sysdeps/i386/lshift.S
parent0c3f133ed106996172dd2c106b22e38ce695e63d (diff)
parent199428c19774c12b3c4b6e6486ea9d4a021288af (diff)
Merge remote branch 'origin/master' into fedora/master
Diffstat (limited to 'sysdeps/i386/lshift.S')
-rw-r--r--sysdeps/i386/lshift.S4
1 files changed, 3 insertions, 1 deletions
diff --git a/sysdeps/i386/lshift.S b/sysdeps/i386/lshift.S
index 536d9878eb..398cf038c7 100644
--- a/sysdeps/i386/lshift.S
+++ b/sysdeps/i386/lshift.S
@@ -1,5 +1,5 @@
/* i80386 __mpn_lshift --
- Copyright (C) 1992, 1994, 1997-2000, 2005 Free Software Foundation, Inc.
+ Copyright (C) 1992,1994,1997-2000,2005,2010 Free Software Foundation, Inc.
This file is part of the GNU MP Library.
The GNU MP Library is free software; you can redistribute it and/or modify
@@ -55,6 +55,7 @@ ENTRY (BP_SYM (__mpn_lshift))
movl (%esi,%edx,4),%ebx /* read most significant limb */
cfi_rel_offset (ebx, 0)
+ cfi_remember_state
xorl %eax,%eax
shldl %cl,%ebx,%eax /* compute carry limb */
decl %edx
@@ -95,6 +96,7 @@ L(1): movl (%esi,%edx,4),%eax
LEAVE
ret
+ cfi_restore_state
L(end): shll %cl,%ebx /* compute least significant limb */
movl %ebx,(%edi) /* store it */