Date: Tue, 7 Sep 2021 09:57:23 GMT From: Alex Richardson <arichardson@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: 4a6bf977ac3e - stable/13 - Fix cross-builds after 4e5d32a445f90d37966cd6de571978551654e3f3 Message-ID: <202109070957.1879vNBM011712@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by arichardson: URL: https://cgit.FreeBSD.org/src/commit/?id=4a6bf977ac3e309c2213e15e17630b0aabb49949 commit 4a6bf977ac3e309c2213e15e17630b0aabb49949 Author: Jose Luis Duran <jlduran@users.noreply.github.com> AuthorDate: 2021-08-30 19:29:17 +0000 Commit: Alex Richardson <arichardson@FreeBSD.org> CommitDate: 2021-09-07 09:56:17 +0000 Fix cross-builds after 4e5d32a445f90d37966cd6de571978551654e3f3 Add alignment macros to cross-build's sys/cdefs.h Pull Request: https://github.com/freebsd/freebsd-src/pull/531 MFC after: immediately (build fix) (cherry picked from commit 94d9439b6be6bd5ef9febfaf38128e0cad91476d) --- tools/build/cross-build/include/common/sys/cdefs.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tools/build/cross-build/include/common/sys/cdefs.h b/tools/build/cross-build/include/common/sys/cdefs.h index c129542b6180..6d62333bcffe 100644 --- a/tools/build/cross-build/include/common/sys/cdefs.h +++ b/tools/build/cross-build/include/common/sys/cdefs.h @@ -255,3 +255,22 @@ #define __BSD_VISIBLE 1 #define __ISO_C_VISIBLE 2011 #define __EXT1_VISIBLE 1 + +/* Alignment builtins for better type checking and improved code generation. */ +/* Provide fallback versions for other compilers (GCC/Clang < 10): */ +#if !__has_builtin(__builtin_is_aligned) +#define __builtin_is_aligned(x, align) \ + (((__uintptr_t)x & ((align) - 1)) == 0) +#endif +#if !__has_builtin(__builtin_align_up) +#define __builtin_align_up(x, align) \ + ((__typeof__(x))(((__uintptr_t)(x)+((align)-1))&(~((align)-1)))) +#endif +#if !__has_builtin(__builtin_align_down) +#define __builtin_align_down(x, align) \ + ((__typeof__(x))((x)&(~((align)-1)))) +#endif + +#define __align_up(x, y) __builtin_align_up(x, y) +#define __align_down(x, y) __builtin_align_down(x, y) +#define __is_aligned(x, y) __builtin_is_aligned(x, y)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202109070957.1879vNBM011712>