1# This file is generated from configure.ac by Autoconf. DO NOT EDIT! 2 # Local configure fragment for sysdeps/x86. 3 4if test $enable_cet != no; then 5 # Check if CET can be enabled. 6 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether CET can be enabled" >&5 7$as_echo_n "checking whether CET can be enabled... " >&6; } 8if ${libc_cv_x86_cet_available+:} false; then : 9 $as_echo_n "(cached) " >&6 10else 11 cat > conftest.c <<EOF 12#if !defined __CET__ || __CET__ != 3 13# error CET isn't available. 14#endif 15EOF 16 if { ac_try='${CC-cc} -c $CFLAGS -fcf-protection -include cet.h conftest.c 1>&5' 17 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 18 (eval $ac_try) 2>&5 19 ac_status=$? 20 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 21 test $ac_status = 0; }; }; then 22 libc_cv_x86_cet_available=yes 23 else 24 libc_cv_x86_cet_available=no 25 fi 26 rm -rf conftest* 27fi 28{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_x86_cet_available" >&5 29$as_echo "$libc_cv_x86_cet_available" >&6; } 30 if test $libc_cv_x86_cet_available != yes; then 31 as_fn_error $? "$CC doesn't support CET" "$LINENO" 5 32 fi 33fi 34if test $enable_cet != no; then 35 # Check if assembler supports CET. 36 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $AS supports CET" >&5 37$as_echo_n "checking whether $AS supports CET... " >&6; } 38if ${libc_cv_x86_cet_as+:} false; then : 39 $as_echo_n "(cached) " >&6 40else 41 cat > conftest.s <<EOF 42 incsspd %ecx 43EOF 44 if { ac_try='${CC-cc} -c $CFLAGS conftest.s -o conftest.o 1>&5' 45 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 46 (eval $ac_try) 2>&5 47 ac_status=$? 48 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 49 test $ac_status = 0; }; }; then 50 libc_cv_x86_cet_as=yes 51 else 52 libc_cv_x86_cet_as=no 53 fi 54 rm -rf conftest* 55fi 56{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_x86_cet_as" >&5 57$as_echo "$libc_cv_x86_cet_as" >&6; } 58 if test $libc_cv_x86_cet_as = no; then 59 as_fn_error $? "$AS doesn't support CET" "$LINENO" 5 60 fi 61fi 62if test $enable_cet = yes; then 63 $as_echo "#define DEFAULT_DL_X86_CET_CONTROL cet_elf_property" >>confdefs.h 64 65elif test $enable_cet = permissive; then 66 $as_echo "#define DEFAULT_DL_X86_CET_CONTROL cet_permissive" >>confdefs.h 67 68fi 69config_vars="$config_vars 70enable-cet = $enable_cet" 71 72# Check if linker supports x86 ISA level. 73{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for linker x86 ISA level support" >&5 74$as_echo_n "checking for linker x86 ISA level support... " >&6; } 75if ${libc_cv_include_x86_isa_level+:} false; then : 76 $as_echo_n "(cached) " >&6 77else 78 cat > conftest1.S <<EOF 79#ifdef __LP64__ 80# define P2ALIGN 3 81#else 82# define P2ALIGN 2 83#endif 84 .section ".note.gnu.property", "a" 85 .p2align P2ALIGN 86 .long 1f - 0f /* name length. */ 87 .long 4f - 1f /* data length. */ 88 /* NT_GNU_PROPERTY_TYPE_0 */ 89 .long 5 /* note type. */ 900: 91 .asciz "GNU" /* vendor name. */ 921: 93 .p2align P2ALIGN 94 /* GNU_PROPERTY_X86_ISA_1_NEEDED */ 95 .long 0xc0008002 /* pr_type. */ 96 .long 3f - 2f /* pr_datasz. */ 972: 98 .long 0x1 993: 100 .p2align P2ALIGN 1014: 102EOF 103cat > conftest2.S <<EOF 104#ifdef __LP64__ 105# define P2ALIGN 3 106#else 107# define P2ALIGN 2 108#endif 109 .section ".note.gnu.property", "a" 110 .p2align P2ALIGN 111 .long 1f - 0f /* name length. */ 112 .long 4f - 1f /* data length. */ 113 /* NT_GNU_PROPERTY_TYPE_0 */ 114 .long 5 /* note type. */ 1150: 116 .asciz "GNU" /* vendor name. */ 1171: 118 .p2align P2ALIGN 119 /* GNU_PROPERTY_X86_ISA_1_NEEDED */ 120 .long 0xc0008002 /* pr_type. */ 121 .long 3f - 2f /* pr_datasz. */ 1222: 123 .long 0x2 1243: 125 .p2align P2ALIGN 1264: 127EOF 128libc_cv_include_x86_isa_level=no 129if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -nostartfiles -nostdlib -r -o conftest conftest1.S conftest2.S' 130 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 131 (eval $ac_try) 2>&5 132 ac_status=$? 133 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 134 test $ac_status = 0; }; }; then 135 count=`LC_ALL=C $READELF -n conftest | grep NT_GNU_PROPERTY_TYPE_0 | wc -l` 136 if test "$count" = 1; then 137 libc_cv_include_x86_isa_level=yes 138 fi 139fi 140rm -f conftest* 141fi 142{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_include_x86_isa_level" >&5 143$as_echo "$libc_cv_include_x86_isa_level" >&6; } 144if test $libc_cv_include_x86_isa_level = yes; then 145 $as_echo "#define INCLUDE_X86_ISA_LEVEL 1" >>confdefs.h 146 147 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LAHF/SAHF instruction support" >&5 148$as_echo_n "checking for LAHF/SAHF instruction support... " >&6; } 149if ${libc_cv_have_x86_lahf_sahf+:} false; then : 150 $as_echo_n "(cached) " >&6 151else 152 libc_cv_have_x86_lahf_sahf=no 153 if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fverbose-asm -S -o - -x c /dev/null' 154 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 155 (eval $ac_try) 2>&5 156 ac_status=$? 157 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 158 test $ac_status = 0; }; } | grep -q "\-msahf"; then 159 libc_cv_have_x86_lahf_sahf=yes 160 fi 161fi 162{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_have_x86_lahf_sahf" >&5 163$as_echo "$libc_cv_have_x86_lahf_sahf" >&6; } 164 if test $libc_cv_have_x86_lahf_sahf = yes; then 165 $as_echo "#define HAVE_X86_LAHF_SAHF 1" >>confdefs.h 166 167 fi 168 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MOVBE instruction support" >&5 169$as_echo_n "checking for MOVBE instruction support... " >&6; } 170if ${libc_cv_have_x86_movbe+:} false; then : 171 $as_echo_n "(cached) " >&6 172else 173 libc_cv_have_x86_movbe=no 174 if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fverbose-asm -S -o - -x c /dev/null' 175 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 176 (eval $ac_try) 2>&5 177 ac_status=$? 178 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 179 test $ac_status = 0; }; } | grep -q "\-mmovbe"; then 180 libc_cv_have_x86_movbe=yes 181 fi 182fi 183{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_have_x86_movbe" >&5 184$as_echo "$libc_cv_have_x86_movbe" >&6; } 185 if test $libc_cv_have_x86_movbe = yes; then 186 $as_echo "#define HAVE_X86_MOVBE 1" >>confdefs.h 187 188 fi 189fi 190config_vars="$config_vars 191enable-x86-isa-level = $libc_cv_include_x86_isa_level" 192