From: Richard Biener Date: Thu, 24 Aug 2017 12:22:30 +0000 (+0000) Subject: i386.c: Include symbol-summary.h, ipa-prop.h and ipa-fnsummary.h. X-Git-Tag: upstream/12.2.0~37516 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6eb191429843d14d2eb3912aa4f23f236ce773b5;p=platform%2Fupstream%2Fgcc.git i386.c: Include symbol-summary.h, ipa-prop.h and ipa-fnsummary.h. 2017-08-24 Richard Biener * config/i386/i386.c: Include symbol-summary.h, ipa-prop.h and ipa-fnsummary.h. (ix86_can_inline_p): When ix86_fpmath flags do not match check whether the callee uses FP math at all. From-SVN: r251330 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a475c84..25149f3e5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2017-08-24 Richard Biener + + * config/i386/i386.c: Include symbol-summary.h, ipa-prop.h + and ipa-fnsummary.h. + (ix86_can_inline_p): When ix86_fpmath flags do not match + check whether the callee uses FP math at all. + 2017-08-24 Aldy Hernandez PR middle-end/81931 diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 9f1f8e7..268946b 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -85,6 +85,9 @@ along with GCC; see the file COPYING3. If not see #include "print-rtl.h" #include "intl.h" #include "ifcvt.h" +#include "symbol-summary.h" +#include "ipa-prop.h" +#include "ipa-fnsummary.h" /* This file should be included last. */ #include "target-def.h" @@ -7544,7 +7547,14 @@ ix86_can_inline_p (tree caller, tree callee) else if (caller_opts->tune != callee_opts->tune) ret = false; - else if (caller_opts->x_ix86_fpmath != callee_opts->x_ix86_fpmath) + else if (caller_opts->x_ix86_fpmath != callee_opts->x_ix86_fpmath + /* If the calle doesn't use FP expressions differences in + ix86_fpmath can be ignored. We are called from FEs + for multi-versioning call optimization, so beware of + ipa_fn_summaries not available. */ + && (! ipa_fn_summaries + || ipa_fn_summaries->get + (cgraph_node::get (callee))->fp_expressions)) ret = false; else if (caller_opts->branch_cost != callee_opts->branch_cost)