diff mbox series

Document --coverage and fork-like functions (PR gcov-profile/82457).

Message ID 61b2900b-c783-b4ec-37d0-eed3d7712bf7@suse.cz
State New
Headers show
Series Document --coverage and fork-like functions (PR gcov-profile/82457). | expand

Commit Message

Martin Liška Oct. 19, 2017, 10:20 a.m. UTC
Hi.

As discussed in the PR, we should be more precise in our documentation.
The patch does that.

Ready for trunk?
Martin

gcc/ChangeLog:

2017-10-19  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/82457
	* doc/invoke.texi: Document that one needs a non-strict ISO mode
	for fork-like functions to be properly instrumented.
---
 gcc/doc/invoke.texi | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Eric Gallager Oct. 19, 2017, 6:26 p.m. UTC | #1
On 10/19/17, Martin Liška <mliska@suse.cz> wrote:
> Hi.
>
> As discussed in the PR, we should be more precise in our documentation.
> The patch does that.
>
> Ready for trunk?
> Martin
>
> gcc/ChangeLog:
>
> 2017-10-19  Martin Liska  <mliska@suse.cz>
>
> 	PR gcov-profile/82457
> 	* doc/invoke.texi: Document that one needs a non-strict ISO mode
> 	for fork-like functions to be properly instrumented.
> ---
>  gcc/doc/invoke.texi | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
>
>

The wording is kinda unclear because the modes in the parentheses are
all strict ISO modes, but the part before the parentheses says
NON-strict... I think you either need an additional "not" inside the
parentheses, or to change all the instances of -std=c* to -std=gnu*.
Sandra Loosemore Oct. 20, 2017, 4:03 a.m. UTC | #2
On 10/19/2017 12:26 PM, Eric Gallager wrote:
> On 10/19/17, Martin Liška <mliska@suse.cz> wrote:
>> Hi.
>>
>> As discussed in the PR, we should be more precise in our documentation.
>> The patch does that.
>>
>> Ready for trunk?
>> Martin
>>
>> gcc/ChangeLog:
>>
>> 2017-10-19  Martin Liska  <mliska@suse.cz>
>>
>> 	PR gcov-profile/82457
>> 	* doc/invoke.texi: Document that one needs a non-strict ISO mode
>> 	for fork-like functions to be properly instrumented.
>> ---
>>   gcc/doc/invoke.texi | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>>
>>
>
> The wording is kinda unclear because the modes in the parentheses are
> all strict ISO modes, but the part before the parentheses says
> NON-strict... I think you either need an additional "not" inside the
> parentheses, or to change all the instances of -std=c* to -std=gnu*.

The wording in the patch doesn't make sense to me, either.  If I 
understand the issue correctly, the intent is probably to say something like

Unless a strict ISO C dialect option is in effect,
@code{fork} calls are detected and correctly handled without double 
counting.

??

-Sandra
Martin Liška Oct. 26, 2017, 7:21 a.m. UTC | #3
On 10/20/2017 06:03 AM, Sandra Loosemore wrote:
> On 10/19/2017 12:26 PM, Eric Gallager wrote:
>> On 10/19/17, Martin Liška <mliska@suse.cz> wrote:
>>> Hi.
>>>
>>> As discussed in the PR, we should be more precise in our documentation.
>>> The patch does that.
>>>
>>> Ready for trunk?
>>> Martin
>>>
>>> gcc/ChangeLog:
>>>
>>> 2017-10-19  Martin Liska  <mliska@suse.cz>
>>>
>>>     PR gcov-profile/82457
>>>     * doc/invoke.texi: Document that one needs a non-strict ISO mode
>>>     for fork-like functions to be properly instrumented.
>>> ---
>>>   gcc/doc/invoke.texi | 4 +++-
>>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>>
>>>
>>>
>>
>> The wording is kinda unclear because the modes in the parentheses are
>> all strict ISO modes, but the part before the parentheses says
>> NON-strict... I think you either need an additional "not" inside the
>> parentheses, or to change all the instances of -std=c* to -std=gnu*.
> 
> The wording in the patch doesn't make sense to me, either.  If I understand the issue correctly, the intent is probably to say something like
> 
> Unless a strict ISO C dialect option is in effect,
> @code{fork} calls are detected and correctly handled without double counting.
> 
> ??

Hi Sandra.

Thank you for the feedback, I'm sending version you suggested. Hope it's fine to install the patch?

Thanks,
Martin

> 
> -Sandra
> 
>
From 4395e7172b8af4628f3c294e16294d5136a5e51a Mon Sep 17 00:00:00 2001
From: marxin <mliska@suse.cz>
Date: Thu, 19 Oct 2017 12:18:45 +0200
Subject: [PATCH] Document --coverage and fork-like functions (PR
 gcov-profile/82457).

gcc/ChangeLog:

2017-10-19  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/82457
	* doc/invoke.texi: Document that one needs a non-strict ISO mode
	for fork-like functions to be properly instrumented.
---
 gcc/doc/invoke.texi | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 71b2445f70f..f5dbf866adc 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -10864,7 +10864,8 @@ information.  This may be repeated any number of times.  You can run
 concurrent instances of your program, and provided that the file system
 supports locking, the data files will be correctly updated.  Also
 @code{fork} calls are detected and correctly handled (double counting
-will not happen).
+will not happen). Unless a strict ISO C dialect option is in effect,
+@code{fork} calls are detected and correctly handled without double counting.
 
 @item
 For profile-directed optimizations, compile the source files again with
Sandra Loosemore Oct. 26, 2017, 4:30 p.m. UTC | #4
On 10/26/2017 01:21 AM, Martin Liška wrote:
> On 10/20/2017 06:03 AM, Sandra Loosemore wrote:
>> On 10/19/2017 12:26 PM, Eric Gallager wrote:
>>> On 10/19/17, Martin Liška <mliska@suse.cz> wrote:
>>>> Hi.
>>>>
>>>> As discussed in the PR, we should be more precise in our documentation.
>>>> The patch does that.
>>>>
>>>> Ready for trunk?
>>>> Martin
>>>>
>>>> gcc/ChangeLog:
>>>>
>>>> 2017-10-19  Martin Liska  <mliska@suse.cz>
>>>>
>>>>      PR gcov-profile/82457
>>>>      * doc/invoke.texi: Document that one needs a non-strict ISO mode
>>>>      for fork-like functions to be properly instrumented.
>>>> ---
>>>>    gcc/doc/invoke.texi | 4 +++-
>>>>    1 file changed, 3 insertions(+), 1 deletion(-)
>>>>
>>>>
>>>>
>>>
>>> The wording is kinda unclear because the modes in the parentheses are
>>> all strict ISO modes, but the part before the parentheses says
>>> NON-strict... I think you either need an additional "not" inside the
>>> parentheses, or to change all the instances of -std=c* to -std=gnu*.
>>
>> The wording in the patch doesn't make sense to me, either.  If I understand the issue correctly, the intent is probably to say something like
>>
>> Unless a strict ISO C dialect option is in effect,
>> @code{fork} calls are detected and correctly handled without double counting.
>>
>> ??
>
> Hi Sandra.
>
> Thank you for the feedback, I'm sending version you suggested. Hope it's fine to install the patch?

Ummm, no.  Sorry to have been unclear; the wording I suggested above was 
intended to replace the existing sentence about fork behavior, not to be 
appended to it.

-Sandra
Martin Liška Oct. 27, 2017, 8:34 a.m. UTC | #5
On 10/26/2017 06:30 PM, Sandra Loosemore wrote:
> On 10/26/2017 01:21 AM, Martin Liška wrote:
>> On 10/20/2017 06:03 AM, Sandra Loosemore wrote:
>>> On 10/19/2017 12:26 PM, Eric Gallager wrote:
>>>> On 10/19/17, Martin Liška <mliska@suse.cz> wrote:
>>>>> Hi.
>>>>>
>>>>> As discussed in the PR, we should be more precise in our documentation.
>>>>> The patch does that.
>>>>>
>>>>> Ready for trunk?
>>>>> Martin
>>>>>
>>>>> gcc/ChangeLog:
>>>>>
>>>>> 2017-10-19  Martin Liska  <mliska@suse.cz>
>>>>>
>>>>>      PR gcov-profile/82457
>>>>>      * doc/invoke.texi: Document that one needs a non-strict ISO mode
>>>>>      for fork-like functions to be properly instrumented.
>>>>> ---
>>>>>    gcc/doc/invoke.texi | 4 +++-
>>>>>    1 file changed, 3 insertions(+), 1 deletion(-)
>>>>>
>>>>>
>>>>>
>>>>
>>>> The wording is kinda unclear because the modes in the parentheses are
>>>> all strict ISO modes, but the part before the parentheses says
>>>> NON-strict... I think you either need an additional "not" inside the
>>>> parentheses, or to change all the instances of -std=c* to -std=gnu*.
>>>
>>> The wording in the patch doesn't make sense to me, either.  If I understand the issue correctly, the intent is probably to say something like
>>>
>>> Unless a strict ISO C dialect option is in effect,
>>> @code{fork} calls are detected and correctly handled without double counting.
>>>
>>> ??
>>
>> Hi Sandra.
>>
>> Thank you for the feedback, I'm sending version you suggested. Hope it's fine to install the patch?
> 
> Ummm, no.  Sorry to have been unclear; the wording I suggested above was intended to replace the existing sentence about fork behavior, not to be appended to it.
> 
> -Sandra
> 

Sorry, stupid mistake. Should be fixed, I'm going to install the patch.

Martin
From 30a3987aae8d306764bf38037f3f197cfe0d2aef Mon Sep 17 00:00:00 2001
From: marxin <mliska@suse.cz>
Date: Thu, 19 Oct 2017 12:18:45 +0200
Subject: [PATCH] Document --coverage and fork-like functions (PR
 gcov-profile/82457).

gcc/ChangeLog:

2017-10-19  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/82457
	* doc/invoke.texi: Document that one needs a non-strict ISO mode
	for fork-like functions to be properly instrumented.
---
 gcc/doc/invoke.texi | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 71b2445f70f..6ca59baac67 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -10862,9 +10862,9 @@ Link your object files with @option{-lgcov} or @option{-fprofile-arcs}
 Run the program on a representative workload to generate the arc profile
 information.  This may be repeated any number of times.  You can run
 concurrent instances of your program, and provided that the file system
-supports locking, the data files will be correctly updated.  Also
-@code{fork} calls are detected and correctly handled (double counting
-will not happen).
+supports locking, the data files will be correctly updated.  Unless
+a strict ISO C dialect option is in effect, @code{fork} calls are
+detected and correctly handled without double counting.
 
 @item
 For profile-directed optimizations, compile the source files again with
diff mbox series

Patch

diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 5e88279528f..b37bca48960 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -10861,7 +10861,9 @@  information.  This may be repeated any number of times.  You can run
 concurrent instances of your program, and provided that the file system
 supports locking, the data files will be correctly updated.  Also
 @code{fork} calls are detected and correctly handled (double counting
-will not happen).
+will not happen).  For C language, a non-strict ISO C mode
+(@option{-ansi}, @option{-std=c90}, @option{-std=c99} or @option{-std=c11})
+is needed.
 
 @item
 For profile-directed optimizations, compile the source files again with