This is the mail archive of the
mailing list for the GDB project.
RE: [RFC] Improve amd64 prologue analysis
- From: "Pierre Muller" <pierre dot muller at ics-cnrs dot unistra dot fr>
- To: "'Joel Brobecker'" <brobecker at adacore dot com>
- Cc: <gdb-patches at sourceware dot org>
- Date: Fri, 19 Nov 2010 09:14:56 +0100
- Subject: RE: [RFC] Improve amd64 prologue analysis
- References: <001701cb84ea$6883c170$398b4450$@email@example.com> <20101118172209.GE2634@adacore.com>
> -----Message d'origine-----
> De?: firstname.lastname@example.org [mailto:gdb-patches-
> email@example.com] De la part de Joel Brobecker
> Envoyé?: jeudi 18 novembre 2010 18:22
> À?: Pierre Muller
> Cc?: firstname.lastname@example.org
> Objet?: Re: [RFC] Improve amd64 prologue analysis
> > Free Pascal for x86_64 (amd64) CPU generates losts of functions
> > that do not use RBP as a frame pointer.
> > I tried to improve amd64-tdep.c to better cope
> > with this case.
> I thought that on amd64, we weren't going to have prologue parsers
> and rely on frame unwinding info instead? At AdaCore, we have the
> same sort of things because of Windows where the system code (mostly
> system DLLs) does not have the unwinding info in DWARF format. But
> for code generated by us, we have all the debugging information needed
> to unwind without parsing the prologue, even on Windows64.
Does this means that we should only use that code
if no dwarf debug info is available?
The problem currently on Windows-64bit generated code
is that dwarf debug information is more
deeply broken than stabs, so that I am still mainly using stabs
(especially to debug dwarf problems...).
In any case it, this code would still be useful for
frames that have no debug information at all, as it allows
for frame that do not uses RBP to figure out the correct offset for
RSP, and thus the correct caller frame position.