r141145 - in /branches/transactional-memory/gcc...

rth@gcc.gnu.org rth@gcc.gnu.org
Wed Oct 15 16:37:00 GMT 2008


Author: rth
Date: Wed Oct 15 16:37:55 2008
New Revision: 141145

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141145
Log:
	* Makefile.in (gtm-low.o): Don't depend on gtm-defines.h.
	* builtin-types.def: Don't include it.
	* c-common.c (handle_gtm_unknown_attribute): Stub out
	setting DECL_IS_GTM_UNKNOWN.
	* c-decl.c (merge_decls): Don't propogate it.
	* c-parser.c (c_parser_gtm): Remove decl.
	* c-typeck.c (c_finish_gtm_txn): Don't special-case for OpenMP;
	make that the only case.
	* cgraphbuild.c (prepare_gtm_clone): Use MAIN_NAME_P.  Use concat
	for resetting the assembler name.
	* defaults.h (TINYSTM_VERSION_0_9_5): Set.
	* gimple-low.c (struct lower_data): Add in_transaction.
	(mark_gtm_save_vars): Remove.
	(lower_gtm_directive): Simplify.
	(record_vars_into_tm): Split out from record_vars_into.  When
	inside a transaction, set DECL_IS_GTM_PURE_VAR.
	(lower_gimple_bind): Call it.
	* gimple-pretty-print.c (dump_gimple_gtm_txn): New.
	(dump_gimple_gtm_other): New.
	(dump_gimple_stmt): Call them.
	* gimple.c (gcc_for_code): Add GTM codes.
	(gimple_size): Restructure based on GSS codes.
	(gimple_build_gtm_txn): New.
	(walk_gimple_stmt): Add GTM codes.
	(gimple_rhs_class_table): Make GTM_LOAD/STORE be GIMPLE_SINGLE_RHS.
	* gimple.def (GIMPLE_GTM_TXN, GIMPLE_GTM_RETURN, GIMPLE_GTM_ABORT): New.
	* gimple.h (struct gimple_statement_seq): Rename from 
	gimple_statement_omp.  Update all users.
	(is_gimple_gtm): New.
	* gtm-low.c (new_gtm_region): Remove type code.
	(build_gtm_regions_1): Gimplify.
	(build_gtm_regions): Don't do dominance here.
	(remove_gtm_stmts): Gimpify.
	(collapse_gtm_regions, query_STM_for_flat_nesting): Remove.
	(set_gtm_pure_var, is_gtm_pure_var): Remove.
	(requires_barrier): Merge requires_read_barrier and
	requires_write_barrier; rewrite to match memory variables only.
	(get_real_stm_decl, get_uint_stm_decl, insert_temporary,
	may_repair_rhs, compensate_for_taking_the_address, 
	compose_stm_store_call, compose_stm_load_call, 
	insert_rhs_stm_call, replace_lhs, maybe_replace_rhs_stmt,
	replace_txn_mod_stmt, build_txn_call_expr, replace_txn_stmt,
	setup_recover_bb, setup_begin_bb, expand_gtm_abort, 
	maybe_insert_stm_new, insert_stm_init_thread, 
	maybe_insert_stm_init_thread, insert_stm_exit_thread,
	maybe_insert_stm_exit_thread, expand_gtm_txn_marker,
	expand_gtm_return, insert_stm_init, insert_stm_exit,
	init_label_table, record_bb_into_table, check_and_mark_edges,
	instrument_edges, instrument_return_expr, expand_gtm,
	annotate_gtm_function_body): Remove.
	(maybe_transactify_assign, maybe_transactify_call): New.
	(transactify_stmt): New.
	(checkpoint_live_in_variables, checkpoint_gtm_txn): If 0.
	* omp-low.c (lower_gtm_txn): Remove.
	(diagnose_sb_1): Don't call it.
	* passes.c (pass_checkpoint_gtm): Disable.
	* tree-flow.h (NUM_BB_TXN): Remove.
	(struct gtm_region): Remove txn_bbs, type.
	* tree-pretty-print.c (dump_generic_node): Handle GTM codes.
	* tree.def (GTM_LOAD, GTM_STORE): Add.
	(GTM_RETURN): Remove.
	* tree.h (GTM_DIRECTIVE_P): Remove.
	(DECL_IS_GTM_UNKNOWN): Disable.

Modified:
    branches/transactional-memory/gcc/ChangeLog.tm
    branches/transactional-memory/gcc/Makefile.in
    branches/transactional-memory/gcc/builtin-types.def
    branches/transactional-memory/gcc/c-common.c
    branches/transactional-memory/gcc/c-decl.c
    branches/transactional-memory/gcc/c-parser.c
    branches/transactional-memory/gcc/c-typeck.c
    branches/transactional-memory/gcc/cgraphbuild.c
    branches/transactional-memory/gcc/cp/cp-gimplify.c
    branches/transactional-memory/gcc/defaults.h
    branches/transactional-memory/gcc/gimple-low.c
    branches/transactional-memory/gcc/gimple-pretty-print.c
    branches/transactional-memory/gcc/gimple.c
    branches/transactional-memory/gcc/gimple.def
    branches/transactional-memory/gcc/gimple.h
    branches/transactional-memory/gcc/gsstruct.def
    branches/transactional-memory/gcc/gtm-low.c
    branches/transactional-memory/gcc/omp-low.c
    branches/transactional-memory/gcc/passes.c
    branches/transactional-memory/gcc/tree-cfg.c
    branches/transactional-memory/gcc/tree-flow.h
    branches/transactional-memory/gcc/tree-inline.c
    branches/transactional-memory/gcc/tree-nested.c
    branches/transactional-memory/gcc/tree-pretty-print.c
    branches/transactional-memory/gcc/tree.def
    branches/transactional-memory/gcc/tree.h



More information about the Gcc-cvs mailing list