mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
synced 2026-11-09 11:00:49 +01:00
KBuild abuses the asm statement to write to a file and clang chokes about these invalid asm statements. Hack it even more by fooling this is actual valid asm code. [masahiro: Import Jeroen's work for U-Boot: http://patchwork.ozlabs.org/patch/375026/ Tweak sed script a little to avoid garbage '#' for GCC case, like #define NR_PAGEFLAGS 23 /* __NR_PAGEFLAGS # */ ] Signed-off-by: Jeroen Hofstee <[email protected]> Signed-off-by: Masahiro Yamada <[email protected]> Reviewed-by: Matthias Kaehlcke <[email protected]> Tested-by: Matthias Kaehlcke <[email protected]>
16 lines
341 B
C
16 lines
341 B
C
#ifndef __LINUX_KBUILD_H
|
|
#define __LINUX_KBUILD_H
|
|
|
|
#define DEFINE(sym, val) \
|
|
asm volatile("\n.ascii \"->" #sym " %0 " #val "\"" : : "i" (val))
|
|
|
|
#define BLANK() asm volatile("\n.ascii \"->\"" : : )
|
|
|
|
#define OFFSET(sym, str, mem) \
|
|
DEFINE(sym, offsetof(struct str, mem))
|
|
|
|
#define COMMENT(x) \
|
|
asm volatile("\n.ascii \"->#" x "\"")
|
|
|
|
#endif
|