This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
'main' enters in gcc-4.1
- From: "Perret Yannick" <yperret at in2p3 dot fr>
- To: gcc at gcc dot gnu dot org
- Date: Mon, 11 Jul 2005 16:15:55 +0200
- Subject: 'main' enters in gcc-4.1
- Reply-to: yperret at in2p3 dot fr
(second send, as I never saw my first send on the mailing list.
sorry if duplicated).
Hello,
I'm using '-finstrument-functions' for a while
to make function-level profiling.
Recently, I compiled gcc-4.1 (without problem)
and used it for the same purpose.
Here is the result :
>>>
Enter main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=0
Enter main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=1
Enter main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=0
Exit main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=6
Exit main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=1
Enter main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=176
Enter main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=0
Exit main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=1
Exit main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=1
Enter orig (essai.c:23) [0x8048f20] from 0x8049448 - PID=1774 - elaps=1
(...)
Exit main (essai.c:41) [0x80490b0] from 0x4003be36 - PID=1774 - elaps=198
<<<
This test program is a very small C program with 'main' calling two
functions in a loop, compiled with -O2. These messages are
generated by my __cyg_profile_{enter|exit} functions.
as you can see GCC generates 3 consecutive calls to 'main', then 2
exits, 2 enters, and 2 exits.
At last it is coherent, but this behavior does not appear in older
versions of GCC.
Can you explain me why I see that behavior? Is it "good" or is it a bug?
Of cours this is a little disturbing for people that make the assumption
that 'main' is called once :o)
Thanks in advance.
Regards,
--
Yannick Perret