GeNN  4.9.0
GPU enhanced Neuronal Networks (GeNN)
gccfeatures.h File Reference
#include <including_a_nonexistent_file_will_stop_some_compilers_from_continuing_with_a_hopeless_task>
#include <assert.h>
#include <stdint.h>

Go to the source code of this file.

Macros

#define R123_GNUC_VERSION   (__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__)
 
#define R123_STATIC_INLINE   static __inline__
 
#define R123_FORCE_INLINE(decl)   decl
 
#define R123_CUDA_DEVICE
 
#define R123_ASSERT(x)   assert(x)
 
#define R123_BUILTIN_EXPECT(expr, likely)   __builtin_expect(expr,likely)
 
#define GNU_CXX11   (__cplusplus>=201103L || (R123_GNUC_VERSION<40700 && defined(__GCC_EXPERIMENTAL_CXX0X__) ))
 
#define R123_USE_CXX11_UNRESTRICTED_UNIONS   ((R123_GNUC_VERSION >= 40600) && GNU_CXX11)
 
#define R123_USE_CXX11_STATIC_ASSERT   ((R123_GNUC_VERSION >= 40300) && GNU_CXX11)
 
#define R123_USE_CXX11_CONSTEXPR   ((R123_GNUC_VERSION >= 40600) && GNU_CXX11)
 
#define R123_USE_CXX11_EXPLICIT_CONVERSIONS   ((R123_GNUC_VERSION >= 40500) && GNU_CXX11)
 
#define R123_USE_CXX11_RANDOM   ((R123_GNUC_VERSION>=40500) && GNU_CXX11)
 
#define R123_USE_CXX11_TYPE_TRAITS   ((R123_GNUC_VERSION>=40400) && GNU_CXX11)
 
#define R123_USE_AES_NI   0
 
#define R123_USE_SSE4_2   0
 
#define R123_USE_SSE4_1   0
 
#define R123_USE_SSE   0
 
#define R123_USE_AES_OPENSSL   0
 
#define R123_USE_GNU_UINT128   0
 
#define R123_USE_ASM_GNU   (defined(__x86_64__)||defined(__i386__))
 
#define R123_USE_CPUID_MSVC   0
 
#define R123_USE_X86INTRIN_H   ((defined(__x86_64__)||defined(__i386__)) && R123_GNUC_VERSION >= 40402)
 
#define R123_USE_IA32INTRIN_H   0
 
#define R123_USE_XMMINTRIN_H   0
 
#define R123_USE_EMMINTRIN_H   (R123_USE_SSE && (R123_GNUC_VERSION < 40402))
 
#define R123_USE_SMMINTRIN_H   ((R123_USE_SSE4_1 || R123_USE_SSE4_2) && (R123_GNUC_VERSION < 40402))
 
#define R123_USE_WMMINTRIN_H   0
 
#define R123_USE_INTRIN_H   0
 
#define R123_USE_MULHILO32_ASM   0
 
#define R123_USE_MULHILO64_ASM   0
 
#define R123_USE_MULHILO64_MSVC_INTRIN   0
 
#define R123_USE_MULHILO64_CUDA_INTRIN   0
 
#define R123_USE_MULHILO64_OPENCL_INTRIN   0
 
#define R123_USE_MULHILO64_MULHI_INTRIN   (defined(__powerpc64__))
 
#define R123_MULHILO64_MULHI_INTRIN   __mulhdu
 
#define R123_USE_MULHILO32_MULHI_INTRIN   0
 
#define R123_MULHILO32_MULHI_INTRIN   __mulhwu
 
#define __STDC_CONSTANT_MACROS
 

Macro Definition Documentation

◆ __STDC_CONSTANT_MACROS

#define __STDC_CONSTANT_MACROS

◆ GNU_CXX11

#define GNU_CXX11   (__cplusplus>=201103L || (R123_GNUC_VERSION<40700 && defined(__GCC_EXPERIMENTAL_CXX0X__) ))

◆ R123_ASSERT

#define R123_ASSERT (   x)    assert(x)

◆ R123_BUILTIN_EXPECT

#define R123_BUILTIN_EXPECT (   expr,
  likely 
)    __builtin_expect(expr,likely)

◆ R123_CUDA_DEVICE

#define R123_CUDA_DEVICE

◆ R123_FORCE_INLINE

#define R123_FORCE_INLINE (   decl)    decl

◆ R123_GNUC_VERSION

#define R123_GNUC_VERSION   (__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__)

◆ R123_MULHILO32_MULHI_INTRIN

#define R123_MULHILO32_MULHI_INTRIN   __mulhwu

◆ R123_MULHILO64_MULHI_INTRIN

#define R123_MULHILO64_MULHI_INTRIN   __mulhdu

◆ R123_STATIC_INLINE

#define R123_STATIC_INLINE   static __inline__

◆ R123_USE_AES_NI

#define R123_USE_AES_NI   0

◆ R123_USE_AES_OPENSSL

#define R123_USE_AES_OPENSSL   0

◆ R123_USE_ASM_GNU

#define R123_USE_ASM_GNU   (defined(__x86_64__)||defined(__i386__))

◆ R123_USE_CPUID_MSVC

#define R123_USE_CPUID_MSVC   0

◆ R123_USE_CXX11_CONSTEXPR

#define R123_USE_CXX11_CONSTEXPR   ((R123_GNUC_VERSION >= 40600) && GNU_CXX11)

◆ R123_USE_CXX11_EXPLICIT_CONVERSIONS

#define R123_USE_CXX11_EXPLICIT_CONVERSIONS   ((R123_GNUC_VERSION >= 40500) && GNU_CXX11)

◆ R123_USE_CXX11_RANDOM

#define R123_USE_CXX11_RANDOM   ((R123_GNUC_VERSION>=40500) && GNU_CXX11)

◆ R123_USE_CXX11_STATIC_ASSERT

#define R123_USE_CXX11_STATIC_ASSERT   ((R123_GNUC_VERSION >= 40300) && GNU_CXX11)

◆ R123_USE_CXX11_TYPE_TRAITS

#define R123_USE_CXX11_TYPE_TRAITS   ((R123_GNUC_VERSION>=40400) && GNU_CXX11)

◆ R123_USE_CXX11_UNRESTRICTED_UNIONS

#define R123_USE_CXX11_UNRESTRICTED_UNIONS   ((R123_GNUC_VERSION >= 40600) && GNU_CXX11)

◆ R123_USE_EMMINTRIN_H

#define R123_USE_EMMINTRIN_H   (R123_USE_SSE && (R123_GNUC_VERSION < 40402))

◆ R123_USE_GNU_UINT128

#define R123_USE_GNU_UINT128   0

◆ R123_USE_IA32INTRIN_H

#define R123_USE_IA32INTRIN_H   0

◆ R123_USE_INTRIN_H

#define R123_USE_INTRIN_H   0

◆ R123_USE_MULHILO32_ASM

#define R123_USE_MULHILO32_ASM   0

◆ R123_USE_MULHILO32_MULHI_INTRIN

#define R123_USE_MULHILO32_MULHI_INTRIN   0

◆ R123_USE_MULHILO64_ASM

#define R123_USE_MULHILO64_ASM   0

◆ R123_USE_MULHILO64_CUDA_INTRIN

#define R123_USE_MULHILO64_CUDA_INTRIN   0

◆ R123_USE_MULHILO64_MSVC_INTRIN

#define R123_USE_MULHILO64_MSVC_INTRIN   0

◆ R123_USE_MULHILO64_MULHI_INTRIN

#define R123_USE_MULHILO64_MULHI_INTRIN   (defined(__powerpc64__))

◆ R123_USE_MULHILO64_OPENCL_INTRIN

#define R123_USE_MULHILO64_OPENCL_INTRIN   0

◆ R123_USE_SMMINTRIN_H

#define R123_USE_SMMINTRIN_H   ((R123_USE_SSE4_1 || R123_USE_SSE4_2) && (R123_GNUC_VERSION < 40402))

◆ R123_USE_SSE

#define R123_USE_SSE   0

◆ R123_USE_SSE4_1

#define R123_USE_SSE4_1   0

◆ R123_USE_SSE4_2

#define R123_USE_SSE4_2   0

◆ R123_USE_WMMINTRIN_H

#define R123_USE_WMMINTRIN_H   0

◆ R123_USE_X86INTRIN_H

#define R123_USE_X86INTRIN_H   ((defined(__x86_64__)||defined(__i386__)) && R123_GNUC_VERSION >= 40402)

◆ R123_USE_XMMINTRIN_H

#define R123_USE_XMMINTRIN_H   0