mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-10 14:08:04 +00:00
tint/transform/std140: Correctly handle nested / bare matrices
Fixed tint:1673 Fixed tint:1674 Change-Id: Ifa5d2a69131cc1e4679d4d43143f857c7ba46dbd Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102640 Commit-Queue: Ben Clayton <bclayton@google.com> Reviewed-by: David Neto <dneto@google.com> Kokoro: Kokoro <noreply+kokoro@google.com>
This commit is contained in:
committed by
Dawn LUCI CQ
parent
84b43d61fa
commit
90b29e500a
@@ -31,7 +31,7 @@ Inner conv_Inner(Inner_std140 val) {
|
||||
return Inner(mat2(val.m_0, val.m_1));
|
||||
}
|
||||
|
||||
Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
Inner[4] conv_arr4_Inner(Inner_std140 val[4]) {
|
||||
Inner arr[4] = Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -42,10 +42,10 @@ Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
}
|
||||
|
||||
Outer conv_Outer(Outer_std140 val) {
|
||||
return Outer(conv_arr_4_Inner(val.a));
|
||||
return Outer(conv_arr4_Inner(val.a));
|
||||
}
|
||||
|
||||
Outer[4] conv_arr_4_Outer(Outer_std140 val[4]) {
|
||||
Outer[4] conv_arr4_Outer(Outer_std140 val[4]) {
|
||||
Outer arr[4] = Outer[4](Outer(Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)))));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -96,18 +96,18 @@ float load_a_inner_p0_a_p1_m_p2_p3(uint p0, uint p1, uint p2, uint p3) {
|
||||
}
|
||||
|
||||
void f() {
|
||||
Outer p_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer p_a[4] = conv_arr4_Outer(a.inner);
|
||||
int tint_symbol = i();
|
||||
Outer p_a_i = conv_Outer(a.inner[tint_symbol]);
|
||||
Inner p_a_i_a[4] = conv_arr_4_Inner(a.inner[tint_symbol].a);
|
||||
Inner p_a_i_a[4] = conv_arr4_Inner(a.inner[tint_symbol].a);
|
||||
int tint_symbol_1 = i();
|
||||
Inner p_a_i_a_i = conv_Inner(a.inner[tint_symbol].a[tint_symbol_1]);
|
||||
mat2 p_a_i_a_i_m = load_a_inner_p0_a_p1_m(uint(tint_symbol), uint(tint_symbol_1));
|
||||
int tint_symbol_2 = i();
|
||||
vec2 p_a_i_a_i_m_i = load_a_inner_p0_a_p1_m_p2(uint(tint_symbol), uint(tint_symbol_1), uint(tint_symbol_2));
|
||||
Outer l_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer l_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer l_a_i = conv_Outer(a.inner[tint_symbol]);
|
||||
Inner l_a_i_a[4] = conv_arr_4_Inner(a.inner[tint_symbol].a);
|
||||
Inner l_a_i_a[4] = conv_arr4_Inner(a.inner[tint_symbol].a);
|
||||
Inner l_a_i_a_i = conv_Inner(a.inner[tint_symbol].a[tint_symbol_1]);
|
||||
mat2 l_a_i_a_i_m = load_a_inner_p0_a_p1_m(uint(tint_symbol), uint(tint_symbol_1));
|
||||
vec2 l_a_i_a_i_m_i = load_a_inner_p0_a_p1_m_p2(uint(tint_symbol), uint(tint_symbol_1), uint(tint_symbol_2));
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
OpMemberName %Inner 0 "m"
|
||||
OpName %conv_Inner "conv_Inner"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_Inner "conv_arr_4_Inner"
|
||||
OpName %conv_arr4_Inner "conv_arr4_Inner"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i_0 "i"
|
||||
@@ -30,7 +30,7 @@
|
||||
OpMemberName %Outer 0 "a"
|
||||
OpName %conv_Outer "conv_Outer"
|
||||
OpName %val_1 "val"
|
||||
OpName %conv_arr_4_Outer "conv_arr_4_Outer"
|
||||
OpName %conv_arr4_Outer "conv_arr4_Outer"
|
||||
OpName %val_2 "val"
|
||||
OpName %arr_0 "arr"
|
||||
OpName %i_1 "i"
|
||||
@@ -137,7 +137,7 @@
|
||||
%32 = OpCompositeConstruct %Inner %31
|
||||
OpReturnValue %32
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Inner = OpFunction %_arr_Inner_uint_4 None %33
|
||||
%conv_arr4_Inner = OpFunction %_arr_Inner_uint_4 None %33
|
||||
%val_0 = OpFunctionParameter %_arr_Inner_std140_uint_4
|
||||
%37 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_Inner_uint_4 Function %40
|
||||
@@ -178,11 +178,11 @@
|
||||
%val_1 = OpFunctionParameter %Outer_std140
|
||||
%73 = OpLabel
|
||||
%75 = OpCompositeExtract %_arr_Inner_std140_uint_4 %val_1 0
|
||||
%74 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %75
|
||||
%74 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %75
|
||||
%76 = OpCompositeConstruct %Outer %74
|
||||
OpReturnValue %76
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Outer = OpFunction %_arr_Outer_uint_4 None %77
|
||||
%conv_arr4_Outer = OpFunction %_arr_Outer_uint_4 None %77
|
||||
%val_2 = OpFunctionParameter %_arr_Outer_std140_uint_4
|
||||
%81 = OpLabel
|
||||
%arr_0 = OpVariable %_ptr_Function__arr_Outer_uint_4 Function %84
|
||||
@@ -279,13 +279,13 @@
|
||||
%164 = OpFunctionCall %int %i
|
||||
%167 = OpAccessChain %_ptr_Uniform__arr_Outer_std140_uint_4 %a %uint_0
|
||||
%168 = OpLoad %_arr_Outer_std140_uint_4 %167
|
||||
%165 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr_4_Outer %168
|
||||
%165 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr4_Outer %168
|
||||
%171 = OpAccessChain %_ptr_Uniform_Outer_std140 %a %uint_0 %162
|
||||
%172 = OpLoad %Outer_std140 %171
|
||||
%169 = OpFunctionCall %Outer %conv_Outer %172
|
||||
%175 = OpAccessChain %_ptr_Uniform__arr_Inner_std140_uint_4 %a %uint_0 %162 %uint_0
|
||||
%176 = OpLoad %_arr_Inner_std140_uint_4 %175
|
||||
%173 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %176
|
||||
%173 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %176
|
||||
%178 = OpAccessChain %_ptr_Uniform_Inner_std140 %a %uint_0 %162 %uint_0 %163
|
||||
%179 = OpLoad %Inner_std140 %178
|
||||
%177 = OpFunctionCall %Inner %conv_Inner %179
|
||||
|
||||
@@ -25,7 +25,7 @@ Inner conv_Inner(Inner_std140 val) {
|
||||
return Inner(mat2(val.m_0, val.m_1));
|
||||
}
|
||||
|
||||
Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
Inner[4] conv_arr4_Inner(Inner_std140 val[4]) {
|
||||
Inner arr[4] = Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -36,10 +36,10 @@ Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
}
|
||||
|
||||
Outer conv_Outer(Outer_std140 val) {
|
||||
return Outer(conv_arr_4_Inner(val.a));
|
||||
return Outer(conv_arr4_Inner(val.a));
|
||||
}
|
||||
|
||||
Outer[4] conv_arr_4_Outer(Outer_std140 val[4]) {
|
||||
Outer[4] conv_arr4_Outer(Outer_std140 val[4]) {
|
||||
Outer arr[4] = Outer[4](Outer(Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat2(0.0f, 0.0f, 0.0f, 0.0f)))));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -54,15 +54,15 @@ mat2 load_a_inner_3_a_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
Outer p_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer p_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer p_a_3 = conv_Outer(a.inner[3u]);
|
||||
Inner p_a_3_a[4] = conv_arr_4_Inner(a.inner[3u].a);
|
||||
Inner p_a_3_a[4] = conv_arr4_Inner(a.inner[3u].a);
|
||||
Inner p_a_3_a_2 = conv_Inner(a.inner[3u].a[2u]);
|
||||
mat2 p_a_3_a_2_m = load_a_inner_3_a_2_m();
|
||||
vec2 p_a_3_a_2_m_1 = a.inner[3u].a[2u].m_1;
|
||||
Outer l_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer l_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer l_a_3 = conv_Outer(a.inner[3u]);
|
||||
Inner l_a_3_a[4] = conv_arr_4_Inner(a.inner[3u].a);
|
||||
Inner l_a_3_a[4] = conv_arr4_Inner(a.inner[3u].a);
|
||||
Inner l_a_3_a_2 = conv_Inner(a.inner[3u].a[2u]);
|
||||
mat2 l_a_3_a_2_m = load_a_inner_3_a_2_m();
|
||||
vec2 l_a_3_a_2_m_1 = a.inner[3u].a[2u].m_1;
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
OpMemberName %Inner 0 "m"
|
||||
OpName %conv_Inner "conv_Inner"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_Inner "conv_arr_4_Inner"
|
||||
OpName %conv_arr4_Inner "conv_arr4_Inner"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -28,7 +28,7 @@
|
||||
OpMemberName %Outer 0 "a"
|
||||
OpName %conv_Outer "conv_Outer"
|
||||
OpName %val_1 "val"
|
||||
OpName %conv_arr_4_Outer "conv_arr_4_Outer"
|
||||
OpName %conv_arr4_Outer "conv_arr4_Outer"
|
||||
OpName %val_2 "val"
|
||||
OpName %arr_0 "arr"
|
||||
OpName %i_0 "i"
|
||||
@@ -108,7 +108,7 @@
|
||||
%21 = OpCompositeConstruct %Inner %20
|
||||
OpReturnValue %21
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Inner = OpFunction %_arr_Inner_uint_4 None %22
|
||||
%conv_arr4_Inner = OpFunction %_arr_Inner_uint_4 None %22
|
||||
%val_0 = OpFunctionParameter %_arr_Inner_std140_uint_4
|
||||
%26 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_Inner_uint_4 Function %29
|
||||
@@ -149,11 +149,11 @@
|
||||
%val_1 = OpFunctionParameter %Outer_std140
|
||||
%62 = OpLabel
|
||||
%64 = OpCompositeExtract %_arr_Inner_std140_uint_4 %val_1 0
|
||||
%63 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %64
|
||||
%63 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %64
|
||||
%65 = OpCompositeConstruct %Outer %63
|
||||
OpReturnValue %65
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Outer = OpFunction %_arr_Outer_uint_4 None %66
|
||||
%conv_arr4_Outer = OpFunction %_arr_Outer_uint_4 None %66
|
||||
%val_2 = OpFunctionParameter %_arr_Outer_std140_uint_4
|
||||
%70 = OpLabel
|
||||
%arr_0 = OpVariable %_ptr_Function__arr_Outer_uint_4 Function %73
|
||||
@@ -204,13 +204,13 @@
|
||||
%118 = OpLabel
|
||||
%121 = OpAccessChain %_ptr_Uniform__arr_Outer_std140_uint_4 %a %uint_0
|
||||
%122 = OpLoad %_arr_Outer_std140_uint_4 %121
|
||||
%119 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr_4_Outer %122
|
||||
%119 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr4_Outer %122
|
||||
%125 = OpAccessChain %_ptr_Uniform_Outer_std140 %a %uint_0 %uint_3
|
||||
%126 = OpLoad %Outer_std140 %125
|
||||
%123 = OpFunctionCall %Outer %conv_Outer %126
|
||||
%129 = OpAccessChain %_ptr_Uniform__arr_Inner_std140_uint_4 %a %uint_0 %uint_3 %uint_0
|
||||
%130 = OpLoad %_arr_Inner_std140_uint_4 %129
|
||||
%127 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %130
|
||||
%127 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %130
|
||||
%132 = OpAccessChain %_ptr_Uniform_Inner_std140 %a %uint_0 %uint_3 %uint_0 %uint_2
|
||||
%133 = OpLoad %Inner_std140 %132
|
||||
%131 = OpFunctionCall %Inner %conv_Inner %133
|
||||
|
||||
@@ -40,7 +40,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat2(val.m_0, val.m_1), val.after, val.pad_1);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -55,7 +55,7 @@ mat2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
a(conv_arr_4_S(u.inner));
|
||||
a(conv_arr4_S(u.inner));
|
||||
b(conv_S(u.inner[2u]));
|
||||
c(load_u_inner_2_m());
|
||||
d(u.inner[0u].m_1.yx);
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
OpName %f_1 "f_1"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -128,7 +128,7 @@
|
||||
%44 = OpCompositeConstruct %S %39 %42 %43
|
||||
OpReturnValue %44
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %45
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %45
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%48 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %51
|
||||
@@ -179,7 +179,7 @@
|
||||
%98 = OpLabel
|
||||
%102 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%103 = OpLoad %_arr_S_std140_uint_4 %102
|
||||
%100 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %103
|
||||
%100 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %103
|
||||
%99 = OpFunctionCall %void %a %100
|
||||
%106 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
%107 = OpLoad %S_std140 %106
|
||||
|
||||
@@ -26,7 +26,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat2(val.m_0, val.m_1), val.after, val.pad_1);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -41,7 +41,7 @@ mat2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
p = conv_arr_4_S(u.inner);
|
||||
p = conv_arr4_S(u.inner);
|
||||
p[1] = conv_S(u.inner[2u]);
|
||||
p[3].m = load_u_inner_2_m();
|
||||
p[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
OpName %p "p"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -97,7 +97,7 @@
|
||||
%26 = OpCompositeConstruct %S %21 %24 %25
|
||||
OpReturnValue %26
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %27
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %27
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%30 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %16
|
||||
@@ -148,7 +148,7 @@
|
||||
%80 = OpLabel
|
||||
%83 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%84 = OpLoad %_arr_S_std140_uint_4 %83
|
||||
%81 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %84
|
||||
%81 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %84
|
||||
OpStore %p %81
|
||||
%87 = OpAccessChain %_ptr_Private_S %p %int_1
|
||||
%89 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
@@ -29,7 +29,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat2(val.m_0, val.m_1), val.after, val.pad_1);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -44,7 +44,7 @@ mat2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
s.inner = conv_arr_4_S(u.inner);
|
||||
s.inner = conv_arr4_S(u.inner);
|
||||
s.inner[1] = conv_S(u.inner[2u]);
|
||||
s.inner[3].m = load_u_inner_2_m();
|
||||
s.inner[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
OpName %s "s"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -105,7 +105,7 @@
|
||||
%26 = OpCompositeConstruct %S %21 %24 %25
|
||||
OpReturnValue %26
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %27
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %27
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%30 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %33
|
||||
@@ -157,7 +157,7 @@
|
||||
%83 = OpAccessChain %_ptr_StorageBuffer__arr_S_uint_4 %s %uint_0
|
||||
%86 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%87 = OpLoad %_arr_S_std140_uint_4 %86
|
||||
%84 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %87
|
||||
%84 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %87
|
||||
OpStore %83 %84
|
||||
%90 = OpAccessChain %_ptr_StorageBuffer_S %s %uint_0 %int_1
|
||||
%92 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
@@ -26,7 +26,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat2(val.m_0, val.m_1), val.after, val.pad_1);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat2(0.0f, 0.0f, 0.0f, 0.0f), 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -49,7 +49,7 @@ void f(uint local_invocation_index) {
|
||||
}
|
||||
}
|
||||
barrier();
|
||||
w = conv_arr_4_S(u.inner);
|
||||
w = conv_arr4_S(u.inner);
|
||||
w[1] = conv_S(u.inner[2u]);
|
||||
w[3].m = load_u_inner_2_m();
|
||||
w[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
OpName %w "w"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -107,7 +107,7 @@
|
||||
%27 = OpCompositeConstruct %S %22 %25 %26
|
||||
OpReturnValue %27
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %28
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %28
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%31 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %34
|
||||
@@ -185,7 +185,7 @@
|
||||
OpControlBarrier %uint_2 %uint_2 %uint_264
|
||||
%104 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%105 = OpLoad %_arr_S_std140_uint_4 %104
|
||||
%102 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %105
|
||||
%102 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %105
|
||||
OpStore %w %102
|
||||
%107 = OpAccessChain %_ptr_Workgroup_S %w %int_1
|
||||
%109 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
@@ -52,7 +52,7 @@ Inner conv_Inner(Inner_std140 val) {
|
||||
return Inner(mat3x2(val.m_0, val.m_1, val.m_2), val.pad, val.pad_1, val.pad_2, val.pad_3, val.pad_4, val.pad_5, val.pad_6, val.pad_7, val.pad_8, val.pad_9);
|
||||
}
|
||||
|
||||
Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
Inner[4] conv_arr4_Inner(Inner_std140 val[4]) {
|
||||
Inner arr[4] = Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -63,10 +63,10 @@ Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
}
|
||||
|
||||
Outer conv_Outer(Outer_std140 val) {
|
||||
return Outer(conv_arr_4_Inner(val.a));
|
||||
return Outer(conv_arr4_Inner(val.a));
|
||||
}
|
||||
|
||||
Outer[4] conv_arr_4_Outer(Outer_std140 val[4]) {
|
||||
Outer[4] conv_arr4_Outer(Outer_std140 val[4]) {
|
||||
Outer arr[4] = Outer[4](Outer(Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u))), Outer(Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u))), Outer(Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u))), Outer(Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u))));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -125,18 +125,18 @@ float load_a_inner_p0_a_p1_m_p2_p3(uint p0, uint p1, uint p2, uint p3) {
|
||||
}
|
||||
|
||||
void f() {
|
||||
Outer p_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer p_a[4] = conv_arr4_Outer(a.inner);
|
||||
int tint_symbol = i();
|
||||
Outer p_a_i = conv_Outer(a.inner[tint_symbol]);
|
||||
Inner p_a_i_a[4] = conv_arr_4_Inner(a.inner[tint_symbol].a);
|
||||
Inner p_a_i_a[4] = conv_arr4_Inner(a.inner[tint_symbol].a);
|
||||
int tint_symbol_1 = i();
|
||||
Inner p_a_i_a_i = conv_Inner(a.inner[tint_symbol].a[tint_symbol_1]);
|
||||
mat3x2 p_a_i_a_i_m = load_a_inner_p0_a_p1_m(uint(tint_symbol), uint(tint_symbol_1));
|
||||
int tint_symbol_2 = i();
|
||||
vec2 p_a_i_a_i_m_i = load_a_inner_p0_a_p1_m_p2(uint(tint_symbol), uint(tint_symbol_1), uint(tint_symbol_2));
|
||||
Outer l_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer l_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer l_a_i = conv_Outer(a.inner[tint_symbol]);
|
||||
Inner l_a_i_a[4] = conv_arr_4_Inner(a.inner[tint_symbol].a);
|
||||
Inner l_a_i_a[4] = conv_arr4_Inner(a.inner[tint_symbol].a);
|
||||
Inner l_a_i_a_i = conv_Inner(a.inner[tint_symbol].a[tint_symbol_1]);
|
||||
mat3x2 l_a_i_a_i_m = load_a_inner_p0_a_p1_m(uint(tint_symbol), uint(tint_symbol_1));
|
||||
vec2 l_a_i_a_i_m_i = load_a_inner_p0_a_p1_m_p2(uint(tint_symbol), uint(tint_symbol_1), uint(tint_symbol_2));
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
OpMemberName %Inner 0 "m"
|
||||
OpName %conv_Inner "conv_Inner"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_Inner "conv_arr_4_Inner"
|
||||
OpName %conv_arr4_Inner "conv_arr4_Inner"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i_0 "i"
|
||||
@@ -31,7 +31,7 @@
|
||||
OpMemberName %Outer 0 "a"
|
||||
OpName %conv_Outer "conv_Outer"
|
||||
OpName %val_1 "val"
|
||||
OpName %conv_arr_4_Outer "conv_arr_4_Outer"
|
||||
OpName %conv_arr4_Outer "conv_arr4_Outer"
|
||||
OpName %val_2 "val"
|
||||
OpName %arr_0 "arr"
|
||||
OpName %i_1 "i"
|
||||
@@ -141,7 +141,7 @@
|
||||
%33 = OpCompositeConstruct %Inner %32
|
||||
OpReturnValue %33
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Inner = OpFunction %_arr_Inner_uint_4 None %34
|
||||
%conv_arr4_Inner = OpFunction %_arr_Inner_uint_4 None %34
|
||||
%val_0 = OpFunctionParameter %_arr_Inner_std140_uint_4
|
||||
%38 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_Inner_uint_4 Function %41
|
||||
@@ -182,11 +182,11 @@
|
||||
%val_1 = OpFunctionParameter %Outer_std140
|
||||
%74 = OpLabel
|
||||
%76 = OpCompositeExtract %_arr_Inner_std140_uint_4 %val_1 0
|
||||
%75 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %76
|
||||
%75 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %76
|
||||
%77 = OpCompositeConstruct %Outer %75
|
||||
OpReturnValue %77
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Outer = OpFunction %_arr_Outer_uint_4 None %78
|
||||
%conv_arr4_Outer = OpFunction %_arr_Outer_uint_4 None %78
|
||||
%val_2 = OpFunctionParameter %_arr_Outer_std140_uint_4
|
||||
%82 = OpLabel
|
||||
%arr_0 = OpVariable %_ptr_Function__arr_Outer_uint_4 Function %85
|
||||
@@ -293,13 +293,13 @@
|
||||
%175 = OpFunctionCall %int %i
|
||||
%178 = OpAccessChain %_ptr_Uniform__arr_Outer_std140_uint_4 %a %uint_0
|
||||
%179 = OpLoad %_arr_Outer_std140_uint_4 %178
|
||||
%176 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr_4_Outer %179
|
||||
%176 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr4_Outer %179
|
||||
%182 = OpAccessChain %_ptr_Uniform_Outer_std140 %a %uint_0 %173
|
||||
%183 = OpLoad %Outer_std140 %182
|
||||
%180 = OpFunctionCall %Outer %conv_Outer %183
|
||||
%186 = OpAccessChain %_ptr_Uniform__arr_Inner_std140_uint_4 %a %uint_0 %173 %uint_0
|
||||
%187 = OpLoad %_arr_Inner_std140_uint_4 %186
|
||||
%184 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %187
|
||||
%184 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %187
|
||||
%189 = OpAccessChain %_ptr_Uniform_Inner_std140 %a %uint_0 %173 %uint_0 %174
|
||||
%190 = OpLoad %Inner_std140 %189
|
||||
%188 = OpFunctionCall %Inner %conv_Inner %190
|
||||
|
||||
@@ -46,7 +46,7 @@ Inner conv_Inner(Inner_std140 val) {
|
||||
return Inner(mat3x2(val.m_0, val.m_1, val.m_2), val.pad, val.pad_1, val.pad_2, val.pad_3, val.pad_4, val.pad_5, val.pad_6, val.pad_7, val.pad_8, val.pad_9);
|
||||
}
|
||||
|
||||
Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
Inner[4] conv_arr4_Inner(Inner_std140 val[4]) {
|
||||
Inner arr[4] = Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -57,10 +57,10 @@ Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
}
|
||||
|
||||
Outer conv_Outer(Outer_std140 val) {
|
||||
return Outer(conv_arr_4_Inner(val.a));
|
||||
return Outer(conv_arr4_Inner(val.a));
|
||||
}
|
||||
|
||||
Outer[4] conv_arr_4_Outer(Outer_std140 val[4]) {
|
||||
Outer[4] conv_arr4_Outer(Outer_std140 val[4]) {
|
||||
Outer arr[4] = Outer[4](Outer(Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u))), Outer(Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u))), Outer(Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u))), Outer(Inner[4](Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u), Inner(mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u))));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -75,15 +75,15 @@ mat3x2 load_a_inner_3_a_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
Outer p_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer p_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer p_a_3 = conv_Outer(a.inner[3u]);
|
||||
Inner p_a_3_a[4] = conv_arr_4_Inner(a.inner[3u].a);
|
||||
Inner p_a_3_a[4] = conv_arr4_Inner(a.inner[3u].a);
|
||||
Inner p_a_3_a_2 = conv_Inner(a.inner[3u].a[2u]);
|
||||
mat3x2 p_a_3_a_2_m = load_a_inner_3_a_2_m();
|
||||
vec2 p_a_3_a_2_m_1 = a.inner[3u].a[2u].m_1;
|
||||
Outer l_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer l_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer l_a_3 = conv_Outer(a.inner[3u]);
|
||||
Inner l_a_3_a[4] = conv_arr_4_Inner(a.inner[3u].a);
|
||||
Inner l_a_3_a[4] = conv_arr4_Inner(a.inner[3u].a);
|
||||
Inner l_a_3_a_2 = conv_Inner(a.inner[3u].a[2u]);
|
||||
mat3x2 l_a_3_a_2_m = load_a_inner_3_a_2_m();
|
||||
vec2 l_a_3_a_2_m_1 = a.inner[3u].a[2u].m_1;
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
OpMemberName %Inner 0 "m"
|
||||
OpName %conv_Inner "conv_Inner"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_Inner "conv_arr_4_Inner"
|
||||
OpName %conv_arr4_Inner "conv_arr4_Inner"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -29,7 +29,7 @@
|
||||
OpMemberName %Outer 0 "a"
|
||||
OpName %conv_Outer "conv_Outer"
|
||||
OpName %val_1 "val"
|
||||
OpName %conv_arr_4_Outer "conv_arr_4_Outer"
|
||||
OpName %conv_arr4_Outer "conv_arr4_Outer"
|
||||
OpName %val_2 "val"
|
||||
OpName %arr_0 "arr"
|
||||
OpName %i_0 "i"
|
||||
@@ -111,7 +111,7 @@
|
||||
%22 = OpCompositeConstruct %Inner %21
|
||||
OpReturnValue %22
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Inner = OpFunction %_arr_Inner_uint_4 None %23
|
||||
%conv_arr4_Inner = OpFunction %_arr_Inner_uint_4 None %23
|
||||
%val_0 = OpFunctionParameter %_arr_Inner_std140_uint_4
|
||||
%27 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_Inner_uint_4 Function %30
|
||||
@@ -152,11 +152,11 @@
|
||||
%val_1 = OpFunctionParameter %Outer_std140
|
||||
%63 = OpLabel
|
||||
%65 = OpCompositeExtract %_arr_Inner_std140_uint_4 %val_1 0
|
||||
%64 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %65
|
||||
%64 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %65
|
||||
%66 = OpCompositeConstruct %Outer %64
|
||||
OpReturnValue %66
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Outer = OpFunction %_arr_Outer_uint_4 None %67
|
||||
%conv_arr4_Outer = OpFunction %_arr_Outer_uint_4 None %67
|
||||
%val_2 = OpFunctionParameter %_arr_Outer_std140_uint_4
|
||||
%71 = OpLabel
|
||||
%arr_0 = OpVariable %_ptr_Function__arr_Outer_uint_4 Function %74
|
||||
@@ -209,13 +209,13 @@
|
||||
%122 = OpLabel
|
||||
%125 = OpAccessChain %_ptr_Uniform__arr_Outer_std140_uint_4 %a %uint_0
|
||||
%126 = OpLoad %_arr_Outer_std140_uint_4 %125
|
||||
%123 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr_4_Outer %126
|
||||
%123 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr4_Outer %126
|
||||
%129 = OpAccessChain %_ptr_Uniform_Outer_std140 %a %uint_0 %uint_3
|
||||
%130 = OpLoad %Outer_std140 %129
|
||||
%127 = OpFunctionCall %Outer %conv_Outer %130
|
||||
%133 = OpAccessChain %_ptr_Uniform__arr_Inner_std140_uint_4 %a %uint_0 %uint_3 %uint_0
|
||||
%134 = OpLoad %_arr_Inner_std140_uint_4 %133
|
||||
%131 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %134
|
||||
%131 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %134
|
||||
%136 = OpAccessChain %_ptr_Uniform_Inner_std140 %a %uint_0 %uint_3 %uint_0 %uint_2
|
||||
%137 = OpLoad %Inner_std140 %136
|
||||
%135 = OpFunctionCall %Inner %conv_Inner %137
|
||||
|
||||
@@ -61,7 +61,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat3x2(val.m_0, val.m_1, val.m_2), val.pad_1, val.pad_2, val.pad_3, val.pad_4, val.pad_5, val.pad_6, val.pad_7, val.pad_8, val.pad_9, val.pad_10, val.after, val.pad_11);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -76,7 +76,7 @@ mat3x2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
a(conv_arr_4_S(u.inner));
|
||||
a(conv_arr4_S(u.inner));
|
||||
b(conv_S(u.inner[2u]));
|
||||
c(load_u_inner_2_m());
|
||||
d(u.inner[0u].m_1.yx);
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
OpName %f_1 "f_1"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -132,7 +132,7 @@
|
||||
%45 = OpCompositeConstruct %S %39 %43 %44
|
||||
OpReturnValue %45
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %46
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %46
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%49 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %52
|
||||
@@ -185,7 +185,7 @@
|
||||
%103 = OpLabel
|
||||
%107 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%108 = OpLoad %_arr_S_std140_uint_4 %107
|
||||
%105 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %108
|
||||
%105 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %108
|
||||
%104 = OpFunctionCall %void %a %105
|
||||
%111 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
%112 = OpLoad %S_std140 %111
|
||||
|
||||
@@ -47,7 +47,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat3x2(val.m_0, val.m_1, val.m_2), val.pad_1, val.pad_2, val.pad_3, val.pad_4, val.pad_5, val.pad_6, val.pad_7, val.pad_8, val.pad_9, val.pad_10, val.after, val.pad_11);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -62,7 +62,7 @@ mat3x2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
p = conv_arr_4_S(u.inner);
|
||||
p = conv_arr4_S(u.inner);
|
||||
p[1] = conv_S(u.inner[2u]);
|
||||
p[3].m = load_u_inner_2_m();
|
||||
p[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
OpName %p "p"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -101,7 +101,7 @@
|
||||
%27 = OpCompositeConstruct %S %21 %25 %26
|
||||
OpReturnValue %27
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %28
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %28
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%31 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %16
|
||||
@@ -154,7 +154,7 @@
|
||||
%85 = OpLabel
|
||||
%88 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%89 = OpLoad %_arr_S_std140_uint_4 %88
|
||||
%86 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %89
|
||||
%86 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %89
|
||||
OpStore %p %86
|
||||
%92 = OpAccessChain %_ptr_Private_S %p %int_1
|
||||
%94 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
@@ -50,7 +50,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat3x2(val.m_0, val.m_1, val.m_2), val.pad_1, val.pad_2, val.pad_3, val.pad_4, val.pad_5, val.pad_6, val.pad_7, val.pad_8, val.pad_9, val.pad_10, val.after, val.pad_11);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -65,7 +65,7 @@ mat3x2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
s.inner = conv_arr_4_S(u.inner);
|
||||
s.inner = conv_arr4_S(u.inner);
|
||||
s.inner[1] = conv_S(u.inner[2u]);
|
||||
s.inner[3].m = load_u_inner_2_m();
|
||||
s.inner[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
OpName %s "s"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -109,7 +109,7 @@
|
||||
%27 = OpCompositeConstruct %S %21 %25 %26
|
||||
OpReturnValue %27
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %28
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %28
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%31 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %34
|
||||
@@ -163,7 +163,7 @@
|
||||
%88 = OpAccessChain %_ptr_StorageBuffer__arr_S_uint_4 %s %uint_0
|
||||
%91 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%92 = OpLoad %_arr_S_std140_uint_4 %91
|
||||
%89 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %92
|
||||
%89 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %92
|
||||
OpStore %88 %89
|
||||
%95 = OpAccessChain %_ptr_StorageBuffer_S %s %uint_0 %int_1
|
||||
%97 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
@@ -47,7 +47,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat3x2(val.m_0, val.m_1, val.m_2), val.pad_1, val.pad_2, val.pad_3, val.pad_4, val.pad_5, val.pad_6, val.pad_7, val.pad_8, val.pad_9, val.pad_10, val.after, val.pad_11);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u), S(0, 0u, mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -70,7 +70,7 @@ void f(uint local_invocation_index) {
|
||||
}
|
||||
}
|
||||
barrier();
|
||||
w = conv_arr_4_S(u.inner);
|
||||
w = conv_arr4_S(u.inner);
|
||||
w[1] = conv_S(u.inner[2u]);
|
||||
w[3].m = load_u_inner_2_m();
|
||||
w[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
OpName %w "w"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -111,7 +111,7 @@
|
||||
%28 = OpCompositeConstruct %S %22 %26 %27
|
||||
OpReturnValue %28
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %29
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %29
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%32 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %35
|
||||
@@ -191,7 +191,7 @@
|
||||
OpControlBarrier %uint_2 %uint_2 %uint_264
|
||||
%109 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%110 = OpLoad %_arr_S_std140_uint_4 %109
|
||||
%107 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %110
|
||||
%107 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %110
|
||||
OpStore %w %107
|
||||
%112 = OpAccessChain %_ptr_Workgroup_S %w %int_1
|
||||
%114 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
@@ -33,7 +33,7 @@ Inner conv_Inner(Inner_std140 val) {
|
||||
return Inner(mat4x2(val.m_0, val.m_1, val.m_2, val.m_3));
|
||||
}
|
||||
|
||||
Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
Inner[4] conv_arr4_Inner(Inner_std140 val[4]) {
|
||||
Inner arr[4] = Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -44,10 +44,10 @@ Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
}
|
||||
|
||||
Outer conv_Outer(Outer_std140 val) {
|
||||
return Outer(conv_arr_4_Inner(val.a));
|
||||
return Outer(conv_arr4_Inner(val.a));
|
||||
}
|
||||
|
||||
Outer[4] conv_arr_4_Outer(Outer_std140 val[4]) {
|
||||
Outer[4] conv_arr4_Outer(Outer_std140 val[4]) {
|
||||
Outer arr[4] = Outer[4](Outer(Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)))));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -114,18 +114,18 @@ float load_a_inner_p0_a_p1_m_p2_p3(uint p0, uint p1, uint p2, uint p3) {
|
||||
}
|
||||
|
||||
void f() {
|
||||
Outer p_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer p_a[4] = conv_arr4_Outer(a.inner);
|
||||
int tint_symbol = i();
|
||||
Outer p_a_i = conv_Outer(a.inner[tint_symbol]);
|
||||
Inner p_a_i_a[4] = conv_arr_4_Inner(a.inner[tint_symbol].a);
|
||||
Inner p_a_i_a[4] = conv_arr4_Inner(a.inner[tint_symbol].a);
|
||||
int tint_symbol_1 = i();
|
||||
Inner p_a_i_a_i = conv_Inner(a.inner[tint_symbol].a[tint_symbol_1]);
|
||||
mat4x2 p_a_i_a_i_m = load_a_inner_p0_a_p1_m(uint(tint_symbol), uint(tint_symbol_1));
|
||||
int tint_symbol_2 = i();
|
||||
vec2 p_a_i_a_i_m_i = load_a_inner_p0_a_p1_m_p2(uint(tint_symbol), uint(tint_symbol_1), uint(tint_symbol_2));
|
||||
Outer l_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer l_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer l_a_i = conv_Outer(a.inner[tint_symbol]);
|
||||
Inner l_a_i_a[4] = conv_arr_4_Inner(a.inner[tint_symbol].a);
|
||||
Inner l_a_i_a[4] = conv_arr4_Inner(a.inner[tint_symbol].a);
|
||||
Inner l_a_i_a_i = conv_Inner(a.inner[tint_symbol].a[tint_symbol_1]);
|
||||
mat4x2 l_a_i_a_i_m = load_a_inner_p0_a_p1_m(uint(tint_symbol), uint(tint_symbol_1));
|
||||
vec2 l_a_i_a_i_m_i = load_a_inner_p0_a_p1_m_p2(uint(tint_symbol), uint(tint_symbol_1), uint(tint_symbol_2));
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
OpMemberName %Inner 0 "m"
|
||||
OpName %conv_Inner "conv_Inner"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_Inner "conv_arr_4_Inner"
|
||||
OpName %conv_arr4_Inner "conv_arr4_Inner"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i_0 "i"
|
||||
@@ -32,7 +32,7 @@
|
||||
OpMemberName %Outer 0 "a"
|
||||
OpName %conv_Outer "conv_Outer"
|
||||
OpName %val_1 "val"
|
||||
OpName %conv_arr_4_Outer "conv_arr_4_Outer"
|
||||
OpName %conv_arr4_Outer "conv_arr4_Outer"
|
||||
OpName %val_2 "val"
|
||||
OpName %arr_0 "arr"
|
||||
OpName %i_1 "i"
|
||||
@@ -145,7 +145,7 @@
|
||||
%34 = OpCompositeConstruct %Inner %33
|
||||
OpReturnValue %34
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Inner = OpFunction %_arr_Inner_uint_4 None %35
|
||||
%conv_arr4_Inner = OpFunction %_arr_Inner_uint_4 None %35
|
||||
%val_0 = OpFunctionParameter %_arr_Inner_std140_uint_4
|
||||
%39 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_Inner_uint_4 Function %42
|
||||
@@ -186,11 +186,11 @@
|
||||
%val_1 = OpFunctionParameter %Outer_std140
|
||||
%75 = OpLabel
|
||||
%77 = OpCompositeExtract %_arr_Inner_std140_uint_4 %val_1 0
|
||||
%76 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %77
|
||||
%76 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %77
|
||||
%78 = OpCompositeConstruct %Outer %76
|
||||
OpReturnValue %78
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Outer = OpFunction %_arr_Outer_uint_4 None %79
|
||||
%conv_arr4_Outer = OpFunction %_arr_Outer_uint_4 None %79
|
||||
%val_2 = OpFunctionParameter %_arr_Outer_std140_uint_4
|
||||
%83 = OpLabel
|
||||
%arr_0 = OpVariable %_ptr_Function__arr_Outer_uint_4 Function %86
|
||||
@@ -307,13 +307,13 @@
|
||||
%186 = OpFunctionCall %int %i
|
||||
%189 = OpAccessChain %_ptr_Uniform__arr_Outer_std140_uint_4 %a %uint_0
|
||||
%190 = OpLoad %_arr_Outer_std140_uint_4 %189
|
||||
%187 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr_4_Outer %190
|
||||
%187 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr4_Outer %190
|
||||
%193 = OpAccessChain %_ptr_Uniform_Outer_std140 %a %uint_0 %184
|
||||
%194 = OpLoad %Outer_std140 %193
|
||||
%191 = OpFunctionCall %Outer %conv_Outer %194
|
||||
%197 = OpAccessChain %_ptr_Uniform__arr_Inner_std140_uint_4 %a %uint_0 %184 %uint_0
|
||||
%198 = OpLoad %_arr_Inner_std140_uint_4 %197
|
||||
%195 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %198
|
||||
%195 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %198
|
||||
%200 = OpAccessChain %_ptr_Uniform_Inner_std140 %a %uint_0 %184 %uint_0 %185
|
||||
%201 = OpLoad %Inner_std140 %200
|
||||
%199 = OpFunctionCall %Inner %conv_Inner %201
|
||||
|
||||
@@ -27,7 +27,7 @@ Inner conv_Inner(Inner_std140 val) {
|
||||
return Inner(mat4x2(val.m_0, val.m_1, val.m_2, val.m_3));
|
||||
}
|
||||
|
||||
Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
Inner[4] conv_arr4_Inner(Inner_std140 val[4]) {
|
||||
Inner arr[4] = Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -38,10 +38,10 @@ Inner[4] conv_arr_4_Inner(Inner_std140 val[4]) {
|
||||
}
|
||||
|
||||
Outer conv_Outer(Outer_std140 val) {
|
||||
return Outer(conv_arr_4_Inner(val.a));
|
||||
return Outer(conv_arr4_Inner(val.a));
|
||||
}
|
||||
|
||||
Outer[4] conv_arr_4_Outer(Outer_std140 val[4]) {
|
||||
Outer[4] conv_arr4_Outer(Outer_std140 val[4]) {
|
||||
Outer arr[4] = Outer[4](Outer(Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)))), Outer(Inner[4](Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)), Inner(mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)))));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -56,15 +56,15 @@ mat4x2 load_a_inner_3_a_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
Outer p_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer p_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer p_a_3 = conv_Outer(a.inner[3u]);
|
||||
Inner p_a_3_a[4] = conv_arr_4_Inner(a.inner[3u].a);
|
||||
Inner p_a_3_a[4] = conv_arr4_Inner(a.inner[3u].a);
|
||||
Inner p_a_3_a_2 = conv_Inner(a.inner[3u].a[2u]);
|
||||
mat4x2 p_a_3_a_2_m = load_a_inner_3_a_2_m();
|
||||
vec2 p_a_3_a_2_m_1 = a.inner[3u].a[2u].m_1;
|
||||
Outer l_a[4] = conv_arr_4_Outer(a.inner);
|
||||
Outer l_a[4] = conv_arr4_Outer(a.inner);
|
||||
Outer l_a_3 = conv_Outer(a.inner[3u]);
|
||||
Inner l_a_3_a[4] = conv_arr_4_Inner(a.inner[3u].a);
|
||||
Inner l_a_3_a[4] = conv_arr4_Inner(a.inner[3u].a);
|
||||
Inner l_a_3_a_2 = conv_Inner(a.inner[3u].a[2u]);
|
||||
mat4x2 l_a_3_a_2_m = load_a_inner_3_a_2_m();
|
||||
vec2 l_a_3_a_2_m_1 = a.inner[3u].a[2u].m_1;
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
OpMemberName %Inner 0 "m"
|
||||
OpName %conv_Inner "conv_Inner"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_Inner "conv_arr_4_Inner"
|
||||
OpName %conv_arr4_Inner "conv_arr4_Inner"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -30,7 +30,7 @@
|
||||
OpMemberName %Outer 0 "a"
|
||||
OpName %conv_Outer "conv_Outer"
|
||||
OpName %val_1 "val"
|
||||
OpName %conv_arr_4_Outer "conv_arr_4_Outer"
|
||||
OpName %conv_arr4_Outer "conv_arr4_Outer"
|
||||
OpName %val_2 "val"
|
||||
OpName %arr_0 "arr"
|
||||
OpName %i_0 "i"
|
||||
@@ -114,7 +114,7 @@
|
||||
%23 = OpCompositeConstruct %Inner %22
|
||||
OpReturnValue %23
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Inner = OpFunction %_arr_Inner_uint_4 None %24
|
||||
%conv_arr4_Inner = OpFunction %_arr_Inner_uint_4 None %24
|
||||
%val_0 = OpFunctionParameter %_arr_Inner_std140_uint_4
|
||||
%28 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_Inner_uint_4 Function %31
|
||||
@@ -155,11 +155,11 @@
|
||||
%val_1 = OpFunctionParameter %Outer_std140
|
||||
%64 = OpLabel
|
||||
%66 = OpCompositeExtract %_arr_Inner_std140_uint_4 %val_1 0
|
||||
%65 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %66
|
||||
%65 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %66
|
||||
%67 = OpCompositeConstruct %Outer %65
|
||||
OpReturnValue %67
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_Outer = OpFunction %_arr_Outer_uint_4 None %68
|
||||
%conv_arr4_Outer = OpFunction %_arr_Outer_uint_4 None %68
|
||||
%val_2 = OpFunctionParameter %_arr_Outer_std140_uint_4
|
||||
%72 = OpLabel
|
||||
%arr_0 = OpVariable %_ptr_Function__arr_Outer_uint_4 Function %75
|
||||
@@ -214,13 +214,13 @@
|
||||
%126 = OpLabel
|
||||
%129 = OpAccessChain %_ptr_Uniform__arr_Outer_std140_uint_4 %a %uint_0
|
||||
%130 = OpLoad %_arr_Outer_std140_uint_4 %129
|
||||
%127 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr_4_Outer %130
|
||||
%127 = OpFunctionCall %_arr_Outer_uint_4 %conv_arr4_Outer %130
|
||||
%133 = OpAccessChain %_ptr_Uniform_Outer_std140 %a %uint_0 %uint_3
|
||||
%134 = OpLoad %Outer_std140 %133
|
||||
%131 = OpFunctionCall %Outer %conv_Outer %134
|
||||
%137 = OpAccessChain %_ptr_Uniform__arr_Inner_std140_uint_4 %a %uint_0 %uint_3 %uint_0
|
||||
%138 = OpLoad %_arr_Inner_std140_uint_4 %137
|
||||
%135 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr_4_Inner %138
|
||||
%135 = OpFunctionCall %_arr_Inner_uint_4 %conv_arr4_Inner %138
|
||||
%140 = OpAccessChain %_ptr_Uniform_Inner_std140 %a %uint_0 %uint_3 %uint_0 %uint_2
|
||||
%141 = OpLoad %Inner_std140 %140
|
||||
%139 = OpFunctionCall %Inner %conv_Inner %141
|
||||
|
||||
@@ -42,7 +42,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat4x2(val.m_0, val.m_1, val.m_2, val.m_3), val.after, val.pad_1);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -57,7 +57,7 @@ mat4x2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
a(conv_arr_4_S(u.inner));
|
||||
a(conv_arr4_S(u.inner));
|
||||
b(conv_S(u.inner[2u]));
|
||||
c(load_u_inner_2_m());
|
||||
d(u.inner[0u].m_1.yx);
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
OpName %f_1 "f_1"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -135,7 +135,7 @@
|
||||
%46 = OpCompositeConstruct %S %39 %44 %45
|
||||
OpReturnValue %46
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %47
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %47
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%50 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %53
|
||||
@@ -190,7 +190,7 @@
|
||||
%107 = OpLabel
|
||||
%111 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%112 = OpLoad %_arr_S_std140_uint_4 %111
|
||||
%109 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %112
|
||||
%109 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %112
|
||||
%108 = OpFunctionCall %void %a %109
|
||||
%115 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
%116 = OpLoad %S_std140 %115
|
||||
|
||||
@@ -28,7 +28,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat4x2(val.m_0, val.m_1, val.m_2, val.m_3), val.after, val.pad_1);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -43,7 +43,7 @@ mat4x2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
p = conv_arr_4_S(u.inner);
|
||||
p = conv_arr4_S(u.inner);
|
||||
p[1] = conv_S(u.inner[2u]);
|
||||
p[3].m = load_u_inner_2_m();
|
||||
p[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
OpName %p "p"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -104,7 +104,7 @@
|
||||
%28 = OpCompositeConstruct %S %21 %26 %27
|
||||
OpReturnValue %28
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %29
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %29
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%32 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %16
|
||||
@@ -159,7 +159,7 @@
|
||||
%89 = OpLabel
|
||||
%92 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%93 = OpLoad %_arr_S_std140_uint_4 %92
|
||||
%90 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %93
|
||||
%90 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %93
|
||||
OpStore %p %90
|
||||
%96 = OpAccessChain %_ptr_Private_S %p %int_1
|
||||
%98 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
@@ -31,7 +31,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat4x2(val.m_0, val.m_1, val.m_2, val.m_3), val.after, val.pad_1);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -46,7 +46,7 @@ mat4x2 load_u_inner_2_m() {
|
||||
}
|
||||
|
||||
void f() {
|
||||
s.inner = conv_arr_4_S(u.inner);
|
||||
s.inner = conv_arr4_S(u.inner);
|
||||
s.inner[1] = conv_S(u.inner[2u]);
|
||||
s.inner[3].m = load_u_inner_2_m();
|
||||
s.inner[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
OpName %s "s"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -112,7 +112,7 @@
|
||||
%28 = OpCompositeConstruct %S %21 %26 %27
|
||||
OpReturnValue %28
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %29
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %29
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%32 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %35
|
||||
@@ -168,7 +168,7 @@
|
||||
%92 = OpAccessChain %_ptr_StorageBuffer__arr_S_uint_4 %s %uint_0
|
||||
%95 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%96 = OpLoad %_arr_S_std140_uint_4 %95
|
||||
%93 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %96
|
||||
%93 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %96
|
||||
OpStore %92 %93
|
||||
%99 = OpAccessChain %_ptr_StorageBuffer_S %s %uint_0 %int_1
|
||||
%101 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
@@ -28,7 +28,7 @@ S conv_S(S_std140 val) {
|
||||
return S(val.before, val.pad, mat4x2(val.m_0, val.m_1, val.m_2, val.m_3), val.after, val.pad_1);
|
||||
}
|
||||
|
||||
S[4] conv_arr_4_S(S_std140 val[4]) {
|
||||
S[4] conv_arr4_S(S_std140 val[4]) {
|
||||
S arr[4] = S[4](S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u), S(0, 0u, mat4x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f), 0, 0u));
|
||||
{
|
||||
for(uint i = 0u; (i < 4u); i = (i + 1u)) {
|
||||
@@ -51,7 +51,7 @@ void f(uint local_invocation_index) {
|
||||
}
|
||||
}
|
||||
barrier();
|
||||
w = conv_arr_4_S(u.inner);
|
||||
w = conv_arr4_S(u.inner);
|
||||
w[1] = conv_S(u.inner[2u]);
|
||||
w[3].m = load_u_inner_2_m();
|
||||
w[1].m[0] = u.inner[0u].m_1.yx;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
OpName %w "w"
|
||||
OpName %conv_S "conv_S"
|
||||
OpName %val "val"
|
||||
OpName %conv_arr_4_S "conv_arr_4_S"
|
||||
OpName %conv_arr4_S "conv_arr4_S"
|
||||
OpName %val_0 "val"
|
||||
OpName %arr "arr"
|
||||
OpName %i "i"
|
||||
@@ -114,7 +114,7 @@
|
||||
%29 = OpCompositeConstruct %S %22 %27 %28
|
||||
OpReturnValue %29
|
||||
OpFunctionEnd
|
||||
%conv_arr_4_S = OpFunction %_arr_S_uint_4 None %30
|
||||
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %30
|
||||
%val_0 = OpFunctionParameter %_arr_S_std140_uint_4
|
||||
%33 = OpLabel
|
||||
%arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %36
|
||||
@@ -196,7 +196,7 @@
|
||||
OpControlBarrier %uint_2 %uint_2 %uint_264
|
||||
%113 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
|
||||
%114 = OpLoad %_arr_S_std140_uint_4 %113
|
||||
%111 = OpFunctionCall %_arr_S_uint_4 %conv_arr_4_S %114
|
||||
%111 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %114
|
||||
OpStore %w %111
|
||||
%116 = OpAccessChain %_ptr_Workgroup_S %w %int_1
|
||||
%118 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
|
||||
|
||||
Reference in New Issue
Block a user