[PATCH 4/9] wined3d: Support CPU clear of float16 formats.
Henri Verbeet
hverbeet at gmail.com
Mon May 2 10:36:39 CDT 2022
On Sun, 1 May 2022 at 20:39, Stefan Dösinger <stefan at codeweavers.com> wrote:
> + for (i = 0; i < ARRAY_SIZE(float16_conv); ++i)
> + {
> + if (format_id != float16_conv[i])
> + continue;
> +
> + switch(format->byte_count)
> + {
> + case 8:
> + ((short *)ret)[3] = float_32_to_16(&color->a);
> + ((short *)ret)[2] = float_32_to_16(&color->b);
> + /* fall through */
> + case 4:
> + ((short *)ret)[1] = float_32_to_16(&color->g);
> + /* fall through */
> + case 2:
> + ((short *)ret)[0] = float_32_to_16(&color->r);
> + break;
> +
> + default:
> + ERR("Unexpected byte count %u: Format %s\n", format->byte_count, debug_d3dformat(format_id));
> + break;
> + }
> +
> + return;
> + }
Like 3/9, it seems preferable to check for WINED3DFMT_FLAG_FLOAT and
component sizes. There's a missing space after "switch" here as well.
More information about the wine-devel
mailing list