diff --git a/config/cc/gcc.in b/config/cc/gcc.in index 01d72536..8180b2a6 100644 --- a/config/cc/gcc.in +++ b/config/cc/gcc.in @@ -279,6 +279,13 @@ config CC_CXA_ATEXIT If you get the missing symbol "__cxa_atexit" when building C++ programs, you might want to try disabling this option. +config CC_GCC_TM_CLONE_REGISTRY + bool + prompt "Use TM clone registry" + depends on GCC_10_or_later + help + Enable GCC transactional memory clone registry in libgcc. + config CC_GCC_DISABLE_PCH bool prompt "Do not build PCH" diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh index cccd654b..c505314e 100644 --- a/scripts/build/cc/gcc.sh +++ b/scripts/build/cc/gcc.sh @@ -396,6 +396,12 @@ do_gcc_core_backend() { extra_config+=("--disable-__cxa_atexit") fi + if [ "${CT_CC_GCC_TM_CLONE_REGISTRY}" = "y" ]; then + extra_config+=("--enable-tm-clone-registry") + else + extra_config+=("--disable-tm-clone-registry") + fi + if [ -n "${CT_CC_GCC_ENABLE_CXX_FLAGS}" \ -a "${mode}" = "baremetal" ]; then extra_config+=("--enable-cxx-flags=${CT_CC_GCC_ENABLE_CXX_FLAGS}") @@ -998,6 +1004,12 @@ do_gcc_backend() { extra_config+=("--disable-__cxa_atexit") fi + if [ "${CT_CC_GCC_TM_CLONE_REGISTRY}" = "y" ]; then + extra_config+=("--enable-tm-clone-registry") + else + extra_config+=("--disable-tm-clone-registry") + fi + if [ -n "${CT_CC_GCC_ENABLE_CXX_FLAGS}" ]; then extra_config+=("--enable-cxx-flags=${CT_CC_GCC_ENABLE_CXX_FLAGS}") fi