Skip to content

Commit f61a8bc

Browse files
committed
[clang][x86] Prevent signed/unsigned comparison warnings on constexpr m128i/m256i/m512i match helpers.
These matches are here to help match hex patterns so consistently match with unsigned uint64_t types
1 parent 86e4beb commit f61a8bc

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

clang/test/CodeGen/X86/builtin_test_helpers.h

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ constexpr bool match_m128d(__m128d v, double a, double b) {
1212
return v[0] == a && v[1] == b;
1313
}
1414

15-
constexpr bool match_m128i(__m128i v, unsigned long long a, unsigned long long b) {
15+
constexpr bool match_m128i(__m128i _v, unsigned long long a, unsigned long long b) {
16+
__v2du v = (__v2du)_v;
1617
return v[0] == a && v[1] == b;
1718
}
1819

@@ -43,7 +44,8 @@ constexpr bool match_m256d(__m256d v, double a, double b, double c, double d) {
4344
return v[0] == a && v[1] == b && v[2] == c && v[3] == d;
4445
}
4546

46-
constexpr bool match_m256i(__m256i v, unsigned long long a, unsigned long long b, unsigned long long c, unsigned long long d) {
47+
constexpr bool match_m256i(__m256i _v, unsigned long long a, unsigned long long b, unsigned long long c, unsigned long long d) {
48+
__v4du v = (__v4du)_v;
4749
return v[0] == a && v[1] == b && v[2] == c && v[3] == d;
4850
}
4951

@@ -55,7 +57,8 @@ constexpr bool match_m512d(__m512d v, double a, double b, double c, double d, do
5557
return v[0] == a && v[1] == b && v[2] == c && v[3] == d && v[4] == e && v[5] == f && v[6] == g && v[7] == h;
5658
}
5759

58-
constexpr bool match_m512i(__m512i v, unsigned long long a, unsigned long long b, unsigned long long c, unsigned long long d, unsigned long long e, unsigned long long f, unsigned long long g, unsigned long long h) {
60+
constexpr bool match_m512i(__m512i _v, unsigned long long a, unsigned long long b, unsigned long long c, unsigned long long d, unsigned long long e, unsigned long long f, unsigned long long g, unsigned long long h) {
61+
__v8du v = (__v8du)_v;
5962
return v[0] == a && v[1] == b && v[2] == c && v[3] == d && v[4] == e && v[5] == f && v[6] == g && v[7] == h;
6063
}
6164

0 commit comments

Comments
 (0)