Commit a924bffb by Martin Liska Committed by Martin Liska

Make warn_inline Optimization option.

2020-01-07  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/92860
	* common.opt: Make in Optimization option
	as it is affected by -O0, which is an Optimization
	option.
	* tree-inline.c (tree_inlinable_function_p):
	Use opt_for_fn for warn_inline.
	(expand_call_inline): Likewise.
2020-01-07  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/92860
	* gcc.dg/pr92860-2.c: New test.

From-SVN: r279947
parent a86689f5
2020-01-07 Martin Liska <mliska@suse.cz> 2020-01-07 Martin Liska <mliska@suse.cz>
PR tree-optimization/92860 PR tree-optimization/92860
* common.opt: Make in Optimization option
as it is affected by -O0, which is an Optimization
option.
* tree-inline.c (tree_inlinable_function_p):
Use opt_for_fn for warn_inline.
(expand_call_inline): Likewise.
2020-01-07 Martin Liska <mliska@suse.cz>
PR tree-optimization/92860
* common.opt: Make flag_ree as optimization * common.opt: Make flag_ree as optimization
attribute. attribute.
......
...@@ -617,7 +617,7 @@ Common Var(warn_implicit_fallthrough) RejectNegative Joined UInteger Warning Int ...@@ -617,7 +617,7 @@ Common Var(warn_implicit_fallthrough) RejectNegative Joined UInteger Warning Int
Warn when a switch case falls through. Warn when a switch case falls through.
Winline Winline
Common Var(warn_inline) Warning Common Var(warn_inline) Warning Optimization
Warn when an inlined function cannot be inlined. Warn when an inlined function cannot be inlined.
Winvalid-memory-model Winvalid-memory-model
......
2020-01-07 Martin Liska <mliska@suse.cz> 2020-01-07 Martin Liska <mliska@suse.cz>
PR tree-optimization/92860 PR tree-optimization/92860
* gcc.dg/pr92860-2.c: New test.
2020-01-07 Martin Liska <mliska@suse.cz>
PR tree-optimization/92860
* gcc.dg/pr92860.c: New test. * gcc.dg/pr92860.c: New test.
2020-01-07 Jakub Jelinek <jakub@redhat.com> 2020-01-07 Jakub Jelinek <jakub@redhat.com>
......
/* PR tree-optimization/92860 */
/* { dg-do compile } */
/* { dg-options "-Winline -O2 -fgnu89-inline" } */
#pragma GCC push_options
#pragma GCC optimize("-O0")
#pragma GCC pop_options
inline int q(void); /* { dg-warning "body not available" } */
inline int t(void)
{
return q(); /* { dg-message "called from here" } */
}
...@@ -4009,7 +4009,7 @@ tree_inlinable_function_p (tree fn) ...@@ -4009,7 +4009,7 @@ tree_inlinable_function_p (tree fn)
return false; return false;
/* We only warn for functions declared `inline' by the user. */ /* We only warn for functions declared `inline' by the user. */
do_warning = (warn_inline do_warning = (opt_for_fn (fn, warn_inline)
&& DECL_DECLARED_INLINE_P (fn) && DECL_DECLARED_INLINE_P (fn)
&& !DECL_NO_INLINE_WARNING_P (fn) && !DECL_NO_INLINE_WARNING_P (fn)
&& !DECL_IN_SYSTEM_HEADER (fn)); && !DECL_IN_SYSTEM_HEADER (fn));
...@@ -4714,7 +4714,7 @@ expand_call_inline (basic_block bb, gimple *stmt, copy_body_data *id, ...@@ -4714,7 +4714,7 @@ expand_call_inline (basic_block bb, gimple *stmt, copy_body_data *id,
inform (DECL_SOURCE_LOCATION (cfun->decl), inform (DECL_SOURCE_LOCATION (cfun->decl),
"called from this function"); "called from this function");
} }
else if (warn_inline else if (opt_for_fn (fn, warn_inline)
&& DECL_DECLARED_INLINE_P (fn) && DECL_DECLARED_INLINE_P (fn)
&& !DECL_NO_INLINE_WARNING_P (fn) && !DECL_NO_INLINE_WARNING_P (fn)
&& !DECL_IN_SYSTEM_HEADER (fn) && !DECL_IN_SYSTEM_HEADER (fn)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment