diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2018-03-08 11:07:30 -0800 | 
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2018-03-08 11:07:30 -0800 | 
| commit | c6380ecd8e9bee7aba3d9a5a94b58168244c4a61 (patch) | |
| tree | f8d9522c66e805f638399e094f8e0dfd92584d06 /scripts/gcc-plugins | |
| parent | cdc2466df40f26af60f6b18123069bd52336a80c (diff) | |
| parent | 661e50bc853209e41a5c14a290ca4decc43cbfd1 (diff) | |
Merge tag 'v4.16-rc4' into next
Sync up with mainline to bring in RAVE MFD device core.
Diffstat (limited to 'scripts/gcc-plugins')
| -rw-r--r-- | scripts/gcc-plugins/gcc-common.h | 4 | ||||
| -rw-r--r-- | scripts/gcc-plugins/latent_entropy_plugin.c | 17 | ||||
| -rw-r--r-- | scripts/gcc-plugins/randomize_layout_plugin.c | 75 | ||||
| -rw-r--r-- | scripts/gcc-plugins/structleak_plugin.c | 19 | 
4 files changed, 37 insertions, 78 deletions
| diff --git a/scripts/gcc-plugins/gcc-common.h b/scripts/gcc-plugins/gcc-common.h index ffd1dfaa1cc1..f46750053377 100644 --- a/scripts/gcc-plugins/gcc-common.h +++ b/scripts/gcc-plugins/gcc-common.h @@ -97,6 +97,10 @@  #include "predict.h"  #include "ipa-utils.h" +#if BUILDING_GCC_VERSION >= 8000 +#include "stringpool.h" +#endif +  #if BUILDING_GCC_VERSION >= 4009  #include "attribs.h"  #include "varasm.h" diff --git a/scripts/gcc-plugins/latent_entropy_plugin.c b/scripts/gcc-plugins/latent_entropy_plugin.c index 65264960910d..cbe1d6c4b1a5 100644 --- a/scripts/gcc-plugins/latent_entropy_plugin.c +++ b/scripts/gcc-plugins/latent_entropy_plugin.c @@ -255,21 +255,14 @@ static tree handle_latent_entropy_attribute(tree *node, tree name,  	return NULL_TREE;  } -static struct attribute_spec latent_entropy_attr = { -	.name				= "latent_entropy", -	.min_length			= 0, -	.max_length			= 0, -	.decl_required			= true, -	.type_required			= false, -	.function_type_required		= false, -	.handler			= handle_latent_entropy_attribute, -#if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity		= false -#endif -}; +static struct attribute_spec latent_entropy_attr = { };  static void register_attributes(void *event_data __unused, void *data __unused)  { +	latent_entropy_attr.name		= "latent_entropy"; +	latent_entropy_attr.decl_required	= true; +	latent_entropy_attr.handler		= handle_latent_entropy_attribute; +  	register_attribute(&latent_entropy_attr);  } diff --git a/scripts/gcc-plugins/randomize_layout_plugin.c b/scripts/gcc-plugins/randomize_layout_plugin.c index 0073af326449..c4a345c3715b 100644 --- a/scripts/gcc-plugins/randomize_layout_plugin.c +++ b/scripts/gcc-plugins/randomize_layout_plugin.c @@ -580,68 +580,35 @@ static void finish_type(void *event_data, void *data)  	return;  } -static struct attribute_spec randomize_layout_attr = { -	.name		= "randomize_layout", -	// related to args -	.min_length	= 0, -	.max_length	= 0, -	.decl_required	= false, -	// need type declaration -	.type_required	= true, -	.function_type_required = false, -	.handler		= handle_randomize_layout_attr, -#if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity  = true -#endif -}; +static struct attribute_spec randomize_layout_attr = { }; +static struct attribute_spec no_randomize_layout_attr = { }; +static struct attribute_spec randomize_considered_attr = { }; +static struct attribute_spec randomize_performed_attr = { }; -static struct attribute_spec no_randomize_layout_attr = { -	.name		= "no_randomize_layout", -	// related to args -	.min_length	= 0, -	.max_length	= 0, -	.decl_required	= false, -	// need type declaration -	.type_required	= true, -	.function_type_required = false, -	.handler		= handle_randomize_layout_attr, +static void register_attributes(void *event_data, void *data) +{ +	randomize_layout_attr.name		= "randomize_layout"; +	randomize_layout_attr.type_required	= true; +	randomize_layout_attr.handler		= handle_randomize_layout_attr;  #if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity  = true +	randomize_layout_attr.affects_type_identity = true;  #endif -}; -static struct attribute_spec randomize_considered_attr = { -	.name		= "randomize_considered", -	// related to args -	.min_length	= 0, -	.max_length	= 0, -	.decl_required	= false, -	// need type declaration -	.type_required	= true, -	.function_type_required = false, -	.handler		= handle_randomize_considered_attr, +	no_randomize_layout_attr.name		= "no_randomize_layout"; +	no_randomize_layout_attr.type_required	= true; +	no_randomize_layout_attr.handler	= handle_randomize_layout_attr;  #if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity  = false +	no_randomize_layout_attr.affects_type_identity = true;  #endif -}; -static struct attribute_spec randomize_performed_attr = { -	.name		= "randomize_performed", -	// related to args -	.min_length	= 0, -	.max_length	= 0, -	.decl_required	= false, -	// need type declaration -	.type_required	= true, -	.function_type_required = false, -	.handler		= handle_randomize_performed_attr, -#if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity  = false -#endif -}; +	randomize_considered_attr.name		= "randomize_considered"; +	randomize_considered_attr.type_required	= true; +	randomize_considered_attr.handler	= handle_randomize_considered_attr; + +	randomize_performed_attr.name		= "randomize_performed"; +	randomize_performed_attr.type_required	= true; +	randomize_performed_attr.handler	= handle_randomize_performed_attr; -static void register_attributes(void *event_data, void *data) -{  	register_attribute(&randomize_layout_attr);  	register_attribute(&no_randomize_layout_attr);  	register_attribute(&randomize_considered_attr); diff --git a/scripts/gcc-plugins/structleak_plugin.c b/scripts/gcc-plugins/structleak_plugin.c index 3f8dd4868178..10292f791e99 100644 --- a/scripts/gcc-plugins/structleak_plugin.c +++ b/scripts/gcc-plugins/structleak_plugin.c @@ -57,21 +57,16 @@ static tree handle_user_attribute(tree *node, tree name, tree args, int flags, b  	return NULL_TREE;  } -static struct attribute_spec user_attr = { -	.name			= "user", -	.min_length		= 0, -	.max_length		= 0, -	.decl_required		= false, -	.type_required		= false, -	.function_type_required	= false, -	.handler		= handle_user_attribute, -#if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity	= true -#endif -}; +static struct attribute_spec user_attr = { };  static void register_attributes(void *event_data, void *data)  { +	user_attr.name			= "user"; +	user_attr.handler		= handle_user_attribute; +#if BUILDING_GCC_VERSION >= 4007 +	user_attr.affects_type_identity	= true; +#endif +  	register_attribute(&user_attr);  } | 
