2011-7-29 DeLesley Hutchins * gcc/pointer-set.c (pointer_set_delete) bugfix for case of hash collisions 2011-07-19 DeLesley Hutchins * tree-threadsafe-analyze.c: Changes lock_expr_tab to be allocated bythe garbage collector, and marked as a GC root. * tree-threadsafe-analyze.c (get_canonical_lock_expr): Changed to force rewrite on MEM_REF 2011-03-22 Le-Chun Wu * Makefile.in: Add new source file and headers in dependencies. * attribs.c (decl_attributes): Handle lock attributes. (is_lock_attribute_with_args): New function. (is_lock_attribute_p): Likewise. (extract_lock_attributes): Likewise. (merge_lock_attr_args): Likewise. * c-decl.c (undeclared_variable): Suppress errors for lock attributes. * c-parser.c (c_parser_declaration_or_fndef): Allow lock attributes on function definitions. Add support for suppressing errors for lock attributes. (c_parser_attributes): Replace the original code that handles the argument list with a call to c_parser_attr_arg_list. (c_parser_attr_arg_list): New function. * common.opt: Add new flags for lock annotations and analysis. * doc/invoke.texi: Add documentation for new flags for lock annotations and analysis. * gimplify.c (lookup_tmp_var): Copy thread safety attributes to tmp variable and save the original variable name. * langhooks-def.h: Define new language hooks. * langhooks.c (lhd_do_nothing_t_return_int): New function. (lhd_do_nothing_t_return_bool): Likewise. (lhd_do_nothing_t_t_return_null_tree): Likewise. * langhooks.h: Add new hook functions in the lang_hooks struct. * passes.c (init_optimization_passes): Add a new pass. * pointer-set.c (pointer_set_copy): New function. (pointer_set_delete): Likewise. (pointer_set_intersection_complement): Likewise. (pointer_set_union_inplace): Likewise. (pointer_set_cardinality): Likewise. * pointer-set.h: Add declarations of new functions. * timevar.def: Add a new time var for thread safety analysis pass. * toplev.c (compile_file): Clean up the global data structures used by the thread safety analysis. * tree-pass.h: Add a new pass declaration. * tree-threadsafe-analyze.c: New file. * tree-threadsafe-analyze.h: New file. * tree.h: Declaration for new functions.