Unwinding CFI gcc practice of assumed `same value' regs
Ulrich Drepper
drepper@redhat.com
Tue Dec 12 15:26:00 GMT 2006
Andrew Haley wrote:
> Null-terminating the call stack is too well-established practice to be
> changed now.
Which does not mean that the mistake should hold people back. This is
just one of the mistakes in the x86-64 ABI. It was copied from x86 and
it was wrong there already.
> In practice, %ebp either points to a call frame -- not necessarily the
> most recent one -- or is null. I don't think that having an optional
> frame pointer mees you can use %ebp for anything random at all,
Of course it means that.
> The right way to fix the ABI is to specify that %ebp mustn't be
> [mis]used in this way, not to add a bunch more unwinder data.
Nope. The right way is to specify things like backtraces with the
adequate mechanism. I fully support adding the Dwarf3 unwinder
requirements.
--
â§ Ulrich Drepper â§ Red Hat, Inc. â§ 444 Castro St â§ Mountain View, CA â
More information about the Libc-alpha
mailing list