mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-21 10:49:14 +00:00
Replace FunctionDecoration::(Is|As)Workgroup with Castable
Change-Id: Ia365504fd745579b3bd7bef0b6eda73d3164f539 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34312 Reviewed-by: dan sinclair <dsinclair@chromium.org>
This commit is contained in:
@@ -74,12 +74,12 @@ TEST_F(ParserImplTest, FunctionDecl_DecorationList) {
|
||||
|
||||
auto& decorations = f->decorations();
|
||||
ASSERT_EQ(decorations.size(), 1u);
|
||||
ASSERT_TRUE(decorations[0]->IsWorkgroup());
|
||||
ASSERT_TRUE(decorations[0]->Is<ast::WorkgroupDecoration>());
|
||||
|
||||
uint32_t x = 0;
|
||||
uint32_t y = 0;
|
||||
uint32_t z = 0;
|
||||
std::tie(x, y, z) = decorations[0]->AsWorkgroup()->values();
|
||||
std::tie(x, y, z) = decorations[0]->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 2u);
|
||||
EXPECT_EQ(y, 3u);
|
||||
EXPECT_EQ(z, 4u);
|
||||
@@ -116,14 +116,14 @@ fn main() -> void { return; })");
|
||||
uint32_t x = 0;
|
||||
uint32_t y = 0;
|
||||
uint32_t z = 0;
|
||||
ASSERT_TRUE(decorations[0]->IsWorkgroup());
|
||||
std::tie(x, y, z) = decorations[0]->AsWorkgroup()->values();
|
||||
ASSERT_TRUE(decorations[0]->Is<ast::WorkgroupDecoration>());
|
||||
std::tie(x, y, z) = decorations[0]->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 2u);
|
||||
EXPECT_EQ(y, 3u);
|
||||
EXPECT_EQ(z, 4u);
|
||||
|
||||
ASSERT_TRUE(decorations[1]->IsWorkgroup());
|
||||
std::tie(x, y, z) = decorations[1]->AsWorkgroup()->values();
|
||||
ASSERT_TRUE(decorations[1]->Is<ast::WorkgroupDecoration>());
|
||||
std::tie(x, y, z) = decorations[1]->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 5u);
|
||||
EXPECT_EQ(y, 6u);
|
||||
EXPECT_EQ(z, 7u);
|
||||
@@ -161,14 +161,14 @@ fn main() -> void { return; })");
|
||||
uint32_t x = 0;
|
||||
uint32_t y = 0;
|
||||
uint32_t z = 0;
|
||||
ASSERT_TRUE(decos[0]->IsWorkgroup());
|
||||
std::tie(x, y, z) = decos[0]->AsWorkgroup()->values();
|
||||
ASSERT_TRUE(decos[0]->Is<ast::WorkgroupDecoration>());
|
||||
std::tie(x, y, z) = decos[0]->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 2u);
|
||||
EXPECT_EQ(y, 3u);
|
||||
EXPECT_EQ(z, 4u);
|
||||
|
||||
ASSERT_TRUE(decos[1]->IsWorkgroup());
|
||||
std::tie(x, y, z) = decos[1]->AsWorkgroup()->values();
|
||||
ASSERT_TRUE(decos[1]->Is<ast::WorkgroupDecoration>());
|
||||
std::tie(x, y, z) = decos[1]->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 5u);
|
||||
EXPECT_EQ(y, 6u);
|
||||
EXPECT_EQ(z, 7u);
|
||||
|
||||
@@ -38,12 +38,12 @@ TEST_F(ParserImplTest, FunctionDecorationList_Parses) {
|
||||
uint32_t x = 0;
|
||||
uint32_t y = 0;
|
||||
uint32_t z = 0;
|
||||
ASSERT_TRUE(deco_0->IsWorkgroup());
|
||||
std::tie(x, y, z) = deco_0->AsWorkgroup()->values();
|
||||
ASSERT_TRUE(deco_0->Is<ast::WorkgroupDecoration>());
|
||||
std::tie(x, y, z) = deco_0->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 2u);
|
||||
|
||||
ASSERT_TRUE(deco_1->IsWorkgroup());
|
||||
std::tie(x, y, z) = deco_1->AsWorkgroup()->values();
|
||||
ASSERT_TRUE(deco_1->Is<ast::WorkgroupDecoration>());
|
||||
std::tie(x, y, z) = deco_1->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 3u);
|
||||
EXPECT_EQ(y, 4u);
|
||||
EXPECT_EQ(z, 5u);
|
||||
|
||||
@@ -32,12 +32,12 @@ TEST_F(ParserImplTest, FunctionDecoration_Workgroup) {
|
||||
ASSERT_FALSE(p->has_error());
|
||||
auto* func_deco = deco.value->As<ast::FunctionDecoration>();
|
||||
ASSERT_NE(func_deco, nullptr);
|
||||
ASSERT_TRUE(func_deco->IsWorkgroup());
|
||||
ASSERT_TRUE(func_deco->Is<ast::WorkgroupDecoration>());
|
||||
|
||||
uint32_t x = 0;
|
||||
uint32_t y = 0;
|
||||
uint32_t z = 0;
|
||||
std::tie(x, y, z) = func_deco->AsWorkgroup()->values();
|
||||
std::tie(x, y, z) = func_deco->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 4u);
|
||||
EXPECT_EQ(y, 1u);
|
||||
EXPECT_EQ(z, 1u);
|
||||
@@ -52,12 +52,12 @@ TEST_F(ParserImplTest, FunctionDecoration_Workgroup_2Param) {
|
||||
ASSERT_FALSE(p->has_error());
|
||||
auto* func_deco = deco.value->As<ast::FunctionDecoration>();
|
||||
ASSERT_NE(func_deco, nullptr) << p->error();
|
||||
ASSERT_TRUE(func_deco->IsWorkgroup());
|
||||
ASSERT_TRUE(func_deco->Is<ast::WorkgroupDecoration>());
|
||||
|
||||
uint32_t x = 0;
|
||||
uint32_t y = 0;
|
||||
uint32_t z = 0;
|
||||
std::tie(x, y, z) = func_deco->AsWorkgroup()->values();
|
||||
std::tie(x, y, z) = func_deco->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 4u);
|
||||
EXPECT_EQ(y, 5u);
|
||||
EXPECT_EQ(z, 1u);
|
||||
@@ -72,12 +72,12 @@ TEST_F(ParserImplTest, FunctionDecoration_Workgroup_3Param) {
|
||||
ASSERT_FALSE(p->has_error());
|
||||
auto* func_deco = deco.value->As<ast::FunctionDecoration>();
|
||||
ASSERT_NE(func_deco, nullptr);
|
||||
ASSERT_TRUE(func_deco->IsWorkgroup());
|
||||
ASSERT_TRUE(func_deco->Is<ast::WorkgroupDecoration>());
|
||||
|
||||
uint32_t x = 0;
|
||||
uint32_t y = 0;
|
||||
uint32_t z = 0;
|
||||
std::tie(x, y, z) = func_deco->AsWorkgroup()->values();
|
||||
std::tie(x, y, z) = func_deco->As<ast::WorkgroupDecoration>()->values();
|
||||
EXPECT_EQ(x, 4u);
|
||||
EXPECT_EQ(y, 5u);
|
||||
EXPECT_EQ(z, 6u);
|
||||
|
||||
Reference in New Issue
Block a user