mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-12-03 14:48:57 +00:00
Fix cross-builds after 4e5d32a445
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)
This commit is contained in:
parent
b5be5c35db
commit
94d9439b6b
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user