On Thu, Feb 19, 2004 at 06:12:22PM -0500, Andrew Cagney wrote:
This is more questions than answers. I'm trying to figure out how GDB
should generate 32-bit core files on amd64 (i.e., get gmake check
'RUNTESTFLAGS=--target_board=unix/-m32 gcore.exp' to pass). The problem
is, everything I look at feels wrong.
Here's the first backtrace:
#0 amd64_collect_native_gregset (regcache=0x808410, gregs=0x7fbfffead0,
regnum=-1) at /home/cygnus/cagney/GDB/src/gdb/amd64-nat.c:124
#1 0x0000000000450e16 in fill_gregset (gregsetp=0x808410,
regnum=-1073747248)
at /home/cygnus/cagney/GDB/src/gdb/x86-64-linux-nat.c:126
#2 0x000000000045803d in linux_do_thread_registers (obfd=0x87fc90, ptid=
{pid = 10494, lwp = 10494, tid = 0}, note_data=0x8b0960 "\005",
note_size=0x7fbfffed8c) at
/home/cygnus/cagney/GDB/src/gdb/linux-proc.c:180
This function is asking fill_gregset to populate an amd64 gregset_t. I
think it should be asking for the 32-bit gregset_t to be filled in.
Does the same thing apply to mips64-linux/-mabi=32? Normally we make a
point of only dealing with the registers' "real" size.