Revision tags: release/14.0.0 |
|
#
2ee649c1 |
| 27-Oct-2023 |
Andrew Turner <andrew@FreeBSD.org> |
arm64: Add more HWCAP2 values
Update the HWCAP2 values to align with Linux v6.6-rc7
Reviewed by: manu, imp, emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D42379
|
#
0f093880 |
| 27-Oct-2023 |
Andrew Turner <andrew@FreeBSD.org> |
arm64: Expand HWCAP2 to be 64 bit
There are more than 32 arm64 HWCAP2 values. Expand the macros to include leading zeros and mark them as unsigned long.
Reviewed by: manu, imp, emaste Sponsored by:
arm64: Expand HWCAP2 to be 64 bit
There are more than 32 arm64 HWCAP2 values. Expand the macros to include leading zeros and mark them as unsigned long.
Reviewed by: manu, imp, emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D42378
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 |
| 26-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 ...
|
Revision tags: release/13.2.0, release/12.4.0 |
|
#
ca18304e |
| 22-Oct-2022 |
Konstantin Belousov <kib@FreeBSD.org> |
arm, arm64: tweak hard-coded load addresses for PIE binaries
They are used when ASLR is not applied. The need for adjusting is due to rtld direct exec mode puts ld-elf.so.1 at the PIE load address,
arm, arm64: tweak hard-coded load addresses for PIE binaries
They are used when ASLR is not applied. The need for adjusting is due to rtld direct exec mode puts ld-elf.so.1 at the PIE load address, and this address must not conflict with the default linker' load address for non-PIE binaries. Otherwise rtld in direct mode cannot activate image. Example of implicit failure is ldd(1) refusing to run.
Reported by: kp Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D37085
show more ...
|
Revision tags: release/13.1.0, release/12.3.0 |
|
#
bbe80bff |
| 25-Jul-2021 |
Peter Grehan <grehan@FreeBSD.org> |
arm64: HWCAP/HWCAP2 aux args support for 32-bit ARM binaries.
This fixes build/run of golang under COMPAT32 emulation.
PR: 256897 Reviewed by: andrew, mmel, manu, jhb, cognet, Robert Clausecker Tes
arm64: HWCAP/HWCAP2 aux args support for 32-bit ARM binaries.
This fixes build/run of golang under COMPAT32 emulation.
PR: 256897 Reviewed by: andrew, mmel, manu, jhb, cognet, Robert Clausecker Tested by: brd, andrew, Robert Clausecker MFC after: 3 weeks Relnotes: yes Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D31175
show more ...
|
Revision tags: release/13.0.0, release/12.2.0 |
|
#
d81d009c |
| 08-Sep-2020 |
Mitchell Horne <mhorne@FreeBSD.org> |
arm64: fix incorrect HWCAP definitions
FreeBSD exports CPU features as bits in the AT_HWCAP and AT_HWCAP2 vectors via elf_aux_info(3). This interface is similar to getauxval(3) on Linux, and for sim
arm64: fix incorrect HWCAP definitions
FreeBSD exports CPU features as bits in the AT_HWCAP and AT_HWCAP2 vectors via elf_aux_info(3). This interface is similar to getauxval(3) on Linux, and for simplicity to consumers we try to maintain an identical set of feature flags on arm64.
The first batch of AT_HWCAP flags were added in r350166, corresponding to definitions that already existed in Linux. Unfortunately, one flag was missed, and a portion of the values are shifted one bit to the right as a result.
Add the missing definition for HWCAP_ASIMDHP, and adjust the affected values to match their Linux counterparts.
Although this is an ABI-breaking change, there is no plan to provide compat code for old binaries. An audit of our ports tree and other software via Debian code search indicates that there are not yet any consumers of this interface for FreeBSD/arm64.
Bump __FreeBSD_version to be on the safe side, in case compat code needs to be added in the future.
Reviewed by: emaste, manu MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D26329
show more ...
|
#
7ea40e1d |
| 03-Sep-2020 |
Mitchell Horne <mhorne@FreeBSD.org> |
arm64: update the set of HWCAP definitions
This is in sync with what is defined for Linux 5.8. Note that all bits in HWCAP are exhausted, and HWCAP2 has been added.
This also revealed an error in s
arm64: update the set of HWCAP definitions
This is in sync with what is defined for Linux 5.8. Note that all bits in HWCAP are exhausted, and HWCAP2 has been added.
This also revealed an error in some of the existing definitions. We are missing HWCAP_ASIMDHP, and as a result a portion of the HWCAP values are shifted right by one bit. This will be fixed in an upcoming change, but the values being added now are compatible with what Linux defines.
Reviewed by: emaste, markj, manu MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D26030
show more ...
|
Revision tags: release/11.4.0, release/12.1.0 |
|
#
26517dcf |
| 11-Oct-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
gcore: Add aarch64 32-bit core support
Summary: Add trivial 32-bit arm cores on aarch64 support for gcore. This doesn't handle fpregs.
Reviewed by: #arm, andrew Sponsored by: Juniper Networks, Inc
gcore: Add aarch64 32-bit core support
Summary: Add trivial 32-bit arm cores on aarch64 support for gcore. This doesn't handle fpregs.
Reviewed by: #arm, andrew Sponsored by: Juniper Networks, Inc Differential Revision: https://reviews.freebsd.org/D21947
show more ...
|
#
a63915c2 |
| 28-Jul-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead @r350386
Sponsored by: The FreeBSD Foundation
|
#
d5fdfa2c |
| 20-Jul-2019 |
Emmanuel Vadot <manu@FreeBSD.org> |
arm64: Implement HWCAP
Add HWCAP support for arm64. defines are the same as in Linux and a userland program can use elf_aux_info to get the data. We only save the common denominator for all cores in
arm64: Implement HWCAP
Add HWCAP support for arm64. defines are the same as in Linux and a userland program can use elf_aux_info to get the data. We only save the common denominator for all cores in case the big and little cluster have different support (this is known to exists even if we don't support those SoCs in FreeBSD)
Differential Revision: https://reviews.freebsd.org/D17137
show more ...
|
Revision tags: release/11.3.0 |
|
#
8c9c3144 |
| 13-Jan-2019 |
Olivier Houchard <cognet@FreeBSD.org> |
Impleent COMPAT_FREEBSD32 for arm64. This is based on early work by andrew@.
|
Revision tags: release/12.0.0 |
|
#
c6879c6c |
| 23-Oct-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r339015 through r339669.
|
#
c3adaa33 |
| 23-Oct-2018 |
Brooks Davis <brooks@FreeBSD.org> |
Consolidate identical ELF auxargs type defintions.
All platforms except powerpc use the same values and powerpc shares a majority of them.
Go ahead and declare AT_NOTELF, AT_UID, and AT_EUID in fav
Consolidate identical ELF auxargs type defintions.
All platforms except powerpc use the same values and powerpc shares a majority of them.
Go ahead and declare AT_NOTELF, AT_UID, and AT_EUID in favor of the unused AT_DCACHEBSIZE, AT_ICACHEBSIZE, and AT_UCACHEBSIZE for powerpc.
Reviewed by: jhb, imp Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D17397
show more ...
|
Revision tags: release/11.2.0 |
|
#
9dcf90f8 |
| 24-Nov-2017 |
Ed Schouten <ed@FreeBSD.org> |
Add rudimentary support for building FreeBSD/arm64 with COMPAT_FREEBSD32.
Right now I'm using two Raspberry Pi's (2 and 3) to test CloudABI support for armv6, armv7 and aarch64. It would be nice if
Add rudimentary support for building FreeBSD/arm64 with COMPAT_FREEBSD32.
Right now I'm using two Raspberry Pi's (2 and 3) to test CloudABI support for armv6, armv7 and aarch64. It would be nice if I could restrict this to just a single instance when testing smaller changes. This is why I'd like to get COMPAT_CLOUDABI32 to work on arm64.
As COMPAT_CLOUDABI32 depends on COMPAT_FREEBSD32, at least for the ELF loading, this change adds all of the bits necessary to at least build a kernel with COMPAT_FREEBSD32. All of the machine dependent system calls are still stubbed out, for the reason that implementations for these are only useful if actual support for running FreeBSD binaries is added. This is outside the scope of this work.
Reviewed by: andrew Differential Revision: https://reviews.freebsd.org/D13144
show more ...
|
#
c2c014f2 |
| 07-Nov-2017 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Merge ^/head r323559 through r325504.
|
#
0a8f81bc |
| 22-Oct-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r324837
While here, diff reduce some of the changes in sys/boot by moving MK_COVERAGE=no to sys/boot/Makefile.inc .
|
#
904d8c49 |
| 21-Oct-2017 |
Michal Meloun <mmel@FreeBSD.org> |
Add AT_HWCAP2 ELF auxiliary vector. - allocate value for new AT_HWCAP2 auxiliary vector on all platforms. - expand 'struct sysentvec' by new 'u_long *sv_hwcap2', in exactly same way as for AT_HW
Add AT_HWCAP2 ELF auxiliary vector. - allocate value for new AT_HWCAP2 auxiliary vector on all platforms. - expand 'struct sysentvec' by new 'u_long *sv_hwcap2', in exactly same way as for AT_HWCAP.
MFC after: 1 month Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D12699
show more ...
|
Revision tags: release/10.4.0 |
|
#
8fcbcc2d |
| 16-Sep-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r323635
|
#
c2f37b92 |
| 14-Sep-2017 |
John Baldwin <jhb@FreeBSD.org> |
Add AT_HWCAP and AT_EHDRFLAGS on all platforms.
A new 'u_long *sv_hwcap' field is added to 'struct sysentvec'. A process ABI can set this field to point to a value holding a mask of architecture-sp
Add AT_HWCAP and AT_EHDRFLAGS on all platforms.
A new 'u_long *sv_hwcap' field is added to 'struct sysentvec'. A process ABI can set this field to point to a value holding a mask of architecture-specific CPU feature flags. If an ABI does not wish to supply AT_HWCAP to processes the field can be left as NULL.
The support code for AT_EHDRFLAGS was already present on all systems, just the #define was not present. This is a step towards unifying the AT_* constants across platforms.
Reviewed by: kib MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D12290
show more ...
|
Revision tags: release/11.1.0, release/11.0.1, release/11.0.0, release/10.3.0, release/10.2.0 |
|
#
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
|
#
4bf53d0b |
| 04-Apr-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from HEAD
|
#
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
|