blob: 9a489404aa032b9d30c8e9c28a73016f5b315687 [file] [log] [blame]
struct Inner {
float16_t scalar_f16;
vector<float16_t, 3> vec3_f16;
matrix<float16_t, 2, 4> mat2x4_f16;
};
struct S {
Inner inner;
};
ByteAddressBuffer tint_symbol : register(t0, space0);
RWByteAddressBuffer tint_symbol_1 : register(u1, space0);
matrix<float16_t, 2, 4> tint_symbol_6(ByteAddressBuffer buffer, uint offset) {
return matrix<float16_t, 2, 4>(buffer.Load<vector<float16_t, 4> >((offset + 0u)), buffer.Load<vector<float16_t, 4> >((offset + 8u)));
}
Inner tint_symbol_3(ByteAddressBuffer buffer, uint offset) {
const Inner tint_symbol_14 = {buffer.Load<float16_t>((offset + 0u)), buffer.Load<vector<float16_t, 3> >((offset + 8u)), tint_symbol_6(buffer, (offset + 16u))};
return tint_symbol_14;
}
S tint_symbol_2(ByteAddressBuffer buffer, uint offset) {
const S tint_symbol_15 = {tint_symbol_3(buffer, (offset + 0u))};
return tint_symbol_15;
}
void tint_symbol_12(RWByteAddressBuffer buffer, uint offset, matrix<float16_t, 2, 4> value) {
buffer.Store<vector<float16_t, 4> >((offset + 0u), value[0u]);
buffer.Store<vector<float16_t, 4> >((offset + 8u), value[1u]);
}
void tint_symbol_9(RWByteAddressBuffer buffer, uint offset, Inner value) {
buffer.Store<float16_t>((offset + 0u), value.scalar_f16);
buffer.Store<vector<float16_t, 3> >((offset + 8u), value.vec3_f16);
tint_symbol_12(buffer, (offset + 16u), value.mat2x4_f16);
}
void tint_symbol_8(RWByteAddressBuffer buffer, uint offset, S value) {
tint_symbol_9(buffer, (offset + 0u), value.inner);
}
[numthreads(1, 1, 1)]
void main() {
const S t = tint_symbol_2(tint_symbol, 0u);
tint_symbol_8(tint_symbol_1, 0u, t);
return;
}