This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Patch 2 of 2 for ILP32 aarch64
- From: Szabolcs Nagy <szabolcs dot nagy at arm dot com>
- To: Steve Ellcey <sellcey at caviumnetworks dot com>, Joseph Myers <joseph at codesourcery dot com>
- Cc: nd at arm dot com, libc-alpha <libc-alpha at sourceware dot org>
- Date: Fri, 09 Jun 2017 09:47:45 +0100
- Subject: Re: [PATCH] Patch 2 of 2 for ILP32 aarch64
- Authentication-results: sourceware.org; auth=none
- Authentication-results: sourceware.org; dkim=none (message not signed) header.d=none;sourceware.org; dmarc=none action=none header.from=arm.com;
- Nodisclaimer: True
- References: <1487781046.2866.153.camel@caviumnetworks.com> <alpine.DEB.2.20.1702221702490.8704@digraph.polyomino.org.uk> <1487879964.2866.181.camel@caviumnetworks.com> <alpine.DEB.2.20.1702240033550.6066@digraph.polyomino.org.uk> <1487980010.2866.198.camel@caviumnetworks.com>
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:99
On 24/02/17 23:46, Steve Ellcey wrote:
>
> Here is a new version of patch 2. I added the one line descriptions
> that were missing, fixed the configure.ac problems that Andreas pointed
> out (and ran autoconf to make sure they were tested) and changed the
> default version in shlib-versions to 2.26.
>
i assume this is the latest glibc ilp32 patch.
without patch 1 (abilist updates) and after i drop the
sysdeps/unix/sysv/linux/aarch64/mmap.c change and remove
the malloc/tst-mallocstate test,
using CC='gcc -mabi=ilp32' (so c++ tests are unsupported), i get
FAIL: check-local-headers
FAIL: crypt/check-abi-libcrypt
UNSUPPORTED: debug/tst-chk4
UNSUPPORTED: debug/tst-chk5
UNSUPPORTED: debug/tst-chk6
UNSUPPORTED: debug/tst-lfschk4
UNSUPPORTED: debug/tst-lfschk5
UNSUPPORTED: debug/tst-lfschk6
UNSUPPORTED: dlfcn/bug-atexit3
FAIL: dlfcn/check-abi-libdl
FAIL: elf/check-abi-ld
FAIL: elf/check-abi-libc
XPASS: elf/tst-protected1a
XPASS: elf/tst-protected1b
FAIL: locale/check-abi-libBrokenLocale
FAIL: login/check-abi-libutil
FAIL: malloc/tst-dynarray-fail
FAIL: math/check-abi-libm
FAIL: math/test-double-finite-lrint
FAIL: math/test-double-finite-lround
FAIL: math/test-double-lrint
FAIL: math/test-double-lround
UNSUPPORTED: math/test-fesetexcept-traps
UNSUPPORTED: math/test-fexcept-traps
FAIL: math/test-float-finite-lrint
FAIL: math/test-float-finite-lround
FAIL: math/test-float-lrint
FAIL: math/test-float-lround
UNSUPPORTED: math/test-nearbyint-except-2
FAIL: nis/check-abi-libnsl
FAIL: nptl/check-abi-libpthread
UNSUPPORTED: nptl/test-cond-printers
UNSUPPORTED: nptl/test-condattr-printers
UNSUPPORTED: nptl/test-mutex-printers
UNSUPPORTED: nptl/test-mutexattr-printers
UNSUPPORTED: nptl/test-rwlock-printers
UNSUPPORTED: nptl/test-rwlockattr-printers
UNSUPPORTED: nptl/tst-cancel24
UNSUPPORTED: nptl/tst-cancel24-static
FAIL: nptl/tst-initializers1
FAIL: nptl/tst-initializers1-c11
FAIL: nptl/tst-initializers1-c89
FAIL: nptl/tst-initializers1-c99
FAIL: nptl/tst-initializers1-gnu11
FAIL: nptl/tst-initializers1-gnu89
FAIL: nptl/tst-initializers1-gnu99
UNSUPPORTED: nptl/tst-once5
FAIL: nptl/tst-rwlock15
FAIL: nptl/tst-stack4
UNSUPPORTED: nptl/tst-thread_local1
FAIL: nptl_db/check-abi-libthread_db
FAIL: nss/bug17079
FAIL: posix/tst-mmap-offset
FAIL: resolv/check-abi-libanl
FAIL: resolv/check-abi-libresolv
FAIL: resolv/tst-bug18665
FAIL: resolv/tst-resolv-search
FAIL: rt/check-abi-librt
FAIL: stdlib/tst-makecontext3
UNSUPPORTED: stdlib/tst-quick_exit
UNSUPPORTED: stdlib/tst-thread-quick_exit
Summary of test results:
37 FAIL
3607 PASS
22 UNSUPPORTED
31 XFAIL
2 XPASS
are these failures expected (other than the abi failures)?
> Steve Ellcey
> sellcey@cavium.com
>
>
> 2017-02-24 Andrew Pinski <andrew.pinski@caviumnetworks.com>
> Yury Norov <ynorov@caviumnetworks.com>
> Steve Ellcey <sellcey@caviumnetworks.com>
>
> * elf/cache.c (print_entry): Add FLAG_AARCH64_LIB32.
> * sysdeps/aarch64/configure.ac (HAVE_AARCH64_ILP32): New define.
> (default-abi): Allow for ilp32 ABI.
> * sysdeps/aarch64/configure: Regenerate.
> * sysdeps/aarch64/Implies: Deleted.
> * sysdeps/aarch64/ilp32/Implies: New file.
> * sysdeps/aarch64/ilp32/Implies-after: New file.
> * sysdeps/aarch64/lp64/Implies: New file.
> * sysdeps/aarch64/lp64/Implies-after: New file.
> * sysdeps/aarch64/preconfigure (machine): Check for ilp32/lp64.
> * sysdeps/aarch64/tls-macros.h (TLS_IE): Remove register specification
> for __result and ifdef for ILP32.
> * sysdeps/generic/ldconfig.h (FLAG_AARCH64_LIB32): New define.
> * sysdeps/unix/sysv/linux/aarch64/Implies: Remove generic and
> wordsize-64 entries.
> * sysdeps/unix/sysv/linux/aarch64/Makefile (abi-variants): Add
> new variants for ilp32 and ilp32_be.
> (abi-lp64-options, abi-lp64_be-options): define __LP64__ and
> undefine __ILP32__.
> (abi-lp64-condition, abi-lp64_be-condition): Check for __WORDSIZE
> equal to 64.
> (abi-ilp32-options, abi-ilp32-condition, abi-ilp32_be-options,
> abi-ilp32_be-condition): New.
> * sysdeps/unix/sysv/linux/aarch64/configure.ac (arch_minimum_kernel):
> Use different value for ILP32.
> (LIBC_SLIBDIR_RTLDDIR): Modify for ILP32.
> * sysdeps/unix/sysv/linux/aarch64/configure: Regenerate.
> * sysdeps/unix/sysv/linux/aarch64/ilp32/Implies: New file.
> * sysdeps/unix/sysv/linux/aarch64/ilp32/c++-types.data: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/ilp32/kernel_stat.h: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/ilp32/shlib-versions: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/bits/stat.h: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/bits/statfs.h: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/bits/typesizes.h: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/bits/utmp.h: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/bits/utmpx.h: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/kernel-features.h: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/Implies: Add unix/sysv/linux/aarch64.
> * sysdeps/unix/sysv/linux/aarch64/ioctl.S: Move to lp64 directory.
> * sysdeps/unix/sysv/linux/aarch64/mmap.c: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/shlib-versions: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/c++-types.data: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/ldd-rewrite.sed: Likewise.
> * sysdeps/unix/sysv/linux/aarch64/ipc_priv.h (__IPC_64): Check __ILP32
> when setting.
> * sysdeps/unix/sysv/linux/arm/readelflib.c (process_elf_file):
> Check for EM_AARCH64 when processing ELFCLASS32 object.
> * sysdeps/unix/sysv/linux/bits/fcntl-linux.h (F_GETLK, F_SETLCK,
> F_SETLKW): Check for __OFF_T_MATCHES_OFF64_T when defining.
>