On Mon, Jul 5, 2021 at 6:00 PM H.J. Lu <hjl.to...@gmail.com> wrote:
>
> Since for gnux32 hosts, -m32 generates i386 codes, always check __x86_64__
> for x86 hosts.
>
>         PR libffi/101336
>         * configure.host: Always check __x86_64__ for x86 hosts.
> ---
>  libffi/configure.host | 21 +++++++--------------
>  1 file changed, 7 insertions(+), 14 deletions(-)
>
> diff --git a/libffi/configure.host b/libffi/configure.host
> index 786b32c5bb0..7248acb7458 100644
> --- a/libffi/configure.host
> +++ b/libffi/configure.host
> @@ -95,20 +95,13 @@ case "${host}" in
>    i?86-*-* | x86_64-*-* | amd64-*)
>         TARGETDIR=x86
>         if test $ac_cv_sizeof_size_t = 4; then
> -         case "$host" in
> -           *-gnux32)
> -             TARGET=X86_64
> -             ;;
> -           *)
> -             echo 'int foo (void) { return __x86_64__; }' > conftest.c
> -             if $CC $CFLAGS -Werror -S conftest.c -o conftest.s > /dev/null 
> 2>&1; then
> -               TARGET=X86_64;
> -             else
> -               TARGET=X86;
> -             fi
> -             rm -f conftest.*
> -             ;;
> -          esac
> +         echo 'int foo (void) { return __x86_64__; }' > conftest.c
> +         if $CC $CFLAGS -Werror -S conftest.c -o conftest.s > /dev/null 
> 2>&1; then
> +           TARGET=X86_64;
> +         else
> +           TARGET=X86;
> +          fi
> +          rm -f conftest.*
>         else
>           TARGET=X86_64;
>         fi
> --
> 2.31.1
>

This has been fixed in upstream with

commit cb8474368cdef3207638d047bd6c707ad8fcb339
Author: hjl-tools <hjl.to...@gmail.com>
Date:   Wed Dec 2 12:52:12 2020 -0800

    libffi/x86: Always check __x86_64__ for x32 hosts (#601) (#602)

    Since for x86_64-*x32 and x86_64-x32-* hosts, -m32 generates ia32 codes.
    We should always check __x86_64__ for x32 hosts.

I will check it in if there are no objections.

-- 
H.J.

Reply via email to