mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
48 lines
1 KiB
Diff
48 lines
1 KiB
Diff
diff --git i/security/nss/lib/freebl/mpi/mpi_x86.s w/security/nss/lib/freebl/mpi/mpi_x86.s
|
|
index 8f7e2130c3264754..b3ca1ce5b41b3771 100644
|
|
--- i/security/nss/lib/freebl/mpi/mpi_x86.s
|
|
+++ w/security/nss/lib/freebl/mpi/mpi_x86.s
|
|
@@ -22,22 +22,41 @@ is_sse: .long -1
|
|
#
|
|
.ifndef NO_PIC
|
|
.macro GET var,reg
|
|
- movl \var@GOTOFF(%ebx),\reg
|
|
+ call thunk.ax
|
|
+ addl $_GLOBAL_OFFSET_TABLE_, %eax
|
|
+ movl \var@GOTOFF(%eax),\reg
|
|
.endm
|
|
.macro PUT reg,var
|
|
- movl \reg,\var@GOTOFF(%ebx)
|
|
+ call thunk.dx
|
|
+ addl $_GLOBAL_OFFSET_TABLE_, %edx
|
|
+ movl \reg,\var@GOTOFF(%edx)
|
|
.endm
|
|
.else
|
|
.macro GET var,reg
|
|
movl \var,\reg
|
|
.endm
|
|
.macro PUT reg,var
|
|
movl \reg,\var
|
|
.endm
|
|
.endif
|
|
|
|
.text
|
|
|
|
+.ifndef NO_PIC
|
|
+.globl thunk.ax
|
|
+.hidden thunk.ax
|
|
+.type thunk.ax, @function
|
|
+thunk.ax:
|
|
+ movl (%esp),%eax
|
|
+ ret
|
|
+
|
|
+.globl thunk.dx
|
|
+.hidden thunk.dx
|
|
+.type thunk.dx, @function
|
|
+thunk.dx:
|
|
+ movl (%esp),%edx
|
|
+ ret
|
|
+.endif
|
|
|
|
# ebp - 36: caller's esi
|
|
# ebp - 32: caller's edi
|