File: simde

package info (click to toggle)
bowtie2 2.5.5-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 27,556 kB
  • sloc: cpp: 64,301; perl: 7,232; sh: 1,131; python: 993; makefile: 606; ansic: 122
file content (76 lines) | stat: -rw-r--r-- 2,677 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Author: Michael R. Crusoe <crusoe@debian.org>
Description: Enable SIMDE everywhere
Forwarded: not-needed
--- a/sse_wrap.h
+++ b/sse_wrap.h
@@ -27,8 +27,9 @@
 #ifndef SSE_WRAP_H_
 #define SSE_WRAP_H_
 
+#define SIMDE_ENABLE_NATIVE_ALIASES
 #ifdef SSE_AVX2
-#include <immintrin.h>
+#include <simde/x86/avx2.h>
 #define NBYTES_PER_REG 32
 #define BYTES_LOG2_PER_REG 5
 #define SSE_MASK_ALL ((int) 0xffffffff)
@@ -109,49 +110,13 @@
 		outval = outval & 0x00ff; \
 }
 
-
 #else /* no SSE_AVX2 */
 
-#if defined(__aarch64__) || defined(__s390x__) || defined(__powerpc__)
-#include "simde/x86/sse2.h"
-#else
-#include <emmintrin.h>
-#endif
-
+#include <simde/x86/sse2.h>
 #define NBYTES_PER_REG 16
 #define BYTES_LOG2_PER_REG 4
 #define SSE_MASK_ALL 0xffff
 
-#if defined(__aarch64__) || defined(__s390x__) || defined(__powerpc__)
-typedef simde__m128i SSERegI;
-#define sse_adds_epi16(x, y) simde_mm_adds_epi16(x, y)
-#define sse_adds_epu8(x, y) simde_mm_adds_epu8(x, y)
-#define sse_cmpeq_epi16(x, y) simde_mm_cmpeq_epi16(x, y)
-#define sse_cmpeq_epi8(x, y) simde_mm_cmpeq_epi8(x, y)
-#define sse_cmpgt_epi16(x, y) simde_mm_cmpgt_epi16(x, y)
-#define sse_cmpgt_epi8(x, y) simde_mm_cmpgt_epi8(x, y)
-#define sse_cmplt_epi16(x, y) simde_mm_cmplt_epi16(x, y)
-#define sse_cmplt_epu8(x, y) simde_mm_cmplt_epu8(x, y)
-#define sse_extract_epi16(x, y) simde_mm_extract_epi16(x, y)
-#define sse_insert_epi16(x, y, z) simde_mm_insert_epi16(x, y, z)
-#define sse_load_siall(x) simde_mm_load_si128(x)
-#define sse_max_epi16(x, y) simde_mm_max_epi16(x, y)
-#define sse_max_epu8(x, y) simde_mm_max_epu8(x, y)
-#define sse_movemask_epi8(x) simde_mm_movemask_epi8(x)
-#define sse_or_siall(x, y) simde_mm_or_si128(x, y)
-#define sse_setzero_siall() simde_mm_setzero_si128()
-#define sse_slli_epi16(x, y) simde_mm_slli_epi16(x, y)
-#define sse_slli_siall(x, y) simde_mm_slli_si128(x, y)
-#define sse_srli_epi16(x, y) simde_mm_srli_epi16(x, y)
-#define sse_srli_epu8(x, y) simde_mm_srli_epu8(x, y)
-#define sse_srli_siall(x, y) simde_mm_srli_si128(x, y)
-#define sse_store_siall(x, y) simde_mm_store_si128(x, y)
-#define sse_subs_epi16(x, y) simde_mm_subs_epi16(x, y)
-#define sse_subs_epu8(x, y) simde_mm_subs_epu8(x, y)
-#define sse_xor_siall(x, y) simde_mm_xor_si128(x, y)
-#define sse_set1_epi16(x) simde_mm_set1_epi16(x)
-
-#else
 typedef __m128i SSERegI;
 #define sse_adds_epi16(x, y) _mm_adds_epi16(x, y)
 #define sse_adds_epu8(x, y) _mm_adds_epu8(x, y)
@@ -180,8 +145,6 @@
 #define sse_xor_siall(x, y) _mm_xor_si128(x, y)
 #define sse_set1_epi16(x) _mm_set1_epi16(x)
 
-#endif
-
 /* compute the max val of a vector */
 #define sse_max_score_i16(inval, outval) { \
 		SSERegI vlmax = inval; \