From 2d5edbede6495f09b26123d8b71f217ea480c496 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Thu, 6 Oct 2016 09:34:23 +0200 Subject: [PATCH] Add -fprofile-update option juggling * gcc.c: Set -fprofile-update=atomic when profiling is enabled and -pthread is set. Warn when one combines -pthread and -fprofile-update=single for an app using profiling code. From-SVN: r240828 --- gcc/ChangeLog | 7 +++++++ gcc/gcc.c | 9 ++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 965f54d..aa41f37 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,12 @@ 2016-10-06 Martin Liska + * gcc.c: Set -fprofile-update=atomic when profiling is + enabled and -pthread is set. Warn when one combines + -pthread and -fprofile-update=single for an app using + profiling code. + +2016-10-06 Martin Liska + PR bootstrap/77788 * expmed.h (mul_highpart_cost_ptr): Add an gcc_assert. * gimple-ssa-strength-reduction.c (slsr_process_cast): diff --git a/gcc/gcc.c b/gcc/gcc.c index fd2b182..5213cb0 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -1141,7 +1141,14 @@ static const char *cc1_options = %{-help=*:--help=%*}\ %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\ %{fsyntax-only:-o %j} %{-param*}\ - %{coverage:-fprofile-arcs -ftest-coverage}"; + %{coverage:-fprofile-arcs -ftest-coverage}\ + %{fprofile-arcs|fprofile-generate*|coverage:\ + %{!fprofile-update=single:\ + %{pthread:-fprofile-update=atomic}}}\ + %{fprofile-update=single:\ + %{fprofile-arcs|fprofile-generate*|coverage:\ + %{pthread:%n-fprofile-update=atomic should be used\ + for a multithreaded application}}}"; static const char *asm_options = "%{-target-help:%:print-asm-header()} " -- 2.7.4