This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFC/RFA?] Should break FILE:LINENO skip prologue?
Eli Zaretskii <eliz@gnu.org> writes:
>> From: Andreas Schwab <schwab@suse.de>
>> Cc: eliz@gnu.org, brobecker@adacore.com (Joel Brobecker),
>> msnyder@specifix.com, mark.kettenis@xs4all.nl,
>> gdb-patches@sourceware.org
>> Date: Wed, 16 Jan 2008 00:23:45 +0100
>>
>> "Ulrich Weigand" <uweigand@de.ibm.com> writes:
>>
>> > The set of valid expressions varies with the language, but none of
>> > them support any string of the form FILENAME:FUNCTION as expression.
>> > However, for *some* languages (e.g. C, but not Ada), a function name
>> > happens to be a valid expression that evaluates to the address of
>> > that function. It is only due to that "accident" that
>> > break *FUNCTION
>> > does indeed set a breakpoint at the address of FUNCTION (assuming
>> > the current language is C).
>>
>> Note that the value of FUNCTION is even target dependent. On ppc64
>> ordinary function symbols point to function descriptors, whereas code
>> addresses have symbols that start with a '.'.
>
> Are you saying that "break *FUNCTION" will not work on a ppc64, even
> in a C program?
It works if you use the correct symbol. In the absence of debug
information the non-dot symbol will give the wrong result.
Andreas.
--
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."