ipa-inline-analysis.c (compute_inline_parameters): Disable inlinig into instrumentation thunks.

* ipa-inline-analysis.c (compute_inline_parameters): Disable inlinig
	into instrumentation thunks.
	* cif-code.def (CIF_CHKP): New.

From-SVN: r236299
This commit is contained in:
Jan Hubicka 2016-05-16 21:33:02 +02:00 committed by Jan Hubicka
parent 1743ce8001
commit 19322a8706
3 changed files with 17 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2016-05-16 Jan Hubicka <hubicka@ucw.cz>
* ipa-inline-analysis.c (compute_inline_parameters): Disable inlinig
into instrumentation thunks.
* cif-code.def (CIF_CHKP): New.
2016-05-16 Uros Bizjak <ubizjak@gmail.com>
* config/i386/xopintrin.h: Correct "unsinged" typo in the comments.

View File

@ -135,3 +135,7 @@ DEFCIFCODE(CILK_SPAWN, CIF_FINAL_ERROR,
/* We proved that the call is unreachable. */
DEFCIFCODE(UNREACHABLE, CIF_FINAL_ERROR,
N_("unreachable"))
/* We can't inline because of instrumentation thunk. */
DEFCIFCODE(CHKP, CIF_FINAL_ERROR,
N_("caller is instrumetnation thunk"))

View File

@ -2943,7 +2943,13 @@ compute_inline_parameters (struct cgraph_node *node, bool early)
info->self_size = info->size;
info->self_time = info->time;
/* We can not inline instrumetnation clones. */
info->inlinable = !node->thunk.add_pointer_bounds_args;
if (node->thunk.add_pointer_bounds_args)
{
info->inlinable = false;
node->callees->inline_failed = CIF_CHKP;
}
else
info->inlinable = true;
}
else
{