summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch')
-rw-r--r--sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch13
1 files changed, 6 insertions, 7 deletions
diff --git a/sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch b/sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch
index 7e7f4a6..fd8fcf7 100644
--- a/sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch
+++ b/sys-apps/rng-tools/files/rng-tools-5-fix-textrels-on-PIC-x86.patch
@@ -28,12 +28,11 @@ Reported-by: Manuel Rüger <mrueg@gentoo.org>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
-@@ -174,7 +175,20 @@
+@@ -174,7 +175,19 @@
jmp 4b
ENDPROC(x86_rdseed_or_rdrand_bytes)
+#if defined(__PIC__)
-+#undef __i686 /* gcc builtin define gets in our way */
+#define INIT_PIC() \
+ pushl %ebx ; \
+ call __x86.get_pc_thunk.bx ; \
@@ -49,7 +48,7 @@ Reported-by: Manuel Rüger <mrueg@gentoo.org>
#define PTR0 %eax
#define PTR1 %edx
#define PTR2 %ecx
-@@ -190,6 +204,7 @@
+@@ -190,6 +203,7 @@
movl 8(%ebp), %eax
movl 12(%ebp), %edx
push %esi
@@ -57,7 +56,7 @@ Reported-by: Manuel Rüger <mrueg@gentoo.org>
#endif
movl $512, CTR3 /* Number of rounds */
-@@ -280,6 +295,7 @@
+@@ -280,6 +294,7 @@
movdqa %xmm7, (7*16)(PTR1)
#ifdef __i386__
@@ -65,7 +64,7 @@ Reported-by: Manuel Rüger <mrueg@gentoo.org>
pop %esi
pop %ebp
#endif
-@@ -294,6 +310,7 @@
+@@ -294,6 +309,7 @@
push %ebp
mov %esp, %ebp
movl 8(%ebp), %eax
@@ -73,7 +72,7 @@ Reported-by: Manuel Rüger <mrueg@gentoo.org>
#endif
SETPTR(aes_round_keys, PTR1)
-@@ -323,6 +340,7 @@
+@@ -323,6 +339,7 @@
call 1f
#ifdef __i386__
@@ -81,7 +80,7 @@ Reported-by: Manuel Rüger <mrueg@gentoo.org>
pop %ebp
#endif
ret
-@@ -343,6 +361,16 @@
+@@ -343,6 +360,16 @@
ENDPROC(x86_aes_expand_key)