u-boot/include/linux/kbuild.h
Jeroen Hofstee fe5d1abcf4 clang: workaround for generated constants
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.

cc: Masahiro Yamada <yamada.m@jp.panasonic.com>
cc: Tom Rini <trini@ti.com>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-09-09 13:51:54 +02:00

21 lines
469 B
C

/*
* Copied from Linux:
* commit 37487a56523d402e25650da16c337acf4cecd13d
* Author: Christoph Lameter <clameter@sgi.com>
*/
#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