This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH, trans-mem, PR 61393] Copy tm_clone field of cgraph_node when cloning the node


IPA-CP can wreck havoc to transactional memory support as described in
the summary of the PR in bugzilla.  It seems the cause is that IPA-CP
clones of nodes created by trans-mem do not have their tm_clone flag
set.  For release branches we have decided to simply disable IPA-CP of
trans-mem clones but for trunk we'd like to avoid this.  I am not 100%
sure that just copying the flag is OK but it seems that it works for
the provided testcase and nobody from the trans-mem people has
commented in bugzilla for over a month.  So I suggest we commit this
patch and wait and see if something breaks.  Hopefully nothing will.

Bootstrapped and tested on x86_64-linux.  OK for trunk?



2014-07-29  Martin Jambor  <>

	PR ipa/61393
	* cgraphclones.c (cgraph_node::create_clone): Also copy tm_clone.

diff --git a/gcc/cgraphclones.c b/gcc/cgraphclones.c
index f097da8..c04b5c8 100644
--- a/gcc/cgraphclones.c
+++ b/gcc/cgraphclones.c
@@ -423,6 +423,7 @@ cgraph_node::create_clone (tree decl, gcov_type gcov_count, int freq,
   new_node->count = count;
   new_node->frequency = frequency;
   new_node->tp_first_run = tp_first_run;
+  new_node->tm_clone = tm_clone;
   new_node->clone.tree_map = NULL;
   new_node->clone.args_to_skip = args_to_skip;

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]