about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/getcontext.S8
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/setcontext.S8
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/swapcontext.S8
4 files changed, 20 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 4c6a747ef5..1c9a42fef8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2015-07-06  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+	* sysdeps/unix/sysv/linux/aarch64/getcontext.S (__getcontext): Use q
+	registers instead of d ones so the layout is kernel abi compatible.
+	* sysdeps/unix/sysv/linux/aarch64/setcontext.S (__setcontext): Likewise.
+	* sysdeps/unix/sysv/linux/aarch64/swapcontext.S (__swapcontext):
+	Likewise.
+
 2015-07-02  Szabolcs Nagy  <szabolcs.nagy@arm.com>
 
 	* sysdeps/aarch64/libm-test-ulps: Regenerated.
diff --git a/sysdeps/unix/sysv/linux/aarch64/getcontext.S b/sysdeps/unix/sysv/linux/aarch64/getcontext.S
index adf8037291..b72436fd08 100644
--- a/sysdeps/unix/sysv/linux/aarch64/getcontext.S
+++ b/sysdeps/unix/sysv/linux/aarch64/getcontext.S
@@ -69,10 +69,10 @@ ENTRY(__getcontext)
 
 	/* Fill in the FP SIMD context.  */
 	add	x3, x2, #oV0 + 8 * SZVREG
-	stp	 d8,  d9, [x3], # 2 * SZVREG
-	stp	d10, d11, [x3], # 2 * SZVREG
-	stp	d12, d13, [x3], # 2 * SZVREG
-	stp	d14, d15, [x3], # 2 * SZVREG
+	stp	 q8,  q9, [x3], # 2 * SZVREG
+	stp	q10, q11, [x3], # 2 * SZVREG
+	stp	q12, q13, [x3], # 2 * SZVREG
+	stp	q14, q15, [x3], # 2 * SZVREG
 
 	add	x3, x2, oFPSR
 
diff --git a/sysdeps/unix/sysv/linux/aarch64/setcontext.S b/sysdeps/unix/sysv/linux/aarch64/setcontext.S
index ae67581660..8d926f7989 100644
--- a/sysdeps/unix/sysv/linux/aarch64/setcontext.S
+++ b/sysdeps/unix/sysv/linux/aarch64/setcontext.S
@@ -97,10 +97,10 @@ ENTRY (__setcontext)
 
 	/* Restore the FP SIMD context.  */
 	add	x3, x2, #oV0 + 8 * SZVREG
-	ldp	 d8,  d9, [x3], #2 * SZVREG
-	ldp	d10, d11, [x3], #2 * SZVREG
-	ldp	d12, d13, [x3], #2 * SZVREG
-	ldp	d14, d15, [x3], #2 * SZVREG
+	ldp	 q8,  q9, [x3], #2 * SZVREG
+	ldp	q10, q11, [x3], #2 * SZVREG
+	ldp	q12, q13, [x3], #2 * SZVREG
+	ldp	q14, q15, [x3], #2 * SZVREG
 
 	add	x3, x2, oFPSR
 
diff --git a/sysdeps/unix/sysv/linux/aarch64/swapcontext.S b/sysdeps/unix/sysv/linux/aarch64/swapcontext.S
index f62fc11bdc..05ad8d3d9a 100644
--- a/sysdeps/unix/sysv/linux/aarch64/swapcontext.S
+++ b/sysdeps/unix/sysv/linux/aarch64/swapcontext.S
@@ -54,10 +54,10 @@ ENTRY(__swapcontext)
 
 	/* Fill in the FP SIMD context.  */
 	add	x3, x2, #oV0 + 8 * SZVREG
-	stp	 d8,  d9, [x3], #2 * SZVREG
-	stp	d10, d11, [x3], #2 * SZVREG
-	stp	d12, d13, [x3], #2 * SZVREG
-	stp	d14, d15, [x3], #2 * SZVREG
+	stp	 q8,  q9, [x3], #2 * SZVREG
+	stp	q10, q11, [x3], #2 * SZVREG
+	stp	q12, q13, [x3], #2 * SZVREG
+	stp	q14, q15, [x3], #2 * SZVREG
 
 	add	x3, x2, #oFPSR