25
25
#include <immintrin.h>
26
26
#include <wmmintrin.h>
27
27
28
- #ifndef __GNUC__
29
- #define __attribute__ ()
30
- #endif
31
-
32
28
#define CRC_LOAD (s ) \
33
29
do { \
34
30
__m128i xmm_crc0 = _mm_loadu_si128((__m128i *)s->crc0 + 0);\
45
41
_mm_storeu_si128((__m128i *)s->crc0 + 4, xmm_crc_part);\
46
42
} while (0);
47
43
48
- __attribute__((target ("sse4.2,pclmul" )))
49
44
ZLIB_INTERNAL void crc_fold_init (deflate_state * const s )
50
45
{
51
46
CRC_LOAD (s )
@@ -60,7 +55,6 @@ ZLIB_INTERNAL void crc_fold_init(deflate_state *const s)
60
55
s -> strm -> adler = 0 ;
61
56
}
62
57
63
- __attribute__((target ("sse4.2,pclmul" )))
64
58
local void fold_1 (deflate_state * const s ,
65
59
__m128i * xmm_crc0 , __m128i * xmm_crc1 ,
66
60
__m128i * xmm_crc2 , __m128i * xmm_crc3 )
@@ -87,7 +81,6 @@ local void fold_1(deflate_state *const s,
87
81
* xmm_crc3 = _mm_castps_si128 (ps_res );
88
82
}
89
83
90
- __attribute__((target ("sse4.2,pclmul" )))
91
84
local void fold_2 (deflate_state * const s ,
92
85
__m128i * xmm_crc0 , __m128i * xmm_crc1 ,
93
86
__m128i * xmm_crc2 , __m128i * xmm_crc3 )
@@ -122,7 +115,6 @@ local void fold_2(deflate_state *const s,
122
115
* xmm_crc3 = _mm_castps_si128 (ps_res31 );
123
116
}
124
117
125
- __attribute__((target ("sse4.2,pclmul" )))
126
118
local void fold_3 (deflate_state * const s ,
127
119
__m128i * xmm_crc0 , __m128i * xmm_crc1 ,
128
120
__m128i * xmm_crc2 , __m128i * xmm_crc3 )
@@ -163,7 +155,6 @@ local void fold_3(deflate_state *const s,
163
155
* xmm_crc3 = _mm_castps_si128 (ps_res32 );
164
156
}
165
157
166
- __attribute__((target ("sse4.2,pclmul" )))
167
158
local void fold_4 (deflate_state * const s ,
168
159
__m128i * xmm_crc0 , __m128i * xmm_crc1 ,
169
160
__m128i * xmm_crc2 , __m128i * xmm_crc3 )
@@ -230,7 +221,6 @@ local const unsigned zalign(32) pshufb_shf_table[60] = {
230
221
0x0201008f ,0x06050403 ,0x0a090807 ,0x0e0d0c0b /* shl 1 (16 -15)/shr15*/
231
222
};
232
223
233
- __attribute__((target ("sse4.2,pclmul" )))
234
224
local void partial_fold (deflate_state * const s , const size_t len ,
235
225
__m128i * xmm_crc0 , __m128i * xmm_crc1 ,
236
226
__m128i * xmm_crc2 , __m128i * xmm_crc3 ,
@@ -281,7 +271,6 @@ local void partial_fold(deflate_state *const s, const size_t len,
281
271
* xmm_crc3 = _mm_castps_si128 (ps_res );
282
272
}
283
273
284
- __attribute__((target ("sse4.2,pclmul" )))
285
274
ZLIB_INTERNAL void crc_fold_copy (deflate_state * const s ,
286
275
unsigned char * dst , const unsigned char * src , long len )
287
276
{
@@ -438,7 +427,6 @@ local const unsigned zalign(16) crc_mask2[4] = {
438
427
0x00000000 , 0xFFFFFFFF , 0xFFFFFFFF , 0xFFFFFFFF
439
428
};
440
429
441
- __attribute__((target ("sse4.2,pclmul" )))
442
430
unsigned ZLIB_INTERNAL crc_fold_512to32 (deflate_state * const s )
443
431
{
444
432
const __m128i xmm_mask = _mm_load_si128 ((__m128i * )crc_mask );
0 commit comments