Hi, I'm trying to figure out how to unwind registers other than the PC using elfutils. I can use dwfl_module_register_names to get the register names, and then I'm trying to use dwarf_frame_register to get the register values for a given frame. I looked at the code in __libdwfl_frame_unwind and there's another example in addrcfi.c. dwarf_frame_register seems quite a low level dwarf API, I'm not sure how to use the ops that are returned, also the code used by __libdwfl_frame_unwind to evaluate the ops is all static or internal so not callable. Any guidance? Do I need to basically interpret the dwarf atoms in the ops returned by dwarf_frame_register? Any plans to make code like frame_unwind.c:expr_eval() used by frame_unwind.c:handle_cfi externally accessible?
unwind non-PC registers using elfutils
Jacob Burkholder via Elfutils-devel Sun, 03 Oct 2021 09:38:27 -0700
- unwind non-PC registers using elfutils Jacob Burkholder via Elfutils-devel
- Re: unwind non-PC registers using... Mark Wielaard
- Re: unwind non-PC registers u... Jacob Burkholder via Elfutils-devel