This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Questions regarding __register_frame_info
- From: Andrew Haley <aph at redhat dot com>
- To: jacob navia <jacob at jacob dot remcomp dot fr>
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 11 Jul 2006 11:35:37 +0100
- Subject: Re: Questions regarding __register_frame_info
- References: <44B25CD9.9040008@jacob.remcomp.fr>
jacob navia writes:
> Hi
>
> I have now everything in place for dynamically register the
> debug frame information that my JIT (Just in time compiler)
> generates.
>
> I generate a CIE (Common information block), followed by
> a series of FDE (Frame Description Entries) describing
> each stack frame. The binary code is the same as gcc uses,
> the contents of my stuff are identical to the contents of
> the .eh_frame information.
>
> There are several of those functions defined in unwind-dw2-fde.c:
>
> __register_frame_info
> __register_frame_info_bases
> __register_frame_info_table_bases
>
> If I use the
> __register_frame_info
> stuff, nothing happens and the program aborts.
> Using __register_frame_jnfo_table_bases seems to
> work better since it crashes a little bit further with a
> hard crash.
What happens in gdb? Does the lookup access your unwinder data? What
is it doing when it crashes?
> From the code of register_frame_info (in file unwind-dw2-fde.c)
> that function just inserts the new data into a linked list, but it
> does not do anything more. That is why probably it will never
> work.
>
> Could someone here explain me or tell me what to do exactly to register
> the frame information?
>
> This will be useful for all people that write JITs, for instance the
> Java people,
> and many others.
>
> Thanks in advance for your help, and thanks for the help this group
> has provided me already
Sure, we're all interested, but we don't have your code. Have you
traced through the throwing of an exception?
Andrew.