Module Name: src Committed By: martin Date: Wed May 13 12:34:41 UTC 2020
Modified Files: src/lib/libc/arch/aarch64 [netbsd-9]: genassym.cf src/lib/libc/arch/aarch64/gen [netbsd-9]: _setjmp.S setjmp.S src/sys/arch/aarch64/include [netbsd-9]: setjmp.h Log Message: Pull up following revision(s) (requested by skrll in ticket #901): sys/arch/aarch64/include/setjmp.h: revision 1.2 lib/libc/arch/aarch64/genassym.cf: revision 1.2 lib/libc/arch/aarch64/gen/setjmp.S: revision 1.3 lib/libc/arch/aarch64/gen/_setjmp.S: revision 1.4 Don't futz with tpidr_el0 in {set,long}jmp as it breaks TLS as seen in qemu To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.1.28.1 src/lib/libc/arch/aarch64/genassym.cf cvs rdiff -u -r1.3 -r1.3.6.1 src/lib/libc/arch/aarch64/gen/_setjmp.S cvs rdiff -u -r1.2 -r1.2.6.1 src/lib/libc/arch/aarch64/gen/setjmp.S cvs rdiff -u -r1.1 -r1.1.34.1 src/sys/arch/aarch64/include/setjmp.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/libc/arch/aarch64/genassym.cf diff -u src/lib/libc/arch/aarch64/genassym.cf:1.1 src/lib/libc/arch/aarch64/genassym.cf:1.1.28.1 --- src/lib/libc/arch/aarch64/genassym.cf:1.1 Sun Aug 10 05:47:36 2014 +++ src/lib/libc/arch/aarch64/genassym.cf Wed May 13 12:34:41 2020 @@ -1,4 +1,4 @@ -# $NetBSD: genassym.cf,v 1.1 2014/08/10 05:47:36 matt Exp $ +# $NetBSD: genassym.cf,v 1.1.28.1 2020/05/13 12:34:41 martin Exp $ #- # Copyright (c) 2014 The NetBSD Foundation, Inc. @@ -53,7 +53,6 @@ define _JB_X27 sizeof(_BSD_JBSLOT_T_ [_ define _JB_X28 sizeof(_BSD_JBSLOT_T_ [_JB_X29]) define _JB_X29 sizeof(_BSD_JBSLOT_T_ [_JB_X29]) define _JB_X30 sizeof(_BSD_JBSLOT_T_ [_JB_X30]) -define _JB_TPIDR sizeof(_BSD_JBSLOT_T_ [_JB_TPIDR]) define _JB_D8 sizeof(_BSD_JBSLOT_T_ [_JB_D8]) define _JB_D9 sizeof(_BSD_JBSLOT_T_ [_JB_D9]) define _JB_D10 sizeof(_BSD_JBSLOT_T_ [_JB_D10]) Index: src/lib/libc/arch/aarch64/gen/_setjmp.S diff -u src/lib/libc/arch/aarch64/gen/_setjmp.S:1.3 src/lib/libc/arch/aarch64/gen/_setjmp.S:1.3.6.1 --- src/lib/libc/arch/aarch64/gen/_setjmp.S:1.3 Tue Nov 28 13:09:05 2017 +++ src/lib/libc/arch/aarch64/gen/_setjmp.S Wed May 13 12:34:41 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: _setjmp.S,v 1.3 2017/11/28 13:09:05 ryo Exp $ */ +/* $NetBSD: _setjmp.S,v 1.3.6.1 2020/05/13 12:34:41 martin Exp $ */ /*- * Copyright (c) 2014 The NetBSD Foundation, Inc. @@ -63,9 +63,6 @@ ENTRY(_setjmp) stp x27, x28, [x0, #_JB_X27] stp x29, x30, [x0, #_JB_X29] - mrs x5, tpidr_el0 - str x5, [x0, #_JB_TPIDR] - stp d8, d9, [x0, #_JB_D8] stp d10, d11, [x0, #_JB_D10] stp d12, d13, [x0, #_JB_D12] @@ -93,9 +90,6 @@ ENTRY(_longjmp) ldp x25, x26, [x0, #_JB_X25] ldp x27, x28, [x0, #_JB_X27] - ldr x2, [x0, #_JB_TPIDR] - msr tpidr_el0, x2 - ldp d8, d9, [x0, #_JB_D8] ldp d10, d11, [x0, #_JB_D10] ldp d12, d13, [x0, #_JB_D12] Index: src/lib/libc/arch/aarch64/gen/setjmp.S diff -u src/lib/libc/arch/aarch64/gen/setjmp.S:1.2 src/lib/libc/arch/aarch64/gen/setjmp.S:1.2.6.1 --- src/lib/libc/arch/aarch64/gen/setjmp.S:1.2 Tue Nov 28 13:09:05 2017 +++ src/lib/libc/arch/aarch64/gen/setjmp.S Wed May 13 12:34:41 2020 @@ -1,4 +1,4 @@ -/*.$NetBSD: setjmp.S,v 1.2 2017/11/28 13:09:05 ryo Exp $.*/ +/*.$NetBSD: setjmp.S,v 1.2.6.1 2020/05/13 12:34:41 martin Exp $.*/ /*- * Copyright (c) 2014 The NetBSD Foundation, Inc. @@ -61,9 +61,6 @@ ENTRY(__setjmp14) stp x27, x28, [x0, #_JB_X27] stp x29, x30, [x0, #_JB_X29] - mrs x5, tpidr_el0 - str x5, [x0, #_JB_TPIDR] - stp d8, d9, [x0, #_JB_D8] stp d10, d11, [x0, #_JB_D10] stp d12, d13, [x0, #_JB_D12] @@ -100,9 +97,6 @@ ENTRY(__longjmp14) ldp x25, x26, [x0, #_JB_X25] ldp x27, x28, [x0, #_JB_X27] - ldr x2, [x0, #_JB_TPIDR] - msr tpidr_el0, x2 - ldp d8, d9, [x0, #_JB_D8] ldp d10, d11, [x0, #_JB_D10] ldp d12, d13, [x0, #_JB_D12] Index: src/sys/arch/aarch64/include/setjmp.h diff -u src/sys/arch/aarch64/include/setjmp.h:1.1 src/sys/arch/aarch64/include/setjmp.h:1.1.34.1 --- src/sys/arch/aarch64/include/setjmp.h:1.1 Sun Aug 10 05:47:38 2014 +++ src/sys/arch/aarch64/include/setjmp.h Wed May 13 12:34:40 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: setjmp.h,v 1.1 2014/08/10 05:47:38 matt Exp $ */ +/* $NetBSD: setjmp.h,v 1.1.34.1 2020/05/13 12:34:40 martin Exp $ */ /*- * Copyright (c) 2014 The NetBSD Foundation, Inc. @@ -50,7 +50,6 @@ #define _JB_X28 11 #define _JB_X29 12 #define _JB_X30 13 -#define _JB_TPIDR 14 #define _JB_D8 16 #define _JB_D9 17 #define _JB_D10 18