This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH]: reapply code to profile.c to fix gcov test failure
- To: Janis Johnson <janis187 at us dot ibm dot com>
- Subject: Re: [PATCH]: reapply code to profile.c to fix gcov test failure
- From: Jan Hubicka <jh at suse dot cz>
- Date: Wed, 22 Aug 2001 18:17:08 +0200
- Cc: gcc-patches at gcc dot gnu dot org, jh at suse dot cz
- References: <20010821150617.A8044@sequent.com>
> The test gcc.misc-tests/gcov-3.c was added on July 11 and passed until
> August 4. The test is meant to make sure that gcov doesn't die when
> processing data from a program that uses non-local gotos, but the
> failure is unrelated to that and happens because code following a call
> in main() isn't counted.
>
> On August 4 Honza deleted a chunk of code in branch_prob() in profile.c
> that added an exit edge for a call or for some kinds of asm code. If
> that code is reapplied, as in this patch, then gcov-3.c passes again.
> The new test doesn't cover more than gcov-3.c already does, but if it
> fails then it should be more clear what has broken.
>
> Bootstrapped and tested on i686-pc-linux-gnu.
>
> Honza and rth have both made lots of changes to profile.c lately and
> might have better ideas of how to fix this.
This looks bogus - the flow_call_edges_add already should handle this
case and I've verified on simple testcase (exit call followed by another
exit call) that it does.
There seems to be problem with attaching the line numbers, so
the second exit call is still reported as executed, but one
line after is not. I will try to fix that tomorrow.
Honza