From 25c305729756de2f30f2a67945e344f301253050 Mon Sep 17 00:00:00 2001 From: aldyh Date: Fri, 1 Jun 2012 15:44:10 +0000 Subject: [PATCH] * tree-ssa-loop-im.c (execute_sm): Do not check flag_tm. * gimple.h (block_in_transaction): Check for flag_tm. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188112 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/gimple.h | 2 +- gcc/tree-ssa-loop-im.c | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3f7bd30..950ac53 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -210,6 +210,11 @@ 2012-05-31 Aldy Hernandez + * tree-ssa-loop-im.c (execute_sm): Do not check flag_tm. + * gimple.h (block_in_transaction): Check for flag_tm. + +2012-05-31 Aldy Hernandez + PR tree-optimization/52558 * cfg.c (alloc_aux_for_edge): Fix comment. (alloc_aux_for_edge): Remove static. diff --git a/gcc/gimple.h b/gcc/gimple.h index 8fd64da..193590d 100644 --- a/gcc/gimple.h +++ b/gcc/gimple.h @@ -1593,7 +1593,7 @@ gimple_set_has_volatile_ops (gimple stmt, bool volatilep) static inline bool block_in_transaction (basic_block bb) { - return bb->flags & BB_IN_TRANSACTION; + return flag_tm && bb->flags & BB_IN_TRANSACTION; } /* Return true if STMT is in a transaction. */ diff --git a/gcc/tree-ssa-loop-im.c b/gcc/tree-ssa-loop-im.c index 9c093f8..290cb74 100644 --- a/gcc/tree-ssa-loop-im.c +++ b/gcc/tree-ssa-loop-im.c @@ -2153,7 +2153,7 @@ execute_sm (struct loop *loop, VEC (edge, heap) *exits, mem_ref_p ref) fmt_data.orig_loop = loop; for_each_index (&ref->mem, force_move_till, &fmt_data); - if ((flag_tm && block_in_transaction (loop_preheader_edge (loop)->src)) + if (block_in_transaction (loop_preheader_edge (loop)->src) || !PARAM_VALUE (PARAM_ALLOW_STORE_DATA_RACES)) multi_threaded_model_p = true; -- 2.7.4