summaryrefslogtreecommitdiff
path: root/numpy/core/setup_common.py
diff options
context:
space:
mode:
authorJulian Taylor <jtaylor.debian@googlemail.com>2013-09-21 21:16:36 +0200
committerJulian Taylor <jtaylor.debian@googlemail.com>2013-09-21 21:31:32 +0200
commitfd2e1104718490be8504f8d6665205ca594a37e7 (patch)
tree0a2c7e48982a81e44296725eaea97420a06520ff /numpy/core/setup_common.py
parentfde3deecd2a243721c5c3fe6f71afe1c21182dea (diff)
downloadnumpy-fd2e1104718490be8504f8d6665205ca594a37e7.tar.gz
BUG: make checking for sse intrinsics more robust
check for two intrinsics from [ex]mmintrin.h instead of only checking the existance of the headers. E.g. mingw 4.2 emmintrin.h can be included even if SSE2 is disabled. closes #3760
Diffstat (limited to 'numpy/core/setup_common.py')
-rw-r--r--numpy/core/setup_common.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/numpy/core/setup_common.py b/numpy/core/setup_common.py
index 1f3e6b44e..bad3607fa 100644
--- a/numpy/core/setup_common.py
+++ b/numpy/core/setup_common.py
@@ -107,7 +107,8 @@ OPTIONAL_HEADERS = [
"emmintrin.h", # SSE2
]
-# optional gcc compiler builtins and their call arguments
+# optional gcc compiler builtins and their call arguments and optional a
+# required header
# call arguments are required as the compiler will do strict signature checking
OPTIONAL_INTRINSICS = [("__builtin_isnan", '5.'),
("__builtin_isinf", '5.'),
@@ -115,6 +116,8 @@ OPTIONAL_INTRINSICS = [("__builtin_isnan", '5.'),
("__builtin_bswap32", '5u'),
("__builtin_bswap64", '5u'),
("__builtin_expect", '5, 0'),
+ ("_mm_load_ps", '(float*)0', "xmmintrin.h"), # SSE
+ ("_mm_load_pd", '(double*)0', "emmintrin.h"), # SSE2
]
# gcc function attributes