spirv-reader: simplify GLSL.std.450 tests
Use variables with names rather than constants
which elaborate to a lot of text in the AST.
Change-Id: Ic284bbd4019e50308c5836768df01c6a9525c004
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/35061
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Auto-Submit: David Neto <dneto@google.com>
diff --git a/src/reader/spirv/function_glsl_std_450_test.cc b/src/reader/spirv/function_glsl_std_450_test.cc
index 689f342..5de5f47 100644
--- a/src/reader/spirv/function_glsl_std_450_test.cc
+++ b/src/reader/spirv/function_glsl_std_450_test.cc
@@ -33,6 +33,28 @@
return R"(
OpCapability Shader
%glsl = OpExtInstImport "GLSL.std.450"
+ OpMemoryModel Logical GLSL450
+ OpEntryPoint GLCompute %100 "main"
+ OpExecutionMode %100 LocalSize 1 1 1
+
+ OpName %u1 "u1"
+ OpName %u2 "u2"
+ OpName %u3 "u3"
+ OpName %i1 "i1"
+ OpName %i2 "i2"
+ OpName %i3 "i3"
+ OpName %f1 "f1"
+ OpName %f2 "f2"
+ OpName %f3 "f3"
+ OpName %v2u1 "v2u1"
+ OpName %v2u2 "v2u2"
+ OpName %v2u3 "v2u3"
+ OpName %v2i1 "v2i1"
+ OpName %v2i2 "v2i2"
+ OpName %v2i3 "v2i3"
+ OpName %v2f1 "v2f1"
+ OpName %v2f2 "v2f2"
+ OpName %v2f3 "v2f3"
%void = OpTypeVoid
%voidfn = OpTypeFunction %void
@@ -64,6 +86,34 @@
%v2float_50_60 = OpConstantComposite %v2float %float_50 %float_60
%v2float_60_50 = OpConstantComposite %v2float %float_60 %float_50
%v2float_70_70 = OpConstantComposite %v2float %float_70 %float_70
+
+ %100 = OpFunction %void None %voidfn
+ %entry = OpLabel
+
+ %u1 = OpCopyObject %uint %uint_10
+ %u2 = OpCopyObject %uint %uint_15
+ %u3 = OpCopyObject %uint %uint_20
+
+ %i1 = OpCopyObject %int %int_30
+ %i2 = OpCopyObject %int %int_35
+ %i3 = OpCopyObject %int %int_40
+
+ %f1 = OpCopyObject %float %float_50
+ %f2 = OpCopyObject %float %float_60
+ %f3 = OpCopyObject %float %float_70
+
+ %v2u1 = OpCopyObject %v2uint %v2uint_10_20
+ %v2u2 = OpCopyObject %v2uint %v2uint_20_10
+ %v2u3 = OpCopyObject %v2uint %v2uint_15_15
+
+ %v2i1 = OpCopyObject %v2int %v2int_30_40
+ %v2i2 = OpCopyObject %v2int %v2int_40_30
+ %v2i3 = OpCopyObject %v2int %v2int_35_35
+
+ %v2f1 = OpCopyObject %v2float %v2float_50_60
+ %v2f2 = OpCopyObject %v2float %v2float_60_50
+ %v2f3 = OpCopyObject %v2float %v2float_70_70
+
)";
}
@@ -102,10 +152,8 @@
TEST_P(SpvParserTest_GlslStd450_Float_Floating, Scalar) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %float %glsl )" +
- GetParam().opcode + R"( %float_50
+ GetParam().opcode + R"( %f1
OpReturn
OpFunctionEnd
)";
@@ -123,7 +171,7 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- ScalarConstructor[not set]{50.000000}
+ Identifier[not set]{f1}
)
}
}
@@ -133,10 +181,8 @@
TEST_P(SpvParserTest_GlslStd450_Float_Floating, Vector) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %float %glsl )" +
- GetParam().opcode + R"( %v2float_50_60
+ GetParam().opcode + R"( %v2f1
OpReturn
OpFunctionEnd
)";
@@ -154,11 +200,7 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{50.000000}
- ScalarConstructor[not set]{60.000000}
- }
+ Identifier[not set]{v2f1}
)
}
}
@@ -168,10 +210,8 @@
TEST_P(SpvParserTest_GlslStd450_Float_FloatingFloating, Scalar) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %float %glsl )" +
- GetParam().opcode + R"( %float_50 %float_60
+ GetParam().opcode + R"( %f1 %f2
OpReturn
OpFunctionEnd
)";
@@ -189,8 +229,8 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- ScalarConstructor[not set]{50.000000}
- ScalarConstructor[not set]{60.000000}
+ Identifier[not set]{f1}
+ Identifier[not set]{f2}
)
}
}
@@ -200,10 +240,8 @@
TEST_P(SpvParserTest_GlslStd450_Float_FloatingFloating, Vector) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %float %glsl )" +
- GetParam().opcode + R"( %v2float_50_60 %v2float_60_50
+ GetParam().opcode + R"( %v2f1 %v2f2
OpReturn
OpFunctionEnd
)";
@@ -221,16 +259,8 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{50.000000}
- ScalarConstructor[not set]{60.000000}
- }
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{60.000000}
- ScalarConstructor[not set]{50.000000}
- }
+ Identifier[not set]{v2f1}
+ Identifier[not set]{v2f2}
)
}
}
@@ -240,10 +270,8 @@
TEST_P(SpvParserTest_GlslStd450_Floating_Floating, Scalar) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %float %glsl )" +
- GetParam().opcode + R"( %float_50
+ GetParam().opcode + R"( %f1
OpReturn
OpFunctionEnd
)";
@@ -261,7 +289,7 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- ScalarConstructor[not set]{50.000000}
+ Identifier[not set]{f1}
)
}
}
@@ -271,10 +299,8 @@
TEST_P(SpvParserTest_GlslStd450_Floating_Floating, Vector) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %v2float %glsl )" +
- GetParam().opcode + R"( %v2float_50_60
+ GetParam().opcode + R"( %v2f1
OpReturn
OpFunctionEnd
)";
@@ -292,11 +318,7 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{50.000000}
- ScalarConstructor[not set]{60.000000}
- }
+ Identifier[not set]{v2f1}
)
}
}
@@ -306,10 +328,8 @@
TEST_P(SpvParserTest_GlslStd450_Floating_FloatingFloating, Scalar) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %float %glsl )" +
- GetParam().opcode + R"( %float_50 %float_60
+ GetParam().opcode + R"( %f1 %f2
OpReturn
OpFunctionEnd
)";
@@ -327,8 +347,8 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- ScalarConstructor[not set]{50.000000}
- ScalarConstructor[not set]{60.000000}
+ Identifier[not set]{f1}
+ Identifier[not set]{f2}
)
}
}
@@ -338,10 +358,8 @@
TEST_P(SpvParserTest_GlslStd450_Floating_FloatingFloating, Vector) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %v2float %glsl )" +
- GetParam().opcode + R"( %v2float_50_60 %v2float_60_50
+ GetParam().opcode + R"( %v2f1 %v2f2
OpReturn
OpFunctionEnd
)";
@@ -359,16 +377,8 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{50.000000}
- ScalarConstructor[not set]{60.000000}
- }
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{60.000000}
- ScalarConstructor[not set]{50.000000}
- }
+ Identifier[not set]{v2f1}
+ Identifier[not set]{v2f2}
)
}
}
@@ -378,10 +388,8 @@
TEST_P(SpvParserTest_GlslStd450_Floating_FloatingFloatingFloating, Scalar) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %float %glsl )" +
- GetParam().opcode + R"( %float_50 %float_60 %float_70
+ GetParam().opcode + R"( %f1 %f2 %f3
OpReturn
OpFunctionEnd
)";
@@ -399,9 +407,9 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- ScalarConstructor[not set]{50.000000}
- ScalarConstructor[not set]{60.000000}
- ScalarConstructor[not set]{70.000000}
+ Identifier[not set]{f1}
+ Identifier[not set]{f2}
+ Identifier[not set]{f3}
)
}
}
@@ -411,11 +419,9 @@
TEST_P(SpvParserTest_GlslStd450_Floating_FloatingFloatingFloating, Vector) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %v2float %glsl )" +
GetParam().opcode +
- R"( %v2float_50_60 %v2float_60_50 %v2float_70_70
+ R"( %v2f1 %v2f2 %v2f3
OpReturn
OpFunctionEnd
)";
@@ -433,21 +439,9 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{50.000000}
- ScalarConstructor[not set]{60.000000}
- }
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{60.000000}
- ScalarConstructor[not set]{50.000000}
- }
- TypeConstructor[not set]{
- __vec_2__f32
- ScalarConstructor[not set]{70.000000}
- ScalarConstructor[not set]{70.000000}
- }
+ Identifier[not set]{v2f1}
+ Identifier[not set]{v2f2}
+ Identifier[not set]{v2f3}
)
}
}
@@ -482,10 +476,9 @@
TEST_P(SpvParserTest_GlslStd450_Inting_IntingIntingInting, Scalar) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %int %glsl )" +
- GetParam().opcode + R"( %int_30 %int_35 %int_40
+ GetParam().opcode +
+ R"( %i1 %i2 %i3
OpReturn
OpFunctionEnd
)";
@@ -503,9 +496,9 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- ScalarConstructor[not set]{30}
- ScalarConstructor[not set]{35}
- ScalarConstructor[not set]{40}
+ Identifier[not set]{i1}
+ Identifier[not set]{i2}
+ Identifier[not set]{i3}
)
}
}
@@ -515,11 +508,9 @@
TEST_P(SpvParserTest_GlslStd450_Inting_IntingIntingInting, Vector) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %v2int %glsl )" +
GetParam().opcode +
- R"( %v2int_30_40 %v2int_40_30 %v2int_35_35
+ R"( %v2i1 %v2i2 %v2i3
OpReturn
OpFunctionEnd
)";
@@ -537,21 +528,9 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- TypeConstructor[not set]{
- __vec_2__i32
- ScalarConstructor[not set]{30}
- ScalarConstructor[not set]{40}
- }
- TypeConstructor[not set]{
- __vec_2__i32
- ScalarConstructor[not set]{40}
- ScalarConstructor[not set]{30}
- }
- TypeConstructor[not set]{
- __vec_2__i32
- ScalarConstructor[not set]{35}
- ScalarConstructor[not set]{35}
- }
+ Identifier[not set]{v2i1}
+ Identifier[not set]{v2i2}
+ Identifier[not set]{v2i3}
)
}
}
@@ -565,10 +544,8 @@
TEST_P(SpvParserTest_GlslStd450_Uinting_UintingUintingUinting, Scalar) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %uint %glsl )" +
- GetParam().opcode + R"( %uint_10 %uint_15 %uint_20
+ GetParam().opcode + R"( %u1 %u2 %u3
OpReturn
OpFunctionEnd
)";
@@ -586,9 +563,9 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- ScalarConstructor[not set]{10}
- ScalarConstructor[not set]{15}
- ScalarConstructor[not set]{20}
+ Identifier[not set]{u1}
+ Identifier[not set]{u2}
+ Identifier[not set]{u3}
)
}
}
@@ -598,11 +575,9 @@
TEST_P(SpvParserTest_GlslStd450_Uinting_UintingUintingUinting, Vector) {
const auto assembly = Preamble() + R"(
- %100 = OpFunction %void None %voidfn
- %entry = OpLabel
%1 = OpExtInst %v2uint %glsl )" +
GetParam().opcode +
- R"( %v2uint_10_20 %v2uint_20_10 %v2uint_15_15
+ R"( %v2u1 %v2u2 %v2u3
OpReturn
OpFunctionEnd
)";
@@ -620,21 +595,9 @@
Identifier[not set]{)" + GetParam().wgsl_func +
R"(}
(
- TypeConstructor[not set]{
- __vec_2__u32
- ScalarConstructor[not set]{10}
- ScalarConstructor[not set]{20}
- }
- TypeConstructor[not set]{
- __vec_2__u32
- ScalarConstructor[not set]{20}
- ScalarConstructor[not set]{10}
- }
- TypeConstructor[not set]{
- __vec_2__u32
- ScalarConstructor[not set]{15}
- ScalarConstructor[not set]{15}
- }
+ Identifier[not set]{v2u1}
+ Identifier[not set]{v2u2}
+ Identifier[not set]{v2u3}
)
}
}