Mercurial > hg > CbC > CbC_gcc
view config/cet.m4 @ 155:da32f4b04d38
fix __code name conflict
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 17:51:46 +0900 |
parents | 84e7813d76e9 |
children |
line wrap: on
line source
dnl dnl GCC_CET_FLAGS dnl (SHELL-CODE_HANDLER) dnl AC_DEFUN([GCC_CET_FLAGS],[dnl GCC_ENABLE(cet, no, ,[enable Intel CET in target libraries], permit yes|no|auto) AC_MSG_CHECKING([for CET support]) case "$host" in i[[34567]]86-*-linux* | x86_64-*-linux*) case "$enable_cet" in auto) # Check if target supports multi-byte NOPs # and if assembler supports CET insn. AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( [], [ #if !defined(__SSE2__) #error target does not support multi-byte NOPs #else asm ("setssbsy"); #endif ])], [enable_cet=yes], [enable_cet=no]) ;; yes) # Check if assembler supports CET. AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( [], [asm ("setssbsy");])], [], [AC_MSG_ERROR([assembler with CET support is required for --enable-cet])]) ;; esac ;; *) enable_cet=no ;; esac if test x$enable_cet = xyes; then $1="-fcf-protection -mshstk" AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi ])