This is the mail archive of the gdb@sourceware.org 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: Random gdbserver question (x86)


Pedro Alves wrote:
On Wednesday 31 March 2010 00:40:34, Michael Snyder wrote:
Question -- is gdbserver "multi-arch" to the extent that a 32-bit
gdbserver (built with target = i386) can debug a 64-bit app?

No, only the other way around. It's "multi-arch" to the extent that a linux 64-bit gdbserver (built with target = x86-64) can debug a 32-bit app. It used to only be, only 64x64 or 32x32 was possible; with multi-arch, 64x32 was made possible.

I ask because linux-x86-low.c is full of ifdefs on the architecture.
It looks like most of the 64-bit code won't be compiled if the
build machine is 32-bit.

Correct.

And is that more-or-less true of gdb as well? I.e., if host/target is x86_64-linux, then gdb can debug both 32 and 64 bit apps, but if host/target is i386-linux, then gdb can only debug 32 bit apps?

Actually, I phrase it as a question even though I am pretty sure it
is true.  My real question is "Why?".  It seems to me that if we just
included amd64-linux-nat.o and amd64-*-tdep.o in the build, then
32-bit gdb should be able to debug 64-bit native apps.


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