Skip to content

Commit 6c14688

Browse files
committed
[X86] Reverse *_set_ph and *_setr_ph 's set order.
Reviewed By: pengfei Differential Revision: https://reviews.llvm.org/D107946
1 parent d4b193c commit 6c14688

File tree

2 files changed

+24
-27
lines changed

2 files changed

+24
-27
lines changed

clang/lib/Headers/avx512fp16intrin.h

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -82,22 +82,20 @@ _mm512_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4,
8282
_Float16 __h21, _Float16 __h22, _Float16 __h23, _Float16 __h24,
8383
_Float16 __h25, _Float16 __h26, _Float16 __h27, _Float16 __h28,
8484
_Float16 __h29, _Float16 __h30, _Float16 __h31, _Float16 __h32) {
85-
return (__m512h)(__v32hf){__h1, __h2, __h3, __h4, __h5, __h6, __h7,
86-
__h8, __h9, __h10, __h11, __h12, __h13, __h14,
87-
__h15, __h16, __h17, __h18, __h19, __h20, __h21,
88-
__h22, __h23, __h24, __h25, __h26, __h27, __h28,
89-
__h29, __h30, __h31, __h32};
90-
}
91-
92-
#define _mm512_setr_ph(__h1, __h2, __h3, __h4, __h5, __h6, __h7, __h8, __h9, \
93-
__h10, __h11, __h12, __h13, __h14, __h15, __h16, __h17, \
94-
__h18, __h19, __h20, __h21, __h22, __h23, __h24, __h25, \
95-
__h26, __h27, __h28, __h29, __h30, __h31, __h32) \
96-
_mm512_set_ph((__h32), (__h31), (__h30), (__h29), (__h28), (__h27), (__h26), \
97-
(__h25), (__h24), (__h23), (__h22), (__h21), (__h20), (__h19), \
98-
(__h18), (__h17), (__h16), (__h15), (__h14), (__h13), (__h12), \
99-
(__h11), (__h10), (__h9), (__h8), (__h7), (__h6), (__h5), \
100-
(__h4), (__h3), (__h2), (__h1))
85+
return (__m512h)(__v32hf){__h32, __h31, __h30, __h29, __h28, __h27, __h26,
86+
__h25, __h24, __h23, __h22, __h21, __h20, __h19,
87+
__h18, __h17, __h16, __h15, __h14, __h13, __h12,
88+
__h11, __h10, __h9, __h8, __h7, __h6, __h5,
89+
__h4, __h3, __h2, __h1};
90+
}
91+
92+
#define _mm512_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8, h9, h10, h11, h12, h13, \
93+
h14, h15, h16, h17, h18, h19, h20, h21, h22, h23, h24, \
94+
h25, h26, h27, h28, h29, h30, h31, h32) \
95+
_mm512_set_ph((h32), (h31), (h30), (h29), (h28), (h27), (h26), (h25), (h24), \
96+
(h23), (h22), (h21), (h20), (h19), (h18), (h17), (h16), (h15), \
97+
(h14), (h13), (h12), (h11), (h10), (h9), (h8), (h7), (h6), \
98+
(h5), (h4), (h3), (h2), (h1))
10199

102100
static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_castph_ps(__m128h __a) {
103101
return (__m128)__a;

clang/lib/Headers/avx512vlfp16intrin.h

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -48,27 +48,26 @@ static __inline __m256h __DEFAULT_FN_ATTRS256 _mm256_set1_ph(_Float16 __h) {
4848
static __inline __m128h __DEFAULT_FN_ATTRS128
4949
_mm_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4,
5050
_Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8) {
51-
return (__m128h)(__v8hf){__h1, __h2, __h3, __h4, __h5, __h6, __h7, __h8};
51+
return (__m128h)(__v8hf){__h8, __h7, __h6, __h5, __h4, __h3, __h2, __h1};
5252
}
5353

5454
static __inline __m256h __DEFAULT_FN_ATTRS256
5555
_mm256_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4,
5656
_Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8,
5757
_Float16 __h9, _Float16 __h10, _Float16 __h11, _Float16 __h12,
5858
_Float16 __h13, _Float16 __h14, _Float16 __h15, _Float16 __h16) {
59-
return (__m256h)(__v16hf){__h1, __h2, __h3, __h4, __h5, __h6,
60-
__h7, __h8, __h9, __h10, __h11, __h12,
61-
__h13, __h14, __h15, __h16};
59+
return (__m256h)(__v16hf){__h16, __h15, __h14, __h13, __h12, __h11,
60+
__h10, __h9, __h8, __h7, __h6, __h5,
61+
__h4, __h3, __h2, __h1};
6262
}
6363

64-
#define _mm_setr_ph(__h1, __h2, __h3, __h4, __h5, __h6, __h7, __h8) \
65-
_mm_set_ph((__h8), (__h7), (__h6), (__h5), (__h4), (__h3), (__h2), (__h1))
64+
#define _mm_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8) \
65+
_mm_set_ph((h8), (h7), (h6), (h5), (h4), (h3), (h2), (h1))
6666

67-
#define _mm256_setr_ph(__h1, __h2, __h3, __h4, __h5, __h6, __h7, __h8, __h9, \
68-
__h10, __h11, __h12, __h13, __h14, __h15, __h16) \
69-
_mm256_set_ph((__h16), (__h15), (__h14), (__h13), (__h12), (__h11), (__h10), \
70-
(__h9), (__h8), (__h7), (__h6), (__h5), (__h4), (__h3), \
71-
(__h2), (__h1))
67+
#define _mm256_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8, h9, h10, h11, h12, h13, \
68+
h14, h15, h16) \
69+
_mm256_set_ph((h16), (h15), (h14), (h13), (h12), (h11), (h10), (h9), (h8), \
70+
(h7), (h6), (h5), (h4), (h3), (h2), (h1))
7271

7372
static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_abs_ph(__m256h __A) {
7473
return (__m256h)_mm256_and_epi32(_mm256_set1_epi32(0x7FFF7FFF), (__m256i)__A);

0 commit comments

Comments
 (0)