Remove useless more "if" tests before "free".
authorUlrich Drepper <drepper@redhat.com>
Tue, 27 May 2008 06:04:07 +0000 (06:04 +0000)
committerUlrich Drepper <drepper@redhat.com>
Tue, 27 May 2008 06:04:07 +0000 (06:04 +0000)
* include/inline-hashtab.h (htab_delete): Likewise.
* libio/freopen.c (freopen): Likewise.
* libio/freopen64.c (freopen64): Likewise.
* locale/programs/ld-collate.c (collate_read): Likewise.
* misc/fstab.c (libc_freeres_fn): Likewise.
* posix/glob.c (globfree): Likewise.

19 files changed:
ChangeLog
include/inline-hashtab.h
libio/freopen.c
libio/freopen64.c
locale/programs/ld-collate.c
misc/fstab.c
nptl/ChangeLog
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S
nptl/sysdeps/unix/sysv/linux/i386/i486/sem_post.S
nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S
nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S
posix/glob.c

index 0d22eaf8c737ba55522b115910b768ba9ce93aa7..3df9bfbe07e457dff2fc82210b676fe76fe4d062 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2008-05-26  Jim Meyering  <meyering@redhat.com>
+
+       Remove useless more "if" tests before "free".
+       * include/inline-hashtab.h (htab_delete): Likewise.
+       * libio/freopen.c (freopen): Likewise.
+       * libio/freopen64.c (freopen64): Likewise.
+       * locale/programs/ld-collate.c (collate_read): Likewise.
+       * misc/fstab.c (libc_freeres_fn): Likewise.
+       * posix/glob.c (globfree): Likewise.
+
 2008-05-24  Ulrich Drepper  <drepper@redhat.com>
 
        * string/Makefile (strop-tests): Add memmem.
index ad361cd1ed18c21e0888d79c421d406b45d2c95f..c359161c54ac1a9ee15c2ecca66d4283c4a8a4f5 100644 (file)
@@ -142,8 +142,7 @@ htab_delete (struct hashtab *htab)
   int i;
 
   for (i = htab->size - 1; i >= 0; i--)
-    if (htab->entries[i])
-      free (htab->entries[i]);
+    free (htab->entries[i]);
 
   if (htab->free)
     htab->free (htab->entries);
index d94a5629f14cf53ed7ea640e433e14876a6571fe..d80815f91828d9d4acefe4a9602c0560eac74bfc 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,95,96,97,98,2000,2001,2002,2003
+/* Copyright (C) 1993,95,96,97,98,2000,2001,2002,2003,2008
        Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -80,8 +80,7 @@ freopen (filename, mode, fp)
   if (fd != -1)
     {
       __close (fd);
-      if (filename != NULL)
-       free ((char *) filename);
+      free ((char *) filename);
     }
   _IO_release_lock (fp);
   return result;
index f8da78c46e2683d7f4f7947b50940ce9312d9aaf..2dad6d7b4ec2333a829a4ff33c6d66d0fb7d8543 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,1995,1996,1997,1998,2000,2001,2002, 2003
+/* Copyright (C) 1993,1995,1996,1997,1998,2000,2001,2002, 2003, 2008
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -64,8 +64,7 @@ freopen64 (filename, mode, fp)
   if (fd != -1)
     {
       __close (fd);
-      if (filename != NULL)
-       free ((char *) filename);
+      free ((char *) filename);
     }
   _IO_release_lock (fp);
   return result;
index 7af3b8aa92ddbf507a42e4a5047beb50c18754d6..bf50e77aab2691a6765d558961f8fe12e39478d6 100644 (file)
@@ -2961,8 +2961,7 @@ collate_read (struct linereader *ldfile, struct localedef_t *result,
              else
                {
                col_elem_free:
-                 if (symbol != NULL)
-                   free ((char *) symbol);
+                 free ((char *) symbol);
                  free (arg->val.str.startmb);
                  free (arg->val.str.startwc);
                }
@@ -3142,8 +3141,7 @@ collate_read (struct linereader *ldfile, struct localedef_t *result,
              arg = lr_token (ldfile, charmap, result, repertoire, verbose);
              if (arg->tok != tok_bsymbol)
                {
-                 if (newname != NULL)
-                   free ((char *) newname);
+                 free ((char *) newname);
                  goto err_label;
                }
 
@@ -3157,10 +3155,8 @@ collate_read (struct linereader *ldfile, struct localedef_t *result,
                            "LC_COLLATE");
 
                sym_equiv_free:
-                 if (newname != NULL)
-                   free ((char *) newname);
-                 if (symname != NULL)
-                   free ((char *) symname);
+                 free ((char *) newname);
+                 free ((char *) symname);
                  break;
                }
              if (symname == NULL)
index b434203a868f7d18104f008e27e02e71d7fa2079..ab5581e9b74cdbf3a4b3fb167a65e6433b99ef2c 100644 (file)
@@ -1,4 +1,5 @@
-/* Copyright (C) 1995, 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1996, 1997, 1998, 2000, 2008
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -185,6 +186,5 @@ libc_freeres_fn (fstab_free)
   char *buffer;
 
   buffer = fstab_state.fs_buffer;
-  if (buffer != NULL)
-    free ((void *) buffer);
+  free ((void *) buffer);
 }
index 0ca98b8c3d671dc60dbcae59567f27079bd0b407..0f100e4349e545a127060c19df94181c6e32995d 100644 (file)
@@ -1,3 +1,25 @@
+2008-05-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+       * sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Add
+       cfi directives.
+       * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: Likewise.
+       * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: Likewise.
+       * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise.
+       * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S: Likewise.
+       * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise.
+       * sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise.
+
+2008-05-22  Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+       * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S: Add
+       cfi directives.
+       * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S:
+       Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S:
+       Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S:
+       Likewise.
+
 2008-05-26  Ulrich Drepper  <drepper@redhat.com>
 
        * tst-typesizes.c: Explicitly check __SIZEOF_PTHREAD_* constants.
index 77d252de8f113ab2539b289b952ad4e78269bdb6..040d7f8c33a8b2dd87edf410d54dc03ba78a40b8 100644 (file)
        .type   pthread_barrier_wait,@function
        .align  16
 pthread_barrier_wait:
+       cfi_startproc
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
 
        movl    8(%esp), %ebx
 
@@ -45,6 +48,8 @@ pthread_barrier_wait:
 
        /* There are more threads to come.  */
        pushl   %esi
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%esi, -12)
 
 #if CURR_EVENT == 0
        movl    (%ebx), %edx
@@ -101,9 +106,16 @@ pthread_barrier_wait:
 10:    movl    %esi, %eax              /* != PTHREAD_BARRIER_SERIAL_THREAD */
 
        popl    %esi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%esi)
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
 
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
+       
        /* The necessary number of threads arrived.  */
 3:
 #if CURR_EVENT == 0
@@ -140,8 +152,12 @@ pthread_barrier_wait:
 5:     orl     $-1, %eax               /* == PTHREAD_BARRIER_SERIAL_THREAD */
 
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
 
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
 1:     movl    PRIVATE(%ebx), %ecx
        leal    MUTEX(%ebx), %edx
        xorl    $LLL_SHARED, %ecx
@@ -154,6 +170,8 @@ pthread_barrier_wait:
        call    __lll_unlock_wake
        jmp     5b
 
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%esi, -12)
 6:     movl    PRIVATE(%ebx), %ecx
        leal    MUTEX(%ebx), %eax
        xorl    $LLL_SHARED, %ecx
@@ -165,4 +183,5 @@ pthread_barrier_wait:
        xorl    $LLL_SHARED, %ecx
        call    __lll_unlock_wake
        jmp     10b
+       cfi_endproc
        .size   pthread_barrier_wait,.-pthread_barrier_wait
index 776c47f6cc557c914cacac1dad407c1c932a23db..f46b4b874abdb32b9ca97444a6bceaa403ad8bf7 100644 (file)
        .type   __pthread_cond_broadcast, @function
        .align  16
 __pthread_cond_broadcast:
-
+       cfi_startproc
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
        pushl   %esi
+       cfi_adjust_cfa_offset(4)
        pushl   %edi
+       cfi_adjust_cfa_offset(4)
        pushl   %ebp
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
+       cfi_offset(%esi, -12)
+       cfi_offset(%edi, -16)
+       cfi_offset(%ebp, -20)
 
        movl    20(%esp), %ebx
 
@@ -114,11 +122,24 @@ __pthread_cond_broadcast:
 
 10:    xorl    %eax, %eax
        popl    %ebp
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebp)
        popl    %edi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%edi)
        popl    %esi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%esi)
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
 
+       cfi_adjust_cfa_offset(16)
+       cfi_offset(%ebx, -8)
+       cfi_offset(%esi, -12)
+       cfi_offset(%edi, -16)
+       cfi_offset(%ebp, -20)
        .align  16
        /* Unlock.  */
 4:     LOCK
@@ -127,11 +148,24 @@ __pthread_cond_broadcast:
 
 6:     xorl    %eax, %eax
        popl    %ebp
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebp)
        popl    %edi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%edi)
        popl    %esi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%esi)
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
 
+       cfi_adjust_cfa_offset(16)
+       cfi_offset(%ebx, -8)
+       cfi_offset(%esi, -12)
+       cfi_offset(%edi, -16)
+       cfi_offset(%ebp, -20)
        /* Initial locking failed.  */
 1:
 #if cond_lock == 0
@@ -199,6 +233,7 @@ __pthread_cond_broadcast:
        movl    $SYS_futex, %eax
        ENTER_KERNEL
        jmp     10b
+       cfi_endproc
        .size   __pthread_cond_broadcast, .-__pthread_cond_broadcast
 versioned_symbol (libpthread, __pthread_cond_broadcast, pthread_cond_broadcast,
                  GLIBC_2_3_2)
index 36a18036c503297c42b9aa754b5d07a0b7afdb1c..4909f49107f954e33734cae2109107579cbee8a4 100644 (file)
        .align  16
 __pthread_cond_signal:
 
+       cfi_startproc
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
        pushl   %edi
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
+       cfi_offset(%edi, -12)
 
        movl    12(%esp), %edi
 
@@ -69,7 +74,12 @@ __pthread_cond_signal:
 
        /* Wake up one thread.  */
        pushl   %esi
+       cfi_adjust_cfa_offset(4)
        pushl   %ebp
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%esi, -16)
+       cfi_offset(%ebp, -20)
+
 #if FUTEX_PRIVATE_FLAG > 255
        xorl    %ecx, %ecx
 #endif
@@ -91,7 +101,11 @@ __pthread_cond_signal:
        ENTER_KERNEL  */
        int     $0x80
        popl    %ebp
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebp)
        popl    %esi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%esi)
 
        /* For any kind of error, we try again with WAKE.
           The general test also covers running on old kernels.  */
@@ -100,9 +114,17 @@ __pthread_cond_signal:
 
 6:     xorl    %eax, %eax
        popl    %edi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%edi)
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
 
+       cfi_adjust_cfa_offset(8)
+       cfi_offset(%ebx, -8)
+       cfi_offset(%edi, -12)
+
 7:     /* %ecx should be either FUTEX_WAKE_OP or
           FUTEX_WAKE_OP|FUTEX_PRIVATE_FLAG from the previous syscall.  */
        xorl    $(FUTEX_WAKE ^ FUTEX_WAKE_OP), %ecx
@@ -152,6 +174,7 @@ __pthread_cond_signal:
        call    __lll_lock_wait
        jmp     2b
 
+       cfi_endproc
        .size   __pthread_cond_signal, .-__pthread_cond_signal
 versioned_symbol (libpthread, __pthread_cond_signal, pthread_cond_signal,
                  GLIBC_2_3_2)
index 2ddeed072fcde1414b9221cf07959891bfcfa16b..4e5f0c5b2ad9815d279cd13465f0c2e6e5ec567f 100644 (file)
        .type   __pthread_rwlock_rdlock,@function
        .align  16
 __pthread_rwlock_rdlock:
+       cfi_startproc
        pushl   %esi
+       cfi_adjust_cfa_offset(4)
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%esi, -8)
+       cfi_offset(%ebx, -12)
 
        xorl    %esi, %esi
        movl    12(%esp), %ebx
@@ -113,9 +118,16 @@ __pthread_rwlock_rdlock:
 
        movl    %edx, %eax
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        popl    %esi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%esi)
        ret
 
+       cfi_adjust_cfa_offset(8)
+       cfi_offset(%esi, -8)
+       cfi_offset(%ebx, -12)
 1:
 #if MUTEX == 0
        movl    %ebx, %edx
@@ -171,6 +183,7 @@ __pthread_rwlock_rdlock:
        movzbl  PSHARED(%ebx), %ecx
        call    __lll_lock_wait
        jmp     13b
+       cfi_endproc
        .size   __pthread_rwlock_rdlock,.-__pthread_rwlock_rdlock
 
        .globl  pthread_rwlock_rdlock
index 89027284ec677ccf97950ad110f6d36cafe61803..2b84cd06c2d309f0f39c87243b5ac99381b456ab 100644 (file)
        .type   pthread_rwlock_timedrdlock,@function
        .align  16
 pthread_rwlock_timedrdlock:
+       cfi_startproc
        pushl   %esi
+       cfi_adjust_cfa_offset(4)
        pushl   %edi
+       cfi_adjust_cfa_offset(4)
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
        pushl   %ebp
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%esi, -8)
+       cfi_offset(%edi, -12)
+       cfi_offset(%ebx, -16)
+       cfi_offset(%ebp, -20)
        subl    $8, %esp
+       cfi_adjust_cfa_offset(8)
 
        movl    28(%esp), %ebp
        movl    32(%esp), %edi
@@ -150,12 +160,26 @@ pthread_rwlock_timedrdlock:
 7:     movl    %edx, %eax
 
        addl    $8, %esp
+       cfi_adjust_cfa_offset(-8)
        popl    %ebp
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebp)
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        popl    %edi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%edi)
        popl    %esi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%esi)
        ret
 
+       cfi_adjust_cfa_offset(24)
+       cfi_offset(%esi, -8)
+       cfi_offset(%edi, -12)
+       cfi_offset(%ebx, -16)
+       cfi_offset(%ebp, -20)
 1:
 #if MUTEX == 0
        movl    %ebp, %edx
@@ -216,4 +240,5 @@ pthread_rwlock_timedrdlock:
 
 19:    movl    $EINVAL, %edx
        jmp     9b
+       cfi_endproc
        .size   pthread_rwlock_timedrdlock,.-pthread_rwlock_timedrdlock
index 0cf02e057ed2ab27a756da82c6e1bb14139f8ba8..91652467c42226fd52252b63530c36b374f6a110 100644 (file)
        .type   pthread_rwlock_timedwrlock,@function
        .align  16
 pthread_rwlock_timedwrlock:
+       cfi_startproc
        pushl   %esi
+       cfi_adjust_cfa_offset(4)
        pushl   %edi
+       cfi_adjust_cfa_offset(4)
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
        pushl   %ebp
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%esi, -8)
+       cfi_offset(%edi, -12)
+       cfi_offset(%ebx, -16)
+       cfi_offset(%ebp, -20)
        subl    $8, %esp
+       cfi_adjust_cfa_offset(8)
 
        movl    28(%esp), %ebp
        movl    32(%esp), %edi
@@ -148,12 +158,26 @@ pthread_rwlock_timedwrlock:
 7:     movl    %edx, %eax
 
        addl    $8, %esp
+       cfi_adjust_cfa_offset(-8)
        popl    %ebp
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebp)
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        popl    %edi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%edi)
        popl    %esi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%esi)
        ret
 
+       cfi_adjust_cfa_offset(24)
+       cfi_offset(%esi, -8)
+       cfi_offset(%edi, -12)
+       cfi_offset(%ebx, -16)
+       cfi_offset(%ebp, -20)
 1:
 #if MUTEX == 0
        movl    %ebp, %edx
@@ -209,4 +233,5 @@ pthread_rwlock_timedwrlock:
 
 19:    movl    $EINVAL, %edx
        jmp     9b
+       cfi_endproc
        .size   pthread_rwlock_timedwrlock,.-pthread_rwlock_timedwrlock
index bf9c33ea9f00b0c856568c7b6f8b77b795b11f69..aabb92960b2fa4f153b1ee26d7aa16676a3e8c50 100644 (file)
        .type   __pthread_rwlock_unlock,@function
        .align  16
 __pthread_rwlock_unlock:
+       cfi_startproc
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
        pushl   %edi
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
+       cfi_offset(%edi, -12)
 
        movl    12(%esp), %edi
 
@@ -87,9 +92,16 @@ __pthread_rwlock_unlock:
 
        xorl    %eax, %eax
        popl    %edi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%edi)
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
 
+       cfi_adjust_cfa_offset(8)
+       cfi_offset(%ebx, -8)
+       cfi_offset(%edi, -12)
        .align  16
 6:     LOCK
 #if MUTEX == 0
@@ -133,7 +145,7 @@ __pthread_rwlock_unlock:
        movzbl  PSHARED(%edi), %ecx
        call    __lll_unlock_wake
        jmp     8b
-
+       cfi_endproc
        .size   __pthread_rwlock_unlock,.-__pthread_rwlock_unlock
 
        .globl  pthread_rwlock_unlock
index d13bb5132cbbb752ef201de2736ca5413b4cc9f2..100736499bd43f559b0ffd188d510533433bcdbc 100644 (file)
        .type   __pthread_rwlock_wrlock,@function
        .align  16
 __pthread_rwlock_wrlock:
+       cfi_startproc
        pushl   %esi
+       cfi_adjust_cfa_offset(4)
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%esi, -8)
+       cfi_offset(%ebx, -12)
 
        xorl    %esi, %esi
        movl    12(%esp), %ebx
@@ -111,9 +116,16 @@ __pthread_rwlock_wrlock:
 
        movl    %edx, %eax
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        popl    %esi
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%esi)
        ret
 
+       cfi_adjust_cfa_offset(8)
+       cfi_offset(%esi, -8)
+       cfi_offset(%ebx, -12)
 1:
 #if MUTEX == 0
        movl    %ebx, %edx
@@ -162,6 +174,7 @@ __pthread_rwlock_wrlock:
        movzbl  PSHARED(%ebx), %ecx
        call    __lll_lock_wait
        jmp     13b
+       cfi_endproc
        .size   __pthread_rwlock_wrlock,.-__pthread_rwlock_wrlock
 
        .globl  pthread_rwlock_wrlock
index 2edcdde4f0128bc86107d1bf36e2ca279bd6a6c8..86992c877e141df39fbaabab289cd4e2da14fda4 100644 (file)
        .type   __new_sem_post,@function
        .align  16
 __new_sem_post:
+       cfi_startproc
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
 
        movl    8(%esp), %ebx
 
@@ -64,8 +67,12 @@ __new_sem_post:
 
 2:     xorl    %eax, %eax
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
 
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
 1:
 #ifdef PIC
        call    __i686.get_pc_thunk.bx
@@ -116,14 +123,20 @@ __new_sem_post:
 
        orl     $-1, %eax
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
+       cfi_endproc
        .size   __new_sem_post,.-__new_sem_post
        versioned_symbol(libpthread, __new_sem_post, sem_post, GLIBC_2_1)
 #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1)
        .global __old_sem_post
        .type   __old_sem_post,@function
 __old_sem_post:
+       cfi_startproc
        pushl   %ebx
+       cfi_adjust_cfa_offset(4)
+       cfi_offset(%ebx, -8)
 
        movl    8(%esp), %ebx
        LOCK
@@ -139,7 +152,10 @@ __old_sem_post:
 
        xorl    %eax, %eax
        popl    %ebx
+       cfi_adjust_cfa_offset(-4)
+       cfi_restore(%ebx)
        ret
+       cfi_endproc
        .size   __old_sem_post,.-__old_sem_post
        compat_symbol(libpthread, __old_sem_post, sem_post, GLIBC_2_0)
 #endif
index 0fa271442613b0a8a90d4f49009852f84ca47c3c..366c96fc36dec65844aba3a926433714e5107d3c 100644 (file)
        .type   pthread_rwlock_timedrdlock,@function
        .align  16
 pthread_rwlock_timedrdlock:
+       cfi_startproc
        pushq   %r12
+       cfi_adjust_cfa_offset(8)
        pushq   %r13
+       cfi_adjust_cfa_offset(8)
        pushq   %r14
+       cfi_adjust_cfa_offset(8)
+       cfi_offset(%r12, -16)
+       cfi_offset(%r13, -24)
+       cfi_offset(%r14, -32)
+
        subq    $16, %rsp
+       cfi_adjust_cfa_offset(16)
 
        movq    %rdi, %r12
        movq    %rsi, %r13
@@ -155,11 +164,22 @@ pthread_rwlock_timedrdlock:
 7:     movq    %rdx, %rax
 
        addq    $16, %rsp
+       cfi_adjust_cfa_offset(-16)
        popq    %r14
+       cfi_adjust_cfa_offset(-8)
+       cfi_restore(%r14)
        popq    %r13
+       cfi_adjust_cfa_offset(-8)
+       cfi_restore(%r13)
        popq    %r12
+       cfi_adjust_cfa_offset(-8)
+       cfi_restore(%r12)
        retq
 
+       cfi_adjust_cfa_offset(40)
+       cfi_offset(%r12, -16)
+       cfi_offset(%r13, -24)
+       cfi_offset(%r14, -32)
 1:     movl    PSHARED(%rdi), %esi
 #if MUTEX != 0
        addq    $MUTEX, %rdi
@@ -214,4 +234,5 @@ pthread_rwlock_timedrdlock:
 
 19:    movl    $EINVAL, %edx
        jmp     9b
+       cfi_endproc
        .size   pthread_rwlock_timedrdlock,.-pthread_rwlock_timedrdlock
index 1e43933ca95861c70a93c12af808c096b5236fdc..dde6b58836254c4a8eafa75fd0e944237d90ef4e 100644 (file)
        .type   pthread_rwlock_timedwrlock,@function
        .align  16
 pthread_rwlock_timedwrlock:
+       cfi_startproc
        pushq   %r12
+       cfi_adjust_cfa_offset(8)
        pushq   %r13
+       cfi_adjust_cfa_offset(8)
        pushq   %r14
+       cfi_adjust_cfa_offset(8)
+       cfi_offset(%r12, -16)
+       cfi_offset(%r13, -24)
+       cfi_offset(%r14, -32)
+
        subq    $16, %rsp
+       cfi_adjust_cfa_offset(16)
 
        movq    %rdi, %r12
        movq    %rsi, %r13
@@ -152,11 +161,22 @@ pthread_rwlock_timedwrlock:
 7:     movq    %rdx, %rax
 
        addq    $16, %rsp
+       cfi_adjust_cfa_offset(-16)
        popq    %r14
+       cfi_adjust_cfa_offset(-8)
+       cfi_restore(%r14)
        popq    %r13
+       cfi_adjust_cfa_offset(-8)
+       cfi_restore(%r13)
        popq    %r12
+       cfi_adjust_cfa_offset(-8)
+       cfi_restore(%r12)
        retq
 
+       cfi_adjust_cfa_offset(40)
+       cfi_offset(%r12, -16)
+       cfi_offset(%r13, -24)
+       cfi_offset(%r14, -32)
 1:     movl    PSHARED(%rdi), %esi
 #if MUTEX != 0
        addq    $MUTEX, %rdi
@@ -206,4 +226,5 @@ pthread_rwlock_timedwrlock:
 
 19:    movl    $EINVAL, %edx
        jmp     9b
+       cfi_endproc
        .size   pthread_rwlock_timedwrlock,.-pthread_rwlock_timedwrlock
index b7d9617267db5e76ba1e95bb1177e31f8bba6303..73081ece66a8ff4834ae9fa457616b155dc84348 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2002, 2003, 2004, 2005, 2006, 2007
+/* Copyright (C) 1991-2002, 2003, 2004, 2005, 2006, 2007, 2008
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -1075,8 +1075,7 @@ globfree (pglob)
     {
       size_t i;
       for (i = 0; i < pglob->gl_pathc; ++i)
-       if (pglob->gl_pathv[pglob->gl_offs + i] != NULL)
-         free (pglob->gl_pathv[pglob->gl_offs + i]);
+       free (pglob->gl_pathv[pglob->gl_offs + i]);
       free (pglob->gl_pathv);
       pglob->gl_pathv = NULL;
     }