Chris@101: /* Chris@101: * Distributed under the Boost Software License, Version 1.0. Chris@101: * (See accompanying file LICENSE_1_0.txt or copy at Chris@101: * http://www.boost.org/LICENSE_1_0.txt) Chris@101: * Chris@101: * Copyright (c) 2012 Hartmut Kaiser Chris@101: * Copyright (c) 2014 Andrey Semashev Chris@101: */ Chris@101: /*! Chris@101: * \file atomic/detail/config.hpp Chris@101: * Chris@101: * This header defines configuraion macros for Boost.Atomic Chris@101: */ Chris@16: Chris@101: #ifndef BOOST_ATOMIC_DETAIL_CONFIG_HPP_INCLUDED_ Chris@101: #define BOOST_ATOMIC_DETAIL_CONFIG_HPP_INCLUDED_ Chris@16: Chris@16: #include Chris@16: Chris@16: #ifdef BOOST_HAS_PRAGMA_ONCE Chris@16: #pragma once Chris@16: #endif Chris@16: Chris@101: #if defined(__CUDACC__) Chris@101: // nvcc does not support alternatives in asm statement constraints Chris@101: #define BOOST_ATOMIC_DETAIL_NO_ASM_CONSTRAINT_ALTERNATIVES Chris@101: // nvcc does not support condition code register ("cc") clobber in asm statements Chris@101: #define BOOST_ATOMIC_DETAIL_NO_ASM_CLOBBER_CC Chris@16: #endif Chris@101: Chris@101: #if !defined(BOOST_ATOMIC_DETAIL_NO_ASM_CLOBBER_CC) Chris@101: #define BOOST_ATOMIC_DETAIL_ASM_CLOBBER_CC "cc" Chris@101: #define BOOST_ATOMIC_DETAIL_ASM_CLOBBER_CC_COMMA "cc", Chris@101: #else Chris@101: #define BOOST_ATOMIC_DETAIL_ASM_CLOBBER_CC Chris@101: #define BOOST_ATOMIC_DETAIL_ASM_CLOBBER_CC_COMMA Chris@101: #endif Chris@101: Chris@101: #endif // BOOST_ATOMIC_DETAIL_CONFIG_HPP_INCLUDED_