Update storage size tests
This CL updates the remaining storage size test to add a second variable
to show the 2x16 size.
Change-Id: Id55bf70f0e07dbd09f8bc1d9019c68f0d95e2e94
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/219096
Commit-Queue: dan sinclair <dsinclair@chromium.org>
Reviewed-by: James Price <jrprice@google.com>
Auto-Submit: dan sinclair <dsinclair@chromium.org>
Commit-Queue: James Price <jrprice@google.com>
diff --git a/src/tint/lang/glsl/writer/function_test.cc b/src/tint/lang/glsl/writer/function_test.cc
index 208b282..71fc165 100644
--- a/src/tint/lang/glsl/writer/function_test.cc
+++ b/src/tint/lang/glsl/writer/function_test.cc
@@ -108,15 +108,17 @@
TEST_F(GlslWriterTest, WorkgroupStorageSizeSimple) {
auto* var = mod.root_block->Append(b.Var("var", ty.ptr(workgroup, ty.f32())));
+ auto* var2 = mod.root_block->Append(b.Var("var2", ty.ptr(workgroup, ty.i32())));
auto* func = b.ComputeFunction("main", 32_u, 4_u, 1_u);
b.Append(func->Block(), [&] { //
b.Let("x", var);
+ b.Let("y", var2);
b.Return(func);
});
ASSERT_TRUE(Generate()) << err_ << output_.glsl;
- EXPECT_EQ(16u, output_.workgroup_info.storage_size);
+ EXPECT_EQ(32u, output_.workgroup_info.storage_size);
}
TEST_F(GlslWriterTest, WorkgroupStorageSizeCompoundTypes) {
diff --git a/src/tint/lang/hlsl/writer/function_test.cc b/src/tint/lang/hlsl/writer/function_test.cc
index 4aa7604..ad8ead0 100644
--- a/src/tint/lang/hlsl/writer/function_test.cc
+++ b/src/tint/lang/hlsl/writer/function_test.cc
@@ -1101,15 +1101,17 @@
TEST_F(HlslWriterTest, WorkgroupStorageSizeSimple) {
auto* var = mod.root_block->Append(b.Var("var", ty.ptr(workgroup, ty.f32())));
+ auto* var2 = mod.root_block->Append(b.Var("var2", ty.ptr(workgroup, ty.i32())));
auto* func = b.ComputeFunction("main", 32_u, 4_u, 1_u);
b.Append(func->Block(), [&] { //
b.Let("x", var);
+ b.Let("y", var2);
b.Return(func);
});
ASSERT_TRUE(Generate()) << err_ << output_.hlsl;
- EXPECT_EQ(16u, output_.workgroup_info.storage_size);
+ EXPECT_EQ(32u, output_.workgroup_info.storage_size);
}
TEST_F(HlslWriterTest, WorkgroupStorageSizeCompoundTypes) {
diff --git a/src/tint/lang/spirv/writer/function_test.cc b/src/tint/lang/spirv/writer/function_test.cc
index da9e266..6a700a6 100644
--- a/src/tint/lang/spirv/writer/function_test.cc
+++ b/src/tint/lang/spirv/writer/function_test.cc
@@ -634,15 +634,17 @@
TEST_F(SpirvWriterTest, WorkgroupStorageSizeSimple) {
auto* var = mod.root_block->Append(b.Var("var", ty.ptr(workgroup, ty.f32())));
+ auto* var2 = mod.root_block->Append(b.Var("var2", ty.ptr(workgroup, ty.i32())));
auto* func = b.ComputeFunction("main", 32_u, 4_u, 1_u);
b.Append(func->Block(), [&] { //
b.Let("x", var);
+ b.Let("y", var2);
b.Return(func);
});
ASSERT_TRUE(Generate()) << Error() << output_;
- EXPECT_EQ(16u, workgroup_info.storage_size);
+ EXPECT_EQ(32u, workgroup_info.storage_size);
}
TEST_F(SpirvWriterTest, WorkgroupStorageSizeCompoundTypes) {
diff --git a/src/tint/lang/wgsl/inspector/inspector_test.cc b/src/tint/lang/wgsl/inspector/inspector_test.cc
index e6d7976..6a93800 100644
--- a/src/tint/lang/wgsl/inspector/inspector_test.cc
+++ b/src/tint/lang/wgsl/inspector/inspector_test.cc
@@ -373,9 +373,11 @@
TEST_F(InspectorGetEntryPointTest, WorkgroupStorageSizeSimple) {
AddWorkgroupStorage("wg_f32", ty.f32());
+ AddWorkgroupStorage("wg_i32", ty.i32());
MakePlainGlobalReferenceBodyFunction("f32_func", "wg_f32", ty.f32(), tint::Empty);
+ MakePlainGlobalReferenceBodyFunction("i32_func", "wg_i32", ty.i32(), tint::Empty);
- MakeCallerBodyFunction("ep_func", Vector{std::string("f32_func")},
+ MakeCallerBodyFunction("ep_func", Vector{std::string("f32_func"), "i32_func"},
Vector{
Stage(ast::PipelineStage::kCompute),
WorkgroupSize(1_i),
@@ -386,7 +388,7 @@
ASSERT_FALSE(inspector.has_error()) << inspector.error();
ASSERT_EQ(1u, result.size());
- EXPECT_EQ(16u, result[0].workgroup_storage_size);
+ EXPECT_EQ(32u, result[0].workgroup_storage_size);
}
TEST_F(InspectorGetEntryPointTest, WorkgroupStorageSizeCompoundTypes) {