dawn-cmake/test/tint/builtins/gen/var/frexp/eb2421.wgsl.expected.fxc.hlsl
Antonio Maiorano 52cd8caa07 tint/hlsl: fix frexp always returning positive values for fractional part
Bug: tint:1876
Change-Id: Ic56b37918fd1a2a42442b517985a49f10d85159d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/124501
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-16 21:31:15 +00:00

43 lines
804 B
HLSL

struct frexp_result_vec2_f32 {
float2 fract;
int2 exp;
};
frexp_result_vec2_f32 tint_frexp(float2 param_0) {
float2 exp;
float2 fract = sign(param_0) * frexp(param_0, exp);
frexp_result_vec2_f32 result = {fract, int2(exp)};
return result;
}
void frexp_eb2421() {
float2 arg_0 = (1.0f).xx;
frexp_result_vec2_f32 res = tint_frexp(arg_0);
}
struct tint_symbol {
float4 value : SV_Position;
};
float4 vertex_main_inner() {
frexp_eb2421();
return (0.0f).xxxx;
}
tint_symbol vertex_main() {
const float4 inner_result = vertex_main_inner();
tint_symbol wrapper_result = (tint_symbol)0;
wrapper_result.value = inner_result;
return wrapper_result;
}
void fragment_main() {
frexp_eb2421();
return;
}
[numthreads(1, 1, 1)]
void compute_main() {
frexp_eb2421();
return;
}