Re: [HS]backtrace amd64
On Sun, 15 May 2011 22:58:30 +0200
François Boisson <user.anti-spam@maison.homelinux.net> wrote:
> Bonjour
>
> La fonction ci dessous m'a permis de remonter les adresses des fonctions
> appelantes dans un programme C (en gros, la pile contient à chaque fois le
> registre ebp et l'adresse de retour, et le registre ebp contient l'adresse du
> «ebp» de l'appel précédent.
Il existe une fonction backtrace (avec #include <execinfo.h>) dans la
Glibc qui fait le boulot. Attention, c'est une extension GNU qui
n'existe pas partout!!! (par exemple, probablement pas sous un FreeBSD).
Mais j'aimerais comprendre pourquoi François a besoin de ça (je connais
plusieurs cas où en aurait envie). Si le code C que chasse François est
généré, il peut être plus simple de modifier le générateur... (je fais
des choses comme ça dans GCC MELT voir gcc-melt.org ...)
Cordialement
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***
Reply to: