xref: /aosp_15_r20/external/skia/tests/sksl/shared/UniformBuffers.wgsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1diagnostic(off, derivative_uniformity);
2diagnostic(off, chromium.unreachable_code);
3struct FSOut {
4  @location(0) sk_FragColor: vec4<f32>,
5};
6struct testBlock {
7  @size(4) x: f32,
8  @size(12) w: i32,
9  @size(32) y: array<_skArrayElement_h, 2>,
10  z: mat3x3<f32>,
11};
12@group(0) @binding(0) var<uniform> _uniform0 : testBlock;
13fn _skslMain(_stageOut: ptr<function, FSOut>) {
14  {
15    (*_stageOut).sk_FragColor = vec4<f32>(_uniform0.x, _skUnpacked__uniform0_y[0], _skUnpacked__uniform0_y[1], 0.0);
16  }
17}
18@fragment fn main() -> FSOut {
19  _skInitializePolyfilledUniforms();
20  var _stageOut: FSOut;
21  _skslMain(&_stageOut);
22  return _stageOut;
23}
24struct _skArrayElement_h {
25  @size(16) e : f32
26};
27var<private> _skUnpacked__uniform0_y: array<f32, 2>;
28fn _skInitializePolyfilledUniforms() {
29  _skUnpacked__uniform0_y = array<f32, 2>(_uniform0.y[0].e, _uniform0.y[1].e);
30}
31