Stephen White 863d9edf59 GLSL: Change Add[Spirv]BlockAttribute to support GLSL
Modify the AddSpirvBlockAttribute transform to fix top-level structure
access of uniform, storage and push-constant buffers for use in the
GLSL backend. The small change to the transform makes the transform
wrap host-sharable buffers, if they're also used as a
non-host-sharable structure. Also rename the transform to
AddBlockAttrbibute in order to reflect its wider applicability.

Change-Id: Ib2bf4ebf6bce72790791dbae9387032be765e4b9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101061
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-09-02 19:19:10 +00:00

28 lines
414 B
GLSL

#version 310 es
precision mediump float;
struct S {
mat3x2 matrix;
vec3 vector;
};
layout(binding = 0) uniform S_std140_ubo {
vec2 matrix_0;
vec2 matrix_1;
vec2 matrix_2;
vec3 vector;
} data;
mat3x2 load_data_matrix() {
return mat3x2(data.matrix_0, data.matrix_1, data.matrix_2);
}
void tint_symbol() {
vec2 x = (load_data_matrix() * data.vector);
}
void main() {
tint_symbol();
return;
}