diff options
author | Emese Revfy <re.emese@gmail.com> | 2016-05-24 00:10:35 +0200 |
---|---|---|
committer | Michal Marek <mmarek@suse.com> | 2016-06-07 22:57:10 +0200 |
commit | 0dae776c6bf31e779c172753f6e2d6426eb42523 (patch) | |
tree | a535f373e3a767bc3a3d6177640e3b088f7cdb24 /arch | |
parent | GCC plugin infrastructure (diff) | |
download | linux-0dae776c6bf31e779c172753f6e2d6426eb42523.tar.xz linux-0dae776c6bf31e779c172753f6e2d6426eb42523.zip |
Add Cyclomatic complexity GCC plugin
Add a very simple plugin to demonstrate the GCC plugin infrastructure. This GCC
plugin computes the cyclomatic complexity of each function.
The complexity M of a function's control flow graph is defined as:
M = E - N + 2P
where
E = the number of edges
N = the number of nodes
P = the number of connected components (exit nodes).
Signed-off-by: Emese Revfy <re.emese@gmail.com>
Acked-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Michal Marek <mmarek@suse.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/Kconfig | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/Kconfig b/arch/Kconfig index 1b93632198fa..04ca45262ad1 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -372,6 +372,18 @@ menuconfig GCC_PLUGINS See Documentation/gcc-plugins.txt for details. +config GCC_PLUGIN_CYC_COMPLEXITY + bool "Compute the cyclomatic complexity of a function" + depends on GCC_PLUGINS + help + The complexity M of a function's control flow graph is defined as: + M = E - N + 2P + where + + E = the number of edges + N = the number of nodes + P = the number of connected components (exit nodes). + config HAVE_CC_STACKPROTECTOR bool help |