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

Collapse All | Expand All

(-)file_not_specified_in_diff (-1 / +23 lines)
Line  Link Here
0
-- rng-tools/rdrand_asm.S
0
++ rng-tools/rdrand_asm.S
Lines 49-54 Link Here
49
	ret
49
	ret
50
ENDPROC(x86_rdrand_nlong)
50
ENDPROC(x86_rdrand_nlong)
51
51
52
#define INIT_PIC()
52
#define SETPTR(var,ptr)	leaq var(%rip),ptr
53
#define SETPTR(var,ptr)	leaq var(%rip),ptr
53
#define PTR0	%rdi
54
#define PTR0	%rdi
54
#define PTR1	%rsi
55
#define PTR1	%rsi
Lines 84-90 Link Here
84
	ret
85
	ret
85
ENDPROC(x86_rdrand_nlong)
86
ENDPROC(x86_rdrand_nlong)
86
87
88
#if defined(__PIC__)
89
#undef __i686 /* gcc builtin define gets in our way */
90
#define INIT_PIC() \
91
	call __i686.get_pc_thunk.bx ; \
92
	addl $_GLOBAL_OFFSET_TABLE_, %ebx
93
#define SETPTR(var,ptr)	leal (var)@GOTOFF(%ebx),ptr
94
#else
95
#define INIT_PIC()
87
#define SETPTR(var,ptr)	movl $(var),ptr
96
#define SETPTR(var,ptr)	movl $(var),ptr
97
#endif
88
#define PTR0	%eax
98
#define PTR0	%eax
89
#define PTR1	%edx
99
#define PTR1	%edx
90
#define PTR2	%ecx
100
#define PTR2	%ecx
Lines 101-106 Link Here
101
	movl	8(%ebp), %eax
111
	movl	8(%ebp), %eax
102
	movl	12(%ebp), %edx
112
	movl	12(%ebp), %edx
103
#endif
113
#endif
114
	INIT_PIC()
104
115
105
	SETPTR(aes_round_keys, PTR2)
116
	SETPTR(aes_round_keys, PTR2)
106
117
Lines 166-171 Link Here
166
#endif
177
#endif
167
	ret
178
	ret
168
ENDPROC(x86_aes_mangle)
179
ENDPROC(x86_aes_mangle)
180
181
#if defined(__i386__) && defined(__PIC__)
182
	.section .gnu.linkonce.t.__i686.get_pc_thunk.bx,"ax",@progbits
183
.globl __i686.get_pc_thunk.bx
184
	.hidden  __i686.get_pc_thunk.bx
185
	.type    __i686.get_pc_thunk.bx,@function
186
__i686.get_pc_thunk.bx:
187
	movl (%esp), %ebx
188
	ret
189
#endif
190
169
	/*
191
	/*
170
	 * AES round keys for an arbitrary key:
192
	 * AES round keys for an arbitrary key:
171
	 * 00102030405060708090A0B0C0D0E0F0
193
	 * 00102030405060708090A0B0C0D0E0F0

Return to bug 469962