Gentoo Archives: gentoo-commits

From: "Mike Frysinger (vapier)" <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo commit in src/patchsets/glibc/2.18: 00_all_0035-alpha-Fix-tls-macros.h.patch README.history
Date: Sat, 25 Jan 2014 22:05:42
Message-Id: 20140125220539.0C14D2004C@flycatcher.gentoo.org
1 vapier 14/01/25 22:05:38
2
3 Modified: README.history
4 Added: 00_all_0035-alpha-Fix-tls-macros.h.patch
5 Log:
6 fix from upstream for alpha/tls code
7
8 Revision Changes Path
9 1.4 src/patchsets/glibc/2.18/README.history
10
11 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/README.history?rev=1.4&view=markup
12 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/README.history?rev=1.4&content-type=text/plain
13 diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/README.history?r1=1.3&r2=1.4
14
15 Index: README.history
16 ===================================================================
17 RCS file: /var/cvsroot/gentoo/src/patchsets/glibc/2.18/README.history,v
18 retrieving revision 1.3
19 retrieving revision 1.4
20 diff -u -r1.3 -r1.4
21 --- README.history 6 Jan 2014 16:53:42 -0000 1.3
22 +++ README.history 25 Jan 2014 22:05:38 -0000 1.4
23 @@ -1,4 +1,8 @@
24 -3 06 Jan 2013
25 +4 25 Jan 2014
26 + + 00_all_0034-ARM-Fix-clone-build-for-ARMv4.patch
27 + + 00_all_0035-alpha-Fix-tls-macros.h.patch
28 +
29 +3 06 Jan 2014
30 + 00_all_0017-ptrace.h-add-__-prefix-to-ptrace_peeksiginfo_args.patch
31 + 00_all_0018-ia64-add-__-prefix-to-pt_all_user_regs-ia64_fpreg-BZ.patch
32 + 00_all_0019-ARM-Fix-clone-code-when-built-for-Thumb.patch
33
34
35
36 1.1 src/patchsets/glibc/2.18/00_all_0035-alpha-Fix-tls-macros.h.patch
37
38 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/00_all_0035-alpha-Fix-tls-macros.h.patch?rev=1.1&view=markup
39 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/00_all_0035-alpha-Fix-tls-macros.h.patch?rev=1.1&content-type=text/plain
40
41 Index: 00_all_0035-alpha-Fix-tls-macros.h.patch
42 ===================================================================
43 From 787172fdbbdf78fc30f222748f1197d396b05f96 Mon Sep 17 00:00:00 2001
44 From: Richard Henderson <rth@×××××××.net>
45 Date: Fri, 24 Jan 2014 09:07:04 -0800
46 Subject: [PATCH] alpha: Fix tls-macros.h
47
48 Reported to the gcc bugzilla, there was a missing dependency on $gp
49 that let the compiler generated $gp reload be scheduled across the
50 macros here.
51
52 (cherry picked from commit 4ab6acaebd0047dc37c6493946484be9f1b4920b)
53 ---
54 ports/sysdeps/alpha/tls-macros.h | 22 +++++++++++-----------
55 1 file changed, 11 insertions(+), 11 deletions(-)
56
57 diff --git a/ports/sysdeps/alpha/tls-macros.h b/ports/sysdeps/alpha/tls-macros.h
58 index 0385d93..00489c2 100644
59 --- a/ports/sysdeps/alpha/tls-macros.h
60 +++ b/ports/sysdeps/alpha/tls-macros.h
61 @@ -2,21 +2,21 @@
62
63 extern void *__tls_get_addr (void *);
64
65 -# define TLS_GD(x) \
66 - ({ void *__result; \
67 - asm ("lda %0, " #x "($gp) !tlsgd" : "=r" (__result)); \
68 +# define TLS_GD(x) \
69 + ({ register void *__gp asm ("$29"); void *__result; \
70 + asm ("lda %0, " #x "($gp) !tlsgd" : "=r" (__result) : "r"(__gp)); \
71 __tls_get_addr (__result); })
72
73 -# define TLS_LD(x) \
74 - ({ void *__result; \
75 - asm ("lda %0, " #x "($gp) !tlsldm" : "=r" (__result)); \
76 - __result = __tls_get_addr (__result); \
77 - asm ("lda %0, " #x "(%0) !dtprel" : "+r" (__result)); \
78 +# define TLS_LD(x) \
79 + ({ register void *__gp asm ("$29"); void *__result; \
80 + asm ("lda %0, " #x "($gp) !tlsldm" : "=r" (__result) : "r"(__gp)); \
81 + __result = __tls_get_addr (__result); \
82 + asm ("lda %0, " #x "(%0) !dtprel" : "+r" (__result)); \
83 __result; })
84
85 -# define TLS_IE(x) \
86 - ({ long ofs; \
87 - asm ("ldq %0, " #x "($gp) !gottprel" : "=r"(ofs)); \
88 +# define TLS_IE(x) \
89 + ({ register void *__gp asm ("$29"); long ofs; \
90 + asm ("ldq %0, " #x "($gp) !gottprel" : "=r"(ofs) : "r"(__gp)); \
91 __builtin_thread_pointer () + ofs; })
92
93 # define TLS_LE(x) \
94 --
95 1.8.5.3