dawn-cmake/test/tint/builtins/gen/literal/modf/4bfced.wgsl.expected.glsl
Zhaoming Jiang 20cddbf04c tint: Implement modf and frexp built-ins for f16 types
This patch implement modf and frexp built-ins for f16 types, and also
simplify their implementation for f32 in MSL and HLSL, and clean up
deprecated code in GLSL writer. Corresponding unittests are also
implemented, but end-to-end tests for f16 are not implemented yet.

Bug: tint:1473, tint:1502
Change-Id: I12887ae5303c6dc032a51f619e1afeb19b4603b6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/98102
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-08-05 15:11:44 +00:00

86 lines
1.4 KiB
GLSL

#version 310 es
struct modf_result_vec4 {
vec4 fract;
vec4 whole;
};
modf_result_vec4 tint_modf(vec4 param_0) {
modf_result_vec4 result;
result.fract = modf(param_0, result.whole);
return result;
}
void modf_4bfced() {
modf_result_vec4 res = tint_modf(vec4(1.0f));
}
vec4 vertex_main() {
modf_4bfced();
return vec4(0.0f);
}
void main() {
gl_PointSize = 1.0;
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;
struct modf_result_vec4 {
vec4 fract;
vec4 whole;
};
modf_result_vec4 tint_modf(vec4 param_0) {
modf_result_vec4 result;
result.fract = modf(param_0, result.whole);
return result;
}
void modf_4bfced() {
modf_result_vec4 res = tint_modf(vec4(1.0f));
}
void fragment_main() {
modf_4bfced();
}
void main() {
fragment_main();
return;
}
#version 310 es
struct modf_result_vec4 {
vec4 fract;
vec4 whole;
};
modf_result_vec4 tint_modf(vec4 param_0) {
modf_result_vec4 result;
result.fract = modf(param_0, result.whole);
return result;
}
void modf_4bfced() {
modf_result_vec4 res = tint_modf(vec4(1.0f));
}
void compute_main() {
modf_4bfced();
}
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void main() {
compute_main();
return;
}