This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[patch] Change inline asm to work with llvm-gcc
- From: Rafael Espindola <espindola at google dot com>
- To: libc-alpha at sourceware dot org
- Cc: Evan Cheng <evan dot cheng at apple dot com>
- Date: Tue, 23 Dec 2008 11:21:17 +0000
- Subject: [patch] Change inline asm to work with llvm-gcc
llvm-gcc requires that if a register is used for both input and
output, the types of the input and output expressions should be
compatible. Currently __FD_ZERO uses an int for output and a int* for
input in its second argument.
2008-12-23 Rafael Avila de Espindola <espindola@google.com>
* sysdeps/i386/bits/select.h (__FD_ZERO): Change the type of __d1 to
"int *".
Cheers,
--
Rafael Avila de Espindola
Google | Gordon House | Barrow Street | Dublin 4 | Ireland
Registered in Dublin, Ireland | Registration Number: 368047
Index: sysdeps/i386/bits/select.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/i386/bits/select.h,v
retrieving revision 1.14
diff -u -r1.14 select.h
--- sysdeps/i386/bits/select.h 6 Jul 2001 04:55:53 -0000 1.14
+++ sysdeps/i386/bits/select.h 23 Dec 2008 11:13:28 -0000
@@ -25,7 +25,8 @@
# define __FD_ZERO(fdsp) \
do { \
- int __d0, __d1; \
+ int __d0; \
+ int *__d1; \
__asm__ __volatile__ ("cld; rep; stosl" \
: "=c" (__d0), "=D" (__d1) \
: "a" (0), "0" (sizeof (fd_set) \