This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.23-571-g4f69cc4


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  4f69cc45bcbed1619b15c9632f3eb6a36590c7dd (commit)
      from  2c3d888304642a2241a84491eeac9344be507ea4 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=4f69cc45bcbed1619b15c9632f3eb6a36590c7dd

commit 4f69cc45bcbed1619b15c9632f3eb6a36590c7dd
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Tue Jul 19 21:39:36 2016 +0530

    microblaze: fix variable name collision with syscall macros
    
    If a function passes in a variable named "ret", the code will miscompile
    when it declares a local ret variable.  In some cases, it's even a build
    failure like so:
    ../sysdeps/unix/sysv/linux/spawni.c: In function '__spawni_child':
    ../sysdeps/unix/sysv/linux/spawni.c:289:5: error: address of register variable 'ret' requested
    	while (write_not_cancel (p, &ret, sizeof ret) < 0)

diff --git a/ChangeLog b/ChangeLog
index 639630f..a293999 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2016-07-19  Mike Frysinger  <vapier@gentoo.org>
+
+	* sysdeps/unix/sysv/linux/microblaze/sysdep.h (inline_syscall0):
+	Rename "ret" to "__ret".
+	(inline_syscall1, inline_syscall2, inline_syscall3, inline_syscall4,
+	inline_syscall5, inline_syscall6): Likewise.
+
 2016-07-19   Will Newton  <will.newton@gmail.com>
 
 	* elf/elf.h (R_METAG_REL8, R_METAG_REL16, R_METAG_TLS_GD
diff --git a/sysdeps/unix/sysv/linux/microblaze/sysdep.h b/sysdeps/unix/sysv/linux/microblaze/sysdep.h
index abc13c2..b83c436 100644
--- a/sysdeps/unix/sysv/linux/microblaze/sysdep.h
+++ b/sysdeps/unix/sysv/linux/microblaze/sysdep.h
@@ -209,70 +209,70 @@ SYSCALL_ERROR_LABEL_DCL:                            \
 
 # define inline_syscall0(name,dummy)                                          \
   ({                                                                          \
-    register long ret __asm__("r3");                                          \
+    register long __ret __asm__("r3");                                        \
     register long __r12 __asm__("r12") = name;                                \
     __asm__ __volatile__( "brki r14,8; nop;"                                  \
-      : "=r"(ret)                                                             \
+      : "=r"(__ret)                                                           \
       : "r"(__r12)                                                            \
-      : SYSCALL_CLOBBERS_0 ); ret;                                            \
+      : SYSCALL_CLOBBERS_0 ); __ret;                                          \
   })
 
 # define inline_syscall1(name,arg1)                                           \
   ({                                                                          \
-    register long ret __asm__("r3");                                          \
+    register long __ret __asm__("r3");                                        \
     register long __r12 __asm__("r12") = name;                                \
     register long __r5 __asm__("r5") = (long)(arg1);                          \
     __asm__ __volatile__( "brki r14,8; nop;"                                  \
-      : "=r"(ret)                                                             \
+      : "=r"(__ret)                                                           \
       : "r"(__r5), "r"(__r12)                                                 \
-      : SYSCALL_CLOBBERS_1 ); ret;                                            \
+      : SYSCALL_CLOBBERS_1 ); __ret;                                          \
   })
 
 # define inline_syscall2(name,arg1,arg2)                                      \
   ({                                                                          \
-    register long ret __asm__("r3");                                          \
+    register long __ret __asm__("r3");                                        \
     register long __r12 __asm__("r12") = name;                                \
     register long __r5 __asm__("r5") = (long)(arg1);                          \
     register long __r6 __asm__("r6") = (long)(arg2);                          \
     __asm__ __volatile__( "brki r14,8; nop;"                                  \
-      : "=r"(ret)                                                             \
+      : "=r"(__ret)                                                           \
       : "r"(__r5), "r"(__r6), "r"(__r12)                                      \
-      : SYSCALL_CLOBBERS_2 ); ret;                                            \
+      : SYSCALL_CLOBBERS_2 ); __ret;                                          \
   })
 
 
 # define inline_syscall3(name,arg1,arg2,arg3)                                 \
   ({                                                                          \
-    register long ret __asm__("r3");                                          \
+    register long __ret __asm__("r3");                                        \
     register long __r12 __asm__("r12") = name;                                \
     register long __r5 __asm__("r5") = (long)(arg1);                          \
     register long __r6 __asm__("r6") = (long)(arg2);                          \
     register long __r7 __asm__("r7") = (long)(arg3);                          \
     __asm__ __volatile__( "brki r14,8; nop;"                                  \
-      : "=r"(ret)                                                             \
+      : "=r"(__ret)                                                           \
       : "r"(__r5), "r"(__r6), "r"(__r7), "r"(__r12)                           \
-      : SYSCALL_CLOBBERS_3 ); ret;                                            \
+      : SYSCALL_CLOBBERS_3 ); __ret;                                          \
   })
 
 
 # define inline_syscall4(name,arg1,arg2,arg3,arg4)                            \
   ({                                                                          \
-    register long ret __asm__("r3");                                          \
+    register long __ret __asm__("r3");                                        \
     register long __r12 __asm__("r12") = name;                                \
     register long __r5 __asm__("r5") = (long)(arg1);                          \
     register long __r6 __asm__("r6") = (long)(arg2);                          \
     register long __r7 __asm__("r7") = (long)(arg3);                          \
     register long __r8 __asm__("r8") = (long)(arg4);                          \
     __asm__ __volatile__( "brki r14,8; nop;"                                  \
-      : "=r"(ret)                                                             \
+      : "=r"(__ret)                                                           \
       : "r"(__r5), "r"(__r6), "r"(__r7), "r"(__r8),"r"(__r12)                 \
-      : SYSCALL_CLOBBERS_4 ); ret;                                            \
+      : SYSCALL_CLOBBERS_4 ); __ret;                                          \
   })
 
 
 # define inline_syscall5(name,arg1,arg2,arg3,arg4,arg5)                       \
   ({                                                                          \
-    register long ret __asm__("r3");                                          \
+    register long __ret __asm__("r3");                                        \
     register long __r12 __asm__("r12") = name;                                \
     register long __r5 __asm__("r5") = (long)(arg1);                          \
     register long __r6 __asm__("r6") = (long)(arg2);                          \
@@ -280,15 +280,15 @@ SYSCALL_ERROR_LABEL_DCL:                            \
     register long __r8 __asm__("r8") = (long)(arg4);                          \
     register long __r9 __asm__("r9") = (long)(arg5);                          \
     __asm__ __volatile__( "brki r14,8; nop;"                                  \
-      : "=r"(ret)                                                             \
+      : "=r"(__ret)                                                           \
       : "r"(__r5), "r"(__r6), "r"(__r7), "r"(__r8),"r"(__r9), "r"(__r12)      \
-      : SYSCALL_CLOBBERS_5 ); ret;                                            \
+      : SYSCALL_CLOBBERS_5 ); __ret;                                          \
   })
 
 
 # define inline_syscall6(name,arg1,arg2,arg3,arg4,arg5,arg6)                  \
   ({                                                                          \
-    register long ret __asm__("r3");                                          \
+    register long __ret __asm__("r3");                                        \
     register long __r12 __asm__("r12") = name;                                \
     register long __r5 __asm__("r5") = (long)(arg1);                          \
     register long __r6 __asm__("r6") = (long)(arg2);                          \
@@ -297,10 +297,10 @@ SYSCALL_ERROR_LABEL_DCL:                            \
     register long __r9 __asm__("r9") = (long)(arg5);                          \
     register long __r10 __asm__("r10") = (long)(arg6);                        \
     __asm__ __volatile__( "brki r14,8; nop;"                                  \
-      : "=r"(ret)                                                             \
+      : "=r"(__ret)                                                           \
       : "r"(__r5), "r"(__r6), "r"(__r7), "r"(__r8),"r"(__r9), "r"(__r10),     \
       "r"(__r12)                                                              \
-      : SYSCALL_CLOBBERS_6 ); ret;                                            \
+      : SYSCALL_CLOBBERS_6 ); __ret;                                          \
   })
 
 

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                   |    7 ++++
 sysdeps/unix/sysv/linux/microblaze/sysdep.h |   42 +++++++++++++-------------
 2 files changed, 28 insertions(+), 21 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]