| #
e45132e9
|
| 27-Sep-2024 |
Andrew Turner <andrew@FreeBSD.org> |
arm64: Add the SVE registers to the signal frame
Use the new extended register support in the arm64 signal frame to handle the SVE registers.
As these registers alias the VFP registers we use the f
arm64: Add the SVE registers to the signal frame
Use the new extended register support in the arm64 signal frame to handle the SVE registers.
As these registers alias the VFP registers we use the floating point register values to restore the lower bits of the SVE registers. This is to support software that doesn't understand SVE to continue working.
Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43307
show more ...
|
| #
7e6437c0
|
| 21-Mar-2024 |
Andrew Turner <andrew@FreeBSD.org> |
arm64: Support passing more registers to signals
To support recent extensions to the Arm architecture we may need to store more or larger registers when sending a signal.
To support this create a l
arm64: Support passing more registers to signals
To support recent extensions to the Arm architecture we may need to store more or larger registers when sending a signal.
To support this create a list of these extra registers. Userspace that needs to access a register in the signal handler can then walk the list to find the correct register struct and read/write its contents.
Reviewed by: kib, markj (earlier version) Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43302
show more ...
|
| #
95ee2897
|
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
| #
d5d97bed
|
| 25-Jul-2023 |
Mike Karels <karels@FreeBSD.org> |
arm64 lib32: prepare arm64 headers to redirect to arm
In order to compile lib32 libraries and other 32-bit code on arm64, <machine/foo.h> needs to be redirected to an arm header rather than arm64 wh
arm64 lib32: prepare arm64 headers to redirect to arm
In order to compile lib32 libraries and other 32-bit code on arm64, <machine/foo.h> needs to be redirected to an arm header rather than arm64 when building with -m32. Ifdef the arm64 headers that are installed in /usr/include/machine and used by user-level software (including references from /usr/include/*.h) so that if __arm__ is defined when including the arm64 version, <arm/foo.h> is included rather than using the rest of the file's contents. Some arm headers had no arm64 equivalent; headers were added just to do the redirection. These files use #error if __arm__ is not defined to guard against confusion. Also add an include/arm Makefile, and modify Makefiles as needed to install everything, including the arm files in /usr/include/arm. fenv.h comes from lib/msun/arm/fenv.h.
The new arm64 headers are: acle-compat.h cpuinfo.h sysreg.h
Reviewed by: jrtc27, imp Differential Revision: https://reviews.freebsd.org/D40944
show more ...
|
| #
2ecbbcc7
|
| 24-Feb-2023 |
Zachary Leaf <zachary.leaf@arm.com> |
arm64: extend ESR/SPSR registers to 64b
For the Exception Syndrome Register, ESR_ELx, the upper 32b were previously unused, but now may contain additional exception info as of Armv8.7 (FEAT_LS64).
arm64: extend ESR/SPSR registers to 64b
For the Exception Syndrome Register, ESR_ELx, the upper 32b were previously unused, but now may contain additional exception info as of Armv8.7 (FEAT_LS64).
Extend ESR from u32->u64 in exception handling code to support this. In addition, also extend Saved Program Status Register SPSR_ELx in the same way to allow for future extensions.
Reviewed by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D38983
show more ...
|
| #
50cedfed
|
| 01-Sep-2020 |
Mateusz Guzik <mjg@FreeBSD.org> |
arm64: clean up empty lines in .c and .h files
|
| #
8c9c3144
|
| 13-Jan-2019 |
Olivier Houchard <cognet@FreeBSD.org> |
Impleent COMPAT_FREEBSD32 for arm64. This is based on early work by andrew@.
|
| #
e45132e9
|
| 27-Sep-2024 |
Andrew Turner <andrew@FreeBSD.org> |
arm64: Add the SVE registers to the signal frame
Use the new extended register support in the arm64 signal frame to handle the SVE registers.
As these registers alias the VFP registers we use the f
arm64: Add the SVE registers to the signal frame
Use the new extended register support in the arm64 signal frame to handle the SVE registers.
As these registers alias the VFP registers we use the floating point register values to restore the lower bits of the SVE registers. This is to support software that doesn't understand SVE to continue working.
Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43307
show more ...
|
| #
7e6437c0
|
| 21-Mar-2024 |
Andrew Turner <andrew@FreeBSD.org> |
arm64: Support passing more registers to signals
To support recent extensions to the Arm architecture we may need to store more or larger registers when sending a signal.
To support this create a l
arm64: Support passing more registers to signals
To support recent extensions to the Arm architecture we may need to store more or larger registers when sending a signal.
To support this create a list of these extra registers. Userspace that needs to access a register in the signal handler can then walk the list to find the correct register struct and read/write its contents.
Reviewed by: kib, markj (earlier version) Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43302
show more ...
|
| #
95ee2897
|
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
| #
d5d97bed
|
| 25-Jul-2023 |
Mike Karels <karels@FreeBSD.org> |
arm64 lib32: prepare arm64 headers to redirect to arm
In order to compile lib32 libraries and other 32-bit code on arm64, <machine/foo.h> needs to be redirected to an arm header rather than arm64 wh
arm64 lib32: prepare arm64 headers to redirect to arm
In order to compile lib32 libraries and other 32-bit code on arm64, <machine/foo.h> needs to be redirected to an arm header rather than arm64 when building with -m32. Ifdef the arm64 headers that are installed in /usr/include/machine and used by user-level software (including references from /usr/include/*.h) so that if __arm__ is defined when including the arm64 version, <arm/foo.h> is included rather than using the rest of the file's contents. Some arm headers had no arm64 equivalent; headers were added just to do the redirection. These files use #error if __arm__ is not defined to guard against confusion. Also add an include/arm Makefile, and modify Makefiles as needed to install everything, including the arm files in /usr/include/arm. fenv.h comes from lib/msun/arm/fenv.h.
The new arm64 headers are: acle-compat.h cpuinfo.h sysreg.h
Reviewed by: jrtc27, imp Differential Revision: https://reviews.freebsd.org/D40944
show more ...
|
| #
2ecbbcc7
|
| 24-Feb-2023 |
Zachary Leaf <zachary.leaf@arm.com> |
arm64: extend ESR/SPSR registers to 64b
For the Exception Syndrome Register, ESR_ELx, the upper 32b were previously unused, but now may contain additional exception info as of Armv8.7 (FEAT_LS64).
arm64: extend ESR/SPSR registers to 64b
For the Exception Syndrome Register, ESR_ELx, the upper 32b were previously unused, but now may contain additional exception info as of Armv8.7 (FEAT_LS64).
Extend ESR from u32->u64 in exception handling code to support this. In addition, also extend Saved Program Status Register SPSR_ELx in the same way to allow for future extensions.
Reviewed by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D38983
show more ...
|
| #
50cedfed
|
| 01-Sep-2020 |
Mateusz Guzik <mjg@FreeBSD.org> |
arm64: clean up empty lines in .c and .h files
|
| #
8c9c3144
|
| 13-Jan-2019 |
Olivier Houchard <cognet@FreeBSD.org> |
Impleent COMPAT_FREEBSD32 for arm64. This is based on early work by andrew@.
|
| #
b5ff185e
|
| 12-Sep-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from head
|
| #
ab875b71
|
| 13-Aug-2015 |
Navdeep Parhar <np@FreeBSD.org> |
Catch up with head, primarily for the 1.14.4.0 firmware.
|
| #
17b2cafe
|
| 09-Jul-2015 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r285284 through r285340.
|
| #
144aa0b7
|
| 09-Jul-2015 |
Andrew Turner <andrew@FreeBSD.org> |
Clean up the types used in <machine/ucontext.h> on arm64. As some ports include this file without first including the headers needed for uint32_t and the like use the __foo type.
Obtained from: ABT
Clean up the types used in <machine/ucontext.h> on arm64. As some ports include this file without first including the headers needed for uint32_t and the like use the __foo type.
Obtained from: ABT Systems Ltd Sponsored by: The FreeBSD Foundation
show more ...
|
| #
416ba5c7
|
| 22-Jun-2015 |
Navdeep Parhar <np@FreeBSD.org> |
Catch up with HEAD (r280229-r284686).
|
| #
98e0ffae
|
| 27-May-2015 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge sync of head
|
| #
7263c8c0
|
| 22-Apr-2015 |
Glen Barber <gjb@FreeBSD.org> |
MFH: r280643-r281852
Sponsored by: The FreeBSD Foundation
|
| #
4bf53d0b
|
| 03-Apr-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from HEAD
|
| #
23f51805
|
| 03-Apr-2015 |
Andrew Turner <andrew@FreeBSD.org> |
Add space for future expansion [1]. While here clean up a little, spsr is only 32-bits, and mark the holes in the struct with a pad member.
Suggested by: kib [1] Sponsored by: The FreeBSD Foundation
|
| #
e6e746bf
|
| 25-Mar-2015 |
Glen Barber <gjb@FreeBSD.org> |
MFH: r278968-r280640
Sponsored by: The FreeBSD Foundation
|
| #
412042e2
|
| 23-Mar-2015 |
Andrew Turner <andrew@FreeBSD.org> |
Add the start of the arm64 machine headers. This is the subset needed to start getting userland libraries building.
Reviewed by: imp Sponsored by: The FreeBSD Foundation
|