This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: arm core analysis on x86 host


Jon Ringle <jon.ringle@comdial.com> wrote:

On Tuesday 29 March 2005 23:51, Daniel Jacobowitz wrote:
> You should try to see how this works on PPC.  I don't know.

If I had one, I would :( I was just using the ppc code as an example to
follow.

Where can I find documentation on the core file format?
Also, do you know where in the kernel source does a core file get generated?

Sorry folks for not replying earlier; last days have been a bit busy.


First off, the code for reading ARM core files lives in
../bfd/elf32-arm.c (from a gdb standpoint).  Looks like everything is
there to properly support arm-*-linux-gnu core files, but it could be
wrong.

Secondly, the OS/ABI for core files don't have to match the executable
exactly, but of course they have to be somewhat compatible. I know
for sure that 32x64-bit cross debugging works on AMD64, and it is
assumed to be working on PowerPC too.  There might be some nasty
side-effects though if you load a core file without the matching
executable.

However, if the OS/ABI's differ, be aware that
regset_from_core_section() will be called for the OS/ABI of the core
file. That regset_from_core_section() will have to do the proper
translation on the register sets for the OS/ABI of the executable.
That OS/ABI can be determined from the regcache that is passed to
regset_from_core_section().

I'd suggest looking at the i386/amd64 *BSD code or NetBSD/sparc64 code
for good examples.

Beware, besides differences in OS/ABI, there might also be differences
in bfd machine type (bfd_mach_xxx).  You'll have to make sure that there is an OS/ABI that is compatible with the bfd machine type of the
core file.  For most architectures this will be the case if the OS/ABI
is registered for the default machine type (0), but I don't know if
that is the case for ARM.

Mark

Thanks,
Jon







Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]