dawn-cmake/test/tint/builtins/gen/literal/modf/2d50da.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_vec2 {
vec2 fract;
vec2 whole;
};
modf_result_vec2 tint_modf(vec2 param_0) {
modf_result_vec2 result;
result.fract = modf(param_0, result.whole);
return result;
}
void modf_2d50da() {
modf_result_vec2 res = tint_modf(vec2(1.0f));
}
vec4 vertex_main() {
modf_2d50da();
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_vec2 {
vec2 fract;
vec2 whole;
};
modf_result_vec2 tint_modf(vec2 param_0) {
modf_result_vec2 result;
result.fract = modf(param_0, result.whole);
return result;
}
void modf_2d50da() {
modf_result_vec2 res = tint_modf(vec2(1.0f));
}
void fragment_main() {
modf_2d50da();
}
void main() {
fragment_main();
return;
}
#version 310 es
struct modf_result_vec2 {
vec2 fract;
vec2 whole;
};
modf_result_vec2 tint_modf(vec2 param_0) {
modf_result_vec2 result;
result.fract = modf(param_0, result.whole);
return result;
}
void modf_2d50da() {
modf_result_vec2 res = tint_modf(vec2(1.0f));
}
void compute_main() {
modf_2d50da();
}
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void main() {
compute_main();
return;
}