Hi, On Wed, Jul 30, 2014 at 06:56:05PM +0200, Martin Jambor wrote: > Hi, > > 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. >
Honza has approved the patch in person and so I have committed it as revision 213666 after re-testing. Hopefully it does not break anything, if it does then read the paragraph above and remember it is not really my fault :-) Martin > Bootstrapped and tested on x86_64-linux. OK for trunk? > > Thanks, > > Martin > > > 2014-07-29 Martin Jambor <mjam...@suse.cz> > > 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;