aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimplify.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2016-11-16 12:55:02 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2016-11-16 12:55:02 +0000
commitd964ba07c74523684f25cc9f4860ea2f8dba2513 (patch)
tree757aba9581a34269a021ca900336d5b661a0da1d /gcc/gimplify.c
parent080140bc85bd8b5be9634beb8cbc2f0324e1d649 (diff)
downloadgcc-d964ba07c74523684f25cc9f4860ea2f8dba2513.zip
gcc-d964ba07c74523684f25cc9f4860ea2f8dba2513.tar.gz
gcc-d964ba07c74523684f25cc9f4860ea2f8dba2513.tar.bz2
re PR middle-end/78333 (always-inline gnu-inline functions break -finstrument-functions)
2016-11-16 Richard Biener <rguenther@suse.de> PR middle-end/78333 * gimplify.c (gimplify_function_tree): Do not instrument GNU extern inline functions. * gcc.dg/pr78333.c: New testcase. From-SVN: r242487
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r--gcc/gimplify.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index c23888b..8611060 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -12547,6 +12547,10 @@ gimplify_function_tree (tree fndecl)
/* ??? Add some way to ignore exceptions for this TFE. */
if (flag_instrument_function_entry_exit
&& !DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT (fndecl)
+ /* Do not instrument extern inline functions. */
+ && !(DECL_DECLARED_INLINE_P (fndecl)
+ && DECL_EXTERNAL (fndecl)
+ && DECL_DISREGARD_INLINE_LIMITS (fndecl))
&& !flag_instrument_functions_exclude_p (fndecl))
{
tree x;