Commit ab2d47a8 by Ian Lance Taylor

libgo: support gollvm build on arm64 linux

    
    This CL serves as part of an initial change for enabling gollvm
    building on arm64 linux, the rest of the change will be covered by
    another one to the gollvm repo.
    
    Incorporate type definition of 'uint128' to 'runtime' and 'syscall'
    packges, the change is not specific to arm64 linux but made available
    for all platforms.
    
    Verified by building and unit-testing gollvm on linux x86-64 and arm64.
    
    Verified by building and checking gccgo on linux x86-64 and arm64.
    
    Fixes golang/go#33711
    
    Change-Id: I4720c7d810cfd4ef720962fb4104c5641b2459c0

From-SVN: r275919
parent 1ea95660
09ca3c1ea8a52b5d3d6c4331c59d44e0b6bfab57
d81ff42c367cce2110ccf5ddbadb6cc9bdf94e28
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.
......@@ -209,3 +209,9 @@ grep '^type _kevent ' gen-sysinfo.go | \
sed -e s'/_kevent/keventt/' \
-e 's/ udata [^;}]*/ udata *byte/' \
>> ${OUT}
# Type 'uint128' is needed in a couple of type definitions on arm64,such
# as _user_fpsimd_struct, _elf_fpregset_t, etc.
if ! grep '^type uint128' ${OUT} > /dev/null 2>&1; then
echo "type uint128 [16]byte" >> ${OUT}
fi
......@@ -1393,4 +1393,10 @@ grep '^type _mactun_info_t ' gen-sysinfo.go | \
sed -e 's/_in6_addr_t/[16]byte/g' \
>> ${OUT}
# Type 'uint128' is needed in a couple of type definitions on arm64,such
# as _user_fpsimd_struct, _elf_fpregset_t, etc.
if ! grep '^type uint128' ${OUT} > /dev/null 2>&1; then
echo "type uint128 [16]byte" >> ${OUT}
fi
exit $?
......@@ -424,7 +424,11 @@ EREF(MNT_FORCE);
#if defined(HAVE_SYS_PTRACE_H)
// From <sys/ptrace.h>
#if defined (__aarch64__)
SREF(user_pt_regs);
#else
SREF(pt_regs);
#endif
EREF(PTRACE_PEEKTEXT);
#endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment