Add sys/_align.h replacing machine/_align.hDefine _ALIGNBYTES using sizeof(void *) (no functional change on anyexisting architecture) which will allow it to work with CHERI were wemust align thin
Add sys/_align.h replacing machine/_align.hDefine _ALIGNBYTES using sizeof(void *) (no functional change on anyexisting architecture) which will allow it to work with CHERI were wemust align things up to capability alignment.In _ALIGN, replace integer manipulation which does not preserve pointerprovenance with a type and provenance preserving builtin. This requiresmodest changes in code which assumes _ALIGN returns an integer, butthose are relatively rare.Reviewed by: kib, markjEffort: CHERI upstreamingSponsored by: Innovate UKDifferential Revision: https://reviews.freebsd.org/D53947
show more ...
arm64: lib32: Don't try to install removed <machine/runq.h>Reported by: Herbert J. Skuhra (herbert gojira.at)Fixes: 79d8a99ee583 ("runq: Deduce most parameters, remove machine headers"
arm64: lib32: Don't try to install removed <machine/runq.h>Reported by: Herbert J. Skuhra (herbert gojira.at)Fixes: 79d8a99ee583 ("runq: Deduce most parameters, remove machine headers")MFC after: 1 monthEvent: Kitchener-Waterloo Hackathon 202506Sponsored by: The FreeBSD Foundation
arm64 lib32: prepare arm64 headers to redirect to armIn order to compile lib32 libraries and other 32-bit code on arm64,<machine/foo.h> needs to be redirected to an arm header ratherthan arm64 wh
arm64 lib32: prepare arm64 headers to redirect to armIn order to compile lib32 libraries and other 32-bit code on arm64,<machine/foo.h> needs to be redirected to an arm header ratherthan arm64 when building with -m32. Ifdef the arm64 headers thatare installed in /usr/include/machine and used by user-level software(including references from /usr/include/*.h) so that if __arm__ isdefined when including the arm64 version, <arm/foo.h> is includedrather than using the rest of the file's contents. Some arm headershad no arm64 equivalent; headers were added just to do the redirection.These files use #error if __arm__ is not defined to guard againstconfusion. Also add an include/arm Makefile, and modify Makefilesas 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.hReviewed by: jrtc27, impDifferential Revision: https://reviews.freebsd.org/D40944