perf tools: Fix compile error for x86
Commita0a12c3ed0
("asm goto: eradicate CC_HAS_ASM_GOTO") eradicates CC_HAS_ASM_GOTO, and in the process also causes the perf tool on x86 to use asm_volatile_goto when compiling __GEN_RMWcc. However, asm_volatile_goto is not declared in the perf tool headers, which causes a compilation error: In file included from tools/arch/x86/include/asm/atomic.h:7, from tools/include/asm/atomic.h:6, from tools/include/linux/atomic.h:5, from tools/include/linux/refcount.h:41, from tools/lib/perf/include/internal/cpumap.h:5, from tools/perf/util/cpumap.h:7, from tools/perf/util/env.h:7, from tools/perf/util/header.h:12, from pmu-events/pmu-events.c:9: tools/arch/x86/include/asm/atomic.h: In function ‘atomic_dec_and_test’: tools/arch/x86/include/asm/rmwcc.h:7:2: error: implicit declaration of function ‘asm_volatile_goto’ [-Werror=implicit-function-declaration] asm_volatile_goto (fullop "; j" cc " %l[cc_label]" \ ^~~~~~~~~~~~~~~~~ Define asm_volatile_goto in compiler_types.h if not declared, like the main kernel header files do. Fixes:a0a12c3ed0
("asm goto: eradicate CC_HAS_ASM_GOTO") Signed-off-by: Yang Jihong <yangjihong1@huawei.com> Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com> Tested-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
1c23f9e627
commit
cfd2b5c110
|
@ -36,4 +36,8 @@
|
||||||
#include <linux/compiler-gcc.h>
|
#include <linux/compiler-gcc.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef asm_volatile_goto
|
||||||
|
#define asm_volatile_goto(x...) asm goto(x)
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* __LINUX_COMPILER_TYPES_H */
|
#endif /* __LINUX_COMPILER_TYPES_H */
|
||||||
|
|
Loading…
Reference in New Issue