transform: Do not generate block attributes
These are no longer necessary, and the attribute will soon be
deprecated and removed.
Bug: tint:1324
Change-Id: Ia3cdd4e9d9bd7bca45d734a06466993199b3e838
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/72085
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/src/transform/array_length_from_uniform.cc b/src/transform/array_length_from_uniform.cc
index fa04126..5084a54 100644
--- a/src/transform/array_length_from_uniform.cc
+++ b/src/transform/array_length_from_uniform.cc
@@ -18,7 +18,6 @@
#include <string>
#include <utility>
-#include "src/ast/struct_block_decoration.h"
#include "src/program_builder.h"
#include "src/sem/call.h"
#include "src/sem/variable.h"
@@ -144,9 +143,7 @@
{ctx.dst->Member(
kBufferSizeMemberName,
ctx.dst->ty.array(ctx.dst->ty.vec4(ctx.dst->ty.u32()),
- (max_buffer_size_index / 4) + 1))},
-
- ast::DecorationList{ctx.dst->create<ast::StructBlockDecoration>()});
+ (max_buffer_size_index / 4) + 1))});
buffer_size_ubo = ctx.dst->Global(
ctx.dst->Sym(), ctx.dst->ty.Of(buffer_size_struct),
ast::StorageClass::kUniform,
diff --git a/src/transform/array_length_from_uniform.h b/src/transform/array_length_from_uniform.h
index f981f67..6ab1598 100644
--- a/src/transform/array_length_from_uniform.h
+++ b/src/transform/array_length_from_uniform.h
@@ -34,7 +34,6 @@
///
/// The generated uniform buffer will have the form:
/// ```
-/// [[block]]
/// struct buffer_size_struct {
/// buffer_size : array<u32, 8>;
/// };
diff --git a/src/transform/array_length_from_uniform_test.cc b/src/transform/array_length_from_uniform_test.cc
index c316412..59f5a4d 100644
--- a/src/transform/array_length_from_uniform_test.cc
+++ b/src/transform/array_length_from_uniform_test.cc
@@ -52,7 +52,6 @@
TEST_F(ArrayLengthFromUniformTest, Basic) {
auto* src = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -67,14 +66,12 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
};
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -103,7 +100,6 @@
TEST_F(ArrayLengthFromUniformTest, WithStride) {
auto* src = R"(
-[[block]]
struct SB {
x : i32;
y : f32;
@@ -119,14 +115,12 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
};
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
-[[block]]
struct SB {
x : i32;
y : f32;
@@ -156,27 +150,22 @@
TEST_F(ArrayLengthFromUniformTest, MultipleStorageBuffers) {
auto* src = R"(
-[[block]]
struct SB1 {
x : i32;
arr1 : array<i32>;
};
-[[block]]
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
};
-[[block]]
struct SB3 {
x : i32;
arr3 : array<vec4<f32>>;
};
-[[block]]
struct SB4 {
x : i32;
arr4 : array<vec4<f32>>;
};
-[[block]]
struct SB5 {
x : i32;
arr5 : array<vec4<f32>>;
@@ -200,38 +189,32 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
buffer_size : array<vec4<u32>, 2u>;
};
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
-[[block]]
struct SB1 {
x : i32;
arr1 : array<i32>;
};
-[[block]]
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
};
-[[block]]
struct SB3 {
x : i32;
arr3 : array<vec4<f32>>;
};
-[[block]]
struct SB4 {
x : i32;
arr4 : array<vec4<f32>>;
};
-[[block]]
struct SB5 {
x : i32;
arr5 : array<vec4<f32>>;
@@ -277,27 +260,22 @@
TEST_F(ArrayLengthFromUniformTest, MultipleUnusedStorageBuffers) {
auto* src = R"(
-[[block]]
struct SB1 {
x : i32;
arr1 : array<i32>;
};
-[[block]]
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
};
-[[block]]
struct SB3 {
x : i32;
arr3 : array<vec4<f32>>;
};
-[[block]]
struct SB4 {
x : i32;
arr4 : array<vec4<f32>>;
};
-[[block]]
struct SB5 {
x : i32;
arr5 : array<vec4<f32>>;
@@ -318,38 +296,32 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
};
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
-[[block]]
struct SB1 {
x : i32;
arr1 : array<i32>;
};
-[[block]]
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
};
-[[block]]
struct SB3 {
x : i32;
arr3 : array<vec4<f32>>;
};
-[[block]]
struct SB4 {
x : i32;
arr4 : array<vec4<f32>>;
};
-[[block]]
struct SB5 {
x : i32;
arr5 : array<vec4<f32>>;
@@ -392,7 +364,6 @@
TEST_F(ArrayLengthFromUniformTest, NoArrayLengthCalls) {
auto* src = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -421,13 +392,11 @@
TEST_F(ArrayLengthFromUniformTest, MissingBindingPointToIndexMapping) {
auto* src = R"(
-[[block]]
struct SB1 {
x : i32;
arr1 : array<i32>;
};
-[[block]]
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
@@ -446,20 +415,17 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
};
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
-[[block]]
struct SB1 {
x : i32;
arr1 : array<i32>;
};
-[[block]]
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
diff --git a/src/transform/binding_remapper_test.cc b/src/transform/binding_remapper_test.cc
index fded200..87e205a 100644
--- a/src/transform/binding_remapper_test.cc
+++ b/src/transform/binding_remapper_test.cc
@@ -26,7 +26,6 @@
TEST_F(BindingRemapperTest, NoRemappings) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
@@ -52,7 +51,6 @@
TEST_F(BindingRemapperTest, RemapBindingPoints) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
@@ -67,7 +65,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
};
@@ -96,7 +93,6 @@
TEST_F(BindingRemapperTest, RemapAccessControls) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
@@ -113,7 +109,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
};
@@ -146,7 +141,6 @@
// decorations in type aliases. If not, just remove.
TEST_F(BindingRemapperTest, DISABLED_RemapAccessControlsWithAliases) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
@@ -169,7 +163,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
};
@@ -206,7 +199,6 @@
TEST_F(BindingRemapperTest, RemapAll) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
@@ -221,7 +213,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
};
@@ -252,7 +243,6 @@
TEST_F(BindingRemapperTest, BindingCollisionsSameEntryPoint) {
auto* src = R"(
-[[block]]
struct S {
i : i32;
};
@@ -272,7 +262,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
i : i32;
};
@@ -306,7 +295,6 @@
TEST_F(BindingRemapperTest, BindingCollisionsDifferentEntryPoints) {
auto* src = R"(
-[[block]]
struct S {
i : i32;
};
@@ -331,7 +319,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
i : i32;
};
@@ -370,7 +357,6 @@
TEST_F(BindingRemapperTest, NoData) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
diff --git a/src/transform/calculate_array_length_test.cc b/src/transform/calculate_array_length_test.cc
index 897213c..4522768 100644
--- a/src/transform/calculate_array_length_test.cc
+++ b/src/transform/calculate_array_length_test.cc
@@ -38,7 +38,6 @@
TEST_F(CalculateArrayLengthTest, Basic) {
auto* src = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -53,7 +52,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -80,7 +78,6 @@
TEST_F(CalculateArrayLengthTest, InSameBlock) {
auto* src = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -97,7 +94,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -126,7 +122,6 @@
TEST_F(CalculateArrayLengthTest, WithStride) {
auto* src = R"(
-[[block]]
struct SB {
x : i32;
y : f32;
@@ -142,7 +137,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
x : i32;
y : f32;
@@ -170,7 +164,6 @@
TEST_F(CalculateArrayLengthTest, Nested) {
auto* src = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -191,7 +184,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -227,13 +219,11 @@
TEST_F(CalculateArrayLengthTest, MultipleStorageBuffers) {
auto* src = R"(
-[[block]]
struct SB1 {
x : i32;
arr1 : array<i32>;
};
-[[block]]
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
@@ -252,7 +242,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB1 {
x : i32;
arr1 : array<i32>;
@@ -261,7 +250,6 @@
[[internal(intrinsic_buffer_size)]]
fn tint_symbol([[internal(disable_validation__ignore_constructible_function_parameter)]] buffer : SB1, result : ptr<function, u32>)
-[[block]]
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
@@ -295,7 +283,6 @@
TEST_F(CalculateArrayLengthTest, Shadowing) {
auto* src = R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
@@ -316,7 +303,6 @@
auto* expect =
R"(
-[[block]]
struct SB {
x : i32;
arr : array<i32>;
diff --git a/src/transform/canonicalize_entry_point_io_test.cc b/src/transform/canonicalize_entry_point_io_test.cc
index 3ea25c1..e2daa97 100644
--- a/src/transform/canonicalize_entry_point_io_test.cc
+++ b/src/transform/canonicalize_entry_point_io_test.cc
@@ -1320,7 +1320,6 @@
TEST_F(CanonicalizeEntryPointIOTest, Struct_LayoutDecorations) {
auto* src = R"(
-[[block]]
struct FragmentInput {
[[size(16), location(1)]] value : f32;
[[builtin(position)]] [[align(32)]] coord : vec4<f32>;
@@ -1338,7 +1337,6 @@
)";
auto* expect = R"(
-[[block]]
struct FragmentInput {
[[size(16)]]
value : f32;
diff --git a/src/transform/decompose_memory_access_test.cc b/src/transform/decompose_memory_access_test.cc
index 5cf3bc6..046d88c 100644
--- a/src/transform/decompose_memory_access_test.cc
+++ b/src/transform/decompose_memory_access_test.cc
@@ -24,7 +24,6 @@
TEST_F(DecomposeMemoryAccessTest, SB_BasicLoad) {
auto* src = R"(
-[[block]]
struct SB {
a : i32;
b : u32;
@@ -80,7 +79,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
a : i32;
b : u32;
@@ -222,7 +220,6 @@
TEST_F(DecomposeMemoryAccessTest, UB_BasicLoad) {
auto* src = R"(
-[[block]]
struct UB {
a : i32;
b : u32;
@@ -278,7 +275,6 @@
)";
auto* expect = R"(
-[[block]]
struct UB {
a : i32;
b : u32;
@@ -420,7 +416,6 @@
TEST_F(DecomposeMemoryAccessTest, SB_BasicStore) {
auto* src = R"(
-[[block]]
struct SB {
a : i32;
b : u32;
@@ -476,7 +471,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
a : i32;
b : u32;
@@ -635,7 +629,6 @@
TEST_F(DecomposeMemoryAccessTest, LoadStructure) {
auto* src = R"(
-[[block]]
struct SB {
a : i32;
b : u32;
@@ -670,7 +663,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
a : i32;
b : u32;
@@ -795,7 +787,6 @@
TEST_F(DecomposeMemoryAccessTest, StoreStructure) {
auto* src = R"(
-[[block]]
struct SB {
a : i32;
b : u32;
@@ -830,7 +821,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
a : i32;
b : u32;
@@ -1005,7 +995,6 @@
c : i32;
};
-[[block]]
struct SB {
[[size(128)]]
a : i32;
@@ -1040,7 +1029,6 @@
c : i32;
};
-[[block]]
struct SB {
[[size(128)]]
a : i32;
@@ -1077,7 +1065,6 @@
c : i32;
};
-[[block]]
struct SB {
[[size(128)]]
a : i32;
@@ -1108,7 +1095,6 @@
c : i32;
};
-[[block]]
struct SB {
[[size(128)]]
a : i32;
@@ -1156,7 +1142,6 @@
type A2_Array = [[stride(256)]] array<S2>;
-[[block]]
struct SB {
[[size(128)]]
a : i32;
@@ -1195,7 +1180,6 @@
type A2_Array = [[stride(256)]] array<S2>;
-[[block]]
struct SB {
[[size(128)]]
a : i32;
@@ -1223,7 +1207,6 @@
TEST_F(DecomposeMemoryAccessTest, StorageBufferAtomics) {
auto* src = R"(
-[[block]]
struct SB {
padding : vec4<f32>;
a : atomic<i32>;
@@ -1261,7 +1244,6 @@
)";
auto* expect = R"(
-[[block]]
struct SB {
padding : vec4<f32>;
a : atomic<i32>;
diff --git a/src/transform/decompose_strided_matrix_test.cc b/src/transform/decompose_strided_matrix_test.cc
index b7a22e4..41555dc 100644
--- a/src/transform/decompose_strided_matrix_test.cc
+++ b/src/transform/decompose_strided_matrix_test.cc
@@ -51,7 +51,6 @@
}
TEST_F(DecomposeStridedMatrixTest, ReadUniformMatrix) {
- // [[block]]
// struct S {
// [[offset(16), stride(32)]]
// [[internal(ignore_stride_decoration)]]
@@ -74,9 +73,6 @@
b.create<ast::StrideDecoration>(32),
b.Disable(ast::DisabledValidation::kIgnoreStrideDecoration),
}),
- },
- {
- b.StructBlock(),
});
b.Global("s", b.ty.Of(S), ast::StorageClass::kUniform,
b.GroupAndBinding(0, 0));
@@ -91,7 +87,6 @@
});
auto* expect = R"(
-[[block]]
struct S {
[[size(16)]]
padding : u32;
@@ -117,7 +112,6 @@
}
TEST_F(DecomposeStridedMatrixTest, ReadUniformColumn) {
- // [[block]]
// struct S {
// [[offset(16), stride(32)]]
// [[internal(ignore_stride_decoration)]]
@@ -140,9 +134,6 @@
b.create<ast::StrideDecoration>(32),
b.Disable(ast::DisabledValidation::kIgnoreStrideDecoration),
}),
- },
- {
- b.StructBlock(),
});
b.Global("s", b.ty.Of(S), ast::StorageClass::kUniform,
b.GroupAndBinding(0, 0));
@@ -157,7 +148,6 @@
});
auto* expect = R"(
-[[block]]
struct S {
[[size(16)]]
padding : u32;
@@ -179,7 +169,6 @@
}
TEST_F(DecomposeStridedMatrixTest, ReadUniformMatrix_DefaultStride) {
- // [[block]]
// struct S {
// [[offset(16), stride(8)]]
// [[internal(ignore_stride_decoration)]]
@@ -202,9 +191,6 @@
b.create<ast::StrideDecoration>(8),
b.Disable(ast::DisabledValidation::kIgnoreStrideDecoration),
}),
- },
- {
- b.StructBlock(),
});
b.Global("s", b.ty.Of(S), ast::StorageClass::kUniform,
b.GroupAndBinding(0, 0));
@@ -219,7 +205,6 @@
});
auto* expect = R"(
-[[block]]
struct S {
[[size(16)]]
padding : u32;
@@ -242,7 +227,6 @@
}
TEST_F(DecomposeStridedMatrixTest, ReadStorageMatrix) {
- // [[block]]
// struct S {
// [[offset(8), stride(32)]]
// [[internal(ignore_stride_decoration)]]
@@ -265,9 +249,6 @@
b.create<ast::StrideDecoration>(32),
b.Disable(ast::DisabledValidation::kIgnoreStrideDecoration),
}),
- },
- {
- b.StructBlock(),
});
b.Global("s", b.ty.Of(S), ast::StorageClass::kStorage,
ast::Access::kReadWrite, b.GroupAndBinding(0, 0));
@@ -282,7 +263,6 @@
});
auto* expect = R"(
-[[block]]
struct S {
[[size(8)]]
padding : u32;
@@ -308,7 +288,6 @@
}
TEST_F(DecomposeStridedMatrixTest, ReadStorageColumn) {
- // [[block]]
// struct S {
// [[offset(16), stride(32)]]
// [[internal(ignore_stride_decoration)]]
@@ -331,9 +310,6 @@
b.create<ast::StrideDecoration>(32),
b.Disable(ast::DisabledValidation::kIgnoreStrideDecoration),
}),
- },
- {
- b.StructBlock(),
});
b.Global("s", b.ty.Of(S), ast::StorageClass::kStorage,
ast::Access::kReadWrite, b.GroupAndBinding(0, 0));
@@ -348,7 +324,6 @@
});
auto* expect = R"(
-[[block]]
struct S {
[[size(16)]]
padding : u32;
@@ -370,7 +345,6 @@
}
TEST_F(DecomposeStridedMatrixTest, WriteStorageMatrix) {
- // [[block]]
// struct S {
// [[offset(8), stride(32)]]
// [[internal(ignore_stride_decoration)]]
@@ -393,9 +367,6 @@
b.create<ast::StrideDecoration>(32),
b.Disable(ast::DisabledValidation::kIgnoreStrideDecoration),
}),
- },
- {
- b.StructBlock(),
});
b.Global("s", b.ty.Of(S), ast::StorageClass::kStorage,
ast::Access::kReadWrite, b.GroupAndBinding(0, 0));
@@ -411,7 +382,6 @@
});
auto* expect = R"(
-[[block]]
struct S {
[[size(8)]]
padding : u32;
@@ -437,7 +407,6 @@
}
TEST_F(DecomposeStridedMatrixTest, WriteStorageColumn) {
- // [[block]]
// struct S {
// [[offset(8), stride(32)]]
// [[internal(ignore_stride_decoration)]]
@@ -460,9 +429,6 @@
b.create<ast::StrideDecoration>(32),
b.Disable(ast::DisabledValidation::kIgnoreStrideDecoration),
}),
- },
- {
- b.StructBlock(),
});
b.Global("s", b.ty.Of(S), ast::StorageClass::kStorage,
ast::Access::kReadWrite, b.GroupAndBinding(0, 0));
@@ -477,7 +443,6 @@
});
auto* expect = R"(
-[[block]]
struct S {
[[size(8)]]
padding : u32;
@@ -499,7 +464,6 @@
}
TEST_F(DecomposeStridedMatrixTest, ReadWriteViaPointerLets) {
- // [[block]]
// struct S {
// [[offset(8), stride(32)]]
// [[internal(ignore_stride_decoration)]]
@@ -528,9 +492,6 @@
b.create<ast::StrideDecoration>(32),
b.Disable(ast::DisabledValidation::kIgnoreStrideDecoration),
}),
- },
- {
- b.StructBlock(),
});
b.Global("s", b.ty.Of(S), ast::StorageClass::kStorage,
ast::Access::kReadWrite, b.GroupAndBinding(0, 0));
@@ -554,7 +515,6 @@
});
auto* expect = R"(
-[[block]]
struct S {
[[size(8)]]
padding : u32;
diff --git a/src/transform/first_index_offset.cc b/src/transform/first_index_offset.cc
index 4bc21c2..6fcff16 100644
--- a/src/transform/first_index_offset.cc
+++ b/src/transform/first_index_offset.cc
@@ -18,7 +18,6 @@
#include <unordered_map>
#include <utility>
-#include "src/ast/struct_block_decoration.h"
#include "src/program_builder.h"
#include "src/sem/function.h"
#include "src/sem/member_accessor_expression.h"
@@ -133,9 +132,7 @@
instance_index_offset = offset;
offset += 4;
}
- auto* struct_ =
- ctx.dst->Structure(ctx.dst->Sym(), std::move(members),
- {ctx.dst->create<ast::StructBlockDecoration>()});
+ auto* struct_ = ctx.dst->Structure(ctx.dst->Sym(), std::move(members));
// Create a global to hold the uniform buffer
Symbol buffer_name = ctx.dst->Sym();
diff --git a/src/transform/first_index_offset.h b/src/transform/first_index_offset.h
index 21a618a..ffbb138 100644
--- a/src/transform/first_index_offset.h
+++ b/src/transform/first_index_offset.h
@@ -41,7 +41,6 @@
/// }
///
/// After:
-/// [[block]]
/// struct TintFirstIndexOffsetData {
/// tint_first_vertex_index : u32;
/// tint_first_instance_index : u32;
diff --git a/src/transform/first_index_offset_test.cc b/src/transform/first_index_offset_test.cc
index 8f9d4ff..8d537e0 100644
--- a/src/transform/first_index_offset_test.cc
+++ b/src/transform/first_index_offset_test.cc
@@ -59,7 +59,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
first_vertex_index : u32;
};
@@ -106,7 +105,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
first_instance_index : u32;
};
@@ -158,7 +156,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
first_vertex_index : u32;
first_instance_index : u32;
@@ -217,7 +214,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
first_vertex_index : u32;
};
@@ -280,7 +276,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol {
first_vertex_index : u32;
first_instance_index : u32;
diff --git a/src/transform/module_scope_var_to_entry_point_param.h b/src/transform/module_scope_var_to_entry_point_param.h
index 1b178ec..34db3e6 100644
--- a/src/transform/module_scope_var_to_entry_point_param.h
+++ b/src/transform/module_scope_var_to_entry_point_param.h
@@ -33,7 +33,6 @@
///
/// Before:
/// ```
-/// [[block]]
/// struct S {
/// f : f32;
/// };
diff --git a/src/transform/module_scope_var_to_entry_point_param_test.cc b/src/transform/module_scope_var_to_entry_point_param_test.cc
index 26951ab..a1620e7 100644
--- a/src/transform/module_scope_var_to_entry_point_param_test.cc
+++ b/src/transform/module_scope_var_to_entry_point_param_test.cc
@@ -199,7 +199,6 @@
TEST_F(ModuleScopeVarToEntryPointParamTest, Buffers_Basic) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
@@ -217,7 +216,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
};
@@ -236,7 +234,6 @@
TEST_F(ModuleScopeVarToEntryPointParamTest, Buffers_FunctionCalls) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
@@ -268,7 +265,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
};
@@ -490,7 +486,6 @@
TEST_F(ModuleScopeVarToEntryPointParamTest, UnusedVariables) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
};
@@ -512,7 +507,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
};
diff --git a/src/transform/multiplanar_external_texture.cc b/src/transform/multiplanar_external_texture.cc
index a3cfcc7..387604b 100644
--- a/src/transform/multiplanar_external_texture.cc
+++ b/src/transform/multiplanar_external_texture.cc
@@ -241,8 +241,7 @@
params_struct_sym = b.Symbols().New("ExternalTextureParams");
- b.Structure(params_struct_sym, member_list,
- ast::DecorationList{b.StructBlock()});
+ b.Structure(params_struct_sym, member_list);
}
/// Constructs a StatementList containing all the statements making up the
diff --git a/src/transform/multiplanar_external_texture_test.cc b/src/transform/multiplanar_external_texture_test.cc
index 488df7a..631d76b 100644
--- a/src/transform/multiplanar_external_texture_test.cc
+++ b/src/transform/multiplanar_external_texture_test.cc
@@ -78,7 +78,6 @@
)";
auto* expect = R"(
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
@@ -123,7 +122,6 @@
auto* expect = R"(
[[group(0), binding(0)]] var s : sampler;
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
@@ -177,7 +175,6 @@
)";
auto* expect = R"(
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
@@ -235,7 +232,6 @@
auto* expect = R"(
[[group(0), binding(0)]] var s : sampler;
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
@@ -309,7 +305,6 @@
auto* expect = R"(
[[group(0), binding(0)]] var s : sampler;
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
@@ -392,7 +387,6 @@
)";
auto* expect = R"(
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
@@ -459,7 +453,6 @@
)";
auto* expect = R"(
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
@@ -528,7 +521,6 @@
)";
auto* expect = R"(
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
@@ -607,7 +599,6 @@
)";
auto* expect = R"(
-[[block]]
struct ExternalTextureParams {
numPlanes : u32;
vr : f32;
diff --git a/src/transform/num_workgroups_from_uniform.cc b/src/transform/num_workgroups_from_uniform.cc
index 62faf9a..1e0f77b 100644
--- a/src/transform/num_workgroups_from_uniform.cc
+++ b/src/transform/num_workgroups_from_uniform.cc
@@ -122,8 +122,7 @@
auto* num_workgroups_struct = ctx.dst->Structure(
ctx.dst->Sym(),
{ctx.dst->Member(kNumWorkgroupsMemberName,
- ctx.dst->ty.vec3(ctx.dst->ty.u32()))},
- ast::DecorationList{ctx.dst->create<ast::StructBlockDecoration>()});
+ ctx.dst->ty.vec3(ctx.dst->ty.u32()))});
num_workgroups_ubo = ctx.dst->Global(
ctx.dst->Sym(), ctx.dst->ty.Of(num_workgroups_struct),
ast::StorageClass::kUniform,
diff --git a/src/transform/num_workgroups_from_uniform.h b/src/transform/num_workgroups_from_uniform.h
index 94d9ba9..af922c2 100644
--- a/src/transform/num_workgroups_from_uniform.h
+++ b/src/transform/num_workgroups_from_uniform.h
@@ -30,7 +30,6 @@
///
/// The generated uniform buffer will have the form:
/// ```
-/// [[block]]
/// struct num_workgroups_struct {
/// num_workgroups : vec3<u32>;
/// };
diff --git a/src/transform/num_workgroups_from_uniform_test.cc b/src/transform/num_workgroups_from_uniform_test.cc
index 1d71941..9d1b81d 100644
--- a/src/transform/num_workgroups_from_uniform_test.cc
+++ b/src/transform/num_workgroups_from_uniform_test.cc
@@ -66,7 +66,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol_2 {
num_workgroups : vec3<u32>;
};
@@ -109,7 +108,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol_2 {
num_workgroups : vec3<u32>;
};
@@ -158,7 +156,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol_2 {
num_workgroups : vec3<u32>;
};
@@ -234,7 +231,6 @@
)";
auto* expect = R"(
-[[block]]
struct tint_symbol_6 {
num_workgroups : vec3<u32>;
};
diff --git a/src/transform/pad_array_elements_test.cc b/src/transform/pad_array_elements_test.cc
index eca088c..7483f3f 100644
--- a/src/transform/pad_array_elements_test.cc
+++ b/src/transform/pad_array_elements_test.cc
@@ -64,7 +64,6 @@
TEST_F(PadArrayElementsTest, RuntimeArray) {
auto* src = R"(
-[[block]]
struct S {
rta : [[stride(8)]] array<i32>;
};
@@ -75,7 +74,6 @@
el : i32;
};
-[[block]]
struct S {
rta : array<tint_padded_array_element>;
};
diff --git a/src/transform/remove_phonies_test.cc b/src/transform/remove_phonies_test.cc
index 138fdbf..837e34c 100644
--- a/src/transform/remove_phonies_test.cc
+++ b/src/transform/remove_phonies_test.cc
@@ -173,7 +173,6 @@
TEST_F(RemovePhoniesTest, ForLoop) {
auto* src = R"(
-[[block]]
struct S {
arr : array<i32>;
};
@@ -203,7 +202,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
arr : array<i32>;
};
diff --git a/src/transform/robustness_test.cc b/src/transform/robustness_test.cc
index 4dfe0c1..4c0025e 100644
--- a/src/transform/robustness_test.cc
+++ b/src/transform/robustness_test.cc
@@ -174,7 +174,6 @@
// 0xffffffff. If WGSL supports 64-bit indexing, re-enable this test.
TEST_F(RobustnessTest, DISABLED_LargeArrays_Idx) {
auto* src = R"(
-[[block]]
struct S {
a : array<f32, 0x7fffffff>;
b : array<f32>;
@@ -213,7 +212,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : array<f32, 2147483647>;
b : array<f32>;
@@ -617,7 +615,6 @@
TEST_F(RobustnessTest, RuntimeArray_Clamps) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
b : array<f32>;
@@ -630,7 +627,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
b : array<f32>;
@@ -778,7 +774,6 @@
// Check that existing use of min() and arrayLength() do not get renamed.
TEST_F(RobustnessTest, DontRenameSymbols) {
auto* src = R"(
-[[block]]
struct S {
a : f32;
b : array<f32>;
@@ -796,7 +791,6 @@
)";
auto* expect = R"(
-[[block]]
struct S {
a : f32;
b : array<f32>;
@@ -819,7 +813,6 @@
}
const char* kOmitSourceShader = R"(
-[[block]]
struct S {
a : array<f32, 4>;
b : array<f32>;
@@ -827,7 +820,7 @@
[[group(0), binding(0)]] var<storage, read> s : S;
type UArr = [[stride(16)]] array<f32, 4>;
-[[block]] struct U {
+struct U {
a : UArr;
};
[[group(1), binding(0)]] var<uniform> u : U;
@@ -878,7 +871,6 @@
TEST_F(RobustnessTest, OmitNone) {
auto* expect = R"(
-[[block]]
struct S {
a : array<f32, 4>;
b : array<f32>;
@@ -888,7 +880,6 @@
type UArr = [[stride(16)]] array<f32, 4>;
-[[block]]
struct U {
a : UArr;
};
@@ -943,7 +934,6 @@
TEST_F(RobustnessTest, OmitStorage) {
auto* expect = R"(
-[[block]]
struct S {
a : array<f32, 4>;
b : array<f32>;
@@ -953,7 +943,6 @@
type UArr = [[stride(16)]] array<f32, 4>;
-[[block]]
struct U {
a : UArr;
};
@@ -1010,7 +999,6 @@
TEST_F(RobustnessTest, OmitUniform) {
auto* expect = R"(
-[[block]]
struct S {
a : array<f32, 4>;
b : array<f32>;
@@ -1020,7 +1008,6 @@
type UArr = [[stride(16)]] array<f32, 4>;
-[[block]]
struct U {
a : UArr;
};
@@ -1077,7 +1064,6 @@
TEST_F(RobustnessTest, OmitBoth) {
auto* expect = R"(
-[[block]]
struct S {
a : array<f32, 4>;
b : array<f32>;
@@ -1087,7 +1073,6 @@
type UArr = [[stride(16)]] array<f32, 4>;
-[[block]]
struct U {
a : UArr;
};
diff --git a/src/transform/vertex_pulling.cc b/src/transform/vertex_pulling.cc
index 40dd564..ea15e85 100644
--- a/src/transform/vertex_pulling.cc
+++ b/src/transform/vertex_pulling.cc
@@ -19,7 +19,6 @@
#include "src/ast/assignment_statement.h"
#include "src/ast/bitcast_expression.h"
-#include "src/ast/struct_block_decoration.h"
#include "src/ast/variable_decl_statement.h"
#include "src/program_builder.h"
#include "src/sem/variable.h"
@@ -260,9 +259,6 @@
{
ctx.dst->Member(GetStructBufferName(),
ctx.dst->ty.array<ProgramBuilder::u32>(4)),
- },
- {
- ctx.dst->create<ast::StructBlockDecoration>(),
});
for (uint32_t i = 0; i < cfg.vertex_state.size(); ++i) {
// The decorated variable with struct type
diff --git a/src/transform/vertex_pulling_test.cc b/src/transform/vertex_pulling_test.cc
index 20f7929..b43d4a4 100644
--- a/src/transform/vertex_pulling_test.cc
+++ b/src/transform/vertex_pulling_test.cc
@@ -107,7 +107,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -137,7 +136,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -176,7 +174,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -215,7 +212,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -259,7 +255,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -308,7 +303,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -369,7 +363,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -452,7 +445,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -520,7 +512,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -566,7 +557,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -623,7 +613,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data_1 : [[stride(4)]] array<u32>;
};
@@ -701,7 +690,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -862,7 +850,6 @@
auto* expect =
R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};
@@ -1022,7 +1009,6 @@
)";
auto* expect = R"(
-[[block]]
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
};