zlibdir
HOST_LIBS
enable_default_ssp
+thin_archive_support
libgcc_visibility
gcc_cv_readelf
gcc_cv_objdump
build_subdir
build_libsubdir
target_noncanonical
+host_noncanonical
target_os
target_vendor
target_cpu
enable_fixed_point
enable_threads
enable_tls
+enable_vtable_verify
enable_objc_gc
with_dwarf2
enable_shared
enable expensive run-time checks. With LIST, enable
only specific categories of checks. Categories are:
yes,no,all,none,release. Flags are:
- assert,df,fold,gc,gcac,gimple,misc,
+ assert,df,extra,fold,gc,gcac,gimple,misc,
rtlflag,rtl,runtime,tree,valgrind,types
--enable-coverage[=LEVEL]
enable compiler's code coverage collection. Use to
package
--enable-tls enable or disable generation of tls code overriding
the assembler check for tls support
+ --enable-vtable-verify enable vtable verification feature
--enable-objc-gc enable the use of Boehm's garbage collector with the
GNU Objective-C runtime
--disable-shared don't provide a shared libgcc
CPP C preprocessor
GMPLIBS How to link GMP
GMPINC How to find GMP include files
- ISLLIBS How to link ISL
- ISLINC How to find ISL include files
+ ISLLIBS How to link isl
+ ISLINC How to find isl include files
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
NONENONEs,x,x, &&
program_prefix=${target_alias}-
-# Determine the noncanonical target name, for directory use.
+# Determine the noncanonical host name, for Ada.
case ${build_alias} in
"") build_noncanonical=${build} ;;
*) build_noncanonical=${build_alias} ;;
*) host_noncanonical=${host_alias} ;;
esac
+
+
+
+# Determine the noncanonical target name, for directory use.
case ${target_alias} in
"") target_noncanonical=${host_noncanonical} ;;
*) target_noncanonical=${target_alias} ;;
;;
i[34567]86-*-mingw* | x86_64-*-mingw*)
;;
- i[34567]86-*-interix[3-9]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
i[34567]86-*-nto-qnx*)
# QNX uses GNU C++, but need to define -shared option too, otherwise
# it will coredump.
PICFLAG_FOR_TARGET=-fpic
;;
# FIXME: Simplify to sh*-*-netbsd*?
- sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
- sh64-*-netbsd* | sh64l*-*-netbsd*)
+ sh-*-netbsdelf* | shl*-*-netbsdelf*)
PICFLAG_FOR_TARGET=-fpic
;;
# Default to -fPIC unless specified otherwise.
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for std::swap in <utility>" >&5
+$as_echo_n "checking for std::swap in <utility>... " >&6; }
+if test "${ac_cv_std_swap_in_utility+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <utility>
+
+int
+main ()
+{
+int a, b; std::swap(a,b);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ ac_cv_std_swap_in_utility=yes
+else
+ ac_cv_std_swap_in_utility=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_std_swap_in_utility" >&5
+$as_echo "$ac_cv_std_swap_in_utility" >&6; }
+if test $ac_cv_std_swap_in_utility = yes; then
+
+$as_echo "#define HAVE_SWAP_IN_UTILITY 1" >>confdefs.h
+
+fi
+
# Check whether compiler is affected by placement new aliasing bug (PR 29286).
# If the host compiler is affected by the bug, and we build with optimization
# enabled (which happens e.g. when cross-compiling), the pool allocator may
# Determine the default checks.
if test x$is_release = x ; then
- ac_checking_flags=yes
+ ac_checking_flags=yes,extra
else
ac_checking_flags=release
fi
case $check in
# these set all the flags to specific states
yes) ac_assert_checking=1 ; ac_checking=1 ; ac_df_checking= ;
- ac_fold_checking= ; ac_gc_checking=1 ;
+ ac_fold_checking= ; ac_gc_checking=1 ; ac_extra_checking= ;
ac_gc_always_collect= ; ac_gimple_checking=1 ; ac_rtl_checking= ;
ac_rtlflag_checking=1 ; ac_runtime_checking=1 ;
ac_tree_checking=1 ; ac_valgrind_checking= ;
ac_types_checking=1 ;;
no|none) ac_assert_checking= ; ac_checking= ; ac_df_checking= ;
- ac_fold_checking= ; ac_gc_checking= ;
+ ac_fold_checking= ; ac_gc_checking= ; ac_extra_checking= ;
ac_gc_always_collect= ; ac_gimple_checking= ; ac_rtl_checking= ;
ac_rtlflag_checking= ; ac_runtime_checking= ;
ac_tree_checking= ; ac_valgrind_checking= ;
ac_types_checking= ;;
all) ac_assert_checking=1 ; ac_checking=1 ; ac_df_checking=1 ;
- ac_fold_checking=1 ; ac_gc_checking=1 ;
+ ac_fold_checking=1 ; ac_gc_checking=1 ; ac_extra_checking=1 ;
ac_gc_always_collect=1 ; ac_gimple_checking=1 ; ac_rtl_checking=1 ;
ac_rtlflag_checking=1 ; ac_runtime_checking=1 ;
ac_tree_checking=1 ; ac_valgrind_checking= ;
ac_types_checking=1 ;;
release) ac_assert_checking=1 ; ac_checking= ; ac_df_checking= ;
- ac_fold_checking= ; ac_gc_checking= ;
+ ac_fold_checking= ; ac_gc_checking= ; ac_extra_checking= ;
ac_gc_always_collect= ; ac_gimple_checking= ; ac_rtl_checking= ;
ac_rtlflag_checking= ; ac_runtime_checking=1 ;
ac_tree_checking= ; ac_valgrind_checking= ;
ac_types_checking= ;;
# these enable particular checks
assert) ac_assert_checking=1 ;;
- df) ac_df_checking=1 ;;
+ df) ac_df_checking=1 ;;
+ extra) ac_extra_checking=1 ;;
fold) ac_fold_checking=1 ;;
gc) ac_gc_checking=1 ;;
gcac) ac_gc_always_collect=1 ;;
fi
+if test x$ac_extra_checking != x ; then
+
+$as_echo "#define ENABLE_EXTRA_CHECKING 1" >>confdefs.h
+
+else
+ $as_echo "#define ENABLE_EXTRA_CHECKING 0" >>confdefs.h
+
+fi
if test x$ac_df_checking != x ; then
$as_echo "#define ENABLE_DF_CHECKING 1" >>confdefs.h
fi
+# Check whether --enable-vtable-verify was given.
+if test "${enable_vtable_verify+set}" = set; then :
+ enableval=$enable_vtable_verify;
+else
+ enable_vtable_verify=no
+fi
+
+vtable_verify=`if test x$enable_vtable_verify = xyes; then echo 1; else echo 0; fi`
+
+cat >>confdefs.h <<_ACEOF
+#define ENABLE_VTABLE_VERIFY $vtable_verify
+_ACEOF
+
+
# Check whether --enable-objc-gc was given.
if test "${enable_objc_gc+set}" = set; then :
enableval=$enable_objc_gc; if test x$enable_objc_gc = xno; then
for tgt in `echo $enable_offload_targets | sed 's/,/ /g'`; do
tgt=`echo $tgt | sed 's/=.*//'`
+
+ if echo "$tgt" | grep "^hsa" > /dev/null ; then
+ enable_hsa=1
+ else
+ enable_offloading=1
+ fi
+
if test x"$offload_targets" = x; then
offload_targets=$tgt
else
#define OFFLOAD_TARGETS "$offload_targets"
_ACEOF
-if test x"$offload_targets" != x; then
+if test x"$enable_offloading" != x; then
$as_echo "#define ENABLE_OFFLOADING 1" >>confdefs.h
+else
+
+$as_echo "#define ENABLE_OFFLOADING 0" >>confdefs.h
+
+fi
+
+if test x"$enable_hsa" = x1 ; then
+
+$as_echo "#define ENABLE_HSA 1" >>confdefs.h
+
fi
fi
if test x$host != x$target || test "x$TARGET_SYSTEM_ROOT" != x; then
- if test "x$with_headers" != x; then
+ if test "x$with_headers" != x && test "x$with_headers" != xyes; then
target_header_dir=$with_headers
elif test "x$with_sysroot" = x; then
target_header_dir="${test_exec_prefix}/${target_noncanonical}/sys-include"
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
else
- export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
fi
aix_use_runtimelinking=no
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 18405 "configure"
+#line 18482 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 18511 "configure"
+#line 18588 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
else
- export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
fi
;;
pw32*)
if test "${with_plugin_ld+set}" = set; then :
withval=$with_plugin_ld; if test x"$withval" != x; then
ORIGINAL_PLUGIN_LD_FOR_TARGET="$withval"
- PLUGIN_LD_SUFFIX=`echo $withval | sed -e "s,$target_alias-,,"`
+ PLUGIN_LD_SUFFIX="$withval"
fi
fi
gcc_cv_initfini_array=yes
fi
elif test x$gcc_cv_as != x -a x$gcc_cv_ld != x -a x$gcc_cv_objdump != x ; then
- cat > conftest.s <<\EOF
-.section .dtors,"a",%progbits
+ case $target:$gas in
+ *:yes)
+ sh_flags='"a"'
+ sh_type='%progbits'
+ ;;
+ i?86-*-solaris2*:no | x86_64-*-solaris2*:no)
+ sh_flags='"a"'
+ sh_type='@progbits'
+ ;;
+ sparc*-*-solaris2*:no)
+ sh_flags='#alloc'
+ sh_type='#progbits'
+ sh_quote='"'
+ ;;
+ esac
+ case "$target:$gnu_ld" in
+ *:yes)
+ cat > conftest.s <<EOF
+.section .dtors,$sh_flags,$sh_type
.balign 4
.byte 'A', 'A', 'A', 'A'
-.section .ctors,"a",%progbits
+.section .ctors,$sh_flags,$sh_type
.balign 4
.byte 'B', 'B', 'B', 'B'
-.section .fini_array.65530,"a",%progbits
+.section .fini_array.65530,$sh_flags,$sh_type
.balign 4
.byte 'C', 'C', 'C', 'C'
-.section .init_array.65530,"a",%progbits
+.section .init_array.65530,$sh_flags,$sh_type
.balign 4
.byte 'D', 'D', 'D', 'D'
-.section .dtors.64528,"a",%progbits
+.section .dtors.64528,$sh_flags,$sh_type
.balign 4
.byte 'E', 'E', 'E', 'E'
-.section .ctors.64528,"a",%progbits
+.section .ctors.64528,$sh_flags,$sh_type
.balign 4
.byte 'F', 'F', 'F', 'F'
-.section .fini_array.01005,"a",%progbits
+.section .fini_array.01005,$sh_flags,$sh_type
.balign 4
.byte 'G', 'G', 'G', 'G'
-.section .init_array.01005,"a",%progbits
+.section .init_array.01005,$sh_flags,$sh_type
.balign 4
.byte 'H', 'H', 'H', 'H'
.text
.globl _start
_start:
EOF
- if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1 \
- && $gcc_cv_ld -o conftest conftest.o > /dev/null 2>&1 \
- && $gcc_cv_objdump -s -j .init_array conftest \
- | grep HHHHFFFFDDDDBBBB > /dev/null 2>&1 \
- && $gcc_cv_objdump -s -j .fini_array conftest \
- | grep GGGGEEEECCCCAAAA > /dev/null 2>&1; then
- gcc_cv_initfini_array=yes
- fi
+ if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1 \
+ && $gcc_cv_ld -o conftest conftest.o > /dev/null 2>&1 \
+ && $gcc_cv_objdump -s -j .init_array conftest \
+ | grep HHHHFFFFDDDDBBBB > /dev/null 2>&1 \
+ && $gcc_cv_objdump -s -j .fini_array conftest \
+ | grep GGGGEEEECCCCAAAA > /dev/null 2>&1; then
+ gcc_cv_initfini_array=yes
+ fi
+ ;;
+ *-*-solaris2*:no)
+ # When Solaris ld added constructor priority support, it was
+ # decided to only handle .init_array.N/.fini_array.N since
+ # there was no need for backwards compatibility with
+ # .ctors.N/.dtors.N. .ctors/.dtors remain as separate
+ # sections with correct execution order resp. to
+ # .init_array/.fini_array, while gld merges them into
+ # .init_array/.fini_array.
+ cat > conftest.s <<EOF
+.section $sh_quote.fini_array.65530$sh_quote,$sh_flags,$sh_type
+.align 4
+.byte 'C', 'C', 'C', 'C'
+.section $sh_quote.init_array.65530$sh_quote,$sh_flags,$sh_type
+.align 4
+.byte 'D', 'D', 'D', 'D'
+.section $sh_quote.fini_array.01005$sh_quote,$sh_flags,$sh_type
+.align 4
+.byte 'G', 'G', 'G', 'G'
+.section $sh_quote.init_array.01005$sh_quote,$sh_flags,$sh_type
+.align 4
+.byte 'H', 'H', 'H', 'H'
+.text
+.globl _start
+_start:
+EOF
+ if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1 \
+ && $gcc_cv_ld -o conftest conftest.o > /dev/null 2>&1 \
+ && $gcc_cv_objdump -s -j .init_array conftest \
+ | grep HHHHDDDD > /dev/null 2>&1 \
+ && $gcc_cv_objdump -s -j .fini_array conftest \
+ | grep GGGGCCCC > /dev/null 2>&1; then
+ gcc_cv_initfini_array=yes
+ fi
+ ;;
+ esac
rm -f conftest conftest.*
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
fi
-if test $enable_initfini_array = yes; then
-$as_echo "#define HAVE_INITFINI_ARRAY_SUPPORT 1" >>confdefs.h
+cat >>confdefs.h <<_ACEOF
+#define HAVE_INITFINI_ARRAY_SUPPORT `if test $enable_initfini_array = yes; then echo 1; else echo 0; fi`
+_ACEOF
+
-fi
# Check if we have .[us]leb128, and support symbol arithmetic with it.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for .sleb128 and .uleb128" >&5
_ACEOF
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for stabs directive" >&5
+$as_echo_n "checking assembler for stabs directive... " >&6; }
+if test "${gcc_cv_as_stabs_directive+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_stabs_directive=no
+ if test x$gcc_cv_as != x; then
+ $as_echo '.stabs "gcc2_compiled.",60,0,0,0' > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ gcc_cv_as_stabs_directive=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_stabs_directive" >&5
+$as_echo "$gcc_cv_as_stabs_directive" >&6; }
+if test $gcc_cv_as_stabs_directive = yes; then
+
+$as_echo "#define HAVE_AS_STABS_DIRECTIVE 1" >>confdefs.h
+
+fi
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for COMDAT group support (GNU as)" >&5
$as_echo_n "checking assembler for COMDAT group support (GNU as)... " >&6; }
if test "${gcc_cv_as_comdat_group+set}" = set; then :
tls_first_minor=13
tls_as_opt=--fatal-warnings
;;
+ arc*-*-*)
+ conftest_s='
+ add_s r0,r0, @foo@tpoff'
+ tls_first_major=2
+ tls_first_minor=23
+ ;;
cris-*-*|crisv32-*-*)
conftest_s='
.section ".tdata","awT",@progbits
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for #nobits" >&5
-$as_echo_n "checking assembler for #nobits... " >&6; }
-if test "${gcc_cv_as_sparc_nobits+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- gcc_cv_as_sparc_nobits=no
- if test x$gcc_cv_as != x; then
- $as_echo '.section "nobits",#alloc,#write,#nobits
- .section "progbits",#alloc,#write,#progbits' > conftest.s
- if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }
- then
- gcc_cv_as_sparc_nobits=yes
- else
- echo "configure: failed program was" >&5
- cat conftest.s >&5
- fi
- rm -f conftest.o conftest.s
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_sparc_nobits" >&5
-$as_echo "$gcc_cv_as_sparc_nobits" >&6; }
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_AS_SPARC_NOBITS `if test $gcc_cv_as_sparc_nobits = yes; then echo 1; else echo 0; fi`
-_ACEOF
-
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for -relax option" >&5
$as_echo_n "checking assembler for -relax option... " >&6; }
if test "${gcc_cv_as_sparc_relax+set}" = set; then :
$as_echo "#define HAVE_AS_SPARC4 1" >>confdefs.h
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for SPARC5 and VIS 4.0 instructions" >&5
+$as_echo_n "checking assembler for SPARC5 and VIS 4.0 instructions... " >&6; }
+if test "${gcc_cv_as_sparc_sparc5+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_sparc_sparc5=no
+ if test x$gcc_cv_as != x; then
+ $as_echo '.text
+ .register %g2, #scratch
+ .register %g3, #scratch
+ .align 4
+ subxc %g1, %g2, %g3
+ fpadd8 %f0, %f2, %f4' > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -xarch=sparc5 -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ gcc_cv_as_sparc_sparc5=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_sparc_sparc5" >&5
+$as_echo "$gcc_cv_as_sparc_sparc5" >&6; }
+if test $gcc_cv_as_sparc_sparc5 = yes; then
+
+$as_echo "#define HAVE_AS_SPARC5_VIS4 1" >>confdefs.h
+
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for LEON instructions" >&5
esac
case $target_os in
- cygwin* | pe | mingw32* | interix*)
+ cygwin* | pe | mingw32*)
# Recent binutils allows the three-operand form of ".comm" on PE. This
# definition is used unconditionally to initialise the default state of
# the target option variable that governs usage of the feature.
fi
- # These two are used unconditionally by i386.[ch]; it is to be defined
- # to 1 if the feature is present, 0 otherwise.
- as_ix86_gotoff_in_data_opt=
- if test x$gas = xyes; then
- as_ix86_gotoff_in_data_opt="--32"
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for GOTOFF in data" >&5
-$as_echo_n "checking assembler for GOTOFF in data... " >&6; }
-if test "${gcc_cv_as_ix86_gotoff_in_data+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- gcc_cv_as_ix86_gotoff_in_data=no
- if test $in_tree_gas = yes; then
- if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 11 \) \* 1000 + 0`
- then gcc_cv_as_ix86_gotoff_in_data=yes
-fi
- elif test x$gcc_cv_as != x; then
- $as_echo ' .text
-.L0:
- nop
- .data
- .long .L0@GOTOFF' > conftest.s
- if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_gotoff_in_data_opt -o conftest.o conftest.s >&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }
- then
- gcc_cv_as_ix86_gotoff_in_data=yes
- else
- echo "configure: failed program was" >&5
- cat conftest.s >&5
- fi
- rm -f conftest.o conftest.s
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ix86_gotoff_in_data" >&5
-$as_echo "$gcc_cv_as_ix86_gotoff_in_data" >&6; }
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_AS_GOTOFF_IN_DATA `if test $gcc_cv_as_ix86_gotoff_in_data = yes; then echo 1; else echo 0; fi`
-_ACEOF
-
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for rep and lock prefix" >&5
$as_echo_n "checking assembler for rep and lock prefix... " >&6; }
if test "${gcc_cv_as_ix86_rep_lock_prefix+set}" = set; then :
fi
+ # Enforce 32-bit output with gas and gld.
+ if test x$gas = xyes; then
+ as_ix86_gas_32_opt="--32"
+ fi
+ if echo "$ld_ver" | grep GNU > /dev/null; then
+ if $gcc_cv_ld -V 2>/dev/null | grep elf_i386_sol2 > /dev/null; then
+ ld_ix86_gld_32_opt="-melf_i386_sol2"
+ else
+ ld_ix86_gld_32_opt="-melf_i386"
+ fi
+ fi
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for R_386_TLS_GD_PLT reloc" >&5
$as_echo_n "checking assembler for R_386_TLS_GD_PLT reloc... " >&6; }
if test "${gcc_cv_as_ix86_tlsgdplt+set}" = set; then :
gcc_cv_as_ix86_tlsgdplt=no
if test x$gcc_cv_as != x; then
$as_echo 'call tls_gd@tlsgdplt' > conftest.s
- if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_gas_32_opt -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
test $ac_status = 0; }; }
then
if test x$gcc_cv_ld != x \
- && $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1; then
+ && $gcc_cv_ld $ld_ix86_gld_32_opt -o conftest conftest.o -G > /dev/null 2>&1; then
gcc_cv_as_ix86_tlsgdplt=yes
fi
rm -f conftest
tls_ld:
.section .text,"ax",@progbits
call tls_ld@tlsldmplt'
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for R_386_TLS_LDM_PLT reloc" >&5
$as_echo_n "checking assembler for R_386_TLS_LDM_PLT reloc... " >&6; }
if test "${gcc_cv_as_ix86_tlsldmplt+set}" = set; then :
gcc_cv_as_ix86_tlsldmplt=no
if test x$gcc_cv_as != x; then
$as_echo "$conftest_s" > conftest.s
- if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_gas_32_opt -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
test $ac_status = 0; }; }
then
if test x$gcc_cv_ld != x \
- && $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1; then
+ && $gcc_cv_ld $ld_ix86_gld_32_opt -o conftest conftest.o -G > /dev/null 2>&1; then
gcc_cv_as_ix86_tlsldmplt=yes
fi
rm -f conftest
_ACEOF
- # Enforce 32-bit output with gas and gld.
- if test x$gas = xyes; then
- as_ix86_tls_ldm_opt="--32"
- fi
- if echo "$ld_ver" | grep GNU > /dev/null; then
- if $gcc_cv_ld -V 2>/dev/null | grep elf_i386_sol2 > /dev/null; then
- ld_ix86_tls_ldm_opt="-melf_i386_sol2"
- else
- ld_ix86_tls_ldm_opt="-melf_i386"
- fi
- fi
conftest_s='
.section .text,"ax",@progbits
.globl _start
gcc_cv_as_ix86_tlsldm=no
if test x$gcc_cv_as != x; then
$as_echo "$conftest_s" > conftest.s
- if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_tls_ldm_opt -o conftest.o conftest.s >&5'
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_gas_32_opt -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
test $ac_status = 0; }; }
then
if test x$gcc_cv_ld != x && test x$gcc_cv_objdump != x \
- && $gcc_cv_ld $ld_ix86_tls_ldm_opt -o conftest conftest.o $ld_tls_libs -lc > /dev/null 2>&1; then
+ && $gcc_cv_ld $ld_ix86_gld_32_opt -o conftest conftest.o $ld_tls_libs -lc > /dev/null 2>&1; then
if $gcc_cv_objdump -d conftest 2>/dev/null | grep nop > /dev/null \
|| dis conftest 2>/dev/null | grep nop > /dev/null; then
gcc_cv_as_ix86_tlsldm=yes
_ACEOF
- ;;
-
- ia64*-*-*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for ltoffx and ldxmov relocs" >&5
-$as_echo_n "checking assembler for ltoffx and ldxmov relocs... " >&6; }
-if test "${gcc_cv_as_ia64_ltoffx_ldxmov_relocs+set}" = set; then :
+ conftest_s='
+ .data
+bar:
+ .byte 1
+ .text
+ .global _start
+_start:
+ cmpl $0, bar@GOT
+ jmp *_start@GOT'
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for R_386_GOT32X reloc" >&5
+$as_echo_n "checking assembler for R_386_GOT32X reloc... " >&6; }
+if test "${gcc_cv_as_ix86_got32x+set}" = set; then :
$as_echo_n "(cached) " >&6
else
- gcc_cv_as_ia64_ltoffx_ldxmov_relocs=no
- if test $in_tree_gas = yes; then
- if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 14 \) \* 1000 + 0`
- then gcc_cv_as_ia64_ltoffx_ldxmov_relocs=yes
-fi
- elif test x$gcc_cv_as != x; then
- $as_echo ' .text
- addl r15 = @ltoffx(x#), gp
- ;;
- ld8.mov r16 = [r15], x#' > conftest.s
- if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
+ gcc_cv_as_ix86_got32x=no
+ if test x$gcc_cv_as != x; then
+ $as_echo "$conftest_s" > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_gas_32_opt -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; }
then
- gcc_cv_as_ia64_ltoffx_ldxmov_relocs=yes
+ if test x$gcc_cv_ld != x && test x$gcc_cv_objdump != x \
+ && test x$gcc_cv_readelf != x \
+ && $gcc_cv_readelf --relocs --wide conftest.o 2>&1 \
+ | grep R_386_GOT32X > /dev/null 2>&1 \
+ && $gcc_cv_ld $ld_ix86_gld_32_opt -o conftest conftest.o > /dev/null 2>&1; then
+ if $gcc_cv_objdump -dw conftest 2>&1 \
+ | grep 0xffffff > /dev/null 2>&1; then
+ gcc_cv_as_ix86_got32x=no
+ else
+ gcc_cv_as_ix86_got32x=yes
+ fi
+ fi
+ rm -f conftest
else
echo "configure: failed program was" >&5
cat conftest.s >&5
rm -f conftest.o conftest.s
fi
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ia64_ltoffx_ldxmov_relocs" >&5
-$as_echo "$gcc_cv_as_ia64_ltoffx_ldxmov_relocs" >&6; }
-if test $gcc_cv_as_ia64_ltoffx_ldxmov_relocs = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ix86_got32x" >&5
+$as_echo "$gcc_cv_as_ix86_got32x" >&6; }
-$as_echo "#define HAVE_AS_LTOFFX_LDXMOV_RELOCS 1" >>confdefs.h
-fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_AS_IX86_GOT32X `if test x"$gcc_cv_as_ix86_got32x" = xyes; then echo 1; else echo 0; fi`
+_ACEOF
- ;;
- powerpc*-*-*)
- case $target in
- *-*-aix*) conftest_s=' .machine "pwr5"
- .csect .text[PR]
- mfcr 3,128';;
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for GOTOFF in data" >&5
+$as_echo_n "checking assembler for GOTOFF in data... " >&6; }
+if test "${gcc_cv_as_ix86_gotoff_in_data+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_ix86_gotoff_in_data=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 11 \) \* 1000 + 0`
+ then gcc_cv_as_ix86_gotoff_in_data=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ $as_echo ' .text
+.L0:
+ nop
+ .data
+ .long .L0@GOTOFF' > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_gas_32_opt -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ gcc_cv_as_ix86_gotoff_in_data=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ix86_gotoff_in_data" >&5
+$as_echo "$gcc_cv_as_ix86_gotoff_in_data" >&6; }
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_AS_GOTOFF_IN_DATA `if test $gcc_cv_as_ix86_gotoff_in_data = yes; then echo 1; else echo 0; fi`
+_ACEOF
+
+
+ conftest_s='
+ .section .text,"ax",@progbits
+ .globl _start
+ .type _start, @function
+_start:
+ leal ld@tlsldm(%ecx), %eax
+ call *___tls_get_addr@GOT(%ecx)
+ leal gd@tlsgd(%ecx), %eax
+ call *___tls_get_addr@GOT(%ecx)
+
+ .section .tdata,"aw'$tls_section_flag'",@progbits
+ .type ld, @object
+ld:
+ .byte 0
+ .globl gd
+ .type gd, @object
+gd:
+ .byte 0'
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for calling ___tls_get_addr via GOT" >&5
+$as_echo_n "checking assembler for calling ___tls_get_addr via GOT... " >&6; }
+if test "${gcc_cv_as_ix86_tls_get_addr_via_got+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_ix86_tls_get_addr_via_got=no
+ if test x$gcc_cv_as != x; then
+ $as_echo "$conftest_s" > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_gas_32_opt -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ if test x$gcc_cv_ld != x \
+ && $gcc_cv_ld $ld_ix86_gld_32_opt -o conftest conftest.o > /dev/null 2>&1; then
+ gcc_cv_as_ix86_tls_get_addr_via_got=yes
+ fi
+ rm -f conftest
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ix86_tls_get_addr_via_got" >&5
+$as_echo "$gcc_cv_as_ix86_tls_get_addr_via_got" >&6; }
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_AS_IX86_TLS_GET_ADDR_GOT `if test x"$gcc_cv_as_ix86_tls_get_addr_via_got" = xyes; then echo 1; else echo 0; fi`
+_ACEOF
+
+ ;;
+
+ ia64*-*-*)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for ltoffx and ldxmov relocs" >&5
+$as_echo_n "checking assembler for ltoffx and ldxmov relocs... " >&6; }
+if test "${gcc_cv_as_ia64_ltoffx_ldxmov_relocs+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_ia64_ltoffx_ldxmov_relocs=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 14 \) \* 1000 + 0`
+ then gcc_cv_as_ia64_ltoffx_ldxmov_relocs=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ $as_echo ' .text
+ addl r15 = @ltoffx(x#), gp
+ ;;
+ ld8.mov r16 = [r15], x#' > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ gcc_cv_as_ia64_ltoffx_ldxmov_relocs=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ia64_ltoffx_ldxmov_relocs" >&5
+$as_echo "$gcc_cv_as_ia64_ltoffx_ldxmov_relocs" >&6; }
+if test $gcc_cv_as_ia64_ltoffx_ldxmov_relocs = yes; then
+
+$as_echo "#define HAVE_AS_LTOFFX_LDXMOV_RELOCS 1" >>confdefs.h
+
+fi
+
+ ;;
+
+ powerpc*-*-*)
+
+ case $target in
*-*-darwin*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for .machine directive support" >&5
$as_echo_n "checking assembler for .machine directive support... " >&6; }
echo you can get it from: ftp://gcc.gnu.org/pub/gcc/infrastructure/cctools-528.5.dmg >&2
test x$build = x$target && exit 1
fi
- conftest_s=' .text
+ ;;
+ esac
+
+ case $target in
+ *-*-aix*) conftest_s=' .machine "pwr5"
+ .csect .text[PR]
+ mfcr 3,128';;
+ *-*-darwin*) conftest_s=' .text
mfcr r3,128';;
*) conftest_s=' .machine power4
.text
$as_echo "#define HAVE_AS_POWER8 1" >>confdefs.h
+fi
+
+ case $target in
+ *-*-aix*) conftest_s=' .machine "pwr9"
+ .csect .text[PR]';;
+ *) conftest_s=' .machine power9
+ .text';;
+ esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for power9 support" >&5
+$as_echo_n "checking assembler for power9 support... " >&6; }
+if test "${gcc_cv_as_powerpc_power9+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_powerpc_power9=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 19 \) \* 1000 + 2`
+ then gcc_cv_as_powerpc_power9=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ $as_echo "$conftest_s" > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ gcc_cv_as_powerpc_power9=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_powerpc_power9" >&5
+$as_echo "$gcc_cv_as_powerpc_power9" >&6; }
+if test $gcc_cv_as_powerpc_power9 = yes; then
+
+$as_echo "#define HAVE_AS_POWER9 1" >>confdefs.h
+
fi
case $target in
$as_echo "#define HAVE_AS_TLS_MARKERS 1" >>confdefs.h
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for prologue entry point marker support" >&5
+$as_echo_n "checking assembler for prologue entry point marker support... " >&6; }
+if test "${gcc_cv_as_powerpc_entry_markers+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_powerpc_entry_markers=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 26 \) \* 1000 + 0`
+ then gcc_cv_as_powerpc_entry_markers=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ $as_echo ' .reloc .,R_PPC64_ENTRY; nop' > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a64 --fatal-warnings -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ gcc_cv_as_powerpc_entry_markers=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_powerpc_entry_markers" >&5
+$as_echo "$gcc_cv_as_powerpc_entry_markers" >&6; }
+if test $gcc_cv_as_powerpc_entry_markers = yes; then
+
+$as_echo "#define HAVE_AS_ENTRY_MARKERS 1" >>confdefs.h
+
fi
case $target in
*-*-aix*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for .ref support" >&5
-$as_echo_n "checking assembler for .ref support... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for AIX .ref support" >&5
+$as_echo_n "checking assembler for AIX .ref support... " >&6; }
if test "${gcc_cv_as_aix_ref+set}" = set; then :
$as_echo_n "(cached) " >&6
else
$as_echo "#define HAVE_AS_REF 1" >>confdefs.h
fi
- ;;
- esac
- case $target in
- *-*-aix*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for dwarf location lists section support" >&5
-$as_echo_n "checking assembler for dwarf location lists section support... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for AIX DWARF location lists section support" >&5
+$as_echo_n "checking assembler for AIX DWARF location lists section support... " >&6; }
if test "${gcc_cv_as_aix_dwloc+set}" = set; then :
$as_echo_n "(cached) " >&6
else
then gcc_cv_as_aix_dwloc=yes
fi
elif test x$gcc_cv_as != x; then
- $as_echo ' .dwsect 0xB0000
+ $as_echo ' .dwsect 0xA0000
+ Lframe..0:
+ .vbyte 4,Lframe..0
' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
$as_echo "#define HAVE_AS_GNU_ATTRIBUTE 1" >>confdefs.h
+fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for .machine and .machinemode support" >&5
+$as_echo_n "checking assembler for .machine and .machinemode support... " >&6; }
+if test "${gcc_cv_as_s390_machine_machinemode+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_s390_machine_machinemode=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 24 \) \* 1000 + 0`
+ then gcc_cv_as_s390_machine_machinemode=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ $as_echo ' .machinemode push
+ .machinemode pop
+ .machine push
+ .machine pop' > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ gcc_cv_as_s390_machine_machinemode=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_s390_machine_machinemode" >&5
+$as_echo "$gcc_cv_as_s390_machine_machinemode" >&6; }
+if test $gcc_cv_as_s390_machine_machinemode = yes; then
+
+$as_echo "#define HAVE_AS_MACHINE_MACHINEMODE 1" >>confdefs.h
+
+fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for architecture modifiers support" >&5
+$as_echo_n "checking assembler for architecture modifiers support... " >&6; }
+if test "${gcc_cv_as_s390_architecture_modifiers+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_s390_architecture_modifiers=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 26 \) \* 1000 + 0`
+ then gcc_cv_as_s390_architecture_modifiers=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ $as_echo ' .machine z13+vx ' > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+ gcc_cv_as_s390_architecture_modifiers=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_s390_architecture_modifiers" >&5
+$as_echo "$gcc_cv_as_s390_architecture_modifiers" >&6; }
+if test $gcc_cv_as_s390_architecture_modifiers = yes; then
+
+$as_echo "#define HAVE_AS_ARCHITECTURE_MODIFIERS 1" >>confdefs.h
+
fi
;;
esac
gcc_cv_as_compress_debug=no
if test x$gcc_cv_as != x; then
$as_echo '' > conftest.s
- if { ac_try='$gcc_cv_as $gcc_cv_as_flags --compress-debug-sections -o conftest.o conftest.s >&5'
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
if $gcc_cv_as --compress-debug-sections -o conftest.o conftest.s 2>&1 | grep -i warning > /dev/null
then
gcc_cv_as_compress_debug=0
+ # Since binutils 2.26, gas supports --compress-debug-sections=type,
+ # defaulting to the ELF gABI format.
+ elif $gcc_cv_as --compress-debug-sections=zlib-gnu -o conftest.o conftest.s > /dev/null 2>&1
+ then
+ gcc_cv_as_compress_debug=2
+ gcc_cv_as_compress_debug_option="--compress-debug-sections"
+ gcc_cv_as_no_compress_debug_option="--nocompress-debug-sections"
+ # Before binutils 2.26, gas only supported --compress-debug-options and
+ # emitted the traditional GNU format.
elif $gcc_cv_as --compress-debug-sections -o conftest.o conftest.s > /dev/null 2>&1
then
gcc_cv_as_compress_debug=1
gcc_cv_as_no_compress_debug_option="--nocompress-debug-sections"
else
gcc_cv_as_compress_debug=0
- # FIXME: Future gas versions will support ELF gABI style via
- # --compress-debug-sections[=type].
fi
else
echo "configure: failed program was" >&5
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking support for thin archives" >&5
+$as_echo_n "checking support for thin archives... " >&6; }
+thin_archive_support=no
+echo 'int main (void) { return 0; }' > conftest.c
+if ($AR --version | sed 1q | grep "GNU ar" \
+ && $CC $CFLAGS -c conftest.c \
+ && $AR rcT conftest.a conftest.o \
+ && $CC $CFLAGS $LDFLAGS -o conftest conftest.a) >/dev/null 2>&1; then
+ thin_archive_support=yes
+fi
+rm -f conftest.c conftest.o conftest.a conftest
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $thin_archive_support" >&5
+$as_echo "$thin_archive_support" >&6; }
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking linker PT_GNU_EH_FRAME support" >&5
$as_echo_n "checking linker PT_GNU_EH_FRAME support... " >&6; }
gcc_cv_ld_eh_frame_hdr=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking linker for compressed debug sections" >&5
$as_echo_n "checking linker for compressed debug sections... " >&6; }
# gold/gld support compressed debug sections since binutils 2.19/2.21
+# In binutils 2.26, gld gained support for the ELF gABI format.
if test $in_tree_ld = yes ; then
gcc_cv_ld_compress_debug=0
if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 19 -o "$gcc_cv_gld_major_version" -gt 2 \
&& test $in_tree_ld_is_elf = yes && test $ld_is_gold = yes; then
gcc_cv_ld_compress_debug=2
gcc_cv_ld_compress_debug_option="--compress-debug-sections"
+ elif test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 26 -o "$gcc_cv_gld_major_version" -gt 2 \
+ && test $in_tree_ld_is_elf = yes && test $ld_is_gold = no; then
+ gcc_cv_ld_compress_debug=3
+ gcc_cv_ld_compress_debug_option="--compress-debug-sections"
elif test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 21 -o "$gcc_cv_gld_major_version" -gt 2 \
&& test $in_tree_ld_is_elf = yes; then
gcc_cv_ld_compress_debug=1
fi
elif echo "$ld_ver" | grep GNU > /dev/null; then
- gcc_cv_ld_compress_debug=1
- if test 0"$ld_date" -lt 20050308; then
- if test -n "$ld_date"; then
- # If there was date string, but was earlier than 2005-03-08, fail
- gcc_cv_ld_compress_debug=0
- elif test "$ld_vers_major" -lt 2; then
- gcc_cv_ld_compress_debug=0
- elif test "$ld_vers_major" -eq 2 -a "$ld_vers_minor" -lt 21; then
- gcc_cv_ld_compress_debug=0
- fi
+ if test "$ld_vers_major" -lt 2 \
+ || test "$ld_vers_major" -eq 2 -a "$ld_vers_minor" -lt 21; then
+ gcc_cv_ld_compress_debug=0
+ elif test "$ld_vers_major" -eq 2 -a "$ld_vers_minor" -lt 26; then
+ gcc_cv_ld_compress_debug=1
+ else
+ gcc_cv_ld_compress_debug=3
+ gcc_cv_ld_compress_debug_option="--compress-debug-sections"
fi
if test $ld_is_gold = yes; then
gcc_cv_ld_compress_debug=2
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld_clearcap" >&5
$as_echo "$gcc_cv_ld_clearcap" >&6; }
+case "$target" in
+ powerpc*-*-*)
+ case "$target" in
+ *le-*-linux*)
+ emul_name="-melf32lppc"
+ ;;
+ *)
+ emul_name="-melf32ppc"
+ ;;
+ esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking linker .gnu.attributes long double support" >&5
+$as_echo_n "checking linker .gnu.attributes long double support... " >&6; }
+if test "${gcc_cv_ld_ppc_attr+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_ld_ppc_attr=no
+ if test x"$ld_is_gold" = xyes; then
+ gcc_cv_ld_ppc_attr=yes
+ elif test $in_tree_ld = yes ; then
+ if test "$gcc_cv_gld_major_version" -eq 2 \
+ -a "$gcc_cv_gld_minor_version" -ge 28 \
+ -o "$gcc_cv_gld_major_version" -gt 2; then
+ gcc_cv_ld_ppc_attr=yes
+ fi
+ elif test x$gcc_cv_as != x -a x$gcc_cv_ld != x ; then
+ # check that merging the long double .gnu_attribute doesn't warn
+ cat > conftest1.s <<EOF
+ .gnu_attribute 4,1
+EOF
+ cat > conftest2.s <<EOF
+ .gnu_attribute 4,9
+EOF
+ if $gcc_cv_as -a32 -o conftest1.o conftest1.s > /dev/null 2>&1 \
+ && $gcc_cv_as -a32 -o conftest2.o conftest2.s > /dev/null 2>&1 \
+ && $gcc_cv_ld $emul_name -r -o conftest.o conftest1.o conftest2.o > /dev/null 2> conftest.err \
+ && test ! -s conftest.err; then
+ gcc_cv_ld_ppc_attr=yes
+ fi
+ rm -f conftest.err conftest.o conftest1.o conftest2.o conftest1.s conftest2.s
+ fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld_ppc_attr" >&5
+$as_echo "$gcc_cv_ld_ppc_attr" >&6; }
+ if test x$gcc_cv_ld_ppc_attr = xyes; then
+
+$as_echo "#define HAVE_LD_PPC_GNU_ATTR_LONG_DOUBLE 1" >>confdefs.h
+
+ fi
+ ;;
+esac
+
case "$target:$tm_file" in
powerpc64-*-freebsd* | powerpc64*-*-linux* | powerpc*-*-linux*rs6000/biarch64.h*)
case "$target" in
x: .quad .TOC.
EOF
if $gcc_cv_as -a64 -o conftest.o conftest.s > /dev/null 2>&1 \
- && $gcc_cv_ld $emul_name -o conftest conftest.o > /dev/null 2>&1; then
+ && $gcc_cv_ld $emul_name -z norelro -o conftest conftest.o > /dev/null 2>&1; then
gcc_cv_ld_toc_align=`$gcc_cv_nm conftest | ${AWK} '/\.TOC\./ { match ($0, "0[[:xdigit:]]*", a); print strtonum ("0x" substr(a[0], length(a[0])-3)) }'`
fi
rm -f conftest conftest.o conftest.s
*-*-musl*)
# All versions of musl provide stack protector
gcc_cv_libc_provides_ssp=yes;;
- *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu)
+ *-*-linux* | *-*-kfreebsd*-gnu)
# glibc 2.4 and later provides __stack_chk_fail and
# either __stack_chk_guard, or TLS access to stack guard canary.
# realistically usable GNU/Hurd configurations.
# All supported versions of musl provide it as well
gcc_cv_libc_provides_ssp=yes;;
- *-*-darwin* | *-*-freebsd*)
+ *-*-darwin* | *-*-freebsd* | *-*-netbsd*)
ac_fn_cxx_check_func "$LINENO" "__stack_chk_fail" "ac_cv_func___stack_chk_fail"
if test "x$ac_cv_func___stack_chk_fail" = x""yes; then :
gcc_cv_libc_provides_ssp=yes
enable_default_ssp=no
fi
-if test x$enable_default_ssp == xyes ; then
+if test x$enable_default_ssp = xyes ; then
$as_echo "#define ENABLE_DEFAULT_SSP 1" >>confdefs.h
fi
+# Check if the target LIBC supports exporting the AT_PLATFORM and AT_HWCAP
+# values in the TCB. Currently, only GLIBC 2.23 and later support this.
+gcc_cv_libc_provides_hwcap_in_tcb=no
+case "$target" in
+ powerpc*-*-linux*)
+
+if test $glibc_version_major -gt 2 \
+ || ( test $glibc_version_major -eq 2 && test $glibc_version_minor -ge 23 ); then :
+ gcc_cv_libc_provides_hwcap_in_tcb=yes
+fi
+ ;;
+esac
+if test x$gcc_cv_libc_provides_hwcap_in_tcb = xyes; then
+
+$as_echo "#define TARGET_LIBC_PROVIDES_HWCAP_IN_TCB 1" >>confdefs.h
+
+fi
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dl_iterate_phdr in target C library" >&5
$as_echo_n "checking dl_iterate_phdr in target C library... " >&6; }
gcc_cv_target_dl_iterate_phdr=unknown
fi
-# Check whether isl_schedule_constraints_compute_schedule is available;
-# it's new in ISL-0.13.
# Check whether isl_options_set_schedule_serialize_sccs is available;
-# it's new in ISL-0.15.
+# it's new in isl 0.15.
if test "x${ISLLIBS}" != "x" ; then
saved_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS $ISLINC"
+ CXXFLAGS="$CXXFLAGS $ISLINC $GMPINC"
saved_LIBS="$LIBS"
LIBS="$LIBS $ISLLIBS $GMPLIBS"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking Checking for isl_schedule_constraints_compute_schedule" >&5
-$as_echo_n "checking Checking for isl_schedule_constraints_compute_schedule... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <isl/schedule.h>
-int
-main ()
-{
-isl_schedule_constraints_compute_schedule (NULL);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_has_isl_schedule_constraints_compute_schedule=yes
-else
- ac_has_isl_schedule_constraints_compute_schedule=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_has_isl_schedule_constraints_compute_schedule" >&5
-$as_echo "$ac_has_isl_schedule_constraints_compute_schedule" >&6; }
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Checking for isl_options_set_schedule_serialize_sccs" >&5
$as_echo_n "checking Checking for isl_options_set_schedule_serialize_sccs... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_has_isl_options_set_schedule_serialize_sccs" >&5
$as_echo "$ac_has_isl_options_set_schedule_serialize_sccs" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking Checking for isl_ctx_get_max_operations" >&5
-$as_echo_n "checking Checking for isl_ctx_get_max_operations... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <isl/ctx.h>
-int
-main ()
-{
-isl_ctx_get_max_operations (isl_ctx_alloc ());
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_has_isl_ctx_get_max_operations=yes
-else
- ac_has_isl_ctx_get_max_operations=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_has_isl_ctx_get_max_operations" >&5
-$as_echo "$ac_has_isl_ctx_get_max_operations" >&6; }
-
LIBS="$saved_LIBS"
CXXFLAGS="$saved_CXXFLAGS"
- if test x"$ac_has_isl_schedule_constraints_compute_schedule" = x"yes"; then
-
-$as_echo "#define HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE 1" >>confdefs.h
-
- fi
-
if test x"$ac_has_isl_options_set_schedule_serialize_sccs" = x"yes"; then
$as_echo "#define HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS 1" >>confdefs.h
- fi
- if test x"$ac_has_isl_ctx_get_max_operations" = x"yes"; then
-
-$as_echo "#define HAVE_ISL_CTX_MAX_OPERATIONS 1" >>confdefs.h
-
fi
fi
enable_default_pie=no
fi
-if test x$enable_default_pie == xyes ; then
+if test x$enable_default_pie = xyes ; then
$as_echo "#define ENABLE_DEFAULT_PIE 1" >>confdefs.h
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_bndplt_support" >&5
$as_echo "$ld_bndplt_support" >&6; }
+# Check linker supports '--push-state'/'--pop-state'
+ld_pushpopstate_support=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking linker --push-state/--pop-state options" >&5
+$as_echo_n "checking linker --push-state/--pop-state options... " >&6; }
+if test x"$ld_is_gold" = xno; then
+ if test $in_tree_ld = yes ; then
+ if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 25 -o "$gcc_cv_gld_major_version" -gt 2; then
+ ld_pushpopstate_support=yes
+ fi
+ elif test x$gcc_cv_ld != x; then
+ # Check if linker supports --push-state/--pop-state options
+ if $gcc_cv_ld --help 2>/dev/null | grep -- '--push-state' > /dev/null; then
+ ld_pushpopstate_support=yes
+ fi
+ fi
+fi
+if test x"$ld_pushpopstate_support" = xyes; then
+
+$as_echo "#define HAVE_LD_PUSHPOPSTATE_SUPPORT 1" >>confdefs.h
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_pushpopstate_support" >&5
+$as_echo "$ld_pushpopstate_support" >&6; }
+
# Configure the subdirectories
# AC_CONFIG_SUBDIRS($subdirs)