More compact unwind info.
authorUlrich Drepper <drepper@redhat.com>
Wed, 10 Feb 2010 06:59:11 +0000 (22:59 -0800)
committerUlrich Drepper <drepper@redhat.com>
Wed, 10 Feb 2010 06:59:11 +0000 (22:59 -0800)
ChangeLog
sysdeps/i386/rshift.S

index 98a77ab..c8ef5c7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2010-02-09  Ulrich Drepper  <drepper@redhat.com>
 
+       * sysdeps/i386/rshift.S: More compact unwind information.
+
        * sysdeps/i386/lshift.S: Fix unwind information.
 
 2010-02-08  Luis Machado  <luisgpm@br.ibm.com>
index 3fd0afe..332c4d0 100644 (file)
@@ -1,5 +1,5 @@
 /* i80386 __mpn_rshift --
-   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
@@ -57,6 +57,7 @@ ENTRY (BP_SYM (__mpn_rshift))
 
        movl    (%esi,%edx,4),%ebx      /* read least significant limb */
        cfi_rel_offset (ebx, 0)
+       cfi_remember_state
        xorl    %eax,%eax
        shrdl   %cl,%ebx,%eax           /* compute carry limb */
        incl    %edx
@@ -97,10 +98,7 @@ L(1):        movl    (%esi,%edx,4),%eax
        LEAVE
        ret
 
-       cfi_adjust_cfa_offset (12)
-       cfi_rel_offset (edi, 8)
-       cfi_rel_offset (esi, 4)
-       cfi_rel_offset (ebx, 0)
+       cfi_restore_state
 L(end):        shrl    %cl,%ebx                /* compute most significant limb */
        movl    %ebx,(%edi)             /* store it */