This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Help with IA64 profiling bug - g++.dg/tree-prof/indir-call-prof.C
- From: Steve Ellcey <sje at cup dot hp dot com>
- To: Andreas Schwab <schwab at suse dot de>, Richard Guenther <richard dot guenther at gmail dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Wed, 08 Oct 2008 11:00:56 -0700
- Subject: Re: Help with IA64 profiling bug - g++.dg/tree-prof/indir-call-prof.C
- References: <200810062318.m96NIWM07066@lucas.cup.hp.com> <jeprmcbdsw.fsf@sykes.suse.de>
- Reply-to: sje at cup dot hp dot com
On Tue, 2008-10-07 at 17:55 +0200, Andreas Schwab wrote:
>
> I think to make that work tree_gen_ic_profiler and
> tree_gen_ic_func_profiler would have to dereference the function
> descriptor to extract the code address, which would then have the
> necessary uniqueness which the vtable function descriptor lacks.
>
> Andreas.
There seems to be more then just a missing level of dereferencing going
on. For example, I think that the program, when compiled with
-fprofile-generate, should be putting an address into
__gcov_indirect_call_callee before calling __gcov_indirect_call_profiler
(if I am reading the x86 code correctly) but on IA64 I don't see
anything that writes to __gcov_indirect_call_callee.
There is already a defect for this bug, PR 32277, I may just add what I
have found to the PR and XFAIL the test like Richard suggested. It has
never worked on IA64.
Steve Ellcey
sje@cup.hp.com