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