libgo, syscall: fix ptrace implementation on MIPS
authorIan Lance Taylor <ian@gcc.gnu.org>
Wed, 21 Jun 2017 21:42:41 +0000 (21:42 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Wed, 21 Jun 2017 21:42:41 +0000 (21:42 +0000)
commit8d4b68a7c4091c99c8d591e93efae5748a7ced13
tree51c565ff797d0d2f7799adc97742845805f0a8a1
parent4ded86690e9fd3c71e1ff47beea31079ad8a7b4f
libgo, syscall: fix ptrace implementation on MIPS

    On MIPS, the correct structure for PtraceRegs is 'struct pt_regs' which
    is declared in linux/ptrace.h. Previously no PtraceRegs structure was
    created on MIPS because 'struct user_regs_struct' doesn't exist there.

    Fallback to using pt_regs when the PtraceRegs structure is generated in
    mksysinfo.sh, then adjust syscall_linux_mipsx.go to read the program
    counter from the correct field.

    In addition, implement PtraceGetRegs and PtraceSetRegs on all 3 ABI
    variants.

    syscall_linux_mips64x.go can now be removed since the ptrace code on
    all 3 ABIs is identical.

    Reviewed-on: https://go-review.googlesource.com/46150

From-SVN: r249472
gcc/go/gofrontend/MERGE
libgo/config.h.in
libgo/configure
libgo/configure.ac
libgo/go/syscall/syscall_linux_mipsx.go
libgo/mksysinfo.sh
libgo/sysinfo.c