This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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]

[PATCH, go]: S/390: Fix generation of PtraceRegs


Hi,

go bootstrap fails on s390x starting with r249472. With including the ptrace header the s390 special
code in mksysinfo.sh isn't used anymore:

if test "$regs" = ""; then
  # s390
  regs=`grep '^type __user_regs_struct struct' gen-sysinfo.go || true`
  if test "$regs" != ""; then
    # Substructures of __user_regs_struct on s390
    upcase_fields "__user_psw_struct" "PtracePsw" >> ${OUT} || true
    upcase_fields "__user_fpregs_struct" "PtraceFpregs" >> ${OUT} || true
    upcase_fields "__user_per_struct" "PtracePer" >> ${OUT} || true
  fi
fi

Instead we fall through to the code with the generic handling which appears to work fine. The only
difference is that the former code used to uppercase the initial letters of the struct member while
the generic handler doesn't. The only user however appear to be syscall_linux_s390(x).go.

The attached patch removes the mksysino.sh S/390 specific handling and adjusts the
syscall_linux_s390* file accordingly.

This fixes the bootstrap on s390x.

Attachment: gcc-gofix
Description: Text document


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