https://sourceware.org/bugzilla/show_bug.cgi?id=28579
--- Comment #2 from Mark Wielaard <mark at klomp dot org> ---
Thanks. This looks nice and simple. Few small comments:
- The dwfl_frame_reg should be in a new ELFUTILS_0.188 { global:
dwfl_frame_reg; } ELFUTILS_0.186; section (that is, this symbol is new in
ELFUTILS_0.188 which inherits from ELFUTILS_0.186).
- Technically __libdwfl_frame_reg_get failing can be either invalid register or
unknown value (if state->regs_set is false). It might make sense to set a
different error message if it isn't too much work.
- When using public functions internally we usually use INTUSE
(dwfl_frame_reg). Which is an tiny optimization to avoid a plt call. You'll
need an INTDECL in libdwflP.h.
- In the unwinder we are only really interested in addresses, which is why we
use Dwarf_Addr, but here I think we should use Dwarf_Word as the *val that
dwfl_frame_reg returns. Both are really uint64_t, so it doesn't really matter,
but it makes it more clear that the caller is responsible for interpreting the
register value.
--
You are receiving this mail because:
You are on the CC list for the bug.