This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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."


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]