Hi all, this patch synces gdb with recent ABI changes in x86-64 kernel, which added segment registers to user_regs_struct in corefile and ptrace() call. Because it was hard to find all places which could depend on this change I also did a cleanup. I joined most of registers information to one structure at the beginning of x86-64-tdep.c to make it more readable and maintainable and changed some "anonymous constants" (numbers) to derivatives of #defines. Can I commit? Index: ChangeLog * x86-64-tdep.h (X86_64_NUM_REGS) (X86_64_NUM_GREGS): Delete #defines (x86_64_num_regs) (x86_64_num_gregs): Added extern variables. * x86-64-linux-nat.c (x86_64_regmap): Swapped RBX <> RDX, added DS, ES, FD, GS (x86_64_linux_dr_get_status), (supply_gregset), (fill_gregset): Changed X86_64_NUM_GREGS to x86_64_num_gregs * x86-64-tdep.c (x86_64_register_raw_size_table): Delete (x86_64_register_info_table): Add (X86_64_NUM_REGS, X86_64_NUM_GREGS): Add (x86_64_register_raw_size), (x86_64_register_virtual_type), (x86_64_register_name), (_initialize_x86_64_tdep): Changed to reflect new general x86_64_register_info_table. (i386_gdbarch_init): gdbarch_register_bytes is now set dynamicaly during initialization. Michal Ludvig -- * SuSE CR, s.r.o * mludvig@suse.cz * +420 2 9654 5373 * http://www.suse.cz