lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 13 Feb 2017 22:37:27 -0800 From: tip-bot for Arnaldo Carvalho de Melo <tipbot@...or.com> To: linux-tip-commits@...r.kernel.org Cc: wangnan0@...wei.com, linux-kernel@...r.kernel.org, mingo@...nel.org, namhyung@...nel.org, hpa@...or.com, acme@...hat.com, adrian.hunter@...el.com, tglx@...utronix.de, jolsa@...nel.org, dsahern@...il.com, joe@...ches.com Subject: [tip:perf/core] tools include: Introduce linux/compiler-gcc.h Commit-ID: 192614010a5052fe92611c7076ef664fd9bb60e8 Gitweb: http://git.kernel.org/tip/192614010a5052fe92611c7076ef664fd9bb60e8 Author: Arnaldo Carvalho de Melo <acme@...hat.com> AuthorDate: Fri, 10 Feb 2017 11:41:11 -0300 Committer: Arnaldo Carvalho de Melo <acme@...hat.com> CommitDate: Mon, 13 Feb 2017 14:29:29 -0300 tools include: Introduce linux/compiler-gcc.h To match the kernel headers structure, setting up things that are specific to gcc or to some specific version of gcc. It gets included by linux/compiler.h when gcc is the compiler being used. Cc: Adrian Hunter <adrian.hunter@...el.com> Cc: David Ahern <dsahern@...il.com> Cc: Jiri Olsa <jolsa@...nel.org> Cc: Joe Perches <joe@...ches.com> Cc: Namhyung Kim <namhyung@...nel.org> Cc: Wang Nan <wangnan0@...wei.com> Link: http://lkml.kernel.org/n/tip-fabcqfq4asodq9t158hcs8t3@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com> --- tools/include/linux/compiler-gcc.h | 14 ++++++++++++++ tools/include/linux/compiler.h | 10 +++++----- tools/perf/MANIFEST | 1 + 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/tools/include/linux/compiler-gcc.h b/tools/include/linux/compiler-gcc.h new file mode 100644 index 0000000..48af2f1 --- /dev/null +++ b/tools/include/linux/compiler-gcc.h @@ -0,0 +1,14 @@ +#ifndef _TOOLS_LINUX_COMPILER_H_ +#error "Please don't include <linux/compiler-gcc.h> directly, include <linux/compiler.h> instead." +#endif + +/* + * Common definitions for all gcc versions go here. + */ +#define GCC_VERSION (__GNUC__ * 10000 \ + + __GNUC_MINOR__ * 100 \ + + __GNUC_PATCHLEVEL__) + +#if GCC_VERSION >= 70000 && !defined(__CHECKER__) +# define __fallthrough __attribute__ ((fallthrough)) +#endif diff --git a/tools/include/linux/compiler.h b/tools/include/linux/compiler.h index d94179f..6326ede 100644 --- a/tools/include/linux/compiler.h +++ b/tools/include/linux/compiler.h @@ -1,6 +1,10 @@ #ifndef _TOOLS_LINUX_COMPILER_H_ #define _TOOLS_LINUX_COMPILER_H_ +#ifdef __GNUC__ +#include <linux/compiler-gcc.h> +#endif + /* Optimization barrier */ /* The "volatile" is due to gcc bugs */ #define barrier() __asm__ __volatile__("": : :"memory") @@ -128,11 +132,7 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s #ifndef __fallthrough -# if defined(__GNUC__) && __GNUC__ >= 7 -# define __fallthrough __attribute__ ((fallthrough)) -# else -# define __fallthrough -# endif +# define __fallthrough #endif #endif /* _TOOLS_LINUX_COMPILER_H */ diff --git a/tools/perf/MANIFEST b/tools/perf/MANIFEST index a511e5f..8672f83 100644 --- a/tools/perf/MANIFEST +++ b/tools/perf/MANIFEST @@ -61,6 +61,7 @@ tools/include/asm-generic/bitops.h tools/include/linux/atomic.h tools/include/linux/bitops.h tools/include/linux/compiler.h +tools/include/linux/compiler-gcc.h tools/include/linux/coresight-pmu.h tools/include/linux/filter.h tools/include/linux/hash.h
Powered by blists - more mailing lists