Skip to content

Commit 27f4e31

Browse files
committed
adding other numeric types test
1 parent 20eaa93 commit 27f4e31

3 files changed

Lines changed: 26 additions & 6 deletions

File tree

tools/clang/unittests/HLSLExec/LongVectorOps.def

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ OP(Ternary, Select, 3, "TestSelect", "", " -DFUNC_TEST_SELECT=1",
139139
"LongVectorOp", SelectCond, Default2, Default3)
140140

141141
OP(Unary, IsFinite, 1, "TestIsFinite", "", " -DFUNC_TEST_ISFINITE=1",
142-
"LongVectorOp", Default1, Default2, Infinite)
142+
"LongVectorOp", Infinite, Default2, Default3)
143143

144144

145145
// For the 'any' and 'all' reduction operation, we test with three different

tools/clang/unittests/HLSLExec/LongVectorTestData.h

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,7 @@ INPUT_SET(InputSet::Default3, true, false, true, false, true, true, true, true,
262262
INPUT_SET(InputSet::Zero, false);
263263
INPUT_SET(InputSet::NoZero, true);
264264
INPUT_SET(InputSet::SelectCond, false, true);
265+
INPUT_SET(InputSet::Infinite, std::numeric_limits<HLSLBool_t>::infinity());
265266
END_INPUT_SETS()
266267

267268
BEGIN_INPUT_SETS(int16_t)
@@ -275,6 +276,8 @@ INPUT_SET(InputSet::Bitwise, std::numeric_limits<int16_t>::min(), -1, 0, 1, 3,
275276
6, 9, 0x5555, static_cast<int16_t>(0xAAAA),
276277
std::numeric_limits<int16_t>::max());
277278
INPUT_SET(InputSet::SelectCond, 0, 1);
279+
INPUT_SET(InputSet::Infinite, std::numeric_limits<int16_t>::infinity(),
280+
-std::numeric_limits<int16_t>::infinity());
278281
END_INPUT_SETS()
279282

280283
BEGIN_INPUT_SETS(int32_t)
@@ -288,6 +291,8 @@ INPUT_SET(InputSet::Bitwise, std::numeric_limits<int32_t>::min(), -1, 0, 1, 3,
288291
6, 9, 0x55555555, static_cast<int32_t>(0xAAAAAAAA),
289292
std::numeric_limits<int32_t>::max());
290293
INPUT_SET(InputSet::SelectCond, 0, 1);
294+
INPUT_SET(InputSet::Infinite, std::numeric_limits<int32_t>::infinity(),
295+
-std::numeric_limits<int32_t>::infinity());
291296
END_INPUT_SETS()
292297

293298
BEGIN_INPUT_SETS(int64_t)
@@ -301,6 +306,8 @@ INPUT_SET(InputSet::Bitwise, std::numeric_limits<int64_t>::min(), -1, 0, 1, 3,
301306
6, 9, 0x5555555555555555LL, 0xAAAAAAAAAAAAAAAALL,
302307
std::numeric_limits<int64_t>::max());
303308
INPUT_SET(InputSet::SelectCond, 0, 1);
309+
INPUT_SET(InputSet::Infinite, std::numeric_limits<int64_t>::infinity(),
310+
-std::numeric_limits<int64_t>::infinity());
304311
END_INPUT_SETS()
305312

306313
BEGIN_INPUT_SETS(uint16_t)
@@ -311,6 +318,7 @@ INPUT_SET(InputSet::BitShiftRhs, 1, 6, 3, 0, 9, 3, 12, 13, 14, 15);
311318
INPUT_SET(InputSet::Bitwise, 0, 1, 3, 6, 9, 0x5555, 0xAAAA, 0x8000, 127,
312319
std::numeric_limits<uint16_t>::max());
313320
INPUT_SET(InputSet::SelectCond, 0, 1);
321+
INPUT_SET(InputSet::Infinite, std::numeric_limits<uint16_t>::infinity());
314322
END_INPUT_SETS()
315323

316324
BEGIN_INPUT_SETS(uint32_t)
@@ -321,6 +329,7 @@ INPUT_SET(InputSet::BitShiftRhs, 1, 6, 3, 0, 9, 3, 30, 31, 32);
321329
INPUT_SET(InputSet::Bitwise, 0, 1, 3, 6, 9, 0x55555555, 0xAAAAAAAA, 0x80000000,
322330
127, std::numeric_limits<uint32_t>::max());
323331
INPUT_SET(InputSet::SelectCond, 0, 1);
332+
INPUT_SET(InputSet::Infinite, std::numeric_limits<uint32_t>::infinity());
324333
END_INPUT_SETS()
325334

326335
BEGIN_INPUT_SETS(uint64_t)
@@ -332,6 +341,7 @@ INPUT_SET(InputSet::Bitwise, 0, 1, 3, 6, 9, 0x5555555555555555,
332341
0xAAAAAAAAAAAAAAAA, 0x8000000000000000, 127,
333342
std::numeric_limits<uint64_t>::max());
334343
INPUT_SET(InputSet::SelectCond, 0, 1);
344+
INPUT_SET(InputSet::Infinite, std::numeric_limits<uint64_t>::infinity());
335345
END_INPUT_SETS()
336346

337347
BEGIN_INPUT_SETS(HLSLHalf_t)
@@ -348,6 +358,8 @@ INPUT_SET(InputSet::RangeOne, 0.331, 0.727, -0.957, 0.677, -0.025, 0.495, 0.855,
348358
INPUT_SET(InputSet::Positive, 1.0, 1.0, 342.0, 0.01, 5531.0, 0.01, 1.0, 0.01,
349359
331.2330, 3250.01);
350360
INPUT_SET(InputSet::SelectCond, 0.0, 1.0);
361+
INPUT_SET(InputSet::Infinite, std::numeric_limits<HLSLHalf_t>::infinity(),
362+
-std::numeric_limits<HLSLHalf_t>::infinity());
351363
END_INPUT_SETS()
352364

353365
BEGIN_INPUT_SETS(float)
@@ -364,8 +376,8 @@ INPUT_SET(InputSet::RangeOne, 0.727f, 0.331f, -0.957f, 0.677f, -0.025f, 0.495f,
364376
INPUT_SET(InputSet::Positive, 1.0f, 1.0f, 65535.0f, 0.01f, 5531.0f, 0.01f, 1.0f,
365377
0.01f, 331.2330f, 3250.01f);
366378
INPUT_SET(InputSet::SelectCond, 0.0f, 1.0f);
367-
INPUT_SET(InputSet::Infinite,
368-
std::numeric_limits<float>::infinity(), -std::numeric_limits<float>::infinity(), 32);
379+
INPUT_SET(InputSet::Infinite, std::numeric_limits<float>::infinity(),
380+
-std::numeric_limits<float>::infinity());
369381
END_INPUT_SETS()
370382

371383
BEGIN_INPUT_SETS(double)
@@ -384,6 +396,8 @@ INPUT_SET(InputSet::SplitDouble, 0.0, -1.0, 1.0, -1.0, 12345678.87654321, -1.0,
384396
INPUT_SET(InputSet::Positive, 1.0, 1.0, 65535.0, 0.01, 5531.0, 0.01, 1.0, 0.01,
385397
331.2330, 3250.01);
386398
INPUT_SET(InputSet::SelectCond, 0.0, 1.0);
399+
INPUT_SET(InputSet::Infinite, std::numeric_limits<double>::infinity(),
400+
-std::numeric_limits<double>::infinity());
387401
END_INPUT_SETS()
388402

389403
#undef BEGIN_INPUT_SETS

tools/clang/unittests/HLSLExec/LongVectors.cpp

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1491,6 +1491,15 @@ class DxilConf_SM69_Vectorized {
14911491
HLK_TEST(ShuffleVector, float);
14921492
HLK_TEST(ShuffleVector, double);
14931493

1494+
HLK_TEST(IsFinite, int16_t);
1495+
HLK_TEST(IsFinite, int32_t);
1496+
HLK_TEST(IsFinite, int64_t);
1497+
HLK_TEST(IsFinite, uint16_t);
1498+
HLK_TEST(IsFinite, uint32_t);
1499+
HLK_TEST(IsFinite, uint64_t);
1500+
HLK_TEST(IsFinite, HLSLHalf_t);
1501+
HLK_TEST(IsFinite, float);
1502+
HLK_TEST(IsFinite, double);
14941503
// Explicit Cast
14951504

14961505
HLK_TEST(CastToInt16, HLSLBool_t);
@@ -1926,9 +1935,6 @@ class DxilConf_SM69_Vectorized {
19261935
HLK_TEST(LoadAndStore_RD_SB_SRV, double);
19271936
HLK_TEST(LoadAndStore_RD_SB_UAV, double);
19281937

1929-
// Boolean Float
1930-
HLK_TEST(IsFinite, float)
1931-
19321938
private:
19331939
bool Initialized = false;
19341940
bool VerboseLogging = false;

0 commit comments

Comments
 (0)