mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-21 02:39:11 +00:00
SymbolTable: Change behavior of anonymous symbols
SymbolTable::New() used to build and return a symbol without a registered name. When you asked for the name of the symbol it would return tint_symbol_N, where N is the numerical identifier for the symbol. This approach was a major tripping hazzard for transforms that liked to fetch the source program name, and register it in the new program (in this situation, you should always use `CloneContext::Clone(Symbol)`). Without special casing for unnamed symbols, you could end up promoting the unnamed symbol to a named symbol, and then colliding against a new unnamed symbol. This is exactly what happened in tint:711. Instead, with this change: * The concept of unnamed symbols has been removed. All symbols now have a name. * The signature of `SymbolTable::New()` has been changed to take a name parameter (which defaults to 'tint_symbol'). This can be used to create a new, unique named symbol (possibly with a suffix), which will not collide with any existing symbols. Note these symbols may still collide if `SymbolTable::Register()` is called with the same name. All Transforms that currently use `SymbolTable::Register()` will be fixed in another change. * The CloneContext has been updated to use `SymbolTable::New()` instead of `Register()`. This means that any symbols defined before a clone will not collide. * `CloneContext::CloneSymbols()` has been added which allows a transform to pre-clone all the symbols from the source program. This can be used to avoid the authored identifiers being suffixed with a number, in the case a transform calls New() before the symbol is cloned. * `Symbol::to_str()` has been changed to return `$<id>` instead of `tint_symbol_N`. This is to avoid any confusion between the actual name and the symbol ID. Bug: tint:711 Bug: tint:712 Change-Id: I526e4b49b7027545613859de487e6a275686107a Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/47631 Commit-Queue: Ben Clayton <bclayton@google.com> Reviewed-by: Antonio Maiorano <amaiorano@google.com>
This commit is contained in:
committed by
Commit Bot service account
parent
46bb2bc935
commit
363a2e26e3
@@ -46,16 +46,16 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_buffer_size)]]
|
||||
fn tint_symbol_1(buffer : SB, result : ptr<function, u32>)
|
||||
fn tint_symbol(buffer : SB, result : ptr<function, u32>)
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
var tint_symbol_7 : u32 = 0u;
|
||||
tint_symbol_1(sb, tint_symbol_7);
|
||||
let tint_symbol_9 : u32 = ((tint_symbol_7 - 4u) / 4u);
|
||||
var len : u32 = tint_symbol_9;
|
||||
var tint_symbol_1 : u32 = 0u;
|
||||
tint_symbol(sb, tint_symbol_1);
|
||||
let tint_symbol_2 : u32 = ((tint_symbol_1 - 4u) / 4u);
|
||||
var len : u32 = tint_symbol_2;
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -90,18 +90,18 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_buffer_size)]]
|
||||
fn tint_symbol_1(buffer : SB, result : ptr<function, u32>)
|
||||
fn tint_symbol(buffer : SB, result : ptr<function, u32>)
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
var tint_symbol_7 : u32 = 0u;
|
||||
tint_symbol_1(sb, tint_symbol_7);
|
||||
let tint_symbol_9 : u32 = ((tint_symbol_7 - 4u) / 4u);
|
||||
var a : u32 = tint_symbol_9;
|
||||
var b : u32 = tint_symbol_9;
|
||||
var c : u32 = tint_symbol_9;
|
||||
var tint_symbol_1 : u32 = 0u;
|
||||
tint_symbol(sb, tint_symbol_1);
|
||||
let tint_symbol_2 : u32 = ((tint_symbol_1 - 4u) / 4u);
|
||||
var a : u32 = tint_symbol_2;
|
||||
var b : u32 = tint_symbol_2;
|
||||
var c : u32 = tint_symbol_2;
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -136,16 +136,16 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_buffer_size)]]
|
||||
fn tint_symbol_1(buffer : SB, result : ptr<function, u32>)
|
||||
fn tint_symbol(buffer : SB, result : ptr<function, u32>)
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
var tint_symbol_8 : u32 = 0u;
|
||||
tint_symbol_1(sb, tint_symbol_8);
|
||||
let tint_symbol_10 : u32 = ((tint_symbol_8 - 8u) / 64u);
|
||||
var len : u32 = tint_symbol_10;
|
||||
var tint_symbol_1 : u32 = 0u;
|
||||
tint_symbol(sb, tint_symbol_1);
|
||||
let tint_symbol_2 : u32 = ((tint_symbol_1 - 8u) / 64u);
|
||||
var len : u32 = tint_symbol_2;
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -184,23 +184,23 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_buffer_size)]]
|
||||
fn tint_symbol_1(buffer : SB, result : ptr<function, u32>)
|
||||
fn tint_symbol(buffer : SB, result : ptr<function, u32>)
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
if (true) {
|
||||
var tint_symbol_7 : u32 = 0u;
|
||||
tint_symbol_1(sb, tint_symbol_7);
|
||||
let tint_symbol_9 : u32 = ((tint_symbol_7 - 4u) / 4u);
|
||||
var len : u32 = tint_symbol_9;
|
||||
var tint_symbol_1 : u32 = 0u;
|
||||
tint_symbol(sb, tint_symbol_1);
|
||||
let tint_symbol_2 : u32 = ((tint_symbol_1 - 4u) / 4u);
|
||||
var len : u32 = tint_symbol_2;
|
||||
} else {
|
||||
if (true) {
|
||||
var tint_symbol_10 : u32 = 0u;
|
||||
tint_symbol_1(sb, tint_symbol_10);
|
||||
let tint_symbol_11 : u32 = ((tint_symbol_10 - 4u) / 4u);
|
||||
var len : u32 = tint_symbol_11;
|
||||
var tint_symbol_3 : u32 = 0u;
|
||||
tint_symbol(sb, tint_symbol_3);
|
||||
let tint_symbol_4 : u32 = ((tint_symbol_3 - 4u) / 4u);
|
||||
var len : u32 = tint_symbol_4;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -245,7 +245,7 @@ struct SB1 {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_buffer_size)]]
|
||||
fn tint_symbol_1(buffer : SB1, result : ptr<function, u32>)
|
||||
fn tint_symbol(buffer : SB1, result : ptr<function, u32>)
|
||||
|
||||
[[block]]
|
||||
struct SB2 {
|
||||
@@ -254,7 +254,7 @@ struct SB2 {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_buffer_size)]]
|
||||
fn tint_symbol_10(buffer : SB2, result : ptr<function, u32>)
|
||||
fn tint_symbol_3(buffer : SB2, result : ptr<function, u32>)
|
||||
|
||||
var<storage> sb1 : SB1;
|
||||
|
||||
@@ -262,14 +262,14 @@ var<storage> sb2 : SB2;
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
var tint_symbol_7 : u32 = 0u;
|
||||
tint_symbol_1(sb1, tint_symbol_7);
|
||||
let tint_symbol_9 : u32 = ((tint_symbol_7 - 4u) / 4u);
|
||||
var tint_symbol_13 : u32 = 0u;
|
||||
tint_symbol_10(sb2, tint_symbol_13);
|
||||
let tint_symbol_15 : u32 = ((tint_symbol_13 - 16u) / 16u);
|
||||
var len1 : u32 = tint_symbol_9;
|
||||
var len2 : u32 = tint_symbol_15;
|
||||
var tint_symbol_1 : u32 = 0u;
|
||||
tint_symbol(sb1, tint_symbol_1);
|
||||
let tint_symbol_2 : u32 = ((tint_symbol_1 - 4u) / 4u);
|
||||
var tint_symbol_4 : u32 = 0u;
|
||||
tint_symbol_3(sb2, tint_symbol_4);
|
||||
let tint_symbol_5 : u32 = ((tint_symbol_4 - 16u) / 16u);
|
||||
var len1 : u32 = tint_symbol_2;
|
||||
var len2 : u32 = tint_symbol_5;
|
||||
var x : u32 = (len1 + len2);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -33,7 +33,7 @@ fn frag_main([[builtin(frag_coord)]] coord : vec4<f32>,
|
||||
)";
|
||||
|
||||
auto* expect = R"(
|
||||
struct tint_symbol_5 {
|
||||
struct tint_symbol_1 {
|
||||
[[builtin(frag_coord)]]
|
||||
coord : vec4<f32>;
|
||||
[[location(1)]]
|
||||
@@ -43,10 +43,10 @@ struct tint_symbol_5 {
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main(tint_symbol_1 : tint_symbol_5) {
|
||||
let coord : vec4<f32> = tint_symbol_1.coord;
|
||||
let loc1 : f32 = tint_symbol_1.loc1;
|
||||
let loc2 : vec4<u32> = tint_symbol_1.loc2;
|
||||
fn frag_main(tint_symbol : tint_symbol_1) {
|
||||
let coord : vec4<f32> = tint_symbol.coord;
|
||||
let loc1 : f32 = tint_symbol.loc1;
|
||||
let loc2 : vec4<u32> = tint_symbol.loc2;
|
||||
var col : f32 = (coord.x * loc1);
|
||||
}
|
||||
)";
|
||||
@@ -69,14 +69,14 @@ fn frag_main([[location(1)]] loc1 : myf32) {
|
||||
auto* expect = R"(
|
||||
type myf32 = f32;
|
||||
|
||||
struct tint_symbol_4 {
|
||||
struct tint_symbol_1 {
|
||||
[[location(1)]]
|
||||
loc1 : myf32;
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main(tint_symbol_1 : tint_symbol_4) {
|
||||
let loc1 : myf32 = tint_symbol_1.loc1;
|
||||
fn frag_main(tint_symbol : tint_symbol_1) {
|
||||
let loc1 : myf32 = tint_symbol.loc1;
|
||||
var x : myf32 = loc1;
|
||||
}
|
||||
)";
|
||||
@@ -96,7 +96,7 @@ fn frag_main([[builtin(frag_coord)]] coord : vec4<f32>,
|
||||
)";
|
||||
|
||||
auto* expect = R"(
|
||||
struct tint_symbol_5 {
|
||||
struct tint_symbol_1 {
|
||||
[[builtin(frag_coord)]]
|
||||
coord : vec4<f32>;
|
||||
[[location(1)]]
|
||||
@@ -106,7 +106,7 @@ struct tint_symbol_5 {
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main(tint_symbol_1 : tint_symbol_5) {
|
||||
fn frag_main(tint_symbol : tint_symbol_1) {
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -143,7 +143,7 @@ struct FragLocations {
|
||||
loc2 : vec4<u32>;
|
||||
};
|
||||
|
||||
struct tint_symbol_10 {
|
||||
struct tint_symbol_1 {
|
||||
[[builtin(frag_coord)]]
|
||||
coord : vec4<f32>;
|
||||
[[location(1)]]
|
||||
@@ -155,10 +155,10 @@ struct tint_symbol_10 {
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main(tint_symbol_6 : tint_symbol_10) {
|
||||
let builtins : FragBuiltins = FragBuiltins(tint_symbol_6.coord);
|
||||
let locations : FragLocations = FragLocations(tint_symbol_6.loc1, tint_symbol_6.loc2);
|
||||
let loc0 : f32 = tint_symbol_6.loc0;
|
||||
fn frag_main(tint_symbol : tint_symbol_1) {
|
||||
let builtins : FragBuiltins = FragBuiltins(tint_symbol.coord);
|
||||
let locations : FragLocations = FragLocations(tint_symbol.loc1, tint_symbol.loc2);
|
||||
let loc0 : f32 = tint_symbol.loc0;
|
||||
var col : f32 = ((builtins.coord.x * locations.loc1) + loc0);
|
||||
}
|
||||
)";
|
||||
@@ -177,14 +177,14 @@ fn frag_main() -> [[builtin(frag_depth)]] f32 {
|
||||
)";
|
||||
|
||||
auto* expect = R"(
|
||||
struct tint_symbol_2 {
|
||||
struct tint_symbol {
|
||||
[[builtin(frag_depth)]]
|
||||
value : f32;
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() -> tint_symbol_2 {
|
||||
return tint_symbol_2(1.0);
|
||||
fn frag_main() -> tint_symbol {
|
||||
return tint_symbol(1.0);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -218,7 +218,7 @@ struct FragOutput {
|
||||
color : vec4<f32>;
|
||||
};
|
||||
|
||||
struct tint_symbol_5 {
|
||||
struct tint_symbol {
|
||||
[[builtin(frag_depth)]]
|
||||
depth : f32;
|
||||
[[builtin(sample_mask_out)]]
|
||||
@@ -228,12 +228,12 @@ struct tint_symbol_5 {
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() -> tint_symbol_5 {
|
||||
fn frag_main() -> tint_symbol {
|
||||
var output : FragOutput;
|
||||
output.depth = 1.0;
|
||||
output.mask = 7u;
|
||||
output.color = vec4<f32>(0.5, 0.5, 0.5, 1.0);
|
||||
return tint_symbol_5(output.depth, output.mask, output.color);
|
||||
return tint_symbol(output.depth, output.mask, output.color);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -274,7 +274,7 @@ fn foo(x : FragmentInput) -> f32 {
|
||||
return (x.value * x.mul);
|
||||
}
|
||||
|
||||
struct tint_symbol_6 {
|
||||
struct tint_symbol_1 {
|
||||
[[location(0)]]
|
||||
value : f32;
|
||||
[[location(1)]]
|
||||
@@ -282,12 +282,12 @@ struct tint_symbol_6 {
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main1(tint_symbol_4 : tint_symbol_6) {
|
||||
let inputs : FragmentInput = FragmentInput(tint_symbol_4.value, tint_symbol_4.mul);
|
||||
fn frag_main1(tint_symbol : tint_symbol_1) {
|
||||
let inputs : FragmentInput = FragmentInput(tint_symbol.value, tint_symbol.mul);
|
||||
var x : f32 = foo(inputs);
|
||||
}
|
||||
|
||||
struct tint_symbol_11 {
|
||||
struct tint_symbol_3 {
|
||||
[[location(0)]]
|
||||
value : f32;
|
||||
[[location(1)]]
|
||||
@@ -295,8 +295,8 @@ struct tint_symbol_11 {
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main2(tint_symbol_10 : tint_symbol_11) {
|
||||
let inputs : FragmentInput = FragmentInput(tint_symbol_10.value, tint_symbol_10.mul);
|
||||
fn frag_main2(tint_symbol_2 : tint_symbol_3) {
|
||||
let inputs : FragmentInput = FragmentInput(tint_symbol_2.value, tint_symbol_2.mul);
|
||||
var x : f32 = foo(inputs);
|
||||
}
|
||||
)";
|
||||
@@ -347,7 +347,7 @@ fn bar() -> f32 {
|
||||
return (global_inputs.col2 * 2.0);
|
||||
}
|
||||
|
||||
struct tint_symbol_6 {
|
||||
struct tint_symbol_1 {
|
||||
[[location(0)]]
|
||||
col1 : f32;
|
||||
[[location(1)]]
|
||||
@@ -355,8 +355,8 @@ struct tint_symbol_6 {
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main1(tint_symbol_4 : tint_symbol_6) {
|
||||
let inputs : FragmentInput = FragmentInput(tint_symbol_4.col1, tint_symbol_4.col2);
|
||||
fn frag_main1(tint_symbol : tint_symbol_1) {
|
||||
let inputs : FragmentInput = FragmentInput(tint_symbol.col1, tint_symbol.col2);
|
||||
global_inputs = inputs;
|
||||
var r : f32 = foo();
|
||||
var g : f32 = bar();
|
||||
@@ -418,14 +418,14 @@ fn foo(x : MyFragmentInput) -> myf32 {
|
||||
return x.col1;
|
||||
}
|
||||
|
||||
struct tint_symbol_9 {
|
||||
struct tint_symbol_1 {
|
||||
[[location(0)]]
|
||||
col1 : myf32;
|
||||
[[location(1)]]
|
||||
col2 : myf32;
|
||||
};
|
||||
|
||||
struct tint_symbol_10 {
|
||||
struct tint_symbol_2 {
|
||||
[[location(0)]]
|
||||
col1 : myf32;
|
||||
[[location(1)]]
|
||||
@@ -433,11 +433,11 @@ struct tint_symbol_10 {
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main(tint_symbol_6 : tint_symbol_9) -> tint_symbol_10 {
|
||||
let inputs : MyFragmentInput = MyFragmentInput(tint_symbol_6.col1, tint_symbol_6.col2);
|
||||
fn frag_main(tint_symbol : tint_symbol_1) -> tint_symbol_2 {
|
||||
let inputs : MyFragmentInput = MyFragmentInput(tint_symbol.col1, tint_symbol.col2);
|
||||
var x : myf32 = foo(inputs);
|
||||
let tint_symbol_13 : FragmentOutput = MyFragmentOutput(x, inputs.col2);
|
||||
return tint_symbol_10(tint_symbol_13.col1, tint_symbol_13.col2);
|
||||
let tint_symbol_3 : FragmentOutput = MyFragmentOutput(x, inputs.col2);
|
||||
return tint_symbol_2(tint_symbol_3.col1, tint_symbol_3.col2);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -478,23 +478,23 @@ struct FragmentOutput {
|
||||
value : f32;
|
||||
};
|
||||
|
||||
struct tint_symbol_7 {
|
||||
struct tint_symbol_1 {
|
||||
[[location(1)]]
|
||||
value : f32;
|
||||
[[builtin(frag_coord)]]
|
||||
coord : vec4<f32>;
|
||||
};
|
||||
|
||||
struct tint_symbol_8 {
|
||||
struct tint_symbol_2 {
|
||||
[[location(1)]]
|
||||
value : f32;
|
||||
};
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main(tint_symbol_5 : tint_symbol_7) -> tint_symbol_8 {
|
||||
let inputs : FragmentInput = FragmentInput(tint_symbol_5.value, tint_symbol_5.coord);
|
||||
let tint_symbol_10 : FragmentOutput = FragmentOutput((inputs.coord.x * inputs.value));
|
||||
return tint_symbol_8(tint_symbol_10.value);
|
||||
fn frag_main(tint_symbol : tint_symbol_1) -> tint_symbol_2 {
|
||||
let inputs : FragmentInput = FragmentInput(tint_symbol.value, tint_symbol.coord);
|
||||
let tint_symbol_3 : FragmentOutput = FragmentOutput((inputs.coord.x * inputs.value));
|
||||
return tint_symbol_2(tint_symbol_3.value);
|
||||
}
|
||||
)";
|
||||
|
||||
|
||||
@@ -613,6 +613,10 @@ Transform::Output DecomposeStorageAccess::Run(const Program* in,
|
||||
ProgramBuilder out;
|
||||
CloneContext ctx(&out, in);
|
||||
|
||||
// Start by cloning all the symbols. This ensures that the authored symbols
|
||||
// won't get renamed if they collide with new symbols below.
|
||||
ctx.CloneSymbols();
|
||||
|
||||
auto& sem = ctx.src->Sem();
|
||||
|
||||
State state;
|
||||
|
||||
@@ -107,116 +107,116 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_load_i32)]]
|
||||
fn tint_symbol_26(buffer : SB, offset : u32) -> i32
|
||||
fn tint_symbol(buffer : SB, offset : u32) -> i32
|
||||
|
||||
[[internal(intrinsic_load_u32)]]
|
||||
fn tint_symbol_28(buffer : SB, offset : u32) -> u32
|
||||
fn tint_symbol_1(buffer : SB, offset : u32) -> u32
|
||||
|
||||
[[internal(intrinsic_load_f32)]]
|
||||
fn tint_symbol_29(buffer : SB, offset : u32) -> f32
|
||||
fn tint_symbol_2(buffer : SB, offset : u32) -> f32
|
||||
|
||||
[[internal(intrinsic_load_vec2_i32)]]
|
||||
fn tint_symbol_30(buffer : SB, offset : u32) -> vec2<i32>
|
||||
fn tint_symbol_3(buffer : SB, offset : u32) -> vec2<i32>
|
||||
|
||||
[[internal(intrinsic_load_vec2_u32)]]
|
||||
fn tint_symbol_31(buffer : SB, offset : u32) -> vec2<u32>
|
||||
fn tint_symbol_4(buffer : SB, offset : u32) -> vec2<u32>
|
||||
|
||||
[[internal(intrinsic_load_vec2_f32)]]
|
||||
fn tint_symbol_32(buffer : SB, offset : u32) -> vec2<f32>
|
||||
fn tint_symbol_5(buffer : SB, offset : u32) -> vec2<f32>
|
||||
|
||||
[[internal(intrinsic_load_vec3_i32)]]
|
||||
fn tint_symbol_33(buffer : SB, offset : u32) -> vec3<i32>
|
||||
fn tint_symbol_6(buffer : SB, offset : u32) -> vec3<i32>
|
||||
|
||||
[[internal(intrinsic_load_vec3_u32)]]
|
||||
fn tint_symbol_34(buffer : SB, offset : u32) -> vec3<u32>
|
||||
fn tint_symbol_7(buffer : SB, offset : u32) -> vec3<u32>
|
||||
|
||||
[[internal(intrinsic_load_vec3_f32)]]
|
||||
fn tint_symbol_35(buffer : SB, offset : u32) -> vec3<f32>
|
||||
fn tint_symbol_8(buffer : SB, offset : u32) -> vec3<f32>
|
||||
|
||||
[[internal(intrinsic_load_vec4_i32)]]
|
||||
fn tint_symbol_36(buffer : SB, offset : u32) -> vec4<i32>
|
||||
fn tint_symbol_9(buffer : SB, offset : u32) -> vec4<i32>
|
||||
|
||||
[[internal(intrinsic_load_vec4_u32)]]
|
||||
fn tint_symbol_37(buffer : SB, offset : u32) -> vec4<u32>
|
||||
fn tint_symbol_10(buffer : SB, offset : u32) -> vec4<u32>
|
||||
|
||||
[[internal(intrinsic_load_vec4_f32)]]
|
||||
fn tint_symbol_38(buffer : SB, offset : u32) -> vec4<f32>
|
||||
fn tint_symbol_11(buffer : SB, offset : u32) -> vec4<f32>
|
||||
|
||||
[[internal(intrinsic_load_vec2_f32)]]
|
||||
fn tint_symbol_39(buffer : SB, offset : u32) -> vec2<f32>
|
||||
fn tint_symbol_12(buffer : SB, offset : u32) -> vec2<f32>
|
||||
|
||||
fn tint_symbol_40(buffer : SB, offset : u32) -> mat2x2<f32> {
|
||||
return mat2x2<f32>(tint_symbol_39(buffer, (offset + 0u)), tint_symbol_39(buffer, (offset + 8u)));
|
||||
fn tint_symbol_13(buffer : SB, offset : u32) -> mat2x2<f32> {
|
||||
return mat2x2<f32>(tint_symbol_12(buffer, (offset + 0u)), tint_symbol_12(buffer, (offset + 8u)));
|
||||
}
|
||||
|
||||
[[internal(intrinsic_load_vec3_f32)]]
|
||||
fn tint_symbol_41(buffer : SB, offset : u32) -> vec3<f32>
|
||||
fn tint_symbol_14(buffer : SB, offset : u32) -> vec3<f32>
|
||||
|
||||
fn tint_symbol_42(buffer : SB, offset : u32) -> mat2x3<f32> {
|
||||
return mat2x3<f32>(tint_symbol_41(buffer, (offset + 0u)), tint_symbol_41(buffer, (offset + 16u)));
|
||||
fn tint_symbol_15(buffer : SB, offset : u32) -> mat2x3<f32> {
|
||||
return mat2x3<f32>(tint_symbol_14(buffer, (offset + 0u)), tint_symbol_14(buffer, (offset + 16u)));
|
||||
}
|
||||
|
||||
[[internal(intrinsic_load_vec4_f32)]]
|
||||
fn tint_symbol_43(buffer : SB, offset : u32) -> vec4<f32>
|
||||
fn tint_symbol_16(buffer : SB, offset : u32) -> vec4<f32>
|
||||
|
||||
fn tint_symbol_44(buffer : SB, offset : u32) -> mat2x4<f32> {
|
||||
return mat2x4<f32>(tint_symbol_43(buffer, (offset + 0u)), tint_symbol_43(buffer, (offset + 16u)));
|
||||
fn tint_symbol_17(buffer : SB, offset : u32) -> mat2x4<f32> {
|
||||
return mat2x4<f32>(tint_symbol_16(buffer, (offset + 0u)), tint_symbol_16(buffer, (offset + 16u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_45(buffer : SB, offset : u32) -> mat3x2<f32> {
|
||||
return mat3x2<f32>(tint_symbol_39(buffer, (offset + 0u)), tint_symbol_39(buffer, (offset + 8u)), tint_symbol_39(buffer, (offset + 16u)));
|
||||
fn tint_symbol_18(buffer : SB, offset : u32) -> mat3x2<f32> {
|
||||
return mat3x2<f32>(tint_symbol_12(buffer, (offset + 0u)), tint_symbol_12(buffer, (offset + 8u)), tint_symbol_12(buffer, (offset + 16u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_46(buffer : SB, offset : u32) -> mat3x3<f32> {
|
||||
return mat3x3<f32>(tint_symbol_41(buffer, (offset + 0u)), tint_symbol_41(buffer, (offset + 16u)), tint_symbol_41(buffer, (offset + 32u)));
|
||||
fn tint_symbol_19(buffer : SB, offset : u32) -> mat3x3<f32> {
|
||||
return mat3x3<f32>(tint_symbol_14(buffer, (offset + 0u)), tint_symbol_14(buffer, (offset + 16u)), tint_symbol_14(buffer, (offset + 32u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_47(buffer : SB, offset : u32) -> mat3x4<f32> {
|
||||
return mat3x4<f32>(tint_symbol_43(buffer, (offset + 0u)), tint_symbol_43(buffer, (offset + 16u)), tint_symbol_43(buffer, (offset + 32u)));
|
||||
fn tint_symbol_20(buffer : SB, offset : u32) -> mat3x4<f32> {
|
||||
return mat3x4<f32>(tint_symbol_16(buffer, (offset + 0u)), tint_symbol_16(buffer, (offset + 16u)), tint_symbol_16(buffer, (offset + 32u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_48(buffer : SB, offset : u32) -> mat4x2<f32> {
|
||||
return mat4x2<f32>(tint_symbol_39(buffer, (offset + 0u)), tint_symbol_39(buffer, (offset + 8u)), tint_symbol_39(buffer, (offset + 16u)), tint_symbol_39(buffer, (offset + 24u)));
|
||||
fn tint_symbol_21(buffer : SB, offset : u32) -> mat4x2<f32> {
|
||||
return mat4x2<f32>(tint_symbol_12(buffer, (offset + 0u)), tint_symbol_12(buffer, (offset + 8u)), tint_symbol_12(buffer, (offset + 16u)), tint_symbol_12(buffer, (offset + 24u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_49(buffer : SB, offset : u32) -> mat4x3<f32> {
|
||||
return mat4x3<f32>(tint_symbol_41(buffer, (offset + 0u)), tint_symbol_41(buffer, (offset + 16u)), tint_symbol_41(buffer, (offset + 32u)), tint_symbol_41(buffer, (offset + 48u)));
|
||||
fn tint_symbol_22(buffer : SB, offset : u32) -> mat4x3<f32> {
|
||||
return mat4x3<f32>(tint_symbol_14(buffer, (offset + 0u)), tint_symbol_14(buffer, (offset + 16u)), tint_symbol_14(buffer, (offset + 32u)), tint_symbol_14(buffer, (offset + 48u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_50(buffer : SB, offset : u32) -> mat4x4<f32> {
|
||||
return mat4x4<f32>(tint_symbol_43(buffer, (offset + 0u)), tint_symbol_43(buffer, (offset + 16u)), tint_symbol_43(buffer, (offset + 32u)), tint_symbol_43(buffer, (offset + 48u)));
|
||||
fn tint_symbol_23(buffer : SB, offset : u32) -> mat4x4<f32> {
|
||||
return mat4x4<f32>(tint_symbol_16(buffer, (offset + 0u)), tint_symbol_16(buffer, (offset + 16u)), tint_symbol_16(buffer, (offset + 32u)), tint_symbol_16(buffer, (offset + 48u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_51(buffer : SB, offset : u32) -> array<vec3<f32>, 2> {
|
||||
return array<vec3<f32>, 2>(tint_symbol_35(buffer, (offset + 0u)), tint_symbol_35(buffer, (offset + 16u)));
|
||||
fn tint_symbol_24(buffer : SB, offset : u32) -> array<vec3<f32>, 2> {
|
||||
return array<vec3<f32>, 2>(tint_symbol_8(buffer, (offset + 0u)), tint_symbol_8(buffer, (offset + 16u)));
|
||||
}
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(compute)]]
|
||||
fn main() {
|
||||
var a : i32 = tint_symbol_26(sb, 0u);
|
||||
var b : u32 = tint_symbol_28(sb, 4u);
|
||||
var c : f32 = tint_symbol_29(sb, 8u);
|
||||
var d : vec2<i32> = tint_symbol_30(sb, 16u);
|
||||
var e : vec2<u32> = tint_symbol_31(sb, 24u);
|
||||
var f : vec2<f32> = tint_symbol_32(sb, 32u);
|
||||
var g : vec3<i32> = tint_symbol_33(sb, 48u);
|
||||
var h : vec3<u32> = tint_symbol_34(sb, 64u);
|
||||
var i : vec3<f32> = tint_symbol_35(sb, 80u);
|
||||
var j : vec4<i32> = tint_symbol_36(sb, 96u);
|
||||
var k : vec4<u32> = tint_symbol_37(sb, 112u);
|
||||
var l : vec4<f32> = tint_symbol_38(sb, 128u);
|
||||
var m : mat2x2<f32> = tint_symbol_40(sb, 144u);
|
||||
var n : mat2x3<f32> = tint_symbol_42(sb, 160u);
|
||||
var o : mat2x4<f32> = tint_symbol_44(sb, 192u);
|
||||
var p : mat3x2<f32> = tint_symbol_45(sb, 224u);
|
||||
var q : mat3x3<f32> = tint_symbol_46(sb, 256u);
|
||||
var r : mat3x4<f32> = tint_symbol_47(sb, 304u);
|
||||
var s : mat4x2<f32> = tint_symbol_48(sb, 352u);
|
||||
var t : mat4x3<f32> = tint_symbol_49(sb, 384u);
|
||||
var u : mat4x4<f32> = tint_symbol_50(sb, 448u);
|
||||
var v : array<vec3<f32>, 2> = tint_symbol_51(sb, 512u);
|
||||
var a : i32 = tint_symbol(sb, 0u);
|
||||
var b : u32 = tint_symbol_1(sb, 4u);
|
||||
var c : f32 = tint_symbol_2(sb, 8u);
|
||||
var d : vec2<i32> = tint_symbol_3(sb, 16u);
|
||||
var e : vec2<u32> = tint_symbol_4(sb, 24u);
|
||||
var f : vec2<f32> = tint_symbol_5(sb, 32u);
|
||||
var g : vec3<i32> = tint_symbol_6(sb, 48u);
|
||||
var h : vec3<u32> = tint_symbol_7(sb, 64u);
|
||||
var i : vec3<f32> = tint_symbol_8(sb, 80u);
|
||||
var j : vec4<i32> = tint_symbol_9(sb, 96u);
|
||||
var k : vec4<u32> = tint_symbol_10(sb, 112u);
|
||||
var l : vec4<f32> = tint_symbol_11(sb, 128u);
|
||||
var m : mat2x2<f32> = tint_symbol_13(sb, 144u);
|
||||
var n : mat2x3<f32> = tint_symbol_15(sb, 160u);
|
||||
var o : mat2x4<f32> = tint_symbol_17(sb, 192u);
|
||||
var p : mat3x2<f32> = tint_symbol_18(sb, 224u);
|
||||
var q : mat3x3<f32> = tint_symbol_19(sb, 256u);
|
||||
var r : mat3x4<f32> = tint_symbol_20(sb, 304u);
|
||||
var s : mat4x2<f32> = tint_symbol_21(sb, 352u);
|
||||
var t : mat4x3<f32> = tint_symbol_22(sb, 384u);
|
||||
var u : mat4x4<f32> = tint_symbol_23(sb, 448u);
|
||||
var v : array<vec3<f32>, 2> = tint_symbol_24(sb, 512u);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -310,135 +310,135 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_store_i32)]]
|
||||
fn tint_symbol_27(buffer : SB, offset : u32, value : i32)
|
||||
fn tint_symbol(buffer : SB, offset : u32, value : i32)
|
||||
|
||||
[[internal(intrinsic_store_u32)]]
|
||||
fn tint_symbol_29(buffer : SB, offset : u32, value : u32)
|
||||
fn tint_symbol_1(buffer : SB, offset : u32, value : u32)
|
||||
|
||||
[[internal(intrinsic_store_f32)]]
|
||||
fn tint_symbol_30(buffer : SB, offset : u32, value : f32)
|
||||
fn tint_symbol_2(buffer : SB, offset : u32, value : f32)
|
||||
|
||||
[[internal(intrinsic_store_vec2_u32)]]
|
||||
fn tint_symbol_31(buffer : SB, offset : u32, value : vec2<i32>)
|
||||
fn tint_symbol_3(buffer : SB, offset : u32, value : vec2<i32>)
|
||||
|
||||
[[internal(intrinsic_store_vec2_f32)]]
|
||||
fn tint_symbol_32(buffer : SB, offset : u32, value : vec2<u32>)
|
||||
fn tint_symbol_4(buffer : SB, offset : u32, value : vec2<u32>)
|
||||
|
||||
[[internal(intrinsic_store_vec2_i32)]]
|
||||
fn tint_symbol_33(buffer : SB, offset : u32, value : vec2<f32>)
|
||||
fn tint_symbol_5(buffer : SB, offset : u32, value : vec2<f32>)
|
||||
|
||||
[[internal(intrinsic_store_vec3_u32)]]
|
||||
fn tint_symbol_34(buffer : SB, offset : u32, value : vec3<i32>)
|
||||
fn tint_symbol_6(buffer : SB, offset : u32, value : vec3<i32>)
|
||||
|
||||
[[internal(intrinsic_store_vec3_f32)]]
|
||||
fn tint_symbol_35(buffer : SB, offset : u32, value : vec3<u32>)
|
||||
fn tint_symbol_7(buffer : SB, offset : u32, value : vec3<u32>)
|
||||
|
||||
[[internal(intrinsic_store_vec3_i32)]]
|
||||
fn tint_symbol_36(buffer : SB, offset : u32, value : vec3<f32>)
|
||||
fn tint_symbol_8(buffer : SB, offset : u32, value : vec3<f32>)
|
||||
|
||||
[[internal(intrinsic_store_vec4_u32)]]
|
||||
fn tint_symbol_37(buffer : SB, offset : u32, value : vec4<i32>)
|
||||
fn tint_symbol_9(buffer : SB, offset : u32, value : vec4<i32>)
|
||||
|
||||
[[internal(intrinsic_store_vec4_f32)]]
|
||||
fn tint_symbol_38(buffer : SB, offset : u32, value : vec4<u32>)
|
||||
fn tint_symbol_10(buffer : SB, offset : u32, value : vec4<u32>)
|
||||
|
||||
[[internal(intrinsic_store_vec4_i32)]]
|
||||
fn tint_symbol_39(buffer : SB, offset : u32, value : vec4<f32>)
|
||||
fn tint_symbol_11(buffer : SB, offset : u32, value : vec4<f32>)
|
||||
|
||||
[[internal(intrinsic_store_vec2_i32)]]
|
||||
fn tint_symbol_40(buffer : SB, offset : u32, value : vec2<f32>)
|
||||
fn tint_symbol_12(buffer : SB, offset : u32, value : vec2<f32>)
|
||||
|
||||
fn tint_symbol_41(buffer : SB, offset : u32, value : mat2x2<f32>) {
|
||||
tint_symbol_40(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_40(buffer, (offset + 8u), value[1u]);
|
||||
fn tint_symbol_13(buffer : SB, offset : u32, value : mat2x2<f32>) {
|
||||
tint_symbol_12(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_12(buffer, (offset + 8u), value[1u]);
|
||||
}
|
||||
|
||||
[[internal(intrinsic_store_vec3_i32)]]
|
||||
fn tint_symbol_42(buffer : SB, offset : u32, value : vec3<f32>)
|
||||
fn tint_symbol_14(buffer : SB, offset : u32, value : vec3<f32>)
|
||||
|
||||
fn tint_symbol_43(buffer : SB, offset : u32, value : mat2x3<f32>) {
|
||||
tint_symbol_42(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_42(buffer, (offset + 16u), value[1u]);
|
||||
fn tint_symbol_15(buffer : SB, offset : u32, value : mat2x3<f32>) {
|
||||
tint_symbol_14(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_14(buffer, (offset + 16u), value[1u]);
|
||||
}
|
||||
|
||||
[[internal(intrinsic_store_vec4_i32)]]
|
||||
fn tint_symbol_44(buffer : SB, offset : u32, value : vec4<f32>)
|
||||
fn tint_symbol_16(buffer : SB, offset : u32, value : vec4<f32>)
|
||||
|
||||
fn tint_symbol_45(buffer : SB, offset : u32, value : mat2x4<f32>) {
|
||||
tint_symbol_44(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_44(buffer, (offset + 16u), value[1u]);
|
||||
fn tint_symbol_17(buffer : SB, offset : u32, value : mat2x4<f32>) {
|
||||
tint_symbol_16(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_16(buffer, (offset + 16u), value[1u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_46(buffer : SB, offset : u32, value : mat3x2<f32>) {
|
||||
tint_symbol_40(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_40(buffer, (offset + 8u), value[1u]);
|
||||
tint_symbol_40(buffer, (offset + 16u), value[2u]);
|
||||
fn tint_symbol_18(buffer : SB, offset : u32, value : mat3x2<f32>) {
|
||||
tint_symbol_12(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_12(buffer, (offset + 8u), value[1u]);
|
||||
tint_symbol_12(buffer, (offset + 16u), value[2u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_47(buffer : SB, offset : u32, value : mat3x3<f32>) {
|
||||
tint_symbol_42(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_42(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_42(buffer, (offset + 32u), value[2u]);
|
||||
fn tint_symbol_19(buffer : SB, offset : u32, value : mat3x3<f32>) {
|
||||
tint_symbol_14(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_14(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_14(buffer, (offset + 32u), value[2u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_48(buffer : SB, offset : u32, value : mat3x4<f32>) {
|
||||
tint_symbol_44(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_44(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_44(buffer, (offset + 32u), value[2u]);
|
||||
fn tint_symbol_20(buffer : SB, offset : u32, value : mat3x4<f32>) {
|
||||
tint_symbol_16(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_16(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_16(buffer, (offset + 32u), value[2u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_49(buffer : SB, offset : u32, value : mat4x2<f32>) {
|
||||
tint_symbol_40(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_40(buffer, (offset + 8u), value[1u]);
|
||||
tint_symbol_40(buffer, (offset + 16u), value[2u]);
|
||||
tint_symbol_40(buffer, (offset + 24u), value[3u]);
|
||||
fn tint_symbol_21(buffer : SB, offset : u32, value : mat4x2<f32>) {
|
||||
tint_symbol_12(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_12(buffer, (offset + 8u), value[1u]);
|
||||
tint_symbol_12(buffer, (offset + 16u), value[2u]);
|
||||
tint_symbol_12(buffer, (offset + 24u), value[3u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_50(buffer : SB, offset : u32, value : mat4x3<f32>) {
|
||||
tint_symbol_42(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_42(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_42(buffer, (offset + 32u), value[2u]);
|
||||
tint_symbol_42(buffer, (offset + 48u), value[3u]);
|
||||
fn tint_symbol_22(buffer : SB, offset : u32, value : mat4x3<f32>) {
|
||||
tint_symbol_14(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_14(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_14(buffer, (offset + 32u), value[2u]);
|
||||
tint_symbol_14(buffer, (offset + 48u), value[3u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_51(buffer : SB, offset : u32, value : mat4x4<f32>) {
|
||||
tint_symbol_44(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_44(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_44(buffer, (offset + 32u), value[2u]);
|
||||
tint_symbol_44(buffer, (offset + 48u), value[3u]);
|
||||
fn tint_symbol_23(buffer : SB, offset : u32, value : mat4x4<f32>) {
|
||||
tint_symbol_16(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_16(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_16(buffer, (offset + 32u), value[2u]);
|
||||
tint_symbol_16(buffer, (offset + 48u), value[3u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_52(buffer : SB, offset : u32, value : array<vec3<f32>, 2>) {
|
||||
tint_symbol_36(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_36(buffer, (offset + 16u), value[1u]);
|
||||
fn tint_symbol_24(buffer : SB, offset : u32, value : array<vec3<f32>, 2>) {
|
||||
tint_symbol_8(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_8(buffer, (offset + 16u), value[1u]);
|
||||
}
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(compute)]]
|
||||
fn main() {
|
||||
tint_symbol_27(sb, 0u, i32());
|
||||
tint_symbol_29(sb, 4u, u32());
|
||||
tint_symbol_30(sb, 8u, f32());
|
||||
tint_symbol_31(sb, 16u, vec2<i32>());
|
||||
tint_symbol_32(sb, 24u, vec2<u32>());
|
||||
tint_symbol_33(sb, 32u, vec2<f32>());
|
||||
tint_symbol_34(sb, 48u, vec3<i32>());
|
||||
tint_symbol_35(sb, 64u, vec3<u32>());
|
||||
tint_symbol_36(sb, 80u, vec3<f32>());
|
||||
tint_symbol_37(sb, 96u, vec4<i32>());
|
||||
tint_symbol_38(sb, 112u, vec4<u32>());
|
||||
tint_symbol_39(sb, 128u, vec4<f32>());
|
||||
tint_symbol_41(sb, 144u, mat2x2<f32>());
|
||||
tint_symbol_43(sb, 160u, mat2x3<f32>());
|
||||
tint_symbol_45(sb, 192u, mat2x4<f32>());
|
||||
tint_symbol_46(sb, 224u, mat3x2<f32>());
|
||||
tint_symbol_47(sb, 256u, mat3x3<f32>());
|
||||
tint_symbol_48(sb, 304u, mat3x4<f32>());
|
||||
tint_symbol_49(sb, 352u, mat4x2<f32>());
|
||||
tint_symbol_50(sb, 384u, mat4x3<f32>());
|
||||
tint_symbol_51(sb, 448u, mat4x4<f32>());
|
||||
tint_symbol_52(sb, 512u, array<vec3<f32>, 2>());
|
||||
tint_symbol(sb, 0u, i32());
|
||||
tint_symbol_1(sb, 4u, u32());
|
||||
tint_symbol_2(sb, 8u, f32());
|
||||
tint_symbol_3(sb, 16u, vec2<i32>());
|
||||
tint_symbol_4(sb, 24u, vec2<u32>());
|
||||
tint_symbol_5(sb, 32u, vec2<f32>());
|
||||
tint_symbol_6(sb, 48u, vec3<i32>());
|
||||
tint_symbol_7(sb, 64u, vec3<u32>());
|
||||
tint_symbol_8(sb, 80u, vec3<f32>());
|
||||
tint_symbol_9(sb, 96u, vec4<i32>());
|
||||
tint_symbol_10(sb, 112u, vec4<u32>());
|
||||
tint_symbol_11(sb, 128u, vec4<f32>());
|
||||
tint_symbol_13(sb, 144u, mat2x2<f32>());
|
||||
tint_symbol_15(sb, 160u, mat2x3<f32>());
|
||||
tint_symbol_17(sb, 192u, mat2x4<f32>());
|
||||
tint_symbol_18(sb, 224u, mat3x2<f32>());
|
||||
tint_symbol_19(sb, 256u, mat3x3<f32>());
|
||||
tint_symbol_20(sb, 304u, mat3x4<f32>());
|
||||
tint_symbol_21(sb, 352u, mat4x2<f32>());
|
||||
tint_symbol_22(sb, 384u, mat4x3<f32>());
|
||||
tint_symbol_23(sb, 448u, mat4x4<f32>());
|
||||
tint_symbol_24(sb, 512u, array<vec3<f32>, 2>());
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -511,99 +511,99 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_load_i32)]]
|
||||
fn tint_symbol_26(buffer : SB, offset : u32) -> i32
|
||||
fn tint_symbol(buffer : SB, offset : u32) -> i32
|
||||
|
||||
[[internal(intrinsic_load_u32)]]
|
||||
fn tint_symbol_27(buffer : SB, offset : u32) -> u32
|
||||
fn tint_symbol_1(buffer : SB, offset : u32) -> u32
|
||||
|
||||
[[internal(intrinsic_load_f32)]]
|
||||
fn tint_symbol_28(buffer : SB, offset : u32) -> f32
|
||||
fn tint_symbol_2(buffer : SB, offset : u32) -> f32
|
||||
|
||||
[[internal(intrinsic_load_vec2_i32)]]
|
||||
fn tint_symbol_29(buffer : SB, offset : u32) -> vec2<i32>
|
||||
fn tint_symbol_3(buffer : SB, offset : u32) -> vec2<i32>
|
||||
|
||||
[[internal(intrinsic_load_vec2_u32)]]
|
||||
fn tint_symbol_30(buffer : SB, offset : u32) -> vec2<u32>
|
||||
fn tint_symbol_4(buffer : SB, offset : u32) -> vec2<u32>
|
||||
|
||||
[[internal(intrinsic_load_vec2_f32)]]
|
||||
fn tint_symbol_31(buffer : SB, offset : u32) -> vec2<f32>
|
||||
fn tint_symbol_5(buffer : SB, offset : u32) -> vec2<f32>
|
||||
|
||||
[[internal(intrinsic_load_vec3_i32)]]
|
||||
fn tint_symbol_32(buffer : SB, offset : u32) -> vec3<i32>
|
||||
fn tint_symbol_6(buffer : SB, offset : u32) -> vec3<i32>
|
||||
|
||||
[[internal(intrinsic_load_vec3_u32)]]
|
||||
fn tint_symbol_33(buffer : SB, offset : u32) -> vec3<u32>
|
||||
fn tint_symbol_7(buffer : SB, offset : u32) -> vec3<u32>
|
||||
|
||||
[[internal(intrinsic_load_vec3_f32)]]
|
||||
fn tint_symbol_34(buffer : SB, offset : u32) -> vec3<f32>
|
||||
fn tint_symbol_8(buffer : SB, offset : u32) -> vec3<f32>
|
||||
|
||||
[[internal(intrinsic_load_vec4_i32)]]
|
||||
fn tint_symbol_35(buffer : SB, offset : u32) -> vec4<i32>
|
||||
fn tint_symbol_9(buffer : SB, offset : u32) -> vec4<i32>
|
||||
|
||||
[[internal(intrinsic_load_vec4_u32)]]
|
||||
fn tint_symbol_36(buffer : SB, offset : u32) -> vec4<u32>
|
||||
fn tint_symbol_10(buffer : SB, offset : u32) -> vec4<u32>
|
||||
|
||||
[[internal(intrinsic_load_vec4_f32)]]
|
||||
fn tint_symbol_37(buffer : SB, offset : u32) -> vec4<f32>
|
||||
fn tint_symbol_11(buffer : SB, offset : u32) -> vec4<f32>
|
||||
|
||||
[[internal(intrinsic_load_vec2_f32)]]
|
||||
fn tint_symbol_38(buffer : SB, offset : u32) -> vec2<f32>
|
||||
fn tint_symbol_12(buffer : SB, offset : u32) -> vec2<f32>
|
||||
|
||||
fn tint_symbol_39(buffer : SB, offset : u32) -> mat2x2<f32> {
|
||||
return mat2x2<f32>(tint_symbol_38(buffer, (offset + 0u)), tint_symbol_38(buffer, (offset + 8u)));
|
||||
fn tint_symbol_13(buffer : SB, offset : u32) -> mat2x2<f32> {
|
||||
return mat2x2<f32>(tint_symbol_12(buffer, (offset + 0u)), tint_symbol_12(buffer, (offset + 8u)));
|
||||
}
|
||||
|
||||
[[internal(intrinsic_load_vec3_f32)]]
|
||||
fn tint_symbol_40(buffer : SB, offset : u32) -> vec3<f32>
|
||||
fn tint_symbol_14(buffer : SB, offset : u32) -> vec3<f32>
|
||||
|
||||
fn tint_symbol_41(buffer : SB, offset : u32) -> mat2x3<f32> {
|
||||
return mat2x3<f32>(tint_symbol_40(buffer, (offset + 0u)), tint_symbol_40(buffer, (offset + 16u)));
|
||||
fn tint_symbol_15(buffer : SB, offset : u32) -> mat2x3<f32> {
|
||||
return mat2x3<f32>(tint_symbol_14(buffer, (offset + 0u)), tint_symbol_14(buffer, (offset + 16u)));
|
||||
}
|
||||
|
||||
[[internal(intrinsic_load_vec4_f32)]]
|
||||
fn tint_symbol_42(buffer : SB, offset : u32) -> vec4<f32>
|
||||
fn tint_symbol_16(buffer : SB, offset : u32) -> vec4<f32>
|
||||
|
||||
fn tint_symbol_43(buffer : SB, offset : u32) -> mat2x4<f32> {
|
||||
return mat2x4<f32>(tint_symbol_42(buffer, (offset + 0u)), tint_symbol_42(buffer, (offset + 16u)));
|
||||
fn tint_symbol_17(buffer : SB, offset : u32) -> mat2x4<f32> {
|
||||
return mat2x4<f32>(tint_symbol_16(buffer, (offset + 0u)), tint_symbol_16(buffer, (offset + 16u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_44(buffer : SB, offset : u32) -> mat3x2<f32> {
|
||||
return mat3x2<f32>(tint_symbol_38(buffer, (offset + 0u)), tint_symbol_38(buffer, (offset + 8u)), tint_symbol_38(buffer, (offset + 16u)));
|
||||
fn tint_symbol_18(buffer : SB, offset : u32) -> mat3x2<f32> {
|
||||
return mat3x2<f32>(tint_symbol_12(buffer, (offset + 0u)), tint_symbol_12(buffer, (offset + 8u)), tint_symbol_12(buffer, (offset + 16u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_45(buffer : SB, offset : u32) -> mat3x3<f32> {
|
||||
return mat3x3<f32>(tint_symbol_40(buffer, (offset + 0u)), tint_symbol_40(buffer, (offset + 16u)), tint_symbol_40(buffer, (offset + 32u)));
|
||||
fn tint_symbol_19(buffer : SB, offset : u32) -> mat3x3<f32> {
|
||||
return mat3x3<f32>(tint_symbol_14(buffer, (offset + 0u)), tint_symbol_14(buffer, (offset + 16u)), tint_symbol_14(buffer, (offset + 32u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_46(buffer : SB, offset : u32) -> mat3x4<f32> {
|
||||
return mat3x4<f32>(tint_symbol_42(buffer, (offset + 0u)), tint_symbol_42(buffer, (offset + 16u)), tint_symbol_42(buffer, (offset + 32u)));
|
||||
fn tint_symbol_20(buffer : SB, offset : u32) -> mat3x4<f32> {
|
||||
return mat3x4<f32>(tint_symbol_16(buffer, (offset + 0u)), tint_symbol_16(buffer, (offset + 16u)), tint_symbol_16(buffer, (offset + 32u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_47(buffer : SB, offset : u32) -> mat4x2<f32> {
|
||||
return mat4x2<f32>(tint_symbol_38(buffer, (offset + 0u)), tint_symbol_38(buffer, (offset + 8u)), tint_symbol_38(buffer, (offset + 16u)), tint_symbol_38(buffer, (offset + 24u)));
|
||||
fn tint_symbol_21(buffer : SB, offset : u32) -> mat4x2<f32> {
|
||||
return mat4x2<f32>(tint_symbol_12(buffer, (offset + 0u)), tint_symbol_12(buffer, (offset + 8u)), tint_symbol_12(buffer, (offset + 16u)), tint_symbol_12(buffer, (offset + 24u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_48(buffer : SB, offset : u32) -> mat4x3<f32> {
|
||||
return mat4x3<f32>(tint_symbol_40(buffer, (offset + 0u)), tint_symbol_40(buffer, (offset + 16u)), tint_symbol_40(buffer, (offset + 32u)), tint_symbol_40(buffer, (offset + 48u)));
|
||||
fn tint_symbol_22(buffer : SB, offset : u32) -> mat4x3<f32> {
|
||||
return mat4x3<f32>(tint_symbol_14(buffer, (offset + 0u)), tint_symbol_14(buffer, (offset + 16u)), tint_symbol_14(buffer, (offset + 32u)), tint_symbol_14(buffer, (offset + 48u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_49(buffer : SB, offset : u32) -> mat4x4<f32> {
|
||||
return mat4x4<f32>(tint_symbol_42(buffer, (offset + 0u)), tint_symbol_42(buffer, (offset + 16u)), tint_symbol_42(buffer, (offset + 32u)), tint_symbol_42(buffer, (offset + 48u)));
|
||||
fn tint_symbol_23(buffer : SB, offset : u32) -> mat4x4<f32> {
|
||||
return mat4x4<f32>(tint_symbol_16(buffer, (offset + 0u)), tint_symbol_16(buffer, (offset + 16u)), tint_symbol_16(buffer, (offset + 32u)), tint_symbol_16(buffer, (offset + 48u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_50(buffer : SB, offset : u32) -> array<vec3<f32>, 2> {
|
||||
return array<vec3<f32>, 2>(tint_symbol_34(buffer, (offset + 0u)), tint_symbol_34(buffer, (offset + 16u)));
|
||||
fn tint_symbol_24(buffer : SB, offset : u32) -> array<vec3<f32>, 2> {
|
||||
return array<vec3<f32>, 2>(tint_symbol_8(buffer, (offset + 0u)), tint_symbol_8(buffer, (offset + 16u)));
|
||||
}
|
||||
|
||||
fn tint_symbol_51(buffer : SB, offset : u32) -> SB {
|
||||
return SB(tint_symbol_26(buffer, (offset + 0u)), tint_symbol_27(buffer, (offset + 4u)), tint_symbol_28(buffer, (offset + 8u)), tint_symbol_29(buffer, (offset + 16u)), tint_symbol_30(buffer, (offset + 24u)), tint_symbol_31(buffer, (offset + 32u)), tint_symbol_32(buffer, (offset + 48u)), tint_symbol_33(buffer, (offset + 64u)), tint_symbol_34(buffer, (offset + 80u)), tint_symbol_35(buffer, (offset + 96u)), tint_symbol_36(buffer, (offset + 112u)), tint_symbol_37(buffer, (offset + 128u)), tint_symbol_39(buffer, (offset + 144u)), tint_symbol_41(buffer, (offset + 160u)), tint_symbol_43(buffer, (offset + 192u)), tint_symbol_44(buffer, (offset + 224u)), tint_symbol_45(buffer, (offset + 256u)), tint_symbol_46(buffer, (offset + 304u)), tint_symbol_47(buffer, (offset + 352u)), tint_symbol_48(buffer, (offset + 384u)), tint_symbol_49(buffer, (offset + 448u)), tint_symbol_50(buffer, (offset + 512u)));
|
||||
fn tint_symbol_25(buffer : SB, offset : u32) -> SB {
|
||||
return SB(tint_symbol(buffer, (offset + 0u)), tint_symbol_1(buffer, (offset + 4u)), tint_symbol_2(buffer, (offset + 8u)), tint_symbol_3(buffer, (offset + 16u)), tint_symbol_4(buffer, (offset + 24u)), tint_symbol_5(buffer, (offset + 32u)), tint_symbol_6(buffer, (offset + 48u)), tint_symbol_7(buffer, (offset + 64u)), tint_symbol_8(buffer, (offset + 80u)), tint_symbol_9(buffer, (offset + 96u)), tint_symbol_10(buffer, (offset + 112u)), tint_symbol_11(buffer, (offset + 128u)), tint_symbol_13(buffer, (offset + 144u)), tint_symbol_15(buffer, (offset + 160u)), tint_symbol_17(buffer, (offset + 192u)), tint_symbol_18(buffer, (offset + 224u)), tint_symbol_19(buffer, (offset + 256u)), tint_symbol_20(buffer, (offset + 304u)), tint_symbol_21(buffer, (offset + 352u)), tint_symbol_22(buffer, (offset + 384u)), tint_symbol_23(buffer, (offset + 448u)), tint_symbol_24(buffer, (offset + 512u)));
|
||||
}
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(compute)]]
|
||||
fn main() {
|
||||
var x : SB = tint_symbol_51(sb, 0u);
|
||||
var x : SB = tint_symbol_25(sb, 0u);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -676,139 +676,139 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_store_i32)]]
|
||||
fn tint_symbol_27(buffer : SB, offset : u32, value : i32)
|
||||
fn tint_symbol(buffer : SB, offset : u32, value : i32)
|
||||
|
||||
[[internal(intrinsic_store_u32)]]
|
||||
fn tint_symbol_28(buffer : SB, offset : u32, value : u32)
|
||||
fn tint_symbol_1(buffer : SB, offset : u32, value : u32)
|
||||
|
||||
[[internal(intrinsic_store_f32)]]
|
||||
fn tint_symbol_29(buffer : SB, offset : u32, value : f32)
|
||||
fn tint_symbol_2(buffer : SB, offset : u32, value : f32)
|
||||
|
||||
[[internal(intrinsic_store_vec2_u32)]]
|
||||
fn tint_symbol_30(buffer : SB, offset : u32, value : vec2<i32>)
|
||||
fn tint_symbol_3(buffer : SB, offset : u32, value : vec2<i32>)
|
||||
|
||||
[[internal(intrinsic_store_vec2_f32)]]
|
||||
fn tint_symbol_31(buffer : SB, offset : u32, value : vec2<u32>)
|
||||
fn tint_symbol_4(buffer : SB, offset : u32, value : vec2<u32>)
|
||||
|
||||
[[internal(intrinsic_store_vec2_i32)]]
|
||||
fn tint_symbol_32(buffer : SB, offset : u32, value : vec2<f32>)
|
||||
fn tint_symbol_5(buffer : SB, offset : u32, value : vec2<f32>)
|
||||
|
||||
[[internal(intrinsic_store_vec3_u32)]]
|
||||
fn tint_symbol_33(buffer : SB, offset : u32, value : vec3<i32>)
|
||||
fn tint_symbol_6(buffer : SB, offset : u32, value : vec3<i32>)
|
||||
|
||||
[[internal(intrinsic_store_vec3_f32)]]
|
||||
fn tint_symbol_34(buffer : SB, offset : u32, value : vec3<u32>)
|
||||
fn tint_symbol_7(buffer : SB, offset : u32, value : vec3<u32>)
|
||||
|
||||
[[internal(intrinsic_store_vec3_i32)]]
|
||||
fn tint_symbol_35(buffer : SB, offset : u32, value : vec3<f32>)
|
||||
fn tint_symbol_8(buffer : SB, offset : u32, value : vec3<f32>)
|
||||
|
||||
[[internal(intrinsic_store_vec4_u32)]]
|
||||
fn tint_symbol_36(buffer : SB, offset : u32, value : vec4<i32>)
|
||||
fn tint_symbol_9(buffer : SB, offset : u32, value : vec4<i32>)
|
||||
|
||||
[[internal(intrinsic_store_vec4_f32)]]
|
||||
fn tint_symbol_37(buffer : SB, offset : u32, value : vec4<u32>)
|
||||
fn tint_symbol_10(buffer : SB, offset : u32, value : vec4<u32>)
|
||||
|
||||
[[internal(intrinsic_store_vec4_i32)]]
|
||||
fn tint_symbol_38(buffer : SB, offset : u32, value : vec4<f32>)
|
||||
fn tint_symbol_11(buffer : SB, offset : u32, value : vec4<f32>)
|
||||
|
||||
[[internal(intrinsic_store_vec2_i32)]]
|
||||
fn tint_symbol_39(buffer : SB, offset : u32, value : vec2<f32>)
|
||||
fn tint_symbol_12(buffer : SB, offset : u32, value : vec2<f32>)
|
||||
|
||||
fn tint_symbol_40(buffer : SB, offset : u32, value : mat2x2<f32>) {
|
||||
tint_symbol_39(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_39(buffer, (offset + 8u), value[1u]);
|
||||
fn tint_symbol_13(buffer : SB, offset : u32, value : mat2x2<f32>) {
|
||||
tint_symbol_12(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_12(buffer, (offset + 8u), value[1u]);
|
||||
}
|
||||
|
||||
[[internal(intrinsic_store_vec3_i32)]]
|
||||
fn tint_symbol_41(buffer : SB, offset : u32, value : vec3<f32>)
|
||||
fn tint_symbol_14(buffer : SB, offset : u32, value : vec3<f32>)
|
||||
|
||||
fn tint_symbol_42(buffer : SB, offset : u32, value : mat2x3<f32>) {
|
||||
tint_symbol_41(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_41(buffer, (offset + 16u), value[1u]);
|
||||
fn tint_symbol_15(buffer : SB, offset : u32, value : mat2x3<f32>) {
|
||||
tint_symbol_14(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_14(buffer, (offset + 16u), value[1u]);
|
||||
}
|
||||
|
||||
[[internal(intrinsic_store_vec4_i32)]]
|
||||
fn tint_symbol_43(buffer : SB, offset : u32, value : vec4<f32>)
|
||||
fn tint_symbol_16(buffer : SB, offset : u32, value : vec4<f32>)
|
||||
|
||||
fn tint_symbol_44(buffer : SB, offset : u32, value : mat2x4<f32>) {
|
||||
tint_symbol_43(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_43(buffer, (offset + 16u), value[1u]);
|
||||
fn tint_symbol_17(buffer : SB, offset : u32, value : mat2x4<f32>) {
|
||||
tint_symbol_16(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_16(buffer, (offset + 16u), value[1u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_45(buffer : SB, offset : u32, value : mat3x2<f32>) {
|
||||
tint_symbol_39(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_39(buffer, (offset + 8u), value[1u]);
|
||||
tint_symbol_39(buffer, (offset + 16u), value[2u]);
|
||||
fn tint_symbol_18(buffer : SB, offset : u32, value : mat3x2<f32>) {
|
||||
tint_symbol_12(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_12(buffer, (offset + 8u), value[1u]);
|
||||
tint_symbol_12(buffer, (offset + 16u), value[2u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_46(buffer : SB, offset : u32, value : mat3x3<f32>) {
|
||||
tint_symbol_41(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_41(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_41(buffer, (offset + 32u), value[2u]);
|
||||
fn tint_symbol_19(buffer : SB, offset : u32, value : mat3x3<f32>) {
|
||||
tint_symbol_14(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_14(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_14(buffer, (offset + 32u), value[2u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_47(buffer : SB, offset : u32, value : mat3x4<f32>) {
|
||||
tint_symbol_43(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_43(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_43(buffer, (offset + 32u), value[2u]);
|
||||
fn tint_symbol_20(buffer : SB, offset : u32, value : mat3x4<f32>) {
|
||||
tint_symbol_16(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_16(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_16(buffer, (offset + 32u), value[2u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_48(buffer : SB, offset : u32, value : mat4x2<f32>) {
|
||||
tint_symbol_39(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_39(buffer, (offset + 8u), value[1u]);
|
||||
tint_symbol_39(buffer, (offset + 16u), value[2u]);
|
||||
tint_symbol_39(buffer, (offset + 24u), value[3u]);
|
||||
fn tint_symbol_21(buffer : SB, offset : u32, value : mat4x2<f32>) {
|
||||
tint_symbol_12(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_12(buffer, (offset + 8u), value[1u]);
|
||||
tint_symbol_12(buffer, (offset + 16u), value[2u]);
|
||||
tint_symbol_12(buffer, (offset + 24u), value[3u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_49(buffer : SB, offset : u32, value : mat4x3<f32>) {
|
||||
tint_symbol_41(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_41(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_41(buffer, (offset + 32u), value[2u]);
|
||||
tint_symbol_41(buffer, (offset + 48u), value[3u]);
|
||||
fn tint_symbol_22(buffer : SB, offset : u32, value : mat4x3<f32>) {
|
||||
tint_symbol_14(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_14(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_14(buffer, (offset + 32u), value[2u]);
|
||||
tint_symbol_14(buffer, (offset + 48u), value[3u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_50(buffer : SB, offset : u32, value : mat4x4<f32>) {
|
||||
tint_symbol_43(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_43(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_43(buffer, (offset + 32u), value[2u]);
|
||||
tint_symbol_43(buffer, (offset + 48u), value[3u]);
|
||||
fn tint_symbol_23(buffer : SB, offset : u32, value : mat4x4<f32>) {
|
||||
tint_symbol_16(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_16(buffer, (offset + 16u), value[1u]);
|
||||
tint_symbol_16(buffer, (offset + 32u), value[2u]);
|
||||
tint_symbol_16(buffer, (offset + 48u), value[3u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_51(buffer : SB, offset : u32, value : array<vec3<f32>, 2>) {
|
||||
tint_symbol_35(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_35(buffer, (offset + 16u), value[1u]);
|
||||
fn tint_symbol_24(buffer : SB, offset : u32, value : array<vec3<f32>, 2>) {
|
||||
tint_symbol_8(buffer, (offset + 0u), value[0u]);
|
||||
tint_symbol_8(buffer, (offset + 16u), value[1u]);
|
||||
}
|
||||
|
||||
fn tint_symbol_52(buffer : SB, offset : u32, value : SB) {
|
||||
tint_symbol_27(buffer, (offset + 0u), value.a);
|
||||
tint_symbol_28(buffer, (offset + 4u), value.b);
|
||||
tint_symbol_29(buffer, (offset + 8u), value.c);
|
||||
tint_symbol_30(buffer, (offset + 16u), value.d);
|
||||
tint_symbol_31(buffer, (offset + 24u), value.e);
|
||||
tint_symbol_32(buffer, (offset + 32u), value.f);
|
||||
tint_symbol_33(buffer, (offset + 48u), value.g);
|
||||
tint_symbol_34(buffer, (offset + 64u), value.h);
|
||||
tint_symbol_35(buffer, (offset + 80u), value.i);
|
||||
tint_symbol_36(buffer, (offset + 96u), value.j);
|
||||
tint_symbol_37(buffer, (offset + 112u), value.k);
|
||||
tint_symbol_38(buffer, (offset + 128u), value.l);
|
||||
tint_symbol_40(buffer, (offset + 144u), value.m);
|
||||
tint_symbol_42(buffer, (offset + 160u), value.n);
|
||||
tint_symbol_44(buffer, (offset + 192u), value.o);
|
||||
tint_symbol_45(buffer, (offset + 224u), value.p);
|
||||
tint_symbol_46(buffer, (offset + 256u), value.q);
|
||||
tint_symbol_47(buffer, (offset + 304u), value.r);
|
||||
tint_symbol_48(buffer, (offset + 352u), value.s);
|
||||
tint_symbol_49(buffer, (offset + 384u), value.t);
|
||||
tint_symbol_50(buffer, (offset + 448u), value.u);
|
||||
tint_symbol_51(buffer, (offset + 512u), value.v);
|
||||
fn tint_symbol_25(buffer : SB, offset : u32, value : SB) {
|
||||
tint_symbol(buffer, (offset + 0u), value.a);
|
||||
tint_symbol_1(buffer, (offset + 4u), value.b);
|
||||
tint_symbol_2(buffer, (offset + 8u), value.c);
|
||||
tint_symbol_3(buffer, (offset + 16u), value.d);
|
||||
tint_symbol_4(buffer, (offset + 24u), value.e);
|
||||
tint_symbol_5(buffer, (offset + 32u), value.f);
|
||||
tint_symbol_6(buffer, (offset + 48u), value.g);
|
||||
tint_symbol_7(buffer, (offset + 64u), value.h);
|
||||
tint_symbol_8(buffer, (offset + 80u), value.i);
|
||||
tint_symbol_9(buffer, (offset + 96u), value.j);
|
||||
tint_symbol_10(buffer, (offset + 112u), value.k);
|
||||
tint_symbol_11(buffer, (offset + 128u), value.l);
|
||||
tint_symbol_13(buffer, (offset + 144u), value.m);
|
||||
tint_symbol_15(buffer, (offset + 160u), value.n);
|
||||
tint_symbol_17(buffer, (offset + 192u), value.o);
|
||||
tint_symbol_18(buffer, (offset + 224u), value.p);
|
||||
tint_symbol_19(buffer, (offset + 256u), value.q);
|
||||
tint_symbol_20(buffer, (offset + 304u), value.r);
|
||||
tint_symbol_21(buffer, (offset + 352u), value.s);
|
||||
tint_symbol_22(buffer, (offset + 384u), value.t);
|
||||
tint_symbol_23(buffer, (offset + 448u), value.u);
|
||||
tint_symbol_24(buffer, (offset + 512u), value.v);
|
||||
}
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(compute)]]
|
||||
fn main() {
|
||||
tint_symbol_52(sb, 0u, SB());
|
||||
tint_symbol_25(sb, 0u, SB());
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -874,13 +874,13 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_load_f32)]]
|
||||
fn tint_symbol_9(buffer : SB, offset : u32) -> f32
|
||||
fn tint_symbol(buffer : SB, offset : u32) -> f32
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
[[stage(compute)]]
|
||||
fn main() {
|
||||
var x : f32 = tint_symbol_9(sb, 1224u);
|
||||
var x : f32 = tint_symbol(sb, 1224u);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -942,7 +942,7 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_load_f32)]]
|
||||
fn tint_symbol_12(buffer : SB, offset : u32) -> f32
|
||||
fn tint_symbol(buffer : SB, offset : u32) -> f32
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
@@ -951,7 +951,7 @@ fn main() {
|
||||
var i : i32 = 4;
|
||||
var j : u32 = 1u;
|
||||
var k : i32 = 2;
|
||||
var x : f32 = tint_symbol_12(sb, (((((128u + (256u * u32(i))) + 16u) + (32u * j)) + 16u) + (4u * u32(k))));
|
||||
var x : f32 = tint_symbol(sb, (((((128u + (256u * u32(i))) + 16u) + (32u * j)) + 16u) + (4u * u32(k))));
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -1029,7 +1029,7 @@ struct SB {
|
||||
};
|
||||
|
||||
[[internal(intrinsic_load_f32)]]
|
||||
fn tint_symbol_14(buffer : SB, offset : u32) -> f32
|
||||
fn tint_symbol(buffer : SB, offset : u32) -> f32
|
||||
|
||||
var<storage> sb : SB;
|
||||
|
||||
@@ -1038,7 +1038,7 @@ fn main() {
|
||||
var i : i32 = 4;
|
||||
var j : u32 = 1u;
|
||||
var k : i32 = 2;
|
||||
var x : f32 = tint_symbol_14(sb, (((((128u + (256u * u32(i))) + 16u) + (32u * j)) + 16u) + (4u * u32(k))));
|
||||
var x : f32 = tint_symbol(sb, (((((128u + (256u * u32(i))) + 16u) + (32u * j)) + 16u) + (4u * u32(k))));
|
||||
}
|
||||
)";
|
||||
|
||||
|
||||
@@ -59,11 +59,11 @@ fn entry([[builtin(vertex_index)]] vert_idx : u32) {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_2 {
|
||||
struct tint_symbol {
|
||||
first_vertex_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_3 : tint_symbol_2;
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
fn test(vert_idx : u32) -> u32 {
|
||||
return vert_idx;
|
||||
@@ -71,7 +71,7 @@ fn test(vert_idx : u32) -> u32 {
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn entry([[builtin(vertex_index)]] vert_idx : u32) {
|
||||
test((vert_idx + tint_symbol_3.first_vertex_index));
|
||||
test((vert_idx + tint_symbol_1.first_vertex_index));
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -104,11 +104,11 @@ fn entry([[builtin(instance_index)]] inst_idx : u32) {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_2 {
|
||||
struct tint_symbol {
|
||||
first_instance_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(7)]] var<uniform> tint_symbol_3 : tint_symbol_2;
|
||||
[[binding(1), group(7)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
fn test(inst_idx : u32) -> u32 {
|
||||
return inst_idx;
|
||||
@@ -116,7 +116,7 @@ fn test(inst_idx : u32) -> u32 {
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn entry([[builtin(instance_index)]] inst_idx : u32) {
|
||||
test((inst_idx + tint_symbol_3.first_instance_index));
|
||||
test((inst_idx + tint_symbol_1.first_instance_index));
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -154,12 +154,12 @@ fn entry(inputs : Inputs) {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_3 {
|
||||
struct tint_symbol {
|
||||
first_vertex_index : u32;
|
||||
first_instance_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_4 : tint_symbol_3;
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
fn test(instance_idx : u32, vert_idx : u32) -> u32 {
|
||||
return (instance_idx + vert_idx);
|
||||
@@ -174,7 +174,7 @@ struct Inputs {
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn entry(inputs : Inputs) {
|
||||
test((inputs.instance_idx + tint_symbol_4.first_instance_index), (inputs.vert_idx + tint_symbol_4.first_vertex_index));
|
||||
test((inputs.instance_idx + tint_symbol_1.first_instance_index), (inputs.vert_idx + tint_symbol_1.first_vertex_index));
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -211,11 +211,11 @@ fn entry([[builtin(vertex_index)]] vert_idx : u32) {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_2 {
|
||||
struct tint_symbol {
|
||||
first_vertex_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_3 : tint_symbol_2;
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
fn func1(vert_idx : u32) -> u32 {
|
||||
return vert_idx;
|
||||
@@ -227,7 +227,7 @@ fn func2(vert_idx : u32) -> u32 {
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn entry([[builtin(vertex_index)]] vert_idx : u32) {
|
||||
func2((vert_idx + tint_symbol_3.first_vertex_index));
|
||||
func2((vert_idx + tint_symbol_1.first_vertex_index));
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -270,12 +270,12 @@ fn entry_c([[builtin(instance_index)]] inst_idx : u32) {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_3 {
|
||||
struct tint_symbol {
|
||||
first_vertex_index : u32;
|
||||
first_instance_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_4 : tint_symbol_3;
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
fn func(i : u32) -> u32 {
|
||||
return i;
|
||||
@@ -283,17 +283,17 @@ fn func(i : u32) -> u32 {
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn entry_a([[builtin(vertex_index)]] vert_idx : u32) {
|
||||
func((vert_idx + tint_symbol_4.first_vertex_index));
|
||||
func((vert_idx + tint_symbol_1.first_vertex_index));
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn entry_b([[builtin(vertex_index)]] vert_idx : u32, [[builtin(instance_index)]] inst_idx : u32) {
|
||||
func(((vert_idx + tint_symbol_4.first_vertex_index) + (inst_idx + tint_symbol_4.first_instance_index)));
|
||||
func(((vert_idx + tint_symbol_1.first_vertex_index) + (inst_idx + tint_symbol_1.first_instance_index)));
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn entry_c([[builtin(instance_index)]] inst_idx : u32) {
|
||||
func((inst_idx + tint_symbol_4.first_instance_index));
|
||||
func((inst_idx + tint_symbol_1.first_instance_index));
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -328,16 +328,16 @@ fn entry() {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_2 {
|
||||
struct tint_symbol {
|
||||
first_vertex_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_3 : tint_symbol_2;
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
[[builtin(vertex_index)]] var<in> vert_idx : u32;
|
||||
|
||||
fn test() -> u32 {
|
||||
return (vert_idx + tint_symbol_3.first_vertex_index);
|
||||
return (vert_idx + tint_symbol_1.first_vertex_index);
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
@@ -375,16 +375,16 @@ fn entry() {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_2 {
|
||||
struct tint_symbol {
|
||||
first_instance_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(7)]] var<uniform> tint_symbol_3 : tint_symbol_2;
|
||||
[[binding(1), group(7)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
[[builtin(instance_index)]] var<in> inst_idx : u32;
|
||||
|
||||
fn test() -> u32 {
|
||||
return (inst_idx + tint_symbol_3.first_instance_index);
|
||||
return (inst_idx + tint_symbol_1.first_instance_index);
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
@@ -423,19 +423,19 @@ fn entry() {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_3 {
|
||||
struct tint_symbol {
|
||||
first_vertex_index : u32;
|
||||
first_instance_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_4 : tint_symbol_3;
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
[[builtin(instance_index)]] var<in> instance_idx : u32;
|
||||
|
||||
[[builtin(vertex_index)]] var<in> vert_idx : u32;
|
||||
|
||||
fn test() -> u32 {
|
||||
return ((instance_idx + tint_symbol_4.first_instance_index) + (vert_idx + tint_symbol_4.first_vertex_index));
|
||||
return ((instance_idx + tint_symbol_1.first_instance_index) + (vert_idx + tint_symbol_1.first_vertex_index));
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
@@ -477,16 +477,16 @@ fn entry() {
|
||||
|
||||
auto* expect = R"(
|
||||
[[block]]
|
||||
struct tint_symbol_2 {
|
||||
struct tint_symbol {
|
||||
first_vertex_index : u32;
|
||||
};
|
||||
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_3 : tint_symbol_2;
|
||||
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
|
||||
|
||||
[[builtin(vertex_index)]] var<in> vert_idx : u32;
|
||||
|
||||
fn func1() -> u32 {
|
||||
return (vert_idx + tint_symbol_3.first_vertex_index);
|
||||
return (vert_idx + tint_symbol_1.first_vertex_index);
|
||||
}
|
||||
|
||||
fn func2() -> u32 {
|
||||
|
||||
@@ -43,8 +43,8 @@ fn main() {
|
||||
var f1 : f32 = 2.0;
|
||||
var f2 : f32 = 3.0;
|
||||
var f3 : f32 = 4.0;
|
||||
let tint_symbol_1 : array<f32, 4> = array<f32, 4>(f0, f1, f2, f3);
|
||||
var i : f32 = tint_symbol_1[2];
|
||||
let tint_symbol : array<f32, 4> = array<f32, 4>(f0, f1, f2, f3);
|
||||
var i : f32 = tint_symbol[2];
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -76,8 +76,8 @@ struct S {
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
let tint_symbol_1 : S = S(1, 2.0, vec3<f32>());
|
||||
var x : f32 = tint_symbol_1.b;
|
||||
let tint_symbol : S = S(1, 2.0, vec3<f32>());
|
||||
var x : f32 = tint_symbol.b;
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -97,10 +97,10 @@ fn main() {
|
||||
auto* expect = R"(
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
let tint_symbol_1 : array<f32, 2> = array<f32, 2>(1.0, 2.0);
|
||||
let tint_symbol_2 : array<f32, 2> = array<f32, 2>(3.0, 4.0);
|
||||
let tint_symbol_3 : array<array<f32, 2>, 2> = array<array<f32, 2>, 2>(tint_symbol_1, tint_symbol_2);
|
||||
var i : f32 = tint_symbol_3[0][1];
|
||||
let tint_symbol : array<f32, 2> = array<f32, 2>(1.0, 2.0);
|
||||
let tint_symbol_1 : array<f32, 2> = array<f32, 2>(3.0, 4.0);
|
||||
let tint_symbol_2 : array<array<f32, 2>, 2> = array<array<f32, 2>, 2>(tint_symbol, tint_symbol_1);
|
||||
var i : f32 = tint_symbol_2[0][1];
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -148,10 +148,10 @@ struct S3 {
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
let tint_symbol_1 : S1 = S1(2);
|
||||
let tint_symbol_4 : S2 = S2(1, tint_symbol_1, 3);
|
||||
let tint_symbol_8 : S3 = S3(tint_symbol_4);
|
||||
var x : i32 = tint_symbol_8.a.b.a;
|
||||
let tint_symbol : S1 = S1(2);
|
||||
let tint_symbol_1 : S2 = S2(1, tint_symbol, 3);
|
||||
let tint_symbol_2 : S3 = S3(tint_symbol_1);
|
||||
var x : i32 = tint_symbol_2.a.b.a;
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -187,12 +187,12 @@ struct S2 {
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
let tint_symbol_1 : S1 = S1(1);
|
||||
let tint_symbol_4 : S1 = S1(2);
|
||||
let tint_symbol_5 : S1 = S1(3);
|
||||
let tint_symbol_6 : array<S1, 3> = array<S1, 3>(tint_symbol_1, tint_symbol_4, tint_symbol_5);
|
||||
let tint_symbol_7 : S2 = S2(tint_symbol_6);
|
||||
var x : i32 = tint_symbol_7.a[1].a;
|
||||
let tint_symbol : S1 = S1(1);
|
||||
let tint_symbol_1 : S1 = S1(2);
|
||||
let tint_symbol_2 : S1 = S1(3);
|
||||
let tint_symbol_3 : array<S1, 3> = array<S1, 3>(tint_symbol, tint_symbol_1, tint_symbol_2);
|
||||
let tint_symbol_4 : S2 = S2(tint_symbol_3);
|
||||
var x : i32 = tint_symbol_4.a[1].a;
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -268,8 +268,8 @@ struct Uniforms {
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
let transform : mat2x2<f32> = ubo.transform;
|
||||
let tint_symbol_1 : array<vec2<f32>, 3> = array<vec2<f32>, 3>(vec2<f32>(-1.0, 1.0), vec2<f32>(1.0, 1.0), vec2<f32>(-1.0, -1.0));
|
||||
var coord : vec2<f32> = tint_symbol_1[vertex_index];
|
||||
let tint_symbol : array<vec2<f32>, 3> = array<vec2<f32>, 3>(vec2<f32>(-1.0, 1.0), vec2<f32>(1.0, 1.0), vec2<f32>(-1.0, -1.0));
|
||||
var coord : vec2<f32> = tint_symbol[vertex_index];
|
||||
position = vec4<f32>((transform * coord), 0.0, 1.0);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -50,8 +50,8 @@ fn _tint_main() {
|
||||
var foo : i32;
|
||||
var _tint_half : f32;
|
||||
var half1 : f32;
|
||||
var _tint_half2_0 : f32;
|
||||
var _tint_half2 : f32;
|
||||
var _tint_half2_1 : f32;
|
||||
}
|
||||
)";
|
||||
|
||||
|
||||
@@ -38,22 +38,22 @@ fn compute_main([[builtin(local_invocation_id)]] local_id : vec3<u32>,
|
||||
)";
|
||||
|
||||
auto* expect = R"(
|
||||
[[builtin(frag_coord)]] var<in> tint_symbol_1 : vec4<f32>;
|
||||
[[builtin(frag_coord)]] var<in> tint_symbol : vec4<f32>;
|
||||
|
||||
[[location(1)]] var<in> tint_symbol_2 : f32;
|
||||
[[location(1)]] var<in> tint_symbol_1 : f32;
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() {
|
||||
var col : f32 = (tint_symbol_1.x * tint_symbol_2);
|
||||
var col : f32 = (tint_symbol.x * tint_symbol_1);
|
||||
}
|
||||
|
||||
[[builtin(local_invocation_id)]] var<in> tint_symbol_6 : vec3<u32>;
|
||||
[[builtin(local_invocation_id)]] var<in> tint_symbol_2 : vec3<u32>;
|
||||
|
||||
[[builtin(local_invocation_index)]] var<in> tint_symbol_7 : u32;
|
||||
[[builtin(local_invocation_index)]] var<in> tint_symbol_3 : u32;
|
||||
|
||||
[[stage(compute)]]
|
||||
fn compute_main() {
|
||||
var id_x : u32 = tint_symbol_6.x;
|
||||
var id_x : u32 = tint_symbol_2.x;
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -74,7 +74,7 @@ fn frag_main([[location(1)]] loc1 : myf32) {
|
||||
auto* expect = R"(
|
||||
type myf32 = f32;
|
||||
|
||||
[[location(1)]] var<in> tint_symbol_2 : myf32;
|
||||
[[location(1)]] var<in> tint_symbol : myf32;
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() {
|
||||
@@ -97,8 +97,8 @@ fn vert_main() -> [[builtin(position)]] vec4<f32> {
|
||||
auto* expect = R"(
|
||||
[[builtin(position)]] var<out> tint_symbol_1 : vec4<f32>;
|
||||
|
||||
fn tint_symbol_2(tint_symbol_3 : vec4<f32>) {
|
||||
tint_symbol_1 = tint_symbol_3;
|
||||
fn tint_symbol_2(tint_symbol : vec4<f32>) {
|
||||
tint_symbol_1 = tint_symbol;
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
@@ -125,17 +125,17 @@ fn frag_main([[location(0)]] loc_in : u32) -> [[location(0)]] f32 {
|
||||
)";
|
||||
|
||||
auto* expect = R"(
|
||||
[[location(0)]] var<in> tint_symbol_1 : u32;
|
||||
[[location(0)]] var<in> tint_symbol : u32;
|
||||
|
||||
[[location(0)]] var<out> tint_symbol_2 : f32;
|
||||
|
||||
fn tint_symbol_3(tint_symbol_4 : f32) {
|
||||
tint_symbol_2 = tint_symbol_4;
|
||||
fn tint_symbol_3(tint_symbol_1 : f32) {
|
||||
tint_symbol_2 = tint_symbol_1;
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() {
|
||||
if ((tint_symbol_1 > 10u)) {
|
||||
if ((tint_symbol > 10u)) {
|
||||
tint_symbol_3(0.5);
|
||||
return;
|
||||
}
|
||||
@@ -165,21 +165,21 @@ fn frag_main([[location(0)]] loc_in : u32) -> [[location(0)]] myf32 {
|
||||
auto* expect = R"(
|
||||
type myf32 = f32;
|
||||
|
||||
[[location(0)]] var<in> tint_symbol_2 : u32;
|
||||
[[location(0)]] var<in> tint_symbol : u32;
|
||||
|
||||
[[location(0)]] var<out> tint_symbol_3 : myf32;
|
||||
[[location(0)]] var<out> tint_symbol_2 : myf32;
|
||||
|
||||
fn tint_symbol_4(tint_symbol_5 : myf32) {
|
||||
tint_symbol_3 = tint_symbol_5;
|
||||
fn tint_symbol_3(tint_symbol_1 : myf32) {
|
||||
tint_symbol_2 = tint_symbol_1;
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() {
|
||||
if ((tint_symbol_2 > 10u)) {
|
||||
tint_symbol_4(0.5);
|
||||
if ((tint_symbol > 10u)) {
|
||||
tint_symbol_3(0.5);
|
||||
return;
|
||||
}
|
||||
tint_symbol_4(1.0);
|
||||
tint_symbol_3(1.0);
|
||||
return;
|
||||
}
|
||||
)";
|
||||
@@ -208,14 +208,14 @@ struct FragmentInput {
|
||||
value : f32;
|
||||
};
|
||||
|
||||
[[builtin(frag_coord)]] var<in> tint_symbol_4 : vec4<f32>;
|
||||
[[builtin(frag_coord)]] var<in> tint_symbol : vec4<f32>;
|
||||
|
||||
[[location(1)]] var<in> tint_symbol_5 : f32;
|
||||
[[location(1)]] var<in> tint_symbol_1 : f32;
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() {
|
||||
let tint_symbol_7 : FragmentInput = FragmentInput(tint_symbol_4, tint_symbol_5);
|
||||
var col : f32 = (tint_symbol_7.coord.x * tint_symbol_7.value);
|
||||
let tint_symbol_2 : FragmentInput = FragmentInput(tint_symbol, tint_symbol_1);
|
||||
var col : f32 = (tint_symbol_2.coord.x * tint_symbol_2.value);
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -240,7 +240,7 @@ struct FragmentInput {
|
||||
value : f32;
|
||||
};
|
||||
|
||||
[[location(1)]] var<in> tint_symbol_3 : f32;
|
||||
[[location(1)]] var<in> tint_symbol : f32;
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() {
|
||||
@@ -275,23 +275,23 @@ struct VertexOutput {
|
||||
value : f32;
|
||||
};
|
||||
|
||||
[[builtin(position)]] var<out> tint_symbol_4 : vec4<f32>;
|
||||
[[builtin(position)]] var<out> tint_symbol_1 : vec4<f32>;
|
||||
|
||||
[[location(1)]] var<out> tint_symbol_5 : f32;
|
||||
[[location(1)]] var<out> tint_symbol_2 : f32;
|
||||
|
||||
fn tint_symbol_6(tint_symbol_7 : VertexOutput) {
|
||||
tint_symbol_4 = tint_symbol_7.pos;
|
||||
tint_symbol_5 = tint_symbol_7.value;
|
||||
fn tint_symbol_3(tint_symbol : VertexOutput) {
|
||||
tint_symbol_1 = tint_symbol.pos;
|
||||
tint_symbol_2 = tint_symbol.value;
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vert_main() {
|
||||
if (false) {
|
||||
tint_symbol_6(VertexOutput());
|
||||
tint_symbol_3(VertexOutput());
|
||||
return;
|
||||
}
|
||||
var pos : vec4<f32> = vec4<f32>(1.0, 2.0, 3.0, 0.0);
|
||||
tint_symbol_6(VertexOutput(pos, 2.0));
|
||||
tint_symbol_3(VertexOutput(pos, 2.0));
|
||||
return;
|
||||
}
|
||||
)";
|
||||
@@ -318,18 +318,18 @@ struct Interface {
|
||||
value : f32;
|
||||
};
|
||||
|
||||
[[location(1)]] var<in> tint_symbol_3 : f32;
|
||||
[[location(1)]] var<in> tint_symbol : f32;
|
||||
|
||||
[[location(1)]] var<out> tint_symbol_4 : f32;
|
||||
[[location(1)]] var<out> tint_symbol_3 : f32;
|
||||
|
||||
fn tint_symbol_5(tint_symbol_6 : Interface) {
|
||||
tint_symbol_4 = tint_symbol_6.value;
|
||||
fn tint_symbol_4(tint_symbol_2 : Interface) {
|
||||
tint_symbol_3 = tint_symbol_2.value;
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vert_main() {
|
||||
let tint_symbol_8 : Interface = Interface(tint_symbol_3);
|
||||
tint_symbol_5(tint_symbol_8);
|
||||
let tint_symbol_1 : Interface = Interface(tint_symbol);
|
||||
tint_symbol_4(tint_symbol_1);
|
||||
return;
|
||||
}
|
||||
)";
|
||||
@@ -361,24 +361,24 @@ struct Interface {
|
||||
value : f32;
|
||||
};
|
||||
|
||||
[[location(1)]] var<out> tint_symbol_3 : f32;
|
||||
[[location(1)]] var<out> tint_symbol_1 : f32;
|
||||
|
||||
fn tint_symbol_4(tint_symbol_5 : Interface) {
|
||||
tint_symbol_3 = tint_symbol_5.value;
|
||||
fn tint_symbol_2(tint_symbol : Interface) {
|
||||
tint_symbol_1 = tint_symbol.value;
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vert_main() {
|
||||
tint_symbol_4(Interface(42.0));
|
||||
tint_symbol_2(Interface(42.0));
|
||||
return;
|
||||
}
|
||||
|
||||
[[location(1)]] var<in> tint_symbol_7 : f32;
|
||||
[[location(1)]] var<in> tint_symbol_3 : f32;
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() {
|
||||
let tint_symbol_9 : Interface = Interface(tint_symbol_7);
|
||||
var x : f32 = tint_symbol_9.value;
|
||||
let tint_symbol_4 : Interface = Interface(tint_symbol_3);
|
||||
var x : f32 = tint_symbol_4.value;
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -419,20 +419,20 @@ struct FragmentOutput {
|
||||
value : f32;
|
||||
};
|
||||
|
||||
[[location(1)]] var<in> tint_symbol_5 : f32;
|
||||
[[location(1)]] var<in> tint_symbol : f32;
|
||||
|
||||
[[builtin(frag_coord)]] var<in> tint_symbol_6 : vec4<f32>;
|
||||
[[builtin(frag_coord)]] var<in> tint_symbol_1 : vec4<f32>;
|
||||
|
||||
[[location(1)]] var<out> tint_symbol_7 : f32;
|
||||
[[location(1)]] var<out> tint_symbol_4 : f32;
|
||||
|
||||
fn tint_symbol_8(tint_symbol_9 : FragmentOutput) {
|
||||
tint_symbol_7 = tint_symbol_9.value;
|
||||
fn tint_symbol_5(tint_symbol_3 : FragmentOutput) {
|
||||
tint_symbol_4 = tint_symbol_3.value;
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn frag_main() {
|
||||
let tint_symbol_11 : FragmentInput = FragmentInput(tint_symbol_5, tint_symbol_6);
|
||||
tint_symbol_8(FragmentOutput((tint_symbol_11.coord.x * tint_symbol_11.value)));
|
||||
let tint_symbol_2 : FragmentInput = FragmentInput(tint_symbol, tint_symbol_1);
|
||||
tint_symbol_5(FragmentOutput((tint_symbol_2.coord.x * tint_symbol_2.value)));
|
||||
return;
|
||||
}
|
||||
)";
|
||||
@@ -465,15 +465,15 @@ struct VertexOutput {
|
||||
Position : vec4<f32>;
|
||||
};
|
||||
|
||||
[[builtin(position)]] var<out> tint_symbol_4 : vec4<f32>;
|
||||
[[builtin(position)]] var<out> tint_symbol_1 : vec4<f32>;
|
||||
|
||||
fn tint_symbol_5(tint_symbol_6 : VertexOutput) {
|
||||
tint_symbol_4 = tint_symbol_6.Position;
|
||||
fn tint_symbol_2(tint_symbol : VertexOutput) {
|
||||
tint_symbol_1 = tint_symbol.Position;
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn main() {
|
||||
tint_symbol_5(VertexOutput(vec4<f32>()));
|
||||
tint_symbol_2(VertexOutput(vec4<f32>()));
|
||||
return;
|
||||
}
|
||||
)";
|
||||
@@ -585,14 +585,14 @@ fn main([[builtin(sample_index)]] sample_index : u32,
|
||||
)";
|
||||
|
||||
auto* expect = R"(
|
||||
[[builtin(sample_index)]] var<in> tint_symbol_3 : u32;
|
||||
[[builtin(sample_index)]] var<in> tint_symbol : u32;
|
||||
|
||||
[[builtin(sample_mask_in)]] var<in> tint_symbol_1 : array<u32, 1>;
|
||||
|
||||
[[builtin(sample_mask_out)]] var<out> tint_symbol_2 : array<u32, 1>;
|
||||
[[builtin(sample_mask_out)]] var<out> tint_symbol_3 : array<u32, 1>;
|
||||
|
||||
fn tint_symbol_4(tint_symbol_5 : u32) {
|
||||
tint_symbol_2[0] = tint_symbol_5;
|
||||
fn tint_symbol_4(tint_symbol_2 : u32) {
|
||||
tint_symbol_3[0] = tint_symbol_2;
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
|
||||
@@ -61,20 +61,11 @@ void Transform::RenameReservedKeywords(CloneContext* ctx,
|
||||
const char* names[],
|
||||
size_t count) {
|
||||
ctx->ReplaceAll([=](Symbol in) {
|
||||
if (!ctx->src->Symbols().HasName(in)) {
|
||||
return ctx->dst->Symbols().New();
|
||||
}
|
||||
auto name_in = ctx->src->Symbols().NameFor(in);
|
||||
if (!std::binary_search(names, names + count, name_in)) {
|
||||
return ctx->dst->Symbols().Register(name_in);
|
||||
if (std::binary_search(names, names + count, name_in)) {
|
||||
return ctx->dst->Symbols().New("_tint_" + name_in);
|
||||
}
|
||||
// Create a new unique name
|
||||
auto base_name = "_tint_" + name_in;
|
||||
auto name_out = base_name;
|
||||
for (int i = 0; ctx->src->Symbols().Get(name_out).IsValid(); i++) {
|
||||
name_out = base_name + "_" + std::to_string(i);
|
||||
}
|
||||
return ctx->dst->Symbols().Register(name_out);
|
||||
return ctx->dst->Symbols().New(name_in);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user