diff mbox series

[v2,2/7] tools/nolibc: add __nolibc_aligned() and __nolibc_aligned_as()

Message ID 20250419-nolibc-ubsan-v2-2-060b8a016917@weissschuh.net
State New
Headers show
Series tools/nolibc: fix some undefined behaviour and enable UBSAN | expand

Commit Message

Thomas Weißschuh April 19, 2025, 10:46 a.m. UTC
Provide a convenience macro around __attribute__((aligned)).

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>

---
Willy, I used the name __nolibc_align*ed* because it matches what the
underlying attribute and the kernel macros are using.
---
 tools/include/nolibc/compiler.h | 3 +++
 1 file changed, 3 insertions(+)
diff mbox series

Patch

diff --git a/tools/include/nolibc/compiler.h b/tools/include/nolibc/compiler.h
index e6d6dc116e43aa69b37eca02ed1590fc09486bdb..369cfb5a0e78f4ae1e1a2cac4077024b4e8ba225 100644
--- a/tools/include/nolibc/compiler.h
+++ b/tools/include/nolibc/compiler.h
@@ -18,6 +18,9 @@ 
 #  define __nolibc_has_feature(feature) 0
 #endif
 
+#define __nolibc_aligned(alignment) __attribute__((aligned(alignment)))
+#define __nolibc_aligned_as(type) __nolibc_aligned(__alignof__(type))
+
 #if __nolibc_has_attribute(naked)
 #  define __nolibc_entrypoint __attribute__((naked))
 #  define __nolibc_entrypoint_epilogue()