Adding support for testing BUILD.gn

BUG=tint:50

Change-Id: Ie19a1af6a97a49a67dcc7474991c960b986ddebe
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19782
Reviewed-by: David Neto <dneto@google.com>
This commit is contained in:
Ryan Harrison
2020-04-17 13:18:20 +00:00
committed by David Neto
parent 366b74c364
commit 0a196c13c8
143 changed files with 1903 additions and 1448 deletions

View File

@@ -33,12 +33,12 @@ TEST_F(BinaryWriterTest, Preamble) {
bw.WriteHeader(5);
auto res = bw.result();
ASSERT_EQ(res.size(), 5);
ASSERT_EQ(res.size(), 5u);
EXPECT_EQ(res[0], spv::MagicNumber);
EXPECT_EQ(res[1], 0x00010300); // SPIR-V 1.3
EXPECT_EQ(res[2], 0); // Generator ID
EXPECT_EQ(res[3], 5); // ID Bound
EXPECT_EQ(res[4], 0); // Reserved
EXPECT_EQ(res[1], 0x00010300u); // SPIR-V 1.3
EXPECT_EQ(res[2], 0u); // Generator ID
EXPECT_EQ(res[3], 5u); // ID Bound
EXPECT_EQ(res[4], 0u); // Reserved
}
TEST_F(BinaryWriterTest, Float) {
@@ -48,7 +48,7 @@ TEST_F(BinaryWriterTest, Float) {
bw.WriteBuilder(b);
auto res = bw.result();
ASSERT_EQ(res.size(), 2);
ASSERT_EQ(res.size(), 2u);
float f;
memcpy(&f, res.data() + 1, 4);
EXPECT_EQ(f, 2.4f);
@@ -61,8 +61,8 @@ TEST_F(BinaryWriterTest, Int) {
bw.WriteBuilder(b);
auto res = bw.result();
ASSERT_EQ(res.size(), 2);
EXPECT_EQ(res[1], 2);
ASSERT_EQ(res.size(), 2u);
EXPECT_EQ(res[1], 2u);
}
TEST_F(BinaryWriterTest, String) {
@@ -72,7 +72,7 @@ TEST_F(BinaryWriterTest, String) {
bw.WriteBuilder(b);
auto res = bw.result();
ASSERT_EQ(res.size(), 4);
ASSERT_EQ(res.size(), 4u);
uint8_t* v = reinterpret_cast<uint8_t*>(res.data() + 1);
EXPECT_EQ(v[0], 'm');
@@ -96,7 +96,7 @@ TEST_F(BinaryWriterTest, String_Multiple4Length) {
bw.WriteBuilder(b);
auto res = bw.result();
ASSERT_EQ(res.size(), 4);
ASSERT_EQ(res.size(), 4u);
uint8_t* v = reinterpret_cast<uint8_t*>(res.data() + 1);
EXPECT_EQ(v[0], 'm');
@@ -122,9 +122,9 @@ TEST_F(BinaryWriterTest, TestInstructionWriter) {
bw.WriteInstruction(i2);
auto res = bw.result();
ASSERT_EQ(res.size(), 4);
EXPECT_EQ(res[1], 2);
EXPECT_EQ(res[3], 4);
ASSERT_EQ(res.size(), 4u);
EXPECT_EQ(res[1], 2u);
EXPECT_EQ(res[3], 4u);
}
} // namespace

View File

@@ -67,7 +67,7 @@ TEST_P(BinaryArithSignedIntegerTest, Scalar) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 1
%2 = OpConstant %1 3
%3 = OpConstant %1 4
@@ -110,7 +110,7 @@ TEST_P(BinaryArithSignedIntegerTest, Vector) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 1
%1 = OpTypeVector %2 3
%3 = OpConstant %2 1
@@ -155,7 +155,7 @@ TEST_P(BinaryArithUnsignedIntegerTest, Scalar) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 0
%2 = OpConstant %1 3
%3 = OpConstant %1 4
@@ -198,7 +198,7 @@ TEST_P(BinaryArithUnsignedIntegerTest, Vector) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 0
%1 = OpTypeVector %2 3
%3 = OpConstant %2 1
@@ -243,7 +243,7 @@ TEST_P(BinaryArithFloatTest, Scalar) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeFloat 32
%2 = OpConstant %1 3.20000005
%3 = OpConstant %1 4.5
@@ -287,7 +287,7 @@ TEST_P(BinaryArithFloatTest, Vector) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
%1 = OpTypeVector %2 3
%3 = OpConstant %2 1
@@ -325,7 +325,7 @@ TEST_P(BinaryCompareUnsignedIntegerTest, Scalar) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 0
%2 = OpConstant %1 3
%3 = OpConstant %1 4
@@ -370,7 +370,7 @@ TEST_P(BinaryCompareUnsignedIntegerTest, Vector) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 0
%1 = OpTypeVector %2 3
%3 = OpConstant %2 1
@@ -412,7 +412,7 @@ TEST_P(BinaryCompareSignedIntegerTest, Scalar) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 1
%2 = OpConstant %1 3
%3 = OpConstant %1 4
@@ -457,7 +457,7 @@ TEST_P(BinaryCompareSignedIntegerTest, Vector) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 1
%1 = OpTypeVector %2 3
%3 = OpConstant %2 1
@@ -499,7 +499,7 @@ TEST_P(BinaryCompareFloatTest, Scalar) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 4u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeFloat 32
%2 = OpConstant %1 3.20000005
%3 = OpConstant %1 4.5
@@ -544,7 +544,7 @@ TEST_P(BinaryCompareFloatTest, Vector) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
%1 = OpTypeVector %2 3
%3 = OpConstant %2 1
@@ -594,7 +594,7 @@ TEST_F(BuilderTest, Binary_Multiply_VectorScalar) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
%1 = OpTypeVector %2 3
%3 = OpConstant %2 1
@@ -632,7 +632,7 @@ TEST_F(BuilderTest, Binary_Multiply_ScalarVector) {
Builder b;
b.push_function(Function{});
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 5u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeFloat 32
%2 = OpConstant %1 1
%3 = OpTypeVector %1 3
@@ -665,7 +665,7 @@ TEST_F(BuilderTest, Binary_Multiply_MatrixScalar) {
b.push_function(Function{});
ASSERT_TRUE(b.GenerateGlobalVariable(var.get())) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 8) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 8u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%5 = OpTypeFloat 32
%4 = OpTypeVector %5 3
%3 = OpTypeMatrix %4 3
@@ -702,7 +702,7 @@ TEST_F(BuilderTest, Binary_Multiply_ScalarMatrix) {
b.push_function(Function{});
ASSERT_TRUE(b.GenerateGlobalVariable(var.get())) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 8) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 8u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%5 = OpTypeFloat 32
%4 = OpTypeVector %5 3
%3 = OpTypeMatrix %4 3
@@ -748,7 +748,7 @@ TEST_F(BuilderTest, Binary_Multiply_MatrixVector) {
b.push_function(Function{});
ASSERT_TRUE(b.GenerateGlobalVariable(var.get())) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 9) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 9u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%5 = OpTypeFloat 32
%4 = OpTypeVector %5 3
%3 = OpTypeMatrix %4 3
@@ -796,7 +796,7 @@ TEST_F(BuilderTest, Binary_Multiply_VectorMatrix) {
b.push_function(Function{});
ASSERT_TRUE(b.GenerateGlobalVariable(var.get())) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 9) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 9u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%5 = OpTypeFloat 32
%4 = OpTypeVector %5 3
%3 = OpTypeMatrix %4 3
@@ -834,7 +834,7 @@ TEST_F(BuilderTest, Binary_Multiply_MatrixMatrix) {
b.push_function(Function{});
ASSERT_TRUE(b.GenerateGlobalVariable(var.get())) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 8) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 8u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%5 = OpTypeFloat 32
%4 = OpTypeVector %5 3
%3 = OpTypeMatrix %4 3

View File

@@ -39,7 +39,7 @@ TEST_F(BuilderTest, Constructor_Const) {
ast::ScalarConstructorExpression c(std::move(fl));
Builder b;
EXPECT_EQ(b.GenerateConstructorExpression(&c, true), 2);
EXPECT_EQ(b.GenerateConstructorExpression(&c, true), 2u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeFloat 32
@@ -62,7 +62,7 @@ TEST_F(BuilderTest, Constructor_Type) {
ast::TypeConstructorExpression t(&vec, std::move(vals));
Builder b;
EXPECT_EQ(b.GenerateConstructorExpression(&t, true), 5);
EXPECT_EQ(b.GenerateConstructorExpression(&t, true), 5u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
@@ -88,8 +88,8 @@ TEST_F(BuilderTest, Constructor_Type_Dedups) {
ast::TypeConstructorExpression t(&vec, std::move(vals));
Builder b;
EXPECT_EQ(b.GenerateConstructorExpression(&t, true), 5);
EXPECT_EQ(b.GenerateConstructorExpression(&t, true), 5);
EXPECT_EQ(b.GenerateConstructorExpression(&t, true), 5u);
EXPECT_EQ(b.GenerateConstructorExpression(&t, true), 5u);
ASSERT_FALSE(b.has_error()) << b.error();
}
@@ -111,7 +111,7 @@ TEST_F(BuilderTest, Constructor_NonConst_Type_Fails) {
ast::TypeConstructorExpression t(&vec, std::move(vals));
Builder b;
EXPECT_EQ(b.GenerateConstructorExpression(&t, true), 0);
EXPECT_EQ(b.GenerateConstructorExpression(&t, true), 0u);
EXPECT_TRUE(b.has_error());
EXPECT_EQ(b.error(), R"(constructor must be a constant expression)");
}

View File

@@ -37,7 +37,7 @@ TEST_F(BuilderTest, EntryPoint) {
ASSERT_TRUE(b.GenerateEntryPoint(&ep));
auto preamble = b.preamble();
ASSERT_EQ(preamble.size(), 1);
ASSERT_EQ(preamble.size(), 1u);
EXPECT_EQ(DumpInstruction(preamble[0]), R"(OpEntryPoint Fragment %2 "main"
)");
}
@@ -50,7 +50,7 @@ TEST_F(BuilderTest, EntryPoint_WithoutName) {
ASSERT_TRUE(b.GenerateEntryPoint(&ep));
auto preamble = b.preamble();
ASSERT_EQ(preamble.size(), 1);
ASSERT_EQ(preamble.size(), 1u);
EXPECT_EQ(DumpInstruction(preamble[0]),
R"(OpEntryPoint GLCompute %3 "compute_main"
)");
@@ -83,10 +83,10 @@ TEST_P(EntryPointStageTest, Emit) {
ASSERT_TRUE(b.GenerateEntryPoint(&ep));
auto preamble = b.preamble();
ASSERT_EQ(preamble.size(), 1);
ASSERT_EQ(preamble.size(), 1u);
EXPECT_EQ(preamble[0].opcode(), spv::Op::OpEntryPoint);
ASSERT_GE(preamble[0].operands().size(), 3);
ASSERT_GE(preamble[0].operands().size(), 3u);
EXPECT_EQ(preamble[0].operands()[0].to_i(), params.model);
}
INSTANTIATE_TEST_SUITE_P(

View File

@@ -42,7 +42,7 @@ TEST_F(BuilderTest, Function_Empty) {
%1 = OpTypeFunction %2
)");
ASSERT_GE(b.functions().size(), 1);
ASSERT_GE(b.functions().size(), 1u);
const auto& ret = b.functions()[0];
EXPECT_EQ(DumpInstruction(ret.declaration()), R"(%3 = OpFunction %2 None %1
)");

View File

@@ -68,7 +68,7 @@ TEST_F(BuilderTest, IdentifierExpression_GlobalConst) {
)");
ast::IdentifierExpression expr("var");
EXPECT_EQ(b.GenerateIdentifierExpression(&expr), 5);
EXPECT_EQ(b.GenerateIdentifierExpression(&expr), 5u);
}
TEST_F(BuilderTest, IdentifierExpression_GlobalVar) {
@@ -85,7 +85,7 @@ TEST_F(BuilderTest, IdentifierExpression_GlobalVar) {
)");
ast::IdentifierExpression expr("var");
EXPECT_EQ(b.GenerateIdentifierExpression(&expr), 1);
EXPECT_EQ(b.GenerateIdentifierExpression(&expr), 1u);
}
TEST_F(BuilderTest, IdentifierExpression_FunctionConst) {
@@ -119,7 +119,7 @@ TEST_F(BuilderTest, IdentifierExpression_FunctionConst) {
)");
ast::IdentifierExpression expr("var");
EXPECT_EQ(b.GenerateIdentifierExpression(&expr), 5);
EXPECT_EQ(b.GenerateIdentifierExpression(&expr), 5u);
}
TEST_F(BuilderTest, IdentifierExpression_FunctionVar) {
@@ -140,7 +140,7 @@ TEST_F(BuilderTest, IdentifierExpression_FunctionVar) {
)");
ast::IdentifierExpression expr("var");
EXPECT_EQ(b.GenerateIdentifierExpression(&expr), 1);
EXPECT_EQ(b.GenerateIdentifierExpression(&expr), 1u);
}
TEST_F(BuilderTest, IdentifierExpression_Load) {
@@ -165,7 +165,7 @@ TEST_F(BuilderTest, IdentifierExpression_Load) {
b.push_function(Function{});
ASSERT_TRUE(b.GenerateGlobalVariable(&var)) << b.error();
ASSERT_EQ(b.GenerateBinaryExpression(&expr), 6) << b.error();
ASSERT_EQ(b.GenerateBinaryExpression(&expr), 6u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%3 = OpTypeInt 32 1
%2 = OpTypePointer Private %3
%1 = OpVariable %2 Private
@@ -202,7 +202,7 @@ TEST_F(BuilderTest, IdentifierExpression_NoLoadConst) {
b.push_function(Function{});
ASSERT_TRUE(b.GenerateGlobalVariable(&var)) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 3) << b.error();
EXPECT_EQ(b.GenerateBinaryExpression(&expr), 3u) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 1
%2 = OpConstant %1 2
)");

View File

@@ -39,7 +39,7 @@ TEST_F(BuilderTest, Literal_Bool_True) {
Builder b;
auto id = b.GenerateLiteralIfNeeded(&b_true);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(2, id);
EXPECT_EQ(2u, id);
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeBool
%2 = OpConstantTrue %1
@@ -53,7 +53,7 @@ TEST_F(BuilderTest, Literal_Bool_False) {
Builder b;
auto id = b.GenerateLiteralIfNeeded(&b_false);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(2, id);
EXPECT_EQ(2u, id);
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeBool
%2 = OpConstantFalse %1
@@ -66,11 +66,11 @@ TEST_F(BuilderTest, Literal_Bool_Dedup) {
ast::BoolLiteral b_false(&bool_type, false);
Builder b;
ASSERT_NE(b.GenerateLiteralIfNeeded(&b_true), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&b_true), 0u);
ASSERT_FALSE(b.has_error()) << b.error();
ASSERT_NE(b.GenerateLiteralIfNeeded(&b_false), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&b_false), 0u);
ASSERT_FALSE(b.has_error()) << b.error();
ASSERT_NE(b.GenerateLiteralIfNeeded(&b_true), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&b_true), 0u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeBool
@@ -86,7 +86,7 @@ TEST_F(BuilderTest, Literal_I32) {
Builder b;
auto id = b.GenerateLiteralIfNeeded(&i);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(2, id);
EXPECT_EQ(2u, id);
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 1
%2 = OpConstant %1 -23
@@ -99,8 +99,8 @@ TEST_F(BuilderTest, Literal_I32_Dedup) {
ast::IntLiteral i2(&i32, -23);
Builder b;
ASSERT_NE(b.GenerateLiteralIfNeeded(&i1), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i2), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i1), 0u);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i2), 0u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 1
@@ -115,7 +115,7 @@ TEST_F(BuilderTest, Literal_U32) {
Builder b;
auto id = b.GenerateLiteralIfNeeded(&i);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(2, id);
EXPECT_EQ(2u, id);
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 0
%2 = OpConstant %1 23
@@ -128,8 +128,8 @@ TEST_F(BuilderTest, Literal_U32_Dedup) {
ast::UintLiteral i2(&u32, 23);
Builder b;
ASSERT_NE(b.GenerateLiteralIfNeeded(&i1), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i2), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i1), 0u);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i2), 0u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeInt 32 0
@@ -144,7 +144,7 @@ TEST_F(BuilderTest, Literal_F32) {
Builder b;
auto id = b.GenerateLiteralIfNeeded(&i);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(2, id);
EXPECT_EQ(2u, id);
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeFloat 32
%2 = OpConstant %1 23.2450008
@@ -157,8 +157,8 @@ TEST_F(BuilderTest, Literal_F32_Dedup) {
ast::FloatLiteral i2(&f32, 23.245f);
Builder b;
ASSERT_NE(b.GenerateLiteralIfNeeded(&i1), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i2), 0);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i1), 0u);
ASSERT_NE(b.GenerateLiteralIfNeeded(&i2), 0u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeFloat 32

View File

@@ -36,7 +36,7 @@ TEST_F(BuilderTest, InsertsPreambleWithImport) {
Builder b;
ASSERT_TRUE(b.Build(m));
ASSERT_EQ(b.preamble().size(), 4);
ASSERT_EQ(b.preamble().size(), 4u);
EXPECT_EQ(DumpBuilder(b), R"(OpCapability Shader
OpCapability VulkanMemoryModel
@@ -62,7 +62,7 @@ TEST_F(BuilderTest, TracksIdBounds) {
EXPECT_EQ(b.next_id(), i + 1);
}
EXPECT_EQ(6, b.id_bound());
EXPECT_EQ(6u, b.id_bound());
}
} // namespace

View File

@@ -46,9 +46,9 @@ TEST_F(BuilderTest_Type, GenerateAlias) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&alias_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
EXPECT_EQ(b.types().size(), 1);
EXPECT_EQ(b.types().size(), 1u);
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeFloat 32
)");
}
@@ -59,13 +59,13 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedAlias) {
ast::type::AliasType alias_type("my_type", &f32);
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&alias_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&alias_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2);
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&alias_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&alias_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
}
@@ -76,7 +76,7 @@ TEST_F(BuilderTest_Type, GenerateRuntimeArray) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&ary);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(1, id);
EXPECT_EQ(1u, id);
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 1
%1 = OpTypeRuntimeArray %2
@@ -88,8 +88,8 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedRuntimeArray) {
ast::type::ArrayType ary(&i32);
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&ary), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ary), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ary), 1u);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ary), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 1
@@ -104,7 +104,7 @@ TEST_F(BuilderTest_Type, GenerateArray) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&ary);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(1, id);
EXPECT_EQ(1u, id);
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 1
%3 = OpTypeInt 32 0
@@ -118,8 +118,8 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedArray) {
ast::type::ArrayType ary(&i32, 4);
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&ary), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ary), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ary), 1u);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ary), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 1
@@ -135,9 +135,9 @@ TEST_F(BuilderTest_Type, GenerateBool) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&bool_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
ASSERT_EQ(b.types().size(), 1);
ASSERT_EQ(b.types().size(), 1u);
EXPECT_EQ(DumpInstruction(b.types()[0]), R"(%1 = OpTypeBool
)");
}
@@ -147,11 +147,11 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedBool) {
ast::type::BoolType bool_type;
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&bool_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&bool_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2);
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&bool_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&bool_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
}
@@ -161,9 +161,9 @@ TEST_F(BuilderTest_Type, GenerateF32) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&f32);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
ASSERT_EQ(b.types().size(), 1);
ASSERT_EQ(b.types().size(), 1u);
EXPECT_EQ(DumpInstruction(b.types()[0]), R"(%1 = OpTypeFloat 32
)");
}
@@ -173,11 +173,11 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedF32) {
ast::type::F32Type f32;
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2);
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
}
@@ -187,9 +187,9 @@ TEST_F(BuilderTest_Type, GenerateI32) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&i32);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
ASSERT_EQ(b.types().size(), 1);
ASSERT_EQ(b.types().size(), 1u);
EXPECT_EQ(DumpInstruction(b.types()[0]), R"(%1 = OpTypeInt 32 1
)");
}
@@ -199,11 +199,11 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedI32) {
ast::type::F32Type f32;
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 2);
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 2u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
}
@@ -214,9 +214,9 @@ TEST_F(BuilderTest_Type, GenerateMatrix) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&mat_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
EXPECT_EQ(b.types().size(), 3);
EXPECT_EQ(b.types().size(), 3u);
EXPECT_EQ(DumpInstructions(b.types()), R"(%3 = OpTypeFloat 32
%2 = OpTypeVector %3 3
%1 = OpTypeMatrix %2 2
@@ -228,11 +228,11 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedMatrix) {
ast::type::MatrixType mat_type(&i32, 3, 4);
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&mat_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&mat_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 3);
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 3u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&mat_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&mat_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
}
@@ -243,7 +243,7 @@ TEST_F(BuilderTest_Type, GeneratePtr) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&ptr);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(1, id);
EXPECT_EQ(1u, id);
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeInt 32 1
%1 = OpTypePointer Output %2
@@ -255,8 +255,8 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedPtr) {
ast::type::PointerType ptr(&i32, ast::StorageClass::kOutput);
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&ptr), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ptr), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ptr), 1u);
EXPECT_EQ(b.GenerateTypeIfNeeded(&ptr), 1u);
}
TEST_F(BuilderTest_Type, GenerateStruct_Empty) {
@@ -266,9 +266,9 @@ TEST_F(BuilderTest_Type, GenerateStruct_Empty) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&s_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
EXPECT_EQ(b.types().size(), 1);
EXPECT_EQ(b.types().size(), 1u);
EXPECT_EQ(DumpInstructions(b.debug()), "");
EXPECT_EQ(DumpInstructions(b.types()), R"(%1 = OpTypeStruct
)");
@@ -290,7 +290,7 @@ TEST_F(BuilderTest_Type, GenerateStruct) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&s_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
%1 = OpTypeStruct %2
@@ -316,7 +316,7 @@ TEST_F(BuilderTest_Type, GenerateStruct_Decorated) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&s_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
%1 = OpTypeStruct %2
@@ -349,7 +349,7 @@ TEST_F(BuilderTest_Type, GenerateStruct_DecoratedMembers) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&s_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
%1 = OpTypeStruct %2 %2
@@ -368,9 +368,9 @@ TEST_F(BuilderTest_Type, GenerateU32) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&u32);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
ASSERT_EQ(b.types().size(), 1);
ASSERT_EQ(b.types().size(), 1u);
EXPECT_EQ(DumpInstruction(b.types()[0]), R"(%1 = OpTypeInt 32 0
)");
}
@@ -380,11 +380,11 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedU32) {
ast::type::F32Type f32;
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&u32), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&u32), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 2);
EXPECT_EQ(b.GenerateTypeIfNeeded(&f32), 2u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&u32), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&u32), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
}
@@ -395,9 +395,9 @@ TEST_F(BuilderTest_Type, GenerateVector) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&vec_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
EXPECT_EQ(b.types().size(), 2);
EXPECT_EQ(b.types().size(), 2u);
EXPECT_EQ(DumpInstructions(b.types()), R"(%2 = OpTypeFloat 32
%1 = OpTypeVector %2 3
)");
@@ -408,11 +408,11 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedVector) {
ast::type::VectorType vec_type(&i32, 3);
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&vec_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&vec_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2);
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&vec_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&vec_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
}
@@ -422,9 +422,9 @@ TEST_F(BuilderTest_Type, GenerateVoid) {
Builder b;
auto id = b.GenerateTypeIfNeeded(&void_type);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(id, 1);
EXPECT_EQ(id, 1u);
ASSERT_EQ(b.types().size(), 1);
ASSERT_EQ(b.types().size(), 1u);
EXPECT_EQ(DumpInstruction(b.types()[0]), R"(%1 = OpTypeVoid
)");
}
@@ -434,11 +434,11 @@ TEST_F(BuilderTest_Type, ReturnsGeneratedVoid) {
ast::type::VoidType void_type;
Builder b;
EXPECT_EQ(b.GenerateTypeIfNeeded(&void_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&void_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2);
EXPECT_EQ(b.GenerateTypeIfNeeded(&i32), 2u);
ASSERT_FALSE(b.has_error()) << b.error();
EXPECT_EQ(b.GenerateTypeIfNeeded(&void_type), 1);
EXPECT_EQ(b.GenerateTypeIfNeeded(&void_type), 1u);
ASSERT_FALSE(b.has_error()) << b.error();
}

View File

@@ -28,14 +28,14 @@ TEST_F(InstructionTest, Create) {
Instruction i(spv::Op::OpEntryPoint, {Operand::Float(1.2f), Operand::Int(1),
Operand::String("my_str")});
EXPECT_EQ(i.opcode(), spv::Op::OpEntryPoint);
ASSERT_EQ(i.operands().size(), 3);
ASSERT_EQ(i.operands().size(), 3u);
const auto& ops = i.operands();
EXPECT_TRUE(ops[0].IsFloat());
EXPECT_FLOAT_EQ(ops[0].to_f(), 1.2);
EXPECT_TRUE(ops[1].IsInt());
EXPECT_EQ(ops[1].to_i(), 1);
EXPECT_EQ(ops[1].to_i(), 1u);
EXPECT_TRUE(ops[2].IsString());
EXPECT_EQ(ops[2].to_s(), "my_str");
@@ -44,7 +44,7 @@ TEST_F(InstructionTest, Create) {
TEST_F(InstructionTest, Length) {
Instruction i(spv::Op::OpEntryPoint, {Operand::Float(1.2f), Operand::Int(1),
Operand::String("my_str")});
EXPECT_EQ(i.word_length(), 5);
EXPECT_EQ(i.word_length(), 5u);
}
} // namespace

View File

@@ -32,7 +32,7 @@ TEST_F(OperandTest, CreateFloat) {
TEST_F(OperandTest, CreateInt) {
auto o = Operand::Int(1);
EXPECT_TRUE(o.IsInt());
EXPECT_EQ(o.to_i(), 1);
EXPECT_EQ(o.to_i(), 1u);
}
TEST_F(OperandTest, CreateString) {
@@ -43,22 +43,22 @@ TEST_F(OperandTest, CreateString) {
TEST_F(OperandTest, Length_Float) {
auto o = Operand::Float(1.2f);
EXPECT_EQ(o.length(), 1);
EXPECT_EQ(o.length(), 1u);
}
TEST_F(OperandTest, Length_Int) {
auto o = Operand::Int(1);
EXPECT_EQ(o.length(), 1);
EXPECT_EQ(o.length(), 1u);
}
TEST_F(OperandTest, Length_String) {
auto o = Operand::String("my string");
EXPECT_EQ(o.length(), 3);
EXPECT_EQ(o.length(), 3u);
}
TEST_F(OperandTest, Length_String_Empty) {
auto o = Operand::String("");
EXPECT_EQ(o.length(), 1);
EXPECT_EQ(o.length(), 1u);
}
} // namespace