diff mbox

[4.9,PR,61393] Disable IPA-CP of transactional memory clones

Message ID 20140604212811.GB4864@virgil.suse.cz
State New
Headers show

Commit Message

Martin Jambor June 4, 2014, 9:28 p.m. UTC
Hi,

this patch does the same thing (disables IPA-CP for nodes marked as
tm_clone) for the same reason as described in the previous mail but
for the 4.9 branch.

I've confirmed it fixes the PR failure and passes bootstrap and
testing on x86_64-linux.  OK for 4.9?

Thanks,

Martin


2014-06-04  Martin Jambor  <mjambor@suse.cz>

	PR ipa/61393
	* ipa-cp.c (determine_versionability): Pretend that tm_clones are
	not versionable.

Comments

Richard Biener June 5, 2014, 7:48 a.m. UTC | #1
On Wed, Jun 4, 2014 at 11:28 PM, Martin Jambor <mjambor@suse.cz> wrote:
> Hi,
>
> this patch does the same thing (disables IPA-CP for nodes marked as
> tm_clone) for the same reason as described in the previous mail but
> for the 4.9 branch.
>
> I've confirmed it fixes the PR failure and passes bootstrap and
> testing on x86_64-linux.  OK for 4.9?

Ok for both the 4.8 and 4.9 patches.

We indeed should find a proper solution for trunk.

Richard.

> Thanks,
>
> Martin
>
>
> 2014-06-04  Martin Jambor  <mjambor@suse.cz>
>
>         PR ipa/61393
>         * ipa-cp.c (determine_versionability): Pretend that tm_clones are
>         not versionable.
>
> diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
> index 7fb7ae6..93b60d6 100644
> --- a/gcc/ipa-cp.c
> +++ b/gcc/ipa-cp.c
> @@ -433,6 +433,8 @@ determine_versionability (struct cgraph_node *node)
>    else if (!opt_for_fn (node->decl, optimize)
>            || !opt_for_fn (node->decl, flag_ipa_cp))
>      reason = "non-optimized function";
> +  else if (node->tm_clone)
> +    reason = "transactional memory clone";
>    else if (lookup_attribute ("omp declare simd", DECL_ATTRIBUTES (node->decl)))
>      {
>        /* Ideally we should clone the SIMD clones themselves and create
diff mbox

Patch

diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
index 7fb7ae6..93b60d6 100644
--- a/gcc/ipa-cp.c
+++ b/gcc/ipa-cp.c
@@ -433,6 +433,8 @@  determine_versionability (struct cgraph_node *node)
   else if (!opt_for_fn (node->decl, optimize)
 	   || !opt_for_fn (node->decl, flag_ipa_cp))
     reason = "non-optimized function";
+  else if (node->tm_clone)
+    reason = "transactional memory clone";
   else if (lookup_attribute ("omp declare simd", DECL_ATTRIBUTES (node->decl)))
     {
       /* Ideally we should clone the SIMD clones themselves and create