CET shouldn't be enabled in 32-bit run-time libraries by defualt
authorIgor Tsimbalist <igor.v.tsimbalist@intel.com>
Mon, 19 Feb 2018 16:25:49 +0000 (17:25 +0100)
committerIgor Tsimbalist <itsimbal@gcc.gnu.org>
Mon, 19 Feb 2018 16:25:49 +0000 (17:25 +0100)
ENDBR32 and RDSSPD are multi-byte NOPs on x86-64 processors and
newer x86 processors, starting Pentium Pro.  They are UD on older
32-bit processors. Detect this at configure time and adjust the
default value for enable_cet. GCC will enable CET in 32-bit run-time
libraries in any case if --enable-cet is used to configure GCC.

PR target/84148
* config/cet.m4: Check if target support multi-byte NOPS (SSE).
* libatomic/configure: Regenerate.
* libbacktrace/configure: Likewise.
* libgcc/configure: Likewise.
* libgfortran/configure: Likewise.
* libgomp/configure: Likewise.
* libitm/configure: Likewise.
* libmpx/configure: Likewise.
* libobjc/configure: Likewise.
* libquadmath/configure: Likewise.
* libsanitizer/configure: Likewise.
* libssp/configure: Likewise.
* libstdc++-v3/configure: Likewise.
* libvtv/configure: Likewise.

From-SVN: r257809

28 files changed:
config/ChangeLog
config/cet.m4
libatomic/ChangeLog
libatomic/configure
libbacktrace/ChangeLog
libbacktrace/configure
libgcc/ChangeLog
libgcc/configure
libgfortran/ChangeLog
libgfortran/configure
libgomp/ChangeLog
libgomp/configure
libitm/ChangeLog
libitm/configure
libmpx/ChangeLog
libmpx/configure
libobjc/ChangeLog
libobjc/configure
libquadmath/ChangeLog
libquadmath/configure
libsanitizer/ChangeLog
libsanitizer/configure
libssp/ChangeLog
libssp/configure
libstdc++-v3/ChangeLog
libstdc++-v3/configure
libvtv/ChangeLog
libvtv/configure

index fd7f82f..746a0a0 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * cet.m4: Check if target support multi-byte NOPS (SSE).
+
 2018-02-06  Eric Botcazou  <ebotcazou@adacore.com>
 
        * gcc-plugin.m4 (GCC_ENABLE_PLUGINS): Remove -q option passed to grep.
index 715f4bd..23dd1f7 100644 (file)
@@ -5,15 +5,24 @@ dnl
 AC_DEFUN([GCC_CET_FLAGS],[dnl
 GCC_ENABLE(cet, default, ,[enable Intel CET in target libraries],
           permit yes|no|default)
+AC_MSG_CHECKING([for CET support])
+
 case "$host" in
   i[[34567]]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        AC_COMPILE_IFELSE(
         [AC_LANG_PROGRAM(
          [],
-         [asm ("setssbsy");])],
+         [
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
+asm ("setssbsy");
+#endif
+         ])],
         [enable_cet=yes],
         [enable_cet=no])
        ;;
@@ -34,5 +43,8 @@ case "$host" in
 esac
 if test x$enable_cet = xyes; then
   $1="-fcf-protection -mcet"
+  AC_MSG_RESULT([yes])
+else
+  AC_MSG_RESULT([no])
 fi
 ])
index c64a1aa..2312707 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
 
        Update copyright years.
index 47a9b98..9445aee 100755 (executable)
@@ -15314,18 +15314,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -15365,6 +15375,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 XCFLAGS="$XCFLAGS $CET_FLAGS"
index 323ac94..64733a8 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-02-15  Jakub Jelinek  <jakub@redhat.com>
 
        PR other/82368
index 8943b0c..77c6fe3 100755 (executable)
@@ -11802,18 +11802,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -11853,6 +11863,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
   EXTRA_FLAGS="$EXTRA_FLAGS $CET_FLAGS"
index 012c866..5df8d85 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-02-16  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
 
        PR target/84239
index 38a28c2..3241f19 100644 (file)
@@ -4790,18 +4790,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -4841,6 +4851,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 
index 20a13e4..c992a60 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-02-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
        PR libgfortran/84412
index 60e18a7..86904ef 100755 (executable)
@@ -5804,18 +5804,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -5855,6 +5865,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 AM_FCFLAGS="$AM_FCFLAGS $CET_FLAGS"
@@ -12498,7 +12513,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 12501 "configure"
+#line 12516 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12604,7 +12619,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 12607 "configure"
+#line 12622 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
index 5e5e22f..ccc7700 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-19  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-02-16  Jakub Jelinek  <jakub@redhat.com>
 
        PR fortran/84418
index e7842b5..92b8142 100755 (executable)
@@ -15142,7 +15142,7 @@ fi
 
 # Plugins for offload execution, configure.ac fragment.  -*- mode: autoconf -*-
 #
-# Copyright (C) 2014-2017 Free Software Foundation, Inc.
+# Copyright (C) 2014-2018 Free Software Foundation, Inc.
 #
 # Contributed by Mentor Embedded.
 #
@@ -16633,18 +16633,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -16684,6 +16694,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 XCFLAGS="$XCFLAGS $CET_FLAGS"
index f335144..c5ca387 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
 
        Update copyright years.
index d061c8c..a57805e 100644 (file)
@@ -17603,18 +17603,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -17654,6 +17664,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 XCFLAGS="$XCFLAGS $CET_FLAGS"
index 9ae6542..f8cc639 100644 (file)
@@ -1,4 +1,9 @@
- 2017-11-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
+2017-11-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
 
         * Makefile.in: Regenerate.
         * acinclude.m4: Add enable.m4 and cet.m4.
index 7bc68b8..dfa4419 100644 (file)
@@ -11598,18 +11598,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -11649,6 +11659,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 XCFLAGS="$XCFLAGS $CET_FLAGS"
index 50d0769..b5422e3 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
 
        Update copyright years.
index 3a2b2e3..ce52fab 100755 (executable)
@@ -3369,18 +3369,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -3420,6 +3430,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 XCFLAGS="$XCFLAGS $CET_FLAGS"
@@ -10668,7 +10683,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10671 "configure"
+#line 10686 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10774,7 +10789,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10777 "configure"
+#line 10792 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
index a554923..33ca15f 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
 
        * libquadmath.texi: Bump @copying's copyright year.
index b32dcbc..2a69479 100755 (executable)
@@ -12837,18 +12837,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -12888,6 +12898,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 XCFLAGS="$XCFLAGS $CET_FLAGS"
index ebb8866..b625083 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-02-05  Martin Liska  <mliska@suse.cz>
 
        * asan/asan_flags.inc: Cherry-pick upstream r323995.
index a0104d8..3b61a1f 100755 (executable)
@@ -16539,18 +16539,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -16590,6 +16600,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS"
index 66254fe..b5e8113 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
 
        Update copyright years.
index a96b391..df7bff7 100755 (executable)
@@ -4095,18 +4095,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -4146,6 +4156,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 XCFLAGS="$XCFLAGS $CET_FLAGS"
@@ -10745,7 +10760,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10748 "configure"
+#line 10763 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10851,7 +10866,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 10854 "configure"
+#line 10869 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
index b2aa592..0305de1 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-19  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-02-15  Jonathan Wakely  <jwakely@redhat.com>
 
        PR libstdc++/81797
index fb3bf67..54dd7ce 100755 (executable)
@@ -81129,18 +81129,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -81180,6 +81190,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 EXTRA_CXX_FLAGS="$EXTRA_CXX_FLAGS $CET_FLAGS"
index 3425da2..82b52bc 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       PR target/84148
+       * configure: Regenerate.
+
 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
 
        Update copyright years.
index aa8a301..1cd1f70 100755 (executable)
@@ -15473,18 +15473,28 @@ else
 fi
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
 case "$host" in
   i[34567]86-*-linux* | x86_64-*-linux*)
     case "$enable_cet" in
       default)
-       # Check if assembler supports CET.
+       # Check if target supports multi-byte NOPs
+       # and if assembler supports CET insn.
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
 main ()
 {
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
 asm ("setssbsy");
+#endif
+
   ;
   return 0;
 }
@@ -15524,6 +15534,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 esac
 if test x$enable_cet = xyes; then
   CET_FLAGS="-fcf-protection -mcet"
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 XCFLAGS="$XCFLAGS $CET_FLAGS"