summaryrefslogtreecommitdiff
path: root/patches/uClibc/20080801/200-mips-typeof.patch
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2008-08-07 14:05:47 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2008-08-07 14:05:47 (GMT)
commit140d179eb3e94c50389f7eac90b76372d6dc0d7a (patch)
tree810e0e2383997234264637f4d5d014b7bbb00936 /patches/uClibc/20080801/200-mips-typeof.patch
parentc1a2e1bb87eaad300ae48bd3e96c04870e38d671 (diff)
Update all samples to the latest set of options.
Update some samples to use newer features. Add patches for the uClibc-20080801 snapshot to be able to build with gcc-4.3. Add a patch against glibc-2.7 to allow building PPC with latest kernel headers. Add a patch to gcc to use an alternate unwinding when built against uClibc (after a private explanation/request by Daniel Egger <daniel@eggers-club.de>) /trunk/patches/glibc/2.7/230-powerpc-private_futex.patch | 15 15 0 0 + /trunk/patches/uClibc/20080801/300-fix-asm.patch | 175 175 0 0 +++++++++ /trunk/patches/uClibc/20080801/100-ifaddrs.patch | 190 190 0 0 +++++++++ /trunk/patches/uClibc/20080801/200-mips-typeof.patch | 112 112 0 0 ++++++ /trunk/patches/gcc/4.3.1/330-unwind-for-uClibc.patch | 25 25 0 0 + /trunk/samples/x86_64-unknown-linux-gnu/crosstool.config | 17 10 7 0 + /trunk/samples/armeb-unknown-linux-uclibc/crosstool.config | 7 5 2 0 + /trunk/samples/arm-unknown-linux-gnueabi/crosstool.config | 7 5 2 0 + /trunk/samples/ia64-unknown-linux-gnu/crosstool.config | 14 11 3 0 + /trunk/samples/x86_64-unknown-linux-uclibc/uClibc-20080801.config | 232 232 0 0 ++++++++++++ /trunk/samples/x86_64-unknown-linux-uclibc/crosstool.config | 34 21 13 0 +- /trunk/samples/i686-nptl-linux-gnu/crosstool.config | 10 7 3 0 + /trunk/samples/powerpc-unknown-linux-gnu/crosstool.config | 12 9 3 0 + /trunk/samples/mips-unknown-linux-uclibc/uClibc-20080801.config | 249 249 0 0 ++++++++++++ /trunk/samples/mips-unknown-linux-uclibc/crosstool.config | 38 23 15 0 +- /trunk/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config | 14 10 4 0 + /trunk/samples/armeb-unknown-linux-gnu/crosstool.config | 7 5 2 0 + /trunk/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config | 12 9 3 0 + /trunk/samples/arm-unknown-linux-uclibc/crosstool.config | 7 5 2 0 + /trunk/samples/i586-geode-linux-uclibc/uClibc-20080801.config | 261 261 0 0 +++++++++++++ /trunk/samples/i586-geode-linux-uclibc/crosstool.config | 32 20 12 0 ++ /trunk/samples/powerpc-unknown-linux-uclibc/crosstool.config | 12 9 3 0 + /trunk/samples/mipsel-unknown-linux-gnu/crosstool.config | 7 5 2 0 + /trunk/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config | 7 5 2 0 + /trunk/samples/alphaev56-unknown-linux-gnu/crosstool.config | 16 10 6 0 + 25 files changed, 1428 insertions(+), 84 deletions(-)
Diffstat (limited to 'patches/uClibc/20080801/200-mips-typeof.patch')
-rw-r--r--patches/uClibc/20080801/200-mips-typeof.patch112
1 files changed, 112 insertions, 0 deletions
diff --git a/patches/uClibc/20080801/200-mips-typeof.patch b/patches/uClibc/20080801/200-mips-typeof.patch
new file mode 100644
index 0000000..668e568
--- /dev/null
+++ b/patches/uClibc/20080801/200-mips-typeof.patch
@@ -0,0 +1,112 @@
+Index: uClibc/libc/sysdeps/linux/mips/bits/atomic.h
+===================================================================
+--- uClibc/libc/sysdeps/linux/mips/bits/atomic.h (revision 23002)
++++ uClibc/libc/sysdeps/linux/mips/bits/atomic.h (working copy)
+@@ -110,22 +110,22 @@
+ /* For all "bool" routines, we return FALSE if exchange succesful. */
+
+ #define __arch_compare_and_exchange_bool_8_int(mem, new, old, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __arch_compare_and_exchange_xxx_8_int(mem, new, old, rel, acq); \
+ !__cmp; })
+
+ #define __arch_compare_and_exchange_bool_16_int(mem, new, old, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __arch_compare_and_exchange_xxx_16_int(mem, new, old, rel, acq); \
+ !__cmp; })
+
+ #define __arch_compare_and_exchange_bool_32_int(mem, new, old, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __arch_compare_and_exchange_xxx_32_int(mem, new, old, rel, acq); \
+ !__cmp; })
+
+ #define __arch_compare_and_exchange_bool_64_int(mem, new, old, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __arch_compare_and_exchange_xxx_64_int(mem, new, old, rel, acq); \
+ !__cmp; })
+
+@@ -133,24 +133,24 @@
+ successful or not. */
+
+ #define __arch_compare_and_exchange_val_8_int(mem, new, old, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __arch_compare_and_exchange_xxx_8_int(mem, new, old, rel, acq); \
+- (typeof (*mem))__prev; })
++ (__typeof (*mem))__prev; })
+
+ #define __arch_compare_and_exchange_val_16_int(mem, new, old, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __arch_compare_and_exchange_xxx_16_int(mem, new, old, rel, acq); \
+- (typeof (*mem))__prev; })
++ (__typeof (*mem))__prev; })
+
+ #define __arch_compare_and_exchange_val_32_int(mem, new, old, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __arch_compare_and_exchange_xxx_32_int(mem, new, old, rel, acq); \
+- (typeof (*mem))__prev; })
++ (__typeof (*mem))__prev; })
+
+ #define __arch_compare_and_exchange_val_64_int(mem, new, old, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __arch_compare_and_exchange_xxx_64_int(mem, new, old, rel, acq); \
+- (typeof (*mem))__prev; })
++ (__typeof (*mem))__prev; })
+
+ /* Compare and exchange with "acquire" semantics, ie barrier after. */
+
+@@ -183,7 +183,7 @@
+ (abort (), 0)
+
+ #define __arch_exchange_xxx_32_int(mem, newval, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __asm__ __volatile__ ("\n" \
+ ".set push\n\t" \
+ MIPS_PUSH_MIPS2 \
+@@ -207,7 +207,7 @@
+ (abort (), 0)
+ #else
+ #define __arch_exchange_xxx_64_int(mem, newval, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __asm__ __volatile__ ("\n" \
+ ".set push\n\t" \
+ MIPS_PUSH_MIPS2 \
+@@ -236,13 +236,13 @@
+ /* Atomically add value and return the previous (unincremented) value. */
+
+ #define __arch_exchange_and_add_8_int(mem, newval, rel, acq) \
+- (abort (), (typeof(*mem)) 0)
++ (abort (), (__typeof(*mem)) 0)
+
+ #define __arch_exchange_and_add_16_int(mem, newval, rel, acq) \
+- (abort (), (typeof(*mem)) 0)
++ (abort (), (__typeof(*mem)) 0)
+
+ #define __arch_exchange_and_add_32_int(mem, value, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __asm__ __volatile__ ("\n" \
+ ".set push\n\t" \
+ MIPS_PUSH_MIPS2 \
+@@ -263,10 +263,10 @@
+ #if _MIPS_SIM == _ABIO32
+ /* We can't do an atomic 64-bit operation in O32. */
+ #define __arch_exchange_and_add_64_int(mem, value, rel, acq) \
+- (abort (), (typeof(*mem)) 0)
++ (abort (), (__typeof(*mem)) 0)
+ #else
+ #define __arch_exchange_and_add_64_int(mem, value, rel, acq) \
+-({ typeof (*mem) __prev; int __cmp; \
++({ __typeof (*mem) __prev; int __cmp; \
+ __asm__ __volatile__ ( \
+ ".set push\n\t" \
+ MIPS_PUSH_MIPS2 \