Make inf_ptrace_trad Linux-only, move to separate file
authorPedro Alves <palves@redhat.com>
Wed, 2 May 2018 23:37:08 +0000 (00:37 +0100)
committerPedro Alves <palves@redhat.com>
Wed, 2 May 2018 23:47:32 +0000 (00:47 +0100)
commit6798487f5bc66ab9c34ad81fa28ba25d32a00bd9
treec00684a6416a30046fbac93bd26860e18fd9a1a0
parentc1955e179201e76330a10c400bfa92cab2afbee0
Make inf_ptrace_trad Linux-only, move to separate file

There are only two inf_ptrace_trad_target users, MIPS GNU/Linux and
Alpha GNU/Linux.  They both call it via linux_trad_target.

Move this code out of inf-ptrace.c to a GNU/Linux-specific new file.

Making this code be GNU/Linux-specific simplifies C++ification of
target_ops, because we can make the trad target inherit linux_nat
instead of inheriting inf_ptrace.  That'll be visible in a later patch.

Note this makes linux_target_install_ops an extern function, but that
is temporary -- the function will disappear once target_ops is made a
C++ class with virtual methods, later in the series.  Also, I did not
rename the functions in the new file for a similar reason.  They'll be
renamed again anyway in a couple of patches.

gdb/ChangeLog:
2018-05-02  Pedro Alves  <palves@redhat.com>

* alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
"linux-nat.h".
* configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
* inf-ptrace.c (inf_ptrace_register_u_offset)
(inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
(inf_ptrace_store_register, inf_ptrace_store_registers)
(inf_ptrace_trad_target): Move to ...
* linux-nat-trad.c: ... this new file.
* linux-nat-trad.h: New file.
* linux-nat.c (linux_target_install_ops): Make extern.
(linux_trad_target): Delete.
* linux-nat.h (linux_trad_target): Delete declaration.
(linux_target_install_ops): Declare.
* mips-linux-nat.c: Include "linux-nat-trad.h" instead of
"linux-nat.h".
gdb/ChangeLog
gdb/alpha-linux-nat.c
gdb/configure.nat
gdb/inf-ptrace.c
gdb/linux-nat-trad.c [new file with mode: 0644]
gdb/linux-nat-trad.h [new file with mode: 0644]
gdb/linux-nat.c
gdb/linux-nat.h
gdb/mips-linux-nat.c