mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-15 09:01:19 +00:00
wined3d/glsl: Flush NaN to zero in ftoi.
Ported from 257a351f37b7f17d2e80b5557593a9b0a4998963 in vkd3d.
This commit is contained in:
parent
f30418e861
commit
b3e0271b57
|
@ -4333,11 +4333,11 @@ static void shader_glsl_to_int(const struct wined3d_shader_instruction *ins)
|
|||
shader_glsl_add_src_param(ins, &ins->src[0], write_mask, &src_param);
|
||||
|
||||
if (mask_size > 1)
|
||||
shader_addline(buffer, "mix(ivec%u(max(%s, vec%u(-2147483648.0))), ivec%u(0x7fffffff), greaterThanEqual(%s, vec%u(2147483648.0))));\n",
|
||||
mask_size, src_param.param_str, mask_size, mask_size, src_param.param_str, mask_size);
|
||||
shader_addline(buffer, "mix(mix(ivec%u(max(%s, vec%u(-2147483648.0))), ivec%u(0x7fffffff), greaterThanEqual(%s, vec%u(2147483648.0))), ivec%u(0), isnan(%s)));\n",
|
||||
mask_size, src_param.param_str, mask_size, mask_size, src_param.param_str, mask_size, mask_size, src_param.param_str);
|
||||
else
|
||||
shader_addline(buffer, "mix(int(max(%s, -2147483648.0)), 0x7fffffff, %s >= 2147483648.0));\n",
|
||||
src_param.param_str, src_param.param_str);
|
||||
shader_addline(buffer, "mix(mix(int(max(%s, -2147483648.0)), 0x7fffffff, %s >= 2147483648.0), 0, isnan(%s)));\n",
|
||||
src_param.param_str, src_param.param_str, src_param.param_str);
|
||||
}
|
||||
|
||||
static void shader_glsl_to_uint(const struct wined3d_shader_instruction *ins)
|
||||
|
|
Loading…
Reference in a new issue