Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 124682 | Differences between
and this patch

Collapse All | Expand All

(-)sysdeps/x86_64/memcmp.S.orig (-2 / +19 lines)
Lines 7-15 Link Here
7
# INCLUDED WITH THIS FILE
7
# INCLUDED WITH THIS FILE
8
8
9
#include "sysdep.h"
9
#include "sysdep.h"
10
#include <rtld-global-offsets.h>
10
#if defined PIC && !defined SHARED
11
# include <rtld-global-offsets.h>
12
#endif
11
13
12
#ifdef PIC
14
#if defined PIC && !defined SHARED
13
	.globl _rtld_local_ro
15
	.globl _rtld_local_ro
14
        .hidden _rtld_local_ro
16
        .hidden _rtld_local_ro
15
        .set    _rtld_local_ro,_rtld_global_ro
17
        .set    _rtld_local_ro,_rtld_global_ro
Lines 130-137 Link Here
130
L(memcmp32after):
132
L(memcmp32after):
131
133
132
#ifdef PIC
134
#ifdef PIC
135
# ifdef SHARED
133
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
136
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
134
	mov	RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r8), %r9
137
	mov	RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r8), %r9
138
# else
139
        mov     _dl_cache1sizehalf@GOTPCREL(%rip), %r8
140
	mov	(%r8), %r9
141
# endif
135
#else
142
#else
136
        mov     _dl_cache1sizehalf, %r9
143
        mov     _dl_cache1sizehalf, %r9
137
#endif
144
#endif
Lines 170-177 Link Here
170
177
171
L(memcmp64try):
178
L(memcmp64try):
172
#ifdef PIC
179
#ifdef PIC
180
# ifdef SHARED
173
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
181
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
174
	mov	RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r8), %rcx
182
	mov	RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r8), %rcx
183
# else
184
        mov     _dl_cache1sizehalf@GOTPCREL(%rip), %r8
185
	mov	(%r8), %rcx
186
# endif
175
#else
187
#else
176
        mov     _dl_cache1sizehalf, %rcx
188
        mov     _dl_cache1sizehalf, %rcx
177
#endif
189
#endif
Lines 242-249 Link Here
242
254
243
L(memcmppre):                              # 64-byte prefetching
255
L(memcmppre):                              # 64-byte prefetching
244
#ifdef PIC
256
#ifdef PIC
257
# ifdef SHARED
245
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
258
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
246
	mov	RTLD_GLOBAL_DL_CACHE2SIZEHALF(%r8), %rcx
259
	mov	RTLD_GLOBAL_DL_CACHE2SIZEHALF(%r8), %rcx
260
# else
261
        mov     _dl_cache2sizehalf@GOTPCREL(%rip), %r8
262
	mov	(%r8), %rcx
263
# endif
247
#else
264
#else
248
        mov     _dl_cache2sizehalf, %rcx
265
        mov     _dl_cache2sizehalf, %rcx
249
#endif
266
#endif
(-)sysdeps/x86_64/memcpy.S.orig (-2 / +19 lines)
Lines 8-14 Link Here
8
#include "asm-syntax.h"
8
#include "asm-syntax.h"
9
#include "bp-sym.h"
9
#include "bp-sym.h"
10
#include "bp-asm.h"
10
#include "bp-asm.h"
11
#include <rtld-global-offsets.h>
11
#if defined(PIC) && !defined(SHARED)
12
# include <rtld-global-offsets.h>
13
#endif
12
14
13
/* BEWARE: `#ifdef memcpy' means that memcpy is redefined as `mempcpy',
15
/* BEWARE: `#ifdef memcpy' means that memcpy is redefined as `mempcpy',
14
   and the return value is the byte after the last one copied in
16
   and the return value is the byte after the last one copied in
Lines 20-26 Link Here
20
#endif
22
#endif
21
23
22
24
23
#ifdef PIC
25
#if defined PIC  && !defined SHARED
24
	.globl _rtld_local_ro
26
	.globl _rtld_local_ro
25
        .hidden _rtld_local_ro
27
        .hidden _rtld_local_ro
26
        .set    _rtld_local_ro,_rtld_global_ro
28
        .set    _rtld_local_ro,_rtld_global_ro
Lines 187-194 Link Here
187
189
188
LABEL(32after):
190
LABEL(32after):
189
#ifdef PIC
191
#ifdef PIC
192
# ifdef SHARED
190
	mov     _rtld_local_ro@GOTPCREL(%rip), %r8
193
	mov     _rtld_local_ro@GOTPCREL(%rip), %r8
191
	mov     RTLD_GLOBAL_DL_CACHE1SIZE(%r8), %r9
194
	mov     RTLD_GLOBAL_DL_CACHE1SIZE(%r8), %r9
195
# else
196
	mov     _dl_cache1size@GOTPCREL(%rip), %r8
197
	mov     (%r8), %r9
198
# endif
192
#else
199
#else
193
	mov     _dl_cache1size, %r9
200
	mov     _dl_cache1size, %r9
194
#endif
201
#endif
Lines 223-230 Link Here
223
230
224
LABEL(fasttry):
231
LABEL(fasttry):
225
#ifdef PIC
232
#ifdef PIC
233
# ifdef SHARED
226
	mov     _rtld_local_ro@GOTPCREL(%rip), %r9
234
	mov     _rtld_local_ro@GOTPCREL(%rip), %r9
227
	mov     RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r9), %r11
235
	mov     RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r9), %r11
236
# else
237
	mov     _dl_cache1sizehalf@GOTPCREL(%rip), %r9
238
	mov     (%r9), %r11
239
# endif
228
#else
240
#else
229
	mov     _dl_cache1sizehalf, %r11
241
	mov     _dl_cache1sizehalf, %r11
230
#endif
242
#endif
Lines 336-343 Link Here
336
348
337
LABEL(pretry):
349
LABEL(pretry):
338
#ifdef PIC
350
#ifdef PIC
351
# ifdef SHARED
339
	mov     _rtld_local_ro@GOTPCREL(%rip), %r11
352
	mov     _rtld_local_ro@GOTPCREL(%rip), %r11
340
	mov     RTLD_GLOBAL_DL_CACHE2SIZEHALF(%r11), %r8
353
	mov     RTLD_GLOBAL_DL_CACHE2SIZEHALF(%r11), %r8
354
# else
355
	mov     _dl_cache2sizehalf@GOTPCREL(%rip), %r11
356
	mov     (%r11), %r8
357
# endif
341
#else
358
#else
342
	mov     _dl_cache2sizehalf, %r8
359
	mov     _dl_cache2sizehalf, %r8
343
#endif
360
#endif
(-)sysdeps/x86_64/memset.S.orig (-2 / +14 lines)
Lines 9-20 Link Here
9
#include "asm-syntax.h"
9
#include "asm-syntax.h"
10
#include "bp-sym.h"
10
#include "bp-sym.h"
11
#include "bp-asm.h"
11
#include "bp-asm.h"
12
#include <rtld-global-offsets.h>
12
#if defined PIC && !defined SHARED
13
# include <rtld-global-offsets.h>
14
#endif
13
15
14
/* BEWARE: `#ifdef memset' means that memset is redefined as `bzero' */
16
/* BEWARE: `#ifdef memset' means that memset is redefined as `bzero' */
15
#define BZERO_P (defined memset)
17
#define BZERO_P (defined memset)
16
18
17
#ifdef PIC
19
#if defined PIC && !defined SHARED
18
	.globl _rtld_local_ro
20
	.globl _rtld_local_ro
19
        .hidden _rtld_local_ro
21
        .hidden _rtld_local_ro
20
        .set    _rtld_local_ro,_rtld_global_ro
22
        .set    _rtld_local_ro,_rtld_global_ro
Lines 151-158 Link Here
151
LABEL(32after):
153
LABEL(32after):
152
154
153
#ifdef PIC
155
#ifdef PIC
156
# ifdef SHARED
154
	mov     _rtld_local_ro@GOTPCREL(%rip), %r8
157
	mov     _rtld_local_ro@GOTPCREL(%rip), %r8
155
	mov     RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r8), %r9
158
	mov     RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r8), %r9
159
# else
160
	mov     _dl_cache1sizehalf@GOTPCREL(%rip), %r8
161
	mov     (%r8), %r9
162
# endif
156
#else
163
#else
157
	mov     _dl_cache1sizehalf, %r9
164
	mov     _dl_cache1sizehalf, %r9
158
#endif
165
#endif
Lines 182-189 Link Here
182
189
183
LABEL(alignafter):
190
LABEL(alignafter):
184
#ifdef PIC
191
#ifdef PIC
192
# ifdef SHARED
185
        mov     _rtld_local_ro@GOTPCREL(%rip), %r9
193
        mov     _rtld_local_ro@GOTPCREL(%rip), %r9
186
	mov	RTLD_GLOBAL_DL_CACHE2SIZEHALF(%r9), %r8
194
	mov	RTLD_GLOBAL_DL_CACHE2SIZEHALF(%r9), %r8
195
# else
196
        mov     _dl_cache2sizehalf@GOTPCREL(%rip), %r9
197
	mov	(%r9), %r8
198
# endif
187
	# For MP System half cache size is better, for UP full cache size
199
	# For MP System half cache size is better, for UP full cache size
188
	# is better -> use half cache size only
200
	# is better -> use half cache size only
189
#else
201
#else
(-)sysdeps/x86_64/strcpy.S.orig (-2 / +14 lines)
Lines 7-16 Link Here
7
# INCLUDED WITH THIS FILE
7
# INCLUDED WITH THIS FILE
8
8
9
#include "sysdep.h"
9
#include "sysdep.h"
10
#include <rtld-global-offsets.h>
10
#if defined PIC && !defined SHARED
11
# include <rtld-global-offsets.h>
12
#endif
11
13
12
	/* XXX:	strncpy is broken, just use this for strcpy for now.  */
14
	/* XXX:	strncpy is broken, just use this for strcpy for now.  */
13
#ifdef PIC
15
#if defined PIC && !defined SHARED
14
	.globl _rtld_local_ro
16
	.globl _rtld_local_ro
15
        .hidden _rtld_local_ro
17
        .hidden _rtld_local_ro
16
        .set    _rtld_local_ro,_rtld_global_ro
18
        .set    _rtld_local_ro,_rtld_global_ro
Lines 216-223 Link Here
216
218
217
LABEL(64try):
219
LABEL(64try):
218
#ifdef PIC
220
#ifdef PIC
221
# ifdef SHARED
219
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
222
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
220
	mov	RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r8), %r9
223
	mov	RTLD_GLOBAL_DL_CACHE1SIZEHALF(%r8), %r9
224
# else
225
        mov     _dl_cache1sizehalf@GOTPCREL(%rip), %r8
226
	mov	(%r8), %r9
227
# endif
221
#else
228
#else
222
        mov     _dl_cache1sizehalf, %r9
229
        mov     _dl_cache1sizehalf, %r9
223
#endif
230
#endif
Lines 380-387 Link Here
380
387
381
LABEL(pretry):
388
LABEL(pretry):
382
#ifdef PIC
389
#ifdef PIC
390
# ifdef SHARED
383
	mov     _rtld_local_ro@GOTPCREL(%rip), %r8
391
	mov     _rtld_local_ro@GOTPCREL(%rip), %r8
384
	mov	RTLD_GLOBAL_DL_CACHE2SIZEHALF(%r8), %r9
392
	mov	RTLD_GLOBAL_DL_CACHE2SIZEHALF(%r8), %r9
393
# else
394
	mov     _dl_cache2sizehalf@GOTPCREL(%rip), %r8
395
	mov	(%r8), %r9
396
# endif
385
#else
397
#else
386
        mov     _dl_cache2sizehalf, %r9
398
        mov     _dl_cache2sizehalf, %r9
387
#endif
399
#endif
(-)sysdeps/x86_64/strlen.S.orig (-2 / +9 lines)
Lines 7-15 Link Here
7
# INCLUDED WITH THIS FILE
7
# INCLUDED WITH THIS FILE
8
8
9
#include "sysdep.h"
9
#include "sysdep.h"
10
#include <rtld-global-offsets.h>
10
#if defined PIC && !defined SHARED
11
# include <rtld-global-offsets.h>
12
#endif
11
13
12
#ifdef PIC
14
#if defined PIC && !defined SHARED
13
	.globl _rtld_local_ro
15
	.globl _rtld_local_ro
14
        .hidden _rtld_local_ro
16
        .hidden _rtld_local_ro
15
        .set    _rtld_local_ro,_rtld_global_ro
17
        .set    _rtld_local_ro,_rtld_global_ro
Lines 141-148 Link Here
141
#       mov     (%rsi), %rax
143
#       mov     (%rsi), %rax
142
144
143
#ifdef PIC
145
#ifdef PIC
146
# ifdef SHARED
144
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
147
        mov     _rtld_local_ro@GOTPCREL(%rip), %r8
145
	mov	RTLD_GLOBAL_DL_CACHE1SIZE(%r8), %r9
148
	mov	RTLD_GLOBAL_DL_CACHE1SIZE(%r8), %r9
149
# else
150
        mov     _dl_cache1size@GOTPCREL(%rip), %r8
151
	mov	(%r8), %r9
152
# endif
146
#else
153
#else
147
        mov     _dl_cache1size, %r9
154
        mov     _dl_cache1size, %r9
148
#endif
155
#endif

Return to bug 124682