From: Andi Kleen Date: Thu, 14 Jul 2016 02:14:02 +0000 (+0000) Subject: Don't run instrumented value profiler changes with afdo X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=038ec4b7b90f6278e686d61634cb046cd09d3b8f;p=gcc.git Don't run instrumented value profiler changes with afdo The pass to transform gimple based on value profiling runs with autofdo on, but currently every transformation fails. For indirect calls autofdo does it on its own, and it doesn't suppport other value profiling. So don't run this pass when autofdo is active. This also avoids bogus dump file entries. gcc/: 2016-07-13 Andi Kleen * value-prof.c (gimple_value_profile_transformations): Don't run when auto_profile is on. From-SVN: r238321 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b4b8f74c1ca..134db049278 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-07-13 Andi Kleen + + * value-prof.c (gimple_value_profile_transformations): Don't run + when auto_profile is on. + 2016-07-13 Andi Kleen * auto-profile.c (update_inlined_ind_target, diff --git a/gcc/value-prof.c b/gcc/value-prof.c index f9574b679bd..2976a86c794 100644 --- a/gcc/value-prof.c +++ b/gcc/value-prof.c @@ -645,6 +645,12 @@ gimple_value_profile_transformations (void) basic_block bb; gimple_stmt_iterator gsi; bool changed = false; + + /* Autofdo does its own transformations for indirect calls, + and otherwise does not support value profiling. */ + if (flag_auto_profile) + return false; + FOR_EACH_BB_FN (bb, cfun) { for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))