patches/uClibc/20080801/200-mips-typeof.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Oct 09 19:17:49 2008 +0000 (2008-10-09)
changeset 914 0b164a321177
permissions -rw-r--r--
Remove CT_BROKEN.
Only one component is actually BROKEN (libelf), make it depend on EXPERIMENTAL, but state BROKEN in the prompt.
ltrace (which depends on libelf) is now marked as EXPERIMENTAL, with the reference to the BROKEN libelf in the help entry.

/trunk/docs/overview.txt | 6 0 6 0 ------
/trunk/config/debug/ltrace.in | 7 4 3 0 ++++---
/trunk/config/global/ct-behave.in | 8 0 8 0 --------
/trunk/config/tools/libelf.in | 5 3 2 0 +++--
4 files changed, 7 insertions(+), 19 deletions(-)
     1 Index: uClibc/libc/sysdeps/linux/mips/bits/atomic.h
     2 ===================================================================
     3 --- uClibc/libc/sysdeps/linux/mips/bits/atomic.h	(revision 23002)
     4 +++ uClibc/libc/sysdeps/linux/mips/bits/atomic.h	(working copy)
     5 @@ -110,22 +110,22 @@
     6  /* For all "bool" routines, we return FALSE if exchange succesful.  */
     7  
     8  #define __arch_compare_and_exchange_bool_8_int(mem, new, old, rel, acq)	\
     9 -({ typeof (*mem) __prev; int __cmp;					\
    10 +({ __typeof (*mem) __prev; int __cmp;					\
    11     __arch_compare_and_exchange_xxx_8_int(mem, new, old, rel, acq);	\
    12     !__cmp; })
    13  
    14  #define __arch_compare_and_exchange_bool_16_int(mem, new, old, rel, acq) \
    15 -({ typeof (*mem) __prev; int __cmp;					\
    16 +({ __typeof (*mem) __prev; int __cmp;					\
    17     __arch_compare_and_exchange_xxx_16_int(mem, new, old, rel, acq);	\
    18     !__cmp; })
    19  
    20  #define __arch_compare_and_exchange_bool_32_int(mem, new, old, rel, acq) \
    21 -({ typeof (*mem) __prev; int __cmp;					\
    22 +({ __typeof (*mem) __prev; int __cmp;					\
    23     __arch_compare_and_exchange_xxx_32_int(mem, new, old, rel, acq);	\
    24     !__cmp; })
    25  
    26  #define __arch_compare_and_exchange_bool_64_int(mem, new, old, rel, acq) \
    27 -({ typeof (*mem) __prev; int __cmp;					\
    28 +({ __typeof (*mem) __prev; int __cmp;					\
    29     __arch_compare_and_exchange_xxx_64_int(mem, new, old, rel, acq);	\
    30     !__cmp; })
    31  
    32 @@ -133,24 +133,24 @@
    33     successful or not.  */
    34  
    35  #define __arch_compare_and_exchange_val_8_int(mem, new, old, rel, acq)	\
    36 -({ typeof (*mem) __prev; int __cmp;					\
    37 +({ __typeof (*mem) __prev; int __cmp;					\
    38     __arch_compare_and_exchange_xxx_8_int(mem, new, old, rel, acq);	\
    39 -   (typeof (*mem))__prev; })
    40 +   (__typeof (*mem))__prev; })
    41  
    42  #define __arch_compare_and_exchange_val_16_int(mem, new, old, rel, acq) \
    43 -({ typeof (*mem) __prev; int __cmp;					\
    44 +({ __typeof (*mem) __prev; int __cmp;					\
    45     __arch_compare_and_exchange_xxx_16_int(mem, new, old, rel, acq);	\
    46 -   (typeof (*mem))__prev; })
    47 +   (__typeof (*mem))__prev; })
    48  
    49  #define __arch_compare_and_exchange_val_32_int(mem, new, old, rel, acq) \
    50 -({ typeof (*mem) __prev; int __cmp;					\
    51 +({ __typeof (*mem) __prev; int __cmp;					\
    52     __arch_compare_and_exchange_xxx_32_int(mem, new, old, rel, acq);	\
    53 -   (typeof (*mem))__prev; })
    54 +   (__typeof (*mem))__prev; })
    55  
    56  #define __arch_compare_and_exchange_val_64_int(mem, new, old, rel, acq) \
    57 -({ typeof (*mem) __prev; int __cmp;					\
    58 +({ __typeof (*mem) __prev; int __cmp;					\
    59     __arch_compare_and_exchange_xxx_64_int(mem, new, old, rel, acq);	\
    60 -   (typeof (*mem))__prev; })
    61 +   (__typeof (*mem))__prev; })
    62  
    63  /* Compare and exchange with "acquire" semantics, ie barrier after.  */
    64  
    65 @@ -183,7 +183,7 @@
    66    (abort (), 0)
    67  
    68  #define __arch_exchange_xxx_32_int(mem, newval, rel, acq) \
    69 -({ typeof (*mem) __prev; int __cmp;					      \
    70 +({ __typeof (*mem) __prev; int __cmp;					      \
    71       __asm__ __volatile__ ("\n"						      \
    72       ".set	push\n\t"						      \
    73       MIPS_PUSH_MIPS2							      \
    74 @@ -207,7 +207,7 @@
    75    (abort (), 0)
    76  #else
    77  #define __arch_exchange_xxx_64_int(mem, newval, rel, acq) \
    78 -({ typeof (*mem) __prev; int __cmp;					      \
    79 +({ __typeof (*mem) __prev; int __cmp;					      \
    80       __asm__ __volatile__ ("\n"						      \
    81       ".set	push\n\t"						      \
    82       MIPS_PUSH_MIPS2							      \
    83 @@ -236,13 +236,13 @@
    84  /* Atomically add value and return the previous (unincremented) value.  */
    85  
    86  #define __arch_exchange_and_add_8_int(mem, newval, rel, acq) \
    87 -  (abort (), (typeof(*mem)) 0)
    88 +  (abort (), (__typeof(*mem)) 0)
    89  
    90  #define __arch_exchange_and_add_16_int(mem, newval, rel, acq) \
    91 -  (abort (), (typeof(*mem)) 0)
    92 +  (abort (), (__typeof(*mem)) 0)
    93  
    94  #define __arch_exchange_and_add_32_int(mem, value, rel, acq) \
    95 -({ typeof (*mem) __prev; int __cmp;					      \
    96 +({ __typeof (*mem) __prev; int __cmp;					      \
    97       __asm__ __volatile__ ("\n"						      \
    98       ".set	push\n\t"						      \
    99       MIPS_PUSH_MIPS2							      \
   100 @@ -263,10 +263,10 @@
   101  #if _MIPS_SIM == _ABIO32
   102  /* We can't do an atomic 64-bit operation in O32.  */
   103  #define __arch_exchange_and_add_64_int(mem, value, rel, acq) \
   104 -  (abort (), (typeof(*mem)) 0)
   105 +  (abort (), (__typeof(*mem)) 0)
   106  #else
   107  #define __arch_exchange_and_add_64_int(mem, value, rel, acq) \
   108 -({ typeof (*mem) __prev; int __cmp;					      \
   109 +({ __typeof (*mem) __prev; int __cmp;					      \
   110       __asm__ __volatile__ (						      \
   111       ".set	push\n\t"						      \
   112       MIPS_PUSH_MIPS2							      \