@@ -49,10 +49,10 @@ using VectorType = __m512i;
49
49
#define VectorSet _mm512_set1_epi32
50
50
#define VectorLoad _mm512_stream_load_si512
51
51
#define VectorLoadAsm (SRC, DST ) \
52
- asm volatile (" vmovaps %[src], %[dst]" : [ dst ] " =v" (DST) : [ src ] "m"(SRC) :)
52
+ asm volatile (" vmovaps %[src], %[dst]" : [dst] " =v" (DST) : [src] "m"(SRC) :)
53
53
#define VectorStreamLoad _mm512_stream_load_si512
54
54
#define VectorStreamLoadAsm (SRC, DST ) \
55
- asm volatile (" vmovntdqa %[src], %[dst]" : [ dst ] " =v" (DST) : [ src ] "m"(SRC) :)
55
+ asm volatile (" vmovntdqa %[src], %[dst]" : [dst] " =v" (DST) : [src] "m"(SRC) :)
56
56
#define VectorStreamWrite _mm512_stream_si512
57
57
58
58
#else
@@ -63,10 +63,10 @@ using VectorType = __m256i;
63
63
#define VectorSet _mm256_set1_epi32
64
64
#define VectorLoad _mm256_stream_load_si256
65
65
#define VectorLoadAsm (SRC, DST ) \
66
- asm volatile (" vmovaps %[src], %[dst]" : [ dst ] " =v" (DST) : [ src ] "m"(SRC) :)
66
+ asm volatile (" vmovaps %[src], %[dst]" : [dst] " =v" (DST) : [src] "m"(SRC) :)
67
67
#define VectorStreamLoad _mm256_stream_load_si256
68
68
#define VectorStreamLoadAsm (SRC, DST ) \
69
- asm volatile (" vmovntdqa %[src], %[dst]" : [ dst ] " =v" (DST) : [ src ] "m"(SRC) :)
69
+ asm volatile (" vmovntdqa %[src], %[dst]" : [dst] " =v" (DST) : [src] "m"(SRC) :)
70
70
#define VectorStreamWrite _mm256_stream_si256
71
71
72
72
#else // ARROW_HAVE_AVX2 not set
@@ -75,10 +75,10 @@ using VectorType = __m128i;
75
75
#define VectorSet _mm_set1_epi32
76
76
#define VectorLoad _mm_stream_load_si128
77
77
#define VectorLoadAsm (SRC, DST ) \
78
- asm volatile (" movaps %[src], %[dst]" : [ dst ] " =x" (DST) : [ src ] "m"(SRC) :)
78
+ asm volatile (" movaps %[src], %[dst]" : [dst] " =x" (DST) : [src] "m"(SRC) :)
79
79
#define VectorStreamLoad _mm_stream_load_si128
80
80
#define VectorStreamLoadAsm (SRC, DST ) \
81
- asm volatile (" movntdqa %[src], %[dst]" : [ dst ] " =x" (DST) : [ src ] "m"(SRC) :)
81
+ asm volatile (" movntdqa %[src], %[dst]" : [dst] " =x" (DST) : [src] "m"(SRC) :)
82
82
#define VectorStreamWrite _mm_stream_si128
83
83
84
84
#endif // ARROW_HAVE_AVX2
@@ -164,22 +164,22 @@ using VectorTypeDual = uint8x16x2_t;
164
164
165
165
static void armv8_stream_load_pair (VectorType* src, VectorType* dst) {
166
166
asm volatile (" LDNP %[reg1], %[reg2], [%[from]]\n\t "
167
- : [ reg1 ] " +r" (*dst), [ reg2 ] " +r" (*(dst + 1 ))
168
- : [ from ] " r" (src));
167
+ : [reg1] " +r" (*dst), [reg2] " +r" (*(dst + 1 ))
168
+ : [from] " r" (src));
169
169
}
170
170
171
171
static void armv8_stream_store_pair (VectorType* src, VectorType* dst) {
172
172
asm volatile (" STNP %[reg1], %[reg2], [%[to]]\n\t "
173
- : [ to ] " +r" (dst)
174
- : [ reg1 ] " r" (*src), [ reg2 ] " r" (*(src + 1 ))
173
+ : [to ] " +r" (dst)
174
+ : [reg1] " r" (*src), [reg2] " r" (*(src + 1 ))
175
175
: " memory" );
176
176
}
177
177
178
178
static void armv8_stream_ldst_pair (VectorType* src, VectorType* dst) {
179
179
asm volatile (
180
180
" LDNP q1, q2, [%[from]]\n\t "
181
181
" STNP q1, q2, [%[to]]\n\t "
182
- : [ from ] " +r" (src), [ to ] " +r" (dst)
182
+ : [from] " +r" (src), [to ] " +r" (dst)
183
183
:
184
184
: " memory" , " v0" , " v1" , " v2" , " v3" );
185
185
}
0 commit comments