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.