Check e->call_stmt before calling gimple_call_set_cannot_inline.

2011-01-10  H.J. Lu  <hongjiu.lu@intel.com>

	PR lto/46760
	* tree-inline.c (tree_can_inline_p): Check e->call_stmt before
	calling gimple_call_set_cannot_inline.

From-SVN: r168631
This commit is contained in:
H.J. Lu 2011-01-10 13:24:27 +00:00 committed by H.J. Lu
parent 18c9fa1720
commit 94cd932cae
2 changed files with 12 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
PR lto/46760
* tree-inline.c (tree_can_inline_p): Check e->call_stmt before
calling gimple_call_set_cannot_inline.
2011-01-10 Iain Sandoe <iains@gcc.gnu.org>
* config/darwin-sections.def: Remove unused section.

View File

@ -5380,7 +5380,8 @@ tree_can_inline_p (struct cgraph_edge *e)
if (inline_forbidden_into_p (caller, callee))
{
e->inline_failed = CIF_UNSPECIFIED;
gimple_call_set_cannot_inline (e->call_stmt, true);
if (e->call_stmt)
gimple_call_set_cannot_inline (e->call_stmt, true);
return false;
}
@ -5388,7 +5389,8 @@ tree_can_inline_p (struct cgraph_edge *e)
if (!targetm.target_option.can_inline_p (caller, callee))
{
e->inline_failed = CIF_TARGET_OPTION_MISMATCH;
gimple_call_set_cannot_inline (e->call_stmt, true);
if (e->call_stmt)
gimple_call_set_cannot_inline (e->call_stmt, true);
e->call_stmt_cannot_inline_p = true;
return false;
}
@ -5405,7 +5407,8 @@ tree_can_inline_p (struct cgraph_edge *e)
|| !gimple_check_call_args (e->call_stmt)))
{
e->inline_failed = CIF_MISMATCHED_ARGUMENTS;
gimple_call_set_cannot_inline (e->call_stmt, true);
if (e->call_stmt)
gimple_call_set_cannot_inline (e->call_stmt, true);
e->call_stmt_cannot_inline_p = true;
return false;
}