dawn-cmake/test/tint/builtins/textureLoad/texture_param.wgsl.expected.glsl
Stephen White b7e560dea0 GLSL: fix "uniform" qualifier on texture parameters.
Textures as function parameters should not have the "uniform"
qualifier. Fixed by handling StorageClass::kUniformConstant the
same as StorageClass::kUniform, and removing the unconditional
"uniform" qualifier output. (Global texture variables have
StorageClass::kUniformConstant set, while function parameters don't.)

Change-Id: I9d380550ac4554917527ff330171a76a90a290e8
Bug: tint:1492
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/85820
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-05 18:51:15 +00:00

64 lines
1.3 KiB
GLSL

#version 310 es
ivec4 textureLoad2d(highp isampler2D tint_symbol_1, ivec2 coords, int level) {
return texelFetch(tint_symbol_1, coords, level);
}
uniform highp isampler2D arg_0_1;
void doTextureLoad() {
ivec4 res = textureLoad2d(arg_0_1, ivec2(0, 0), 0);
}
vec4 vertex_main() {
doTextureLoad();
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
}
void main() {
vec4 inner_result = vertex_main();
gl_Position = inner_result;
gl_Position.y = -(gl_Position.y);
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
#version 310 es
precision mediump float;
ivec4 textureLoad2d(highp isampler2D tint_symbol_1, ivec2 coords, int level) {
return texelFetch(tint_symbol_1, coords, level);
}
uniform highp isampler2D arg_0_1;
void doTextureLoad() {
ivec4 res = textureLoad2d(arg_0_1, ivec2(0, 0), 0);
}
void fragment_main() {
doTextureLoad();
}
void main() {
fragment_main();
return;
}
#version 310 es
ivec4 textureLoad2d(highp isampler2D tint_symbol_1, ivec2 coords, int level) {
return texelFetch(tint_symbol_1, coords, level);
}
uniform highp isampler2D arg_0_1;
void doTextureLoad() {
ivec4 res = textureLoad2d(arg_0_1, ivec2(0, 0), 0);
}
void compute_main() {
doTextureLoad();
}
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void main() {
compute_main();
return;
}