GCC Middle and Back End API Reference
plugin.h File Reference

Go to the source code of this file.

Functions

void add_new_plugin (const char *)
void parse_plugin_arg_opt (const char *)
int invoke_plugin_callbacks_full (int, void *)
void initialize_plugins (void)
bool plugins_active_p (void)
void dump_active_plugins (FILE *)
void debug_active_plugins (void)
void warn_if_plugins (void)
void plugins_internal_error_function (diagnostic_context *, const char *, va_list *)
void print_plugins_versions (FILE *file, const char *indent)
void print_plugins_help (FILE *file, const char *indent)
void finalize_plugins (void)
static int invoke_plugin_callbacks (int event, void *gcc_data)
void register_attribute (const struct attribute_spec *attr)
struct scoped_attributesregister_scoped_attributes (const struct attribute_spec *, const char *)

Variables

bool flag_plugin_added

Function Documentation

void add_new_plugin ( const char *  )
void debug_active_plugins ( void  )
Dump active plugins to stderr.   

References dump_active_plugins().

void dump_active_plugins ( FILE *  )
void finalize_plugins ( void  )
Free memory allocated by the plugin system.  

References finalize_one_plugin(), and plugin_name_args_tab.

Referenced by toplev_main().

void initialize_plugins ( void  )
Main plugin initialization function.  Called from compile_file() in
   toplev.c.   

References init_one_plugin(), plugin_name_args_tab, timevar_pop(), and timevar_push().

Referenced by toplev_main().

static int invoke_plugin_callbacks ( int  event,
void *  gcc_data 
)
inlinestatic
Called from inside GCC.  Invoke all plugin callbacks registered with
   the specified event.
   Return PLUGEVT_SUCCESS if at least one callback was called,
   PLUGEVT_NO_CALLBACK if there was no callback.

   EVENT    - the event identifier
   GCC_DATA - event-specific data provided by the compiler   

References flag_plugin_added, and invoke_plugin_callbacks_full().

Referenced by add_pass_instance(), compile_file(), do_compile(), execute_ipa_pass_list(), execute_one_pass(), expand_function(), ggc_collect(), ggc_mark_roots(), init_attributes(), ipa_passes(), and toplev_main().

int invoke_plugin_callbacks_full ( int  ,
void *   
)
void parse_plugin_arg_opt ( const char *  )
bool plugins_active_p ( void  )
Return true if plugins have been loaded.   

References event_last.

Referenced by dump_active_plugins(), and warn_if_plugins().

void plugins_internal_error_function ( diagnostic_context context,
const char *  msgid,
va_list *  ap 
)
Likewise, as a callback from the diagnostics code.   

References warn_if_plugins().

Referenced by general_init().

void print_plugins_help ( FILE *  file,
const char *  indent 
)
void print_plugins_versions ( FILE *  file,
const char *  indent 
)
void register_attribute ( const struct attribute_spec attr)
In attribs.c.   
struct scoped_attributes* register_scoped_attributes ( const struct attribute_spec attributes,
const char *  ns 
)
read
Insert an array of attributes ATTRIBUTES into a namespace.  This
   array must be NULL terminated.  NS is the name of attribute
   namespace.  The function returns the namespace into which the
   attributes have been registered.   

References scoped_attributes::attribute_hash, scoped_attributes::attributes, hash_table< Descriptor, Allocator >::create(), find_attribute_namespace(), memset(), attribute_spec::name, scoped_attributes::ns, and register_scoped_attribute().

Referenced by init_attributes().

void warn_if_plugins ( void  )
Give a warning if plugins are present, before an ICE message asking
   to submit a bug report.   

References dump_active_plugins(), fnotice(), and plugins_active_p().

Referenced by plugins_internal_error_function().


Variable Documentation

bool flag_plugin_added
For invoke_plugin_callbacks(), see plugin.h.   

Referenced by add_new_plugin(), and invoke_plugin_callbacks().