diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | sysdeps/i386/i686/memcmp.S | 5 |
2 files changed, 6 insertions, 2 deletions
@@ -1,5 +1,8 @@ 2008-07-25 Ulrich Drepper <drepper@redhat.com> + * sysdeps/i386/i686/memcmp.S: Fix unwind information. + Reported by Paul Pluzhnikov <ppluzhnikov@google.com>. + [BZ #6698] * stdio-common/_i18n_number.h (_i18n_number_rewrite): Take additional parameter for end of buffer. If temporary copy is too large use diff --git a/sysdeps/i386/i686/memcmp.S b/sysdeps/i386/i686/memcmp.S index 4fa6ade..24f6804 100644 --- a/sysdeps/i386/i686/memcmp.S +++ b/sysdeps/i386/i686/memcmp.S @@ -29,8 +29,7 @@ #define ENTRANCE pushl %ebx; cfi_adjust_cfa_offset (4); \ cfi_rel_offset (ebx, 0); ENTER #define RETURN popl %ebx; cfi_adjust_cfa_offset (-4); \ - cfi_restore (ebx); LEAVE; ret; \ - cfi_adjust_cfa_offset (4); cfi_rel_offset (ebx, 0); + cfi_restore (ebx); LEAVE; ret /* Load an entry in a jump table into EBX. TABLE is a jump table with relative offsets. INDEX is a register contains the index @@ -71,6 +70,8 @@ L(bye): xorl %eax, %eax RETURN + cfi_adjust_cfa_offset (4) + cfi_rel_offset (ebx, 0) L(neq): sbbl %eax, %eax sbbl $-1, %eax |