This is the mail archive of the
mailing list for the elfutils project.
Re: elfutils/libdw ARM compilation (native and cross compile)
- From: Mark Wielaard <mjw at redhat dot com>
- To: elfutils-devel at lists dot fedorahosted dot org
- Date: Wed, 26 Feb 2014 10:13:02 +0100
- Subject: Re: elfutils/libdw ARM compilation (native and cross compile)
On Wed, 2014-02-26 at 09:18 +0100, Jean Pihet wrote:
> While at it, I have a concern about the compat mode: profiling an
> ARMv7 binary on an ARMv8 system.
> Is this supported by libdw?
My ARM terminology is not that great, but assuming ARMv7 is 32-bit
(AARCH32?)and ARMv8 is 64-bit (AARCH64), then yes, this should work. The
libdw interface is "generic". It uses abstract types like Dwarf_Addr and
Dwarf_Word that are big enough to hold values for either 32 or 64 bit
setups, and the registers are mapped to an array of Dwarf_Word values.
The backends handle the actual fetching and manipulation of the register
values. The backend used is selected through the ELF identifier. You can
explicitly not link against any backend to make it possible for elfutils
to evolve the interfaces/backends without breaking user programs.
All this works for i686 and x86_64 in practice, so in theory (not tested
yet) it should also work for ARMv7 and ARMv8. If you get it working we
would love to hear it :)